Bε-tree Buffer Optimization via AMQ Extraction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Bε-tree data structures require increased memory and disk bandwidth as the buffer size grows, impacting performance in querying operations due to the need to load buffers into working memory, especially when using solid state media.

Innovation Solution

Implementing approximate membership query (AMQ) data structures like Bloom filters or cuckoo filters to efficiently approximate the membership of key/value pairs in the buffer, allowing for faster queries and optimizing node splitting and merging techniques to maintain invariant responses without false negatives, while also proactively splitting or merging nodes based on child node counts and buffer thresholds.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the buffer size at each non-leaf node is increased to store more pending inserts, then the write optimization capability is improved, but the memory and disk bandwidth requirements increase, worsening query performance

Engineering Contradiction:
Improvewrite optimization capabilityVSAvoidmemory and disk bandwidth requirements
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent extracts the membership testing function from the full buffer data and replaces it with a compact approximate membership query (AMQ) structure. Instead of loading entire buffers into memory for query operations, only the compact AMQ structure is loaded, which uses minimal space while providing efficient membership testing capability. This resolves the contradiction by maintaining write optimization through buffer structures while dramatically reducing memory and bandwidth requirements for queries.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces an intermediary AMQ structure that sits between the storage buffer and the query processing logic. This intermediary structure enables efficient membership testing without requiring direct access to the full buffer contents, thereby reducing the memory and disk bandwidth requirements while preserving the functional capability to determine whether keys are present in the buffer.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Quantity of substance

If the buffer size is increased to accommodate more inserts, then the capacity to handle write operations is improved, but the time required to load the buffer into working memory increases, worsening query response time

Engineering Contradiction:
Improvebuffer capacityVSAvoidquery response time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent extracts only the essential membership testing information from the full buffer and stores it in a compact AMQ structure. This extracted structure can be loaded quickly into working memory while retaining the ability to test whether keys are present in the buffer, thus maintaining high buffer capacity while minimizing load time and improving query response time.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the parameter representation from full buffer contents to a compact AMQ structure with different physical characteristics (smaller size, different data organization). This parameter change enables the system to maintain large logical buffer capacity while using minimal physical memory space that can be loaded rapidly, thereby resolving the time-capacity tradeoff.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If approximate membership query structures are used to reduce memory usage, then the query performance is improved, but there is a risk of false positives which may affect accuracy

Engineering Contradiction:
Improvequery performanceVSAvoidquery accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements a dynamic query processing approach where the system adapts its behavior based on AMQ results. When the AMQ returns a negative result, the query is terminated early with high confidence. When the AMQ returns a positive result, the system performs a more thorough verification. This dynamic approach optimizes query performance by avoiding unnecessary full buffer loads for negative cases while maintaining accuracy through selective verification.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent employs feedback mechanisms where the results from AMQ structures inform subsequent query processing decisions. The AMQ acts as a filtering stage that provides feedback to the query processor, allowing the system to adjust its processing strategy based on the AMQ results, thereby maintaining high query performance while ensuring accuracy through conditional verification.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11354288B2Optimizing operations on b e-trees stored on solid state media
Publication Date: 2022.06.07 VMWARE INC
  • US11354288B2 patent drawing
  • US11354288B2 patent drawing
  • US11354288B2 patent drawing

AI summary

Exemplary methods, apparatuses, and systems include a file system process determining to a flush a node in a first tree. The first node includes a buffer structured as a second tree. The file system process generates an input/output instruction to load the buffer from a first memory to a second memory. The second tree is stored in two more non-contiguous locations in the first memory and the input/output operation includes a read operation corresponding to each of the two or more non-contiguous locations. The file system process causes the input/output instruction to be executed concurrently on the first memory.