In a distributed system, there is always a question of how to distribute any data across the constituent systems. Consistent hashing is often used to get this system mapping based on a hash function and the data. Hence it becomes solely responsible for the distribution of the workload across the different systems. The default consistent hashing partitioning scheme doesn't factor in the load distribution or the heterogeneity of the cluster (in terms of disk speed, power, network, load, etc.) and hence creates performance bottlenecks. This paper proposes an adaptive partitioning scheme for consistent hashing that factors in the heterogeneity of the different systems and also dynamically adapts to the changing workload resulting in better performance of the system. A prototype was built to test the performance and the system was 20% faster in the benchmark compared to the regular consistent hashing apart from better load distribution across the systems.
[1]
Richard M. Karp,et al.
Load balancing in dynamic structured P2P systems
,
2004,
IEEE INFOCOM 2004.
[2]
David R. Karger,et al.
Wide-area cooperative storage with CFS
,
2001,
SOSP.
[3]
Richard M. Karp,et al.
Load Balancing in Structured P2P Systems
,
2003,
IPTPS.
[4]
Jeffrey Considine,et al.
Simple Load Balancing for Distributed Hash Tables
,
2003,
IPTPS.
[5]
D.Parameswari.
Load Balancing in Structured Peer toPeer Systems
,
2014
.
[6]
T. Ibaraki,et al.
THE MULTIPLE-CHOICE KNAPSACK PROBLEM
,
1978
.
[7]
Local Load Balancing in Distributed Hash Tables
,
2016
.
[8]
David R. Karger,et al.
Chord: A scalable peer-to-peer lookup service for internet applications
,
2001,
SIGCOMM '01.