Key-Value Store Data Retrieval Using Adjustable Hash Ranges
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed data storage systems using key-value databases face challenges in evenly distributing data across multiple nodes due to uneven hash value distribution, leading to inefficient data retrieval and load balancing.
Innovation Solution
The proposed solution involves using a key-value processing system that selectively generates requests to retrieve data by applying a hash function to a secondary field, allowing for even distribution of data across key-value servers, enabling retrieval of entire sub-groups or subsets of data based on primary and secondary fields, and adjusting the hash range to balance distribution and query efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If data is distributed across multiple key-value servers using hash values, then data storage capacity is increased, but data distribution becomes uneven leading to retrieval inefficiency
Solution Approach 1:
The patent segments data into hierarchical groups and sub-groups, where each level can be independently queried. This allows selective retrieval of specific data portions without scanning entire distributed datasets, resolving the contradiction between distributed storage capacity and retrieval efficiency by enabling targeted access patterns.
Solution Approach 2:
The patent introduces adjustable hash ranges as a parameter that can be modified to control data distribution characteristics. By changing the hash range parameter, the system can optimize the balance between distribution evenness and query efficiency for different workload scenarios, directly addressing the contradiction.
2Extent of automation
If hash function is applied to distribute data across key-value servers, then data distribution is automated, but uneven hash value distribution causes load balancing problems
Solution Approach 1:
The patent implements feedback mechanisms where the system monitors hash value distribution patterns and adjusts hash ranges accordingly. This feedback loop enables the automated distribution system to self-correct imbalances, maintaining both automation benefits and load balancing reliability simultaneously.
Solution Approach 2:
The patent makes the hash distribution system dynamic by allowing hash ranges to be adjusted based on observed distribution patterns. This transforms the static hash function into a dynamic system that adapts to maintain even distribution, resolving the contradiction between automation and reliability.
3Quantity of substance
If entire sub-groups of data are retrieved using multiple keys, then complete data sets are obtained, but query complexity increases
Solution Approach 1:
The patent segments the query process into hierarchical levels, allowing clients to specify retrieval scope at different granularities. This segmentation enables simple single-key queries for subset retrieval while maintaining the capability for multi-key queries when complete sub-group retrieval is needed, managing complexity through structured organization.
Solution Approach 2:
The patent creates a universal query interface that handles both single-key and multi-key queries through the same key-value processing system. This multi-functionality allows the system to retrieve either complete sub-groups or specific subsets using a unified approach, reducing apparent query complexity while maintaining retrieval completeness options.
Data Source
AI summary
A device configured to operate in a distributed network system includes a key-value processing system to generate at least one of a first request and a second request. The first request is to retrieve a selected one of a plurality of sub-groups of data. The first request includes a plurality of keys each including a first value identifying the selected one of the plurality of sub-groups and a respective one of a plurality of second values. Each of the second values identifies a respective subset of data within the selected one of the plurality of sub-groups. The second request is to retrieve a selected one of the subsets of data within the selected one of the plurality of sub-groups and includes a key. The key includes the first value and a selected one of the second values, and the selected one of the second values corresponds to a hash value.


