File System Replication Using Changelog and Inode Scanning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for replicating file systems in use are inefficient and often result in inaccurate replicas due to the inability to synchronize changes in real-time, leading to excessive downtime and resource wastage, especially when the system is actively modified during the replication process.

Innovation Solution

A method utilizing a changelog to record modifications of the file system, initiating a scan of directory inodes, and updating a database with sequential records from the changelog to build a coherent replica target file system, allowing for replication while the source file system is in use.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a full file system scan is performed to create a replica, then the replica can be synchronized, but the process takes several hours and the file system must be quiescent (no activity), causing excessive downtime

Engineering Contradiction:
Improvereplica synchronization accuracyVSAvoidreplication downtime
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies preliminary action by performing a complete file system scan and creating the replica structure before the file system becomes active. The method scans the file system hierarchy, creates the replica directory structure, and prepares all necessary data structures in advance, so that when the file system goes online, the replica is already in place and only incremental updates are needed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the replication process into distinct phases: an initial offline scan phase where the complete file system hierarchy is traversed and the replica structure is created, and a subsequent online phase where only incremental changes are applied. This segmentation allows the time-consuming synchronization work to be done when the file system is offline, while minimizing downtime when it is active.

Inventive Principle:
Principle #1Segmentation

2Reliability

If the file system is kept quiescent during replication to ensure accuracy, then a coherent replica can be produced, but productivity and availability are severely reduced

Engineering Contradiction:
Improvereplica coherenceVSAvoidfile system availability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent performs the complete file system scan and replica creation as a preliminary action during a maintenance window when the file system is offline. This ensures that the replica structure is fully established with all files and directories in their correct positions before the file system becomes active, guaranteeing replica coherence without requiring the file system to remain quiescent during normal operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements periodic action by scheduling complete replication scans at regular intervals or during planned maintenance windows, rather than requiring continuous quiescence. Between these periodic full scans, the system can use incremental updates or changelogs to keep the replica synchronized, allowing the file system to remain fully operational while still maintaining replica coherence through periodic re-synchronization.

Inventive Principle:
Principle #19Periodic action

3Productivity

If incremental updates are applied during file system operation, then availability is maintained, but the replica may become inconsistent if changes occur during the scan

Engineering Contradiction:
Improvefile system availabilityVSAvoidreplica consistency
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent introduces an intermediary mechanism in the form of a changelog or transaction log that records all file system changes. This intermediary allows the replication process to capture changes atomically - either all changes up to a certain point are replicated, or none are - preventing partial or inconsistent states. The changelog acts as a buffer between the file system operations and the replica updates, ensuring consistency even when the file system is active.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent implements feedback by continuously monitoring the file system state through changelogs and using this information to update the replica. The system reads the changelog to determine what changes have occurred since the last replication, applies only those specific changes to the replica, and verifies consistency. This feedback loop ensures that the replica remains synchronized with the source file system without requiring the source to be quiescent.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10623485B2Method of, and apparatus for, file system replication
Publication Date: 2020.04.14 XYRATEX TECH LTD
  • US10623485B2 patent drawing
  • US10623485B2 patent drawing
  • US10623485B2 patent drawing

AI summary

A method of replicating a source file system on a storage system, the method including: utilising a changelog operable to store sequentially a data record corresponding to a modification of a source file system by a storage request; specifying a first data record of the changelog at a first time; initiating a scan of the directory inodes of the source file system at the first time; scanning the directory inodes; completing the scan at a second time later than the first time; specifying a second data record of the changelog at the second time; storing, in a database, information corresponding to the scanned directory inodes; updating the database with sequential data records from the first data record to the second data record of the changelog; and building, on a computer system, a replica target file system based on the database.