English
Related papers

Related papers: Fast Consistent Hashing in Constant Time

200 papers

We present jump consistent hash, a fast, minimal memory, consistent hash algorithm that can be expressed in about 5 lines of code. In comparison to the algorithm of Karger et al., jump consistent hash requires no storage, is faster, and…

Data Structures and Algorithms · Computer Science 2014-06-10 John Lamping , Eric Veach

Consistent hashing is a technique for distributing data across a network of nodes in a way that minimizes reorganization when nodes join or leave the network. It is extensively applied in modern distributed systems as a fundamental…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-03-18 Massimo Coluzzi , Amos Brocco , Alessandro Antonucci , Tiziano Leidi

Consistent Hashing functions are widely used for load balancing across a variety of applications. However, the original presentation and typical implementations of Consistent Hashing rely on randomised allocation of hash codes to keys which…

Data Structures and Algorithms · Computer Science 2015-03-19 Matthew Sackman

We describe a consistent hashing algorithm which performs multiple lookups per key in a hash table of nodes. It requires no additional storage beyond the hash table, and achieves a peak-to-average load ratio of 1 + epsilon with just 1 +…

Data Structures and Algorithms · Computer Science 2015-05-04 Ben Appleton , Michael O'Reilly

Consistent range-hashing is a technique used in distributed systems, either directly or as a subroutine for consistent hashing, commonly to realize an even and stable data distribution over a variable number of resources. We introduce…

Data Structures and Algorithms · Computer Science 2024-02-28 Charles Masson , Homin K. Lee

Consistent hashing (CH) is a central building block in many networking applications, from datacenter load-balancing to distributed storage. Unfortunately, state-of-the-art CH solutions cannot ensure full consistency under arbitrary changes…

Data Structures and Algorithms · Computer Science 2020-11-24 Gal Mendelson , Shay Vargaftik , Katherine Barabash , Dean Lorenz , Isaac Keslassy , Ariel Orda

Distributed systems often serve dynamic workloads and resource demands evolve over time. Such a temporal behavior stands in contrast to the static and demand-oblivious nature of most data structures used by these systems. In this paper, we…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-11-19 Arash Pourdamghani , Chen Avin , Robert Sama , Maryam Shiran , Stefan Schmid

Consistent hashing (CH) has been pivotal as a data router and load balancer in diverse fields, including distributed databases, cloud infrastructure, and peer-to-peer networks. However, existing CH algorithms often fall short in…

Data Structures and Algorithms · Computer Science 2023-11-21 Chao Dong , Fang Wang , Dan Feng

The study of hashing is closely related to the analysis of balls and bins. It is well-known that instead of using a single hash function if we randomly hash a ball into two bins and place it in the smaller of the two, then this dramatically…

Data Structures and Algorithms · Computer Science 2007-05-23 Rina Panigrahy

Most cloud services and distributed applications rely on hashing algorithms that allow dynamic scaling of a robust and efficient hash table. Examples include AWS, Google Cloud and BitTorrent. Consistent and rendezvous hashing are algorithms…

Data Structures and Algorithms · Computer Science 2022-05-17 Mike Heddes , Igor Nunes , Tony Givargis , Alexandru Nicolau , Alex Veidenbaum

Introduction. Distributed data processing and storage systems require efficient methods to distribute keys across buckets. While simple and fast, the traditional modulo-based mapping is unstable when the number of buckets changes, leading…

Data Structures and Algorithms · Computer Science 2025-11-11 Otmar Ertl

Given a set $S$ of $n$ keys, a perfect hash function for $S$ maps the keys in $S$ to the first $m \geq n$ integers without collisions. It may return an arbitrary result for any key not in $S$ and is called minimal if $m = n$. The most…

Data Structures and Algorithms · Computer Science 2026-02-06 Hans-Peter Lehmann , Thomas Mueller , Rasmus Pagh , Giulio Ermanno Pibiri , Peter Sanders , Sebastiano Vigna , Stefan Walzer

Minimal perfect hash functions provide space-efficient and collision-free hashing on static sets. Existing algorithms and implementations that build such functions have practical limitations on the number of input elements they can process,…

Data Structures and Algorithms · Computer Science 2018-11-06 Antoine Limasset , Guillaume Rizk , Rayan Chikhi , Pierre Peterlongo

Designing algorithms for balanced allocation of clients to servers in dynamic settings is a challenging problem for a variety of reasons. Both servers and clients may be added and/or removed from the system periodically, and the main…

Data Structures and Algorithms · Computer Science 2017-07-28 Vahab Mirrokni , Mikkel Thorup , Morteza Zadimoghaddam

Hash tables are ubiquitous, and the choice of hash function, which maps a key to a bucket, is key to their performance. We argue that the predominant approach of fixing the hash function for the lifetime of the hash table is suboptimal and…

Data Structures and Algorithms · Computer Science 2026-02-09 Gábor Melis

Concurrent hash tables are one of the most important concurrent data structures with numerous applications. Since hash table accesses can dominate the execution time of the overall application, we need implementations that achieve good…

Data Structures and Algorithms · Computer Science 2016-09-07 Tobias Maier , Peter Sanders , Roman Dementiev

This paper presents an efficient wait-free resizable hash table. To achieve high throughput at large core counts, our algorithm is specifically designed to retain the natural parallelism of concurrent hashing, while providing wait-free…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-04-21 Panagiota Fatourou , Nikolaos D. Kallimanis , Thomas Ropars

Perfect hash functions can potentially be used to compress data in connection with a variety of data management tasks. Though there has been considerable work on how to construct good perfect hash functions, there is a gap between theory…

Data Structures and Algorithms · Computer Science 2007-05-23 Fabiano C. Botelho , Rasmus Pagh , Nivio Ziviani

Dynamic load balancing lies at the heart of distributed caching. Here, the goal is to assign objects (load) to servers (computing nodes) in a way that provides load balancing while at the same time dynamically adjusts to the addition or…

Data Structures and Algorithms · Computer Science 2020-06-17 John Chen , Ben Coleman , Anshumali Shrivastava

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…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-02-28 Massimo Coluzzi , Amos Brocco , Alessandro Antonucci , Tiziano Leidi
‹ Prev 1 2 3 10 Next ›