Repeatable Hierarchical Data Traversal for Backup Resumption

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Large file systems take a long time to backup, and interruptions during the process can cause the backup to restart from the beginning, leading to inefficiencies due to unpredictable file system traversal orders.

Innovation Solution

A method to ensure repeatable data traversal by sorting file system entries into a prescribed order, allowing for the backup system to resume from the last successfully backed up point without re-traversing the entire file system, using a list of items sorted for traversal repeatability and maintaining records of successful backups.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the backup process restarts from the beginning after every interruption, then the backup system can ensure data completeness, but the backup time and productivity are significantly reduced

Engineering Contradiction:
Improvebackup completenessVSAvoidbackup speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by recording the last successfully backed up file position and the traversal state before any backup operation. When an interruption occurs, these pre-recorded states allow the system to resume from the exact point where it left off, rather than restarting from the beginning. This preliminary recording of backup state enables efficient resumption and significantly reduces redundant backup operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms by continuously tracking and recording the backup progress, including the last successfully backed up file and the current traversal position. This feedback information is stored and used to determine the resumption point after an interruption. The feedback loop ensures that the system can accurately identify where to continue the backup operation, maintaining both completeness and efficiency.

Inventive Principle:
Principle #23Feedback

2Adaptability or versatility

If the file system traversal order is not guaranteed to be repeatable, then the backup system can handle dynamic file systems, but it cannot reliably resume from the last successful backup point

Engineering Contradiction:
Improvehandling dynamic file systemsVSAvoidresume accuracy
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system creates a copy or snapshot of the file system traversal state at the point of interruption, including the current directory position and the list of entries to be processed. This copied state information is stored separately and used to reconstruct the exact traversal context during resumption. By copying the traversal state rather than relying on live file system state, the system ensures reliable resumption even if the file system undergoes changes.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system performs preliminary actions by pre-recording the traversal sequence and file entry order before backup begins. This preliminary capture of traversal metadata includes directory paths, entry names, and processing positions. When resuming, the system refers back to this pre-recorded traversal information to maintain the same processing sequence, ensuring that the backup can reliably continue from the correct position without re-traversing the entire file system.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7657579B2Traversing data in a repeatable manner
Publication Date: 2010.02.02 EMC IP HLDG CO LLC
  • US7657579B2 patent drawing
  • US7657579B2 patent drawing
  • US7657579B2 patent drawing

AI summary

Traversing hierarchical data is disclosed. A first list of items in a first level of the data is received and sorted in an order. The data of the first level is processed in the order of the sorted first list. If any other level of data is encountered during processing, another list of items in the encountered level is received and sorted in an order. The data is processed in the order of the list.