Bε-tree Range Lookup via Fractional Buffer Transfer

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improverange lookup completenessVSAvoidmemory consumption
Core Design Contradiction:
Measurement precisionVSQuantity of substance

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #16Partial or excessive action

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

Engineering Contradiction:
Improverange lookup completenessVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #10Preliminary action

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

Engineering Contradiction:
Improvevalue accuracyVSAvoidprocessing resources
Core Design Contradiction:
Measurement precisionVSPower

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.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11093471B2Large range lookups for B<sup>ϵ</sup>-tree
Publication Date: 2021.08.17 VMWARE INC
  • US11093471B2 patent drawing
  • US11093471B2 patent drawing
  • US11093471B2 patent drawing

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.