File System Snapshot Backup Using Block-Level Delta Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional data backup methods are inefficient due to their inability to identify fine-granularity changes, such as data block-level changes, in file system volumes, leading to wasteful resource usage as they often provide complete copies of files even for small changes, exacerbating the issue with increasing file sizes and hardware complexity.

Innovation Solution

The technique involves generating snapshots of file system volumes to identify specific changes, using file system extent delta trees to track changes and provide only the necessary block data for backups, thereby reducing storage and resource consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If file-level backup is performed to ensure complete data protection, then data reliability is improved, but resource consumption (energy, bandwidth, storage) increases significantly

Engineering Contradiction:
Improvedata protection completenessVSAvoidenergy consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent segments the file system volume into data blocks and organizes them using a B-tree structure. Instead of backing up entire files, the system identifies and backs up only specific data blocks that have changed, thereby reducing energy consumption while maintaining data protection completeness through fine-grained block-level tracking.

Inventive Principle:
Principle #1Segmentation

2Reliability

If file-level backup is performed to capture all changes, then data protection is improved, but bandwidth consumption increases due to transferring complete file copies

Engineering Contradiction:
Improvedata protection completenessVSAvoidbandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent extracts only the necessary changed data blocks from the file system volume using snapshot comparisons and B-tree traversal. By taking out only the specific blocks that need to be backed up rather than transferring complete file copies, bandwidth consumption is significantly reduced while data protection remains complete.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If complete file copies are provided in backup to ensure data integrity, then data reliability is improved, but storage space consumption increases

Engineering Contradiction:
Improvedata integrityVSAvoidstorage space consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments backup data into individual data blocks organized in a B-tree structure, allowing selective storage of only changed blocks. This segmentation enables data integrity to be maintained through block-level tracking while significantly reducing storage space consumption by avoiding duplication of unchanged file portions.

Inventive Principle:
Principle #1Segmentation

4Reliability

If file-level granularity backup is performed to capture all modifications, then completeness of backup is improved, but processing time and computational resources increase

Engineering Contradiction:
Improvebackup completenessVSAvoidbackup processing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent performs preliminary actions by creating snapshots of the file system volume before backup and organizing data blocks in a B-tree structure in advance. This preliminary organization enables efficient identification of changed blocks during backup processing, improving processing efficiency while maintaining backup completeness through pre-established data structures.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10509701B2Performing data backups using snapshots
Publication Date: 2019.12.17 APPLE INC
  • US10509701B2 patent drawing
  • US10509701B2 patent drawing
  • US10509701B2 patent drawing

AI summary

The embodiments set forth a technique for carrying out a backup of data managed at a computing device. According to some embodiments, the technique can include the steps of (1) receiving a request to carry out the backup of the data, (2) in response to the request, generating a current snapshot of the data, (3) identifying, in accordance with the current snapshot of the data, block data of at least one data block to be reflected in the backup of the data, wherein the at least one data block is tagged with an identifier of a file node to which the at least one data block corresponds, and (4) providing information to a storage to cause the block data to be reflected in the backup of the data.