Hybrid Hash Algorithm Using Jump Table for Load Distribution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing load balancing algorithms, such as consistent hash algorithms, face challenges in achieving uniform load distribution, consistency during failures, and efficient resource management, particularly in cloud-native environments with dynamic workloads and stateless architectures.
Innovation Solution
A jump table-assisted hybrid hash algorithm is employed to distribute loads across servers, utilizing a bit map with logmN levels to improve lookup time and reduce resource consumption by maintaining server availability indicators, allowing for efficient load balancing and fault tolerance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a consistent hash algorithm is used to distribute traffic to servers, then fault tolerance is achieved, but uniform load distribution and algorithmic performance are compromised
Solution Approach 1:
The patent segments the hash table into multiple levels (L0 to Lk) where each level contains indices that map to the previous level. This hierarchical segmentation allows the system to perform lookups efficiently by traversing from the top level down to the leaf level, achieving O(log_m N) time complexity while maintaining consistent hashing properties for fault tolerance.
Solution Approach 2:
The patent introduces a multi-dimensional hierarchical structure by organizing the hash table into multiple levels rather than using a flat single-level structure. Each level adds a dimension to the lookup process, allowing efficient navigation through the hash table while maintaining the consistent hashing algorithm's fault tolerance capabilities.
2Reliability
If existing open-source consistent hashing algorithms are used, then fault tolerance is achieved, but uniform load distribution is sacrificed
Solution Approach 1:
The patent applies local quality by making each level of the hierarchical hash table serve a specific function: upper levels provide efficient lookup paths while lower levels maintain detailed server mappings. The leaf level (L0) contains the actual server indices, ensuring uniform load distribution, while upper levels optimize for lookup speed and fault tolerance.
3Device complexity
If a traditional hash table is used for server lookup, then simplicity is maintained, but lookup time increases
Solution Approach 1:
The patent performs preliminary action by pre-organizing the hash table into a hierarchical structure during initialization. The multi-level indices are pre-computed and stored, allowing lookup operations to efficiently traverse from the top level down to the leaf level in O(log_m N) time, significantly faster than traditional linear search while maintaining reasonable structural complexity.
Data Source
AI summary
Improving load distribution and consistency is provided. A device intermediary to clients and servers can maintain bit values indicative of server availability stored in indices arranged in various levels. A lowest level comprises indices corresponding to a list of servers repeated multiple times. Each index in a higher level maps to a set of indices in a lower level. The device can receive a request from a client to access a server. The device can identify an index in a highest level. The device can determine a second index in the highest level that is after the index in the highest level and has a bit value indicating server availability. The device can identify an index in the lowest level mapping to the second index in the highest level. The device can select a server corresponding to the index in the lowest level.


