Difference-Level Snapshots in Distributed Object Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed data center systems face challenges in achieving high storage efficiency, high system bandwidth, and low-latency data recovery while maintaining fault tolerance, as optimizing one aspect often compromises performance in others.

Innovation Solution

The implementation of a method for efficient storage and recovery of difference-level snapshots in a distributed computing system, where data objects are subdivided into chunks, and metadata is updated to indicate associations between chunk keys and values, enabling fault-tolerant uploads and quick recovery by encoding mappings in compact self-balancing data trees.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is stored using conventional methods in distributed systems, then storage capacity is achieved, but storage efficiency and bandwidth utilization are compromised

Engineering Contradiction:
Improvestorage capacityVSAvoidstorage efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent segments data objects into smaller data blocks and further divides them into data chunks. This segmentation enables efficient storage by allowing selective transmission and storage of only necessary data portions, improving storage efficiency while maintaining capacity. The segmented structure facilitates parallel processing and bandwidth optimization in distributed systems.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a hierarchical dimension to data storage by organizing data into multiple levels: data objects, data blocks, and data chunks. This multi-dimensional organization allows the system to optimize storage efficiency at each level independently, resolving the contradiction between storage capacity and efficiency by operating at different granularities simultaneously.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If conventional storage methods are used, then data can be stored, but data recovery latency is high and fault tolerance is compromised

Engineering Contradiction:
Improvefault toleranceVSAvoidrecovery latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by pre-computing and storing metadata that maps data blocks to their locations and relationships before failures occur. The key-value store pre-organizes chunk mappings and data block associations, enabling immediate recovery operations without computation delays during fault events, thus reducing recovery latency while maintaining fault tolerance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates redundant copies of data chunks across multiple storage nodes in the distributed system. These copies are managed through the key-value store which tracks multiple references to the same data blocks. When failures occur, the system can immediately retrieve data from alternative copies without lengthy recovery processes, reducing latency while ensuring fault tolerance.

Inventive Principle:
Principle #26Copying

3Reliability

If snapshots are stored completely without deduplication, then data integrity is maintained, but storage efficiency decreases

Engineering Contradiction:
Improvedata integrityVSAvoidstorage efficiency
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the unique portions of data between snapshots by comparing data blocks across different versions. The system identifies and stores only the changed data blocks in difference-level snapshots, while maintaining references to unchanged blocks from previous snapshots. This extraction approach preserves data integrity for all snapshots while significantly improving storage efficiency by eliminating redundant data storage.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the parameter of snapshot storage from complete copies to difference-level representations. By storing snapshots as differences relative to previous versions rather than complete copies, the system maintains data integrity through the ability to reconstruct any snapshot while improving storage efficiency. The key-value store manages these parameter changes by tracking which data blocks have changed between snapshot versions.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11314440B1Distributed object storage supporting difference-level snapshots
Publication Date: 2022.04.26 VMWARE INC
  • US11314440B1 patent drawing
  • US11314440B1 patent drawing
  • US11314440B1 patent drawing

AI summary

Techniques for the increased efficiency of storing data objects storage in the object storage of a software designed data center (SDDC) are provided. The techniques include the efficient storage of data, while enabling snapshots of each updating of the data. The snapshots of the data may be efficiently recovered via the techniques. Difference-level mappings for each snapshot are encoded in compact self-balancing data trees included in the object's metadata. The metadata mappings include mappings between various address spaces employed by the SDDC, as well as the address spaces employed by data stores that store the data on physical medium. Because the metadata is efficiently structured, the metadata for an object may be cached for quick lookups during data access and/or snapshot recovery. The techniques also provide low-latency recovery and/or system rollback in the event of any failure in the SDDC.