MementoHash: A Stateful, Minimal Memory, Best Performing Consistent Hash Algorithm

06/16/2023
by   Massimo Coluzzi, et al.
0

Consistent hashing is used in distributed systems and networking applications to spread data evenly and efficiently across a cluster of nodes. In this paper, we present MementoHash, a novel consistent hashing algorithm that eliminates known limitations of state-of-the-art algorithms while keeping optimal performance and minimal memory usage. We describe the algorithm in detail, provide a pseudo-code implementation, and formally establish its solid theoretical guarantees. To measure the efficacy of MementoHash, we compare its performance, in terms of memory usage and lookup time, to that of state-of-the-art algorithms, namely, AnchorHash, DxHash, and JumpHash. Unlike JumpHash, MementoHash can handle random failures. Moreover, MementoHash does not require fixing the overall capacity of the cluster (as AnchorHash and DxHash do), allowing it to scale indefinitely. The number of removed nodes affects the performance of all the considered algorithms. Therefore, we conduct experiments considering three different scenarios: stable (no removed nodes), one-shot removals (90 We report experimental results that averaged a varying number of nodes from ten to one million. Results indicate that our algorithm shows optimal lookup performance and minimal memory usage in its best-case scenario. It behaves better than AnchorHash and DxHash in its average-case scenario and at least as well as those two algorithms in its worst-case scenario. However, the worst-case scenario for MementoHash occurs when more than 70 fail, which describes a unlikely scenario. Therefore, MementoHash shows the best performance during the regular life cycle of a cluster.

READ FULL TEXT

page 1

page 11

page 12

page 13

research
12/23/2018

AnchorHash: A Scalable Consistent Hash

Consistent hashing (CH) is a central building block in many networking a...
research
02/25/2020

RMB-DPOP: Refining MB-DPOP by Reducing Redundant Inferences

MB-DPOP is an important complete algorithm for solving Distributed Const...
research
08/11/2021

Learning to Hash Robustly, with Guarantees

The indexing algorithms for the high-dimensional nearest neighbor search...
research
07/16/2021

DxHash: A Scalable Consistent Hash Based on the Pseudo-Random Sequence

Consistent hasing has played a fundamental role as a data router and a l...
research
10/20/2020

Very Fast Streaming Submodular Function Maximization

Data summarization has become a valuable tool in understanding even tera...
research
07/24/2023

On the Relationship Between Several Variants of the Linear Hashing Conjecture

In Linear Hashing (𝖫𝖧) with β bins on a size u universe 𝒰={0,1,…, u-1}, ...
research
10/11/2018

A Comparative Study of Consistent Snapshot Algorithms for Main-Memory Database Systems

In-memory databases (IMDBs) are gaining increasing popularity in big dat...

Please sign up or login with your details

Forgot password? Click here to reset