File System Filter Driver for Efficient Change Logging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data backup systems face inefficiencies in identifying and logging block-level changes, leading to processor-intensive delays and storage waste due to methods like checksum operations and sequential logging, which do not scale well with large data sets.

Innovation Solution

A method and apparatus that utilize a file system logging process to monitor and log block changes in real-time, organizing the information in a b-tree structured log file, allowing efficient identification and grouping of changes by file or directory, reducing processing delays and storage inefficiencies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If checksum operations are performed on all data blocks to identify changes, then change detection accuracy is improved, but processor intensity and processing time increase significantly

Engineering Contradiction:
Improvechange detection accuracyVSAvoidprocessing speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent extracts only the necessary information for change detection (file metadata such as modification time, size, and attributes) rather than performing comprehensive checksum operations on all data blocks. This selective extraction of change indicators maintains detection accuracy while dramatically reducing processor intensity and processing time.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If sequential logging is used to record all block changes, then completeness of change tracking is improved, but storage efficiency deteriorates due to duplicate entries

Engineering Contradiction:
Improvechange tracking completenessVSAvoidstorage efficiency
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

The patent merges change information from multiple files and directories into a single consolidated log file, grouping changes by their parent directory. This consolidation eliminates duplicate log entries that would occur with individual file logging while maintaining complete tracking of all changes, thereby improving storage efficiency without sacrificing reliability.

Inventive Principle:
Principle #5Merging (Combining)

3Reliability

If periodic backup operations are performed on all selected files, then data protection is ensured, but storage space is wasted by copying unchanged files

Engineering Contradiction:
Improvedata protectionVSAvoidstorage space utilization
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

The patent performs preliminary change detection by monitoring file metadata (modification times, sizes, attributes) before initiating backup operations. This preliminary action identifies only the files that have actually changed since the last backup, allowing the system to protect data reliability while avoiding the storage waste of copying unchanged files.

Inventive Principle:
Principle #10Preliminary action

4Loss of substance

If block-level incremental backup is implemented, then storage efficiency is improved, but complexity of identifying changed blocks increases

Engineering Contradiction:
Improvestorage space efficiencyVSAvoidchange identification complexity
Core Design Contradiction:
Loss of substanceVSDevice complexity

Solution Approach 1:

The patent introduces a logging mechanism as an intermediary between file system changes and backup operations. This log file records metadata changes and serves as a mediator that simplifies the identification of changed blocks, reducing the complexity of block-level incremental backup implementation while maintaining storage efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8055613B1Method and apparatus for efficiently detecting and logging file system changes
Publication Date: 2011.11.08 NETAPP INC
  • US8055613B1 patent drawing
  • US8055613B1 patent drawing
  • US8055613B1 patent drawing

AI summary

A method and apparatus for efficiently logging changes to a file system are disclosed. A file system filter driver intercepts I/O requests directed to a file system, and analyzes the I/O requests to determine whether the requests are write or modify requests directed to a file included in a list of files to be monitored for changes. If the I/O request is directed to such a file, the file system filter driver logs the I/O request to a b-tree structured change log file. Furthermore, in one embodiment, the file system filter driver is configured to log file system changes to multiple log files to coincide with snapshot operations, such that the file system changes to be included in each snapshot are included in separate log files.