English
Related papers

Related papers: More Analysis of Double Hashing for Balanced Alloc…

200 papers

Double hashing has recently found more common usage in schemes that use multiple hash functions. In double hashing, for an item $x$, one generates two hash values $f(x)$ and $g(x)$, and then uses combinations $(f(x) +k g(x)) \bmod n$ for…

Data Structures and Algorithms · Computer Science 2014-01-30 Michael Mitzenmacher

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

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

In balanced allocations, the goal is to place $m$ balls into $n$ bins, so as to minimize the gap (difference of max to average load). The One-Choice process places each ball to a bin sampled independently and uniformly at random. The…

Discrete Mathematics · Computer Science 2023-04-24 Dimitrios Los , Thomas Sauerwald

Carefully balancing load in distributed stream processing systems has a fundamental impact on execution latency and throughput. Load balancing is challenging because real-world workloads are skewed: some tuples in the stream are associated…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-01-28 Muhammad Anis Uddin Nasir , Gianmarco De Francisci Morales , Nicolas Kourtellis , Marco Serafini

Consistent hashing is a technique that can minimize key remapping when the number of hash buckets changes. The paper proposes a fast consistent hash algorithm (called power consistent hash) that has $O(1)$ expected time for key lookup,…

Data Structures and Algorithms · Computer Science 2023-12-29 Eric Leu

Balanced allocation of online balls-into-bins has long been an active area of research for efficient load balancing and hashing applications.There exists a large number of results in this domain for different settings, such as parallel…

Data Structures and Algorithms · Computer Science 2011-12-30 Sourav Dutta , Souvik Bhattacherjee , Ankur Narang

In the problem of minimal perfect hashing, we are given a size $k$ subset $\mathcal{A}$ of a universe of keys $[n] = \{1,2, \cdots, n\}$, for which we wish to construct a hash function $h: [n] \to [k]$ such that $h(\cdot)$ maps…

Information Theory · Computer Science 2026-04-14 Ryan Song , Emre Telatar

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

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

The problem of fast items retrieval from a fixed collection is often encountered in most computer science areas, from operating system components to databases and user interfaces. We present an approach based on hash tables that focuses on…

Neural and Evolutionary Computing · Computer Science 2020-07-17 Dan Domnita , Ciprian Oprisa

The power of two choices is a classic paradigm for load balancing when assigning $m$ balls to $n$ bins. When placing a ball, we pick two bins according to two hash functions $h_0$ and $h_1$, and place the ball in the least loaded bin.…

Data Structures and Algorithms · Computer Science 2016-01-26 Søren Dahlgaard , Mathias Bæk Tejs Knudsen , Eva Rotenberg , Mikkel Thorup

We consider the allocation of $m$ balls (jobs) into $n$ bins (servers). In the standard Two-Choice process, at each step $t=1,2,\ldots,m$ we first sample two randomly chosen bins, compare their two loads and then place a ball in the least…

Discrete Mathematics · Computer Science 2023-12-27 Dimitrios Los , Thomas Sauerwald

Cuckoo hashing [4] is a multiple choice hashing scheme in which each item can be placed in multiple locations, and collisions are resolved by moving items to their alternative locations. In the classical implementation of two-way cuckoo…

Data Structures and Algorithms · Computer Science 2011-11-16 Ely Porat , Bar Shalem

We consider the allocation of $m$ balls (jobs) into $n$ bins (servers). In the Two-Choice process, for each of $m$ sequentially arriving balls, two randomly chosen bins are sampled and the ball is placed in the least loaded bin. It is…

Discrete Mathematics · Computer Science 2023-03-15 Dimitrios Los , Thomas Sauerwald

We consider the unbalanced allocation of $m$ balls into $n$ bins by a randomized algorithm using the "power of two choices". For each ball, we select a set of bins at random, then place the ball in the fullest bin within the set.…

Discrete Mathematics · Computer Science 2014-01-03 Amanda Redlich

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

We consider the sequential allocation of $m$ balls (jobs) into $n$ bins (servers) by allowing each ball to choose from some bins sampled uniformly at random. The goal is to maintain a small gap between the maximum load and the average load.…

Discrete Mathematics · Computer Science 2023-08-11 Dimitrios Los , Thomas Sauerwald , John Sylvester

Randomized algorithms are often enjoyed for their simplicity, but the hash functions employed to yield the desired probabilistic guarantees are often too complicated to be practical. Here we survey recent results on how simple hashing…

Data Structures and Algorithms · Computer Science 2017-01-04 Mikkel Thorup

We introduce linear probing hashing schemes that construct a hash table of size $n$, with constant load factor $\alpha$, on which the worst-case unsuccessful search time is asymptotically almost surely $O(\log \log n)$. The schemes employ…

Data Structures and Algorithms · Computer Science 2023-09-20 Ketan Dalal , Luc Devroye , Ebrahim Malalla
‹ Prev 1 2 3 10 Next ›