A distributed hash table (DHT) is a decentralized storage system that provides lookup and storage schemes similar to a hash table, storing key-value pairs.
Each node in a DHT is responsible for keys along with the mapped values. Any node can efficiently retrieve the value associated with a given key.
Just like in hash tables, values mapped against keys in a DHT can be any arbitrary form of data.
DHTs have the following properties:
Just like hash tables, DHTs support the following 2 functions:
The nodes in a DHT are connected together through an overlay network in which neighboring nodes are connected. This network allows the nodes to find any given key in the key-space.