B+ Tree Node Location Offset Array for Cloud Storage Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage and update operations for append-only B+ trees in elastic cloud storage environments suffer from high overhead and low efficiency due to complex search and serialization processes, particularly when handling small S3 objects.

Innovation Solution

A novel data read and update method that unifies key-value pairs storage by merging them into single data blocks and introduces node location information in the form of an offset array, allowing for efficient binary search and reduced CPU and cache memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional B+ tree storage and update operations are used, then data can be stored and updated, but the overhead is high and efficiency is low due to complex search, comparison, deserialization, and serialization workloads

Engineering Contradiction:
Improvedata read and update speedVSAvoidcomputational overhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges key-value pairs into single data blocks and combines node location information with node data in the B+ tree structure. This merging eliminates separate storage and processing steps for keys and values, reducing the number of parsing and serialization operations required during read and update operations, thereby improving productivity while reducing computational overhead

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent pre-calculates and stores node location information (offset arrays) within the B+ tree node structure itself. This preliminary action allows the system to directly locate target data without performing complex search and comparison operations during actual read and update operations, significantly reducing computational overhead and improving data access speed

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If metadata processing is performed on small S3 objects, then data can be accessed, but metadata processing becomes the major factor affecting system performance

Engineering Contradiction:
Improvedata access capabilityVSAvoidsystem performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent extracts node location information from the traditional B+ tree structure and stores it as offset arrays within the node data itself. This extraction eliminates the need for complex metadata processing during data access operations, as the location information is directly embedded and readily available, thereby improving system performance while maintaining data access capability

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent creates a simplified representation of node location information as offset arrays that can be directly used for data access without requiring complex metadata processing. This copying approach replaces the traditional metadata processing pipeline with a simpler, more efficient mechanism that directly maps to physical data locations, improving productivity without sacrificing ease of operation

Inventive Principle:
Principle #26Copying

Data Source

PatentUS12072937B2Data read method, data update method, electronic device, and program product
Publication Date: 2024.08.27 DELL PROD LP
  • US12072937B2 patent drawing
  • US12072937B2 patent drawing
  • US12072937B2 patent drawing

AI summary

Data reads and related data reading processes are described. An example data read method includes: receiving a data read request, the data read request being aimed at target node data stored in a target node of a B+ tree; acquiring node location information, the node location information indicating a storage location of node data in a node data set of the B+ tree, and the node data set including the target node data; and determining a target storage location of the target node data. Beneficially, data stored in the B+ tree can be read and updated efficiently while reducing computing overhead.