B Tree Node Sharing via Operation Sequence Numbers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current snapshot technologies face scalability issues with redo-log based methods and increased metadata costs due to node sharing in tree-based techniques, impacting system performance.

Innovation Solution

The implementation of a distributed storage system using a copy-on-write (COW) B+ tree structure, where operation sequence numbers (SNs) and snapshot sequence numbers (snapSNs) are used to efficiently manage shared leaf nodes, determining when copy-on-write is required, thereby reducing metadata overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If tree-based snapshot techniques are used to manage a large number of snapshots, then scalability is improved, but metadata overhead increases due to node sharing management

Engineering Contradiction:
ImprovescalabilityVSAvoidmetadata overhead
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent uses copy-on-write (COW) B+ tree structures where node copies are created when sharing is needed. Instead of managing complex sharing metadata, the system creates isolated copies of B+ tree nodes for different snapshots, eliminating the need for intricate node sharing management while maintaining scalability across hundreds of snapshots.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent segments the B+ tree structure into independent nodes that can be individually copied and managed. Each snapshot maintains its own segmented B+ tree structure, allowing independent management of node sharing and reducing the metadata overhead associated with tracking shared nodes across multiple snapshots.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If node sharing is managed in tree-based snapshot structures, then snapshot scalability is improved, but system performance deteriorates due to increased metadata cost

Engineering Contradiction:
Improvesnapshot scalabilityVSAvoidsystem performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system uses copy-on-write semantics where B+ tree nodes are copied rather than shared between snapshots. This eliminates the metadata overhead of tracking shared nodes, improving system performance while maintaining the ability to scale to hundreds of snapshots through efficient node copying mechanisms.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent employs ephemeral B+ tree node structures that are created on-demand for snapshot operations and discarded when no longer needed. These temporary node structures reduce the long-term metadata storage requirements and improve system performance by minimizing the overhead of persistent node sharing management.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Data Source

PatentUS11593399B2System and method for managing B tree node sharing using operation sequence numbers
Publication Date: 2023.02.28 VMWARE INC
  • US11593399B2 patent drawing
  • US11593399B2 patent drawing
  • US11593399B2 patent drawing

AI summary

System and method for managing copy-on-write (COW) B tree structures for metadata of storage objects stored in a storage system determine, when a request to modify a target storage object stored in the storage system that requires a modification of a target leaf node in a B tree structure for metadata of the target storage object is received, whether an operation sequence number of the target leaf node is greater than a snapshot sequence number of a parent snapshot of a running point of the B tree structure. When the operation sequence number is greater than the snapshot sequence number, the target leaf mode is modified in place without copying the target leaf node. When the operation sequence number is not greater than the snapshot sequence number, the target leaf node is copied as a new leaf node for the B tree structure and the new leaf node is modified.