Dynamic Hash Remapping for Skewed Key Distribution Indexing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing indexing techniques struggle with dynamic datasets due to skewed key distributions and changing key densities, leading to inefficiencies in search, insertion, and scanning, especially when key distributions are non-uniform and dynamic.
Innovation Solution
A dynamic hashing method that adjusts a remapping function's slope based on key values, allowing for optimal insertion and storage in target buckets while dynamically updating the hashing structure to accommodate changing key distributions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If a typical index structure (B+ tree or hash table) is used assuming uniform key distribution, then the structure is simple and easy to implement, but the search, insertion, and scanning performance significantly decreases when key distribution is non-uniform or changes over time
Solution Approach 1:
The patent applies dynamics by making the index structure adaptive to changing key distributions. The system dynamically adjusts the cumulative distribution function approximation and redistributes keys across buckets based on observed distribution changes, transforming a static index structure into one that evolves with the data characteristics.
Solution Approach 2:
The patent changes parameters by adjusting the cumulative distribution function approximation parameters based on observed key distributions. When distribution changes are detected, the system modifies the CDF parameters and remaps keys to new bucket positions, optimizing the index structure for current data characteristics.
2Productivity
If a learned index technique using machine learning algorithms is used to approximate CDF, then performance is improved for uniform key distributions, but the overhead to predict CDF dynamically increases and performance significantly decreases for dynamic datasets
Solution Approach 1:
The patent applies partial action by using a simplified CDF approximation approach rather than full machine learning models. The system uses lightweight statistical methods to estimate the cumulative distribution, performing only the necessary calculations to achieve adequate performance without the excessive overhead of complex ML algorithms.
Solution Approach 2:
The system performs self-service by automatically detecting distribution changes and adjusting its own CDF approximation without requiring external retraining or complex intervention. The index structure adapts autonomously to changing data patterns, reducing the need for manual optimization and complex prediction mechanisms.
3Productivity
If the CDF approximation is maintained for dynamic datasets, then search performance may be improved, but the accuracy of CDF approximation becomes inadequate and overhead to update increases
Solution Approach 1:
The patent applies periodic action by monitoring key distribution at regular intervals and triggering CDF approximation updates only when significant changes are detected. This periodic monitoring approach maintains adequate accuracy by updating the approximation when needed while avoiding unnecessary updates that would increase overhead without improving precision.
Solution Approach 2:
The system uses feedback by continuously monitoring key distribution patterns and using this information to adjust the CDF approximation. The feedback mechanism detects when distribution changes warrant updates and triggers appropriate adjustments, maintaining adequate accuracy while managing update overhead through intelligent decision-making.
Data Source
AI summary
A dynamic hashing apparatus includes a processor configured to obtain a target segment based on at least a part of a key value of an insertion request, compute a hash value by applying a remapping function corresponding to the obtained target segment to an input value based on the key value, and update the remapping function by adjusting a slope of the remapping function in response to the key value not being insertable into a target bucket selected based on at least a part of the computed hash value from among buckets included by the target segment.


