Flip Hashing for Consistent Key Distribution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing technologies face challenges in maintaining balanced and monotonic hash tables in large database applications with dynamically changing resources, leading to inefficient data distribution and performance issues.

Innovation Solution

The flip hash approach, which involves performing a first hash function on a key, followed by a second hash function and flipping least significant bits based on the most significant bits of the first hash, ensures consistent and balanced key distribution across servers while maintaining monotonicity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If hash ring-based solutions are used for consistent hashing, then the system can handle dynamic resource changes, but the load balance becomes uneven with peak-to-average ratio reaching 1.3

Engineering Contradiction:
Improvedynamic resource handlingVSAvoidload balance uniformity
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent changes the hashing parameters by using a different mathematical approach (flip hash) that operates on the binary representation of hash values. Instead of using traditional hash ring structures, it flips bits based on the position of the most significant bit, creating a new parameter space that achieves both dynamic adaptability and uniform load distribution with peak-to-average ratio of approximately 1.0

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent replaces the mechanical hash ring structure with a bit-manipulation based flip hash mechanism. This substitution eliminates the need for complex ring-based remapping logic and directly computes the target server through bitwise operations, achieving simpler and more uniform load distribution

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Device complexity

If traditional hashing methods are used, then the implementation is simple, but the time complexity increases logarithmically with the number of resources

Engineering Contradiction:
Improvehashing implementation simplicityVSAvoidhashing computation time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent extracts only the necessary bit manipulation operations from complex hashing algorithms. By focusing solely on flipping bits based on the most significant bit position, it eliminates unnecessary computational steps while maintaining constant-time complexity O(1) regardless of the number of resources

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent uses simple bitwise operations that are computationally inexpensive and can be executed rapidly. These lightweight operations replace heavier hashing computations, achieving constant-time performance without requiring complex data structures or multiple computation passes

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

3Productivity

If load balancers dynamically assign keys to servers, then resource utilization can be adjusted, but the key distribution becomes uneven across servers

Engineering Contradiction:
Improveresource utilization flexibilityVSAvoidkey distribution evenness
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The patent segments the hash space into equal portions by using bit flipping at specific positions. Each server receives a predetermined number of keys based on the flip hash computation, ensuring that key distribution remains evenly segmented across all servers even as resources are dynamically added or removed

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary bit manipulation operations on the hash value before final server assignment. By pre-flipping bits based on the most significant bit position, it determines the target server in advance with constant-time complexity, ensuring even key distribution is established before any dynamic resource changes occur

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12299035B1Consistent hashing with sequential indexing
Publication Date: 2025.05.13 DATADOG INC
  • US12299035B1 patent drawing
  • US12299035B1 patent drawing
  • US12299035B1 patent drawing

AI summary

The technology provides a consistent hashing approach that can be used with many types of hash functions. This approach, called flip hashing, enables dynamic adjustment of a hash table while satisfying balance and monotonicity requirements. Flip hashing is particularly applicable to database and load rebalancing applications due to its low computational cost and ease of implementation. As computing resources are added to a system, keys are remapped evenly across the newly added resources, e.g., by one or more load-balancing or routing servers. This enables upscaling of the system to minimize hotspot issues. The computational cost for a flip hash approach is effectively constant and regardless of the number of resources. This can provide fast response times to queries and avoid overloading of routing servers.