Bε-tree Range Lookup via Fractional Buffer Transfer
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Bε-trees face inefficiencies in read operations, particularly range lookups, due to the need for full traversal and significant memory usage, which can exceed available resources in computing systems.
Innovation Solution
Implement a method to transfer a fractional subset of key-value pairs from each level of the Bε-tree to a secondary data structure, where they are merged and sorted, allowing for efficient range lookups with reduced processing and memory consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If full traversal method is used for range lookups on Bε-tree, then all key-value pairs in range can be found, but memory consumption and processing resources are excessively high
Solution Approach 1:
The patent divides the full traversal process into segments by transferring only a fractional subset of key-value pairs from each level of the Bε-tree to a secondary data structure. This segmentation allows the system to process and return results in manageable chunks rather than loading the entire tree into memory, thus reducing peak memory consumption while still enabling complete range lookups through iterative processing.
Solution Approach 2:
The patent implements partial action by transferring only a fraction of key-value pairs at each level rather than all pairs. This partial transfer approach reduces the immediate memory burden while maintaining the capability to perform complete range lookups by repeatedly applying the transfer process to retrieve additional subsets of data.
2Measurement precision
If full traversal method is used for range lookups on Bε-tree, then all key-value pairs in range can be found, but processing time and resource usage increase significantly
Solution Approach 1:
By segmenting the traversal into fractional transfers at each level, the patent enables the system to process and return results incrementally. This segmentation allows for earlier return of partial results and avoids the overhead of processing the entire tree before returning any data, thus reducing overall processing time for large range lookups.
Solution Approach 2:
The patent performs preliminary action by transferring and sorting key-value pairs into a secondary data structure before the actual range lookup query is fully executed. This preliminary organization of data in a more accessible format reduces the processing time required during the actual query execution phase.
3Measurement precision
If buffers are fully traversed for each key in range lookup, then all messages can be merged with key-value pairs, but significant processing resources are consumed
Solution Approach 1:
The patent extracts the buffer traversal and merging operation from the main range lookup process. By transferring key-value pairs to a secondary data structure first, the system separates the data transfer phase from the merging phase, allowing buffer messages to be merged with extracted key-value pairs in a more resource-efficient manner that avoids redundant processing during the main lookup operation.
Data Source
AI summary
Embodiments herein are directed towards systems and methods for performing range lookups in Bε-trees. One example method involves receiving a request to return key-value pairs within a range of keys from the Bε-tree. The Bε-tree includes a plurality of nodes, each node being associated with a buffer that stores key-value pairs. The method further involves determining a fractional size of the range of keys. The method further involves, for each level of the Bε-tree, obtaining from within one or more buffers of one or more nodes of the level, a set of key-value pairs within the range of keys up to a size equal to the fractional size and transferring the set of key-value pairs to a result data structure. The method further involves sorting and merging all key-value pairs in the result data structure and returning the result data structure in response to the request.


