Incremental File System Check Using Bitmaps
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing file system backup and recovery methods are inefficient due to the time-consuming nature of traditional file system checks, which are linearly proportional to the size of the file system, leading to significant processing overhead and reduced file server performance.
Innovation Solution
Implementing an incremental file system check method that identifies and verifies only changes between successive checkpoints, reducing the scope of file system checks to changed data structures and blocks, thereby reducing verification time and processing overhead.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional file system check (fsck) is performed on all checkpoints, then file system verification accuracy is ensured, but processing time and system performance deteriorate significantly
Solution Approach 1:
The patent segments the file system verification process into two distinct phases: (1) a full fsck performed only on the most recent checkpoint to ensure baseline accuracy, and (2) incremental verification performed on subsequent checkpoints that checks only the differences between consecutive checkpoints. This segmentation allows the system to maintain verification accuracy while dramatically reducing the time required for checkpoint verification.
Solution Approach 2:
The patent performs preliminary identification of changed blocks between checkpoints before performing verification. By using bitmap comparisons and metadata analysis to pre-identify which blocks have changed, the system prepares the verification process in advance, ensuring that only necessary blocks are verified in the subsequent fsck operation, thus reducing overall verification time.
2Reliability
If full file system check is performed on every checkpoint, then data integrity is verified, but processing capability and system resources are excessively consumed
Solution Approach 1:
The patent applies partial action by performing complete fsck operations only when necessary (on the most recent checkpoint and when corruption is detected), while using lighter incremental verification for intermediate checkpoints. This selective approach ensures data integrity is maintained through thorough verification when needed, while avoiding excessive processing resource consumption during normal operations.
Solution Approach 2:
The patent maintains continuous monitoring of file system changes through incremental verification between checkpoints, ensuring that data integrity checks are performed continuously rather than intermittently. This continuous action at a reduced intensity level maintains reliability while preserving system productivity.
3Reliability
If checkpoints are saved frequently for high availability, then system recovery capability is improved, but the number of fsck operations increases and processing overhead increases
Solution Approach 1:
The patent segments the verification workload based on checkpoint sequence, applying full verification only to the latest checkpoint and incremental verification to historical checkpoints. This segmentation allows frequent checkpoint saving for high availability while managing processing overhead through differentiated verification strategies.
Solution Approach 2:
The patent discards the expensive full fsck operation for checkpoints that can be verified through lighter incremental checks. By recovering verification information from the previous checkpoint's full fsck results and applying only incremental differences, the system reduces processing overhead while maintaining the reliability benefits of frequent checkpointing.
Data Source
AI summary
A method and apparatus for performing incremental file system checks is described which uses file system information to identify changes that have occurred to a file system between checkpoints. The set of changes can be represented by bitmaps and data structures which may be used by file system check utilities to identify potential errors and to remedy these errors if appropriate. Verifying only file system changes greatly reduces the processing overhead associated with typical backup and recovery mechanisms.


