Linear Sweep Filesystem Checker for Fast Consistency Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional filesystem checking methods require multiple passes over large filesystems, leading to inefficient random I/O operations and prolonged checking times, which can take days or weeks for very large datasets.

Innovation Solution

A linear sweep filesystem checker that uses a hash function to record and verify metadata block pointers in a single linear scan, allowing for fast and accurate consistency verification with a fixed amount of memory, providing a yes/no answer on filesystem correctness and approximate error location.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional filesystem checking is performed using multiple passes, then error detection accuracy is improved, but checking time increases significantly

Engineering Contradiction:
Improveerror detection accuracyVSAvoidchecking time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The filesystem checking process is segmented into a single linear sweep that processes all blocks sequentially, rather than multiple random passes. This segmentation strategy divides the checking task into one comprehensive scan that captures all errors, eliminating the need for multiple time-consuming passes while maintaining detection accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by pre-computing and storing pointer count information for all metadata blocks before the linear sweep. This preliminary data preparation enables the single-pass algorithm to verify filesystem consistency without requiring multiple subsequent passes, thus reducing checking time while maintaining reliability.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If conventional filesystem checking uses multiple random I/O operations, then comprehensive error checking is achieved, but I/O efficiency deteriorates

Engineering Contradiction:
Improveerror checking completenessVSAvoidI/O efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements continuous useful action through a single linear sweep that sequentially reads all filesystem blocks in order. This continuous sequential access pattern maximizes I/O efficiency by minimizing random seek operations, while still achieving comprehensive error checking through the systematic examination of all blocks and their pointer relationships.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The algorithm performs preliminary computation of pointer counts and stores this information before the linear sweep begins. This preliminary action allows the main linear sweep to focus solely on verification without requiring additional random I/O operations, thus maintaining I/O efficiency while ensuring complete error checking.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If filesystem size increases, then data storage capacity is improved, but checking time increases proportionally

Engineering Contradiction:
Improvedata storage capacityVSAvoidchecking time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The checking algorithm is segmented into independent processing units that can handle each block sequentially during the linear sweep. This segmentation allows the checking time to scale linearly with filesystem size rather than exponentially, as each block is processed once in a systematic manner without requiring multiple passes through the entire filesystem.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the fundamental parameter of checking approach from multiple random passes to a single linear sweep. This parameter change transforms the time complexity from O(n^2) or worse to O(n), where n is the number of blocks, allowing efficient checking even as filesystem size increases while maintaining proportional scaling.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8793224B2Linear sweep filesystem checking
Publication Date: 2014.07.29 RED HAT INC
  • US8793224B2 patent drawing
  • US8793224B2 patent drawing
  • US8793224B2 patent drawing

AI summary

A filesystem checker identifies a metadata block in a filesystem and determines a number of pointers pointing to the metadata block and a number of pointers embedded in the metadata block. The filesystem checker records the number of pointers pointing to the metadata block and the number of pointers embedded in the metadata block in a filesystem checker array. The filesystem checker verifies a consistency of the filesystem using data recorded in the filesystem checker array.