Snapshot Tree Data Structure for Selective File Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing methods for snapshot management in storage systems require large amounts of storage to maintain full and incremental snapshots, leading to inefficient use of resources when only a portion of the data needs to be recovered, as they often necessitate reconstructing the entire snapshot tree from the last full snapshot and adding incremental snapshots.

Innovation Solution

The system employs a snapshot tree data structure that allows for the serialization of data into a flat set, enabling the reconstruction of specific portions of the tree without needing to restore the entire structure, using stub nodes to efficiently retrieve and restore only the requested data, thereby reducing storage and processing requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If full snapshots and incremental snapshots are stored to enable data recovery, then data recovery capability is improved, but storage space consumption increases

Engineering Contradiction:
Improvedata recovery capabilityVSAvoidstorage space consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent implements a snapshot tree structure where each snapshot contains references to parent snapshots, creating a nested hierarchy. Full snapshots contain complete data, while incremental snapshots contain only changes and reference parent snapshots for unchanged data. This nested structure allows the system to store multiple snapshots efficiently by sharing common data blocks across generations, reducing total storage consumption while maintaining full recovery capability.

Inventive Principle:
Principle #7Nested doll (Nesting)

2Reliability

If the entire snapshot tree is reconstructed to recover a portion of data, then data recovery completeness is improved, but recovery time and processing resources increase

Engineering Contradiction:
Improvedata recovery completenessVSAvoidrecovery time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent enables selective extraction of only the required data portions from the snapshot tree. When a recovery request is made, the system identifies the specific data blocks needed and retrieves them directly from the relevant snapshots, rather than reconstructing the entire snapshot tree. This extraction approach maintains data recovery completeness for the requested portions while significantly reducing recovery time and processing resources by avoiding unnecessary data reconstruction.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The snapshot tree is segmented into independent data blocks and nodes that can be individually accessed. Each snapshot is divided into data blocks with unique identifiers, allowing the system to retrieve specific segments (data blocks) without processing the entire snapshot structure. This segmentation enables parallel retrieval operations and optimizes I/O efficiency by focusing only on the required data portions.

Inventive Principle:
Principle #1Segmentation

3Manufacturing precision

If incremental snapshots are added to the full snapshot to recover data at a specific time point, then recovery accuracy is improved, but processing complexity and resource consumption increase

Engineering Contradiction:
Improverecovery accuracyVSAvoidprocessing complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent performs preliminary organization of snapshots into a structured tree hierarchy during the backup process. Each snapshot is pre-configured with references to its parent snapshot and associated data blocks are indexed with metadata. This preliminary structuring enables the recovery process to simply follow pre-established pointers and references rather than performing complex merge operations, reducing processing complexity while maintaining high recovery accuracy for specific time points.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11914485B2Restoration of specified content from an archive
Publication Date: 2024.02.27 COHESITY INC
  • US11914485B2 patent drawing
  • US11914485B2 patent drawing
  • US11914485B2 patent drawing

AI summary

A request to obtain an identified content item is received. It is determined that the identified content item is stored in a plurality of locations. It is determined to obtain the identified content item from a first storage location storing a first serialized representation of a file system snapshot that includes the identified content item and a second storage location storing a second serialized representation of the file system snapshot that includes the identified content item based on available resources associated with the plurality of locations. The identified content item is extracted from the first serialized representation at the first storage location and from the second serialized representation at the second storage location including building a stubbed tree data structure using the first serialized representation and the second serialized representation. The extracted identified content item is provided using the stubbed tree data structure.