Component-Aware Incremental Backup for Storage Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing backup solutions face inefficiencies in determining incremental changes, leading to unnecessary backups and increased storage and compute costs due to the inclusion of all changed data blocks, even if not all changes are significant for the component's operation.

Innovation Solution

A component-aware incremental backup, restore, and reconciliation solution that allows components to independently determine whether to perform a full or incremental backup, generating metadata to identify only the necessary changed data for incremental backups, and enabling precise restoration and reconciliation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If snapshot-based backup solutions generate block-level checksums of all data blocks and compare them with previous checksums, then all changed data blocks can be identified, but unnecessary backup data is generated and storage costs increase

Engineering Contradiction:
Improvechange detection accuracyVSAvoidbackup data volume
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent segments the data backup process into component-level units, where each software component is independently tracked and backed up. Instead of treating the entire system as a single backup unit with block-level checksums, the solution divides the system into discrete components (services, applications, daemons) and performs component-aware incremental backups. This segmentation allows the system to identify and backup only the specific components that have changed, rather than backing up all changed data blocks across the entire system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts and isolates component-specific metadata (such as file paths, configuration data, and component identifiers) from the general backup process. By extracting this component-level information, the system can precisely determine which components have changed and exclude unrelated components from the backup, thereby reducing unnecessary backup data volume while maintaining accurate change detection for the relevant components.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If all changed data blocks are included in incremental backup, then complete backup coverage is achieved, but backup time and compute cycles increase

Engineering Contradiction:
Improvebackup completenessVSAvoidbackup execution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by maintaining component metadata and change tracking information before the actual backup process. The system pre-identifies which components have changed by monitoring component-level events and maintaining a record of component states. This preliminary component identification allows the backup process to skip unnecessary components and directly proceed with backing up only the changed components, thereby reducing backup execution time while ensuring complete coverage of relevant data.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If block-level checksum comparison is performed on all data blocks, then any changed block is detected, but compute resource usage increases

Engineering Contradiction:
Improvechange detection accuracyVSAvoidcompute resource consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent segments the compute-intensive checksum comparison operation into component-level checks. Instead of computing block-level checksums for all data blocks in the system, the solution performs lightweight component-level change detection by comparing component metadata, file paths, and component identifiers. This segmentation dramatically reduces compute resource consumption while maintaining accurate detection of which components have changed, reserving detailed block-level analysis only for the specific components that are determined to have changed.

Inventive Principle:
Principle #1Segmentation

4Manufacturing precision

If incremental backup includes all changed data blocks, then restoration accuracy is improved, but storage costs increase

Engineering Contradiction:
Improverestoration accuracyVSAvoidstorage cost
Core Design Contradiction:
Manufacturing precisionVSQuantity of substance

Solution Approach 1:

The patent extracts component-specific metadata and change tracking information to precisely identify which components have changed. By extracting this component-level information, the system can generate incremental backups that include only the necessary changed components, thereby maintaining restoration accuracy for the affected components while reducing the overall volume of backup data stored. The component metadata acts as an index that enables precise restoration of only the required components without storing unnecessary backup data.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11144401B2Component aware incremental backup, restore, and reconciliation solution
Publication Date: 2021.10.12 VMWARE INC
  • US11144401B2 patent drawing
  • US11144401B2 patent drawing
  • US11144401B2 patent drawing

AI summary

A system and method of performing an incremental backup process are disclosed. In certain aspects, the method comprises retrieving a first metadata associated with a previous backup process of a component from a backup location in a storage. The method further comprises passing the first metadata to the component for determining incremental backup data of the component corresponding to a difference between current data of the component and data of the component associated with the previous backup process. The method further comprises receiving information indicative of the incremental backup data from the component. The method further comprises receiving, from the component, a second metadata associated with the incremental backup process. The method also comprises storing the incremental backup data and the second metadata as associated with the incremental backup process.