Virtual Block Address Mapping for Storage Data Integrity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current storage systems face inefficiencies in maintaining data integrity and deduplication due to the complexity of tracking reference counts for virtual block addresses across multiple logical pages, leading to potential corruption and prolonged file system check times.
Innovation Solution
The implementation of a logical address space mapping module that generates log records to track pointers from leaf pages to virtual block addresses, identifies discrepancies in reference counts, and modifies pointers to correct corrupted virtual block addresses, thereby maintaining data integrity and improving file system check efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If reference counts for virtual block addresses are tracked across multiple logical pages, then data integrity is improved, but file system check times increase from hours to days
Solution Approach 1:
The patent segments the file system check process by organizing leaf pages into groups and processing them in batches. The mapping module divides the large-scale reference count verification into smaller, manageable units that can be processed sequentially, reducing the overall check time from days to hours while maintaining complete data integrity verification.
Solution Approach 2:
The mapping module performs preliminary actions by pre-establishing the logical address space structure and organizing pointer relationships before the file system check begins. This pre-organization allows the check process to efficiently verify reference counts without having to build the address space structure during the check, significantly reducing verification time.
2Reliability
If pointers to virtual block addresses are corrected by modifying leaf pages, then data integrity is improved, but the complexity of the storage system increases
Solution Approach 1:
The mapping module implements self-service by automatically detecting corrupted virtual block addresses and correcting them by modifying the appropriate leaf pages without external intervention. The module autonomously identifies discrepancies in reference counts and performs the necessary pointer corrections, reducing the need for complex external repair mechanisms while ensuring data integrity.
Solution Approach 2:
The system employs feedback mechanisms where the mapping module continuously monitors reference counts and compares them against expected values. When discrepancies are detected, the module provides feedback to identify and correct the corrupted pointers in leaf pages, creating a self-correcting system that maintains data integrity without requiring complex external validation processes.
Data Source
AI summary
An apparatus includes a processing device configured to generate log records each representing a pointer from a leaf page in a logical address space of a storage system to a virtual block address and comprising a leaf page address of the leaf page. The processing device is also configured to identifying a subset of the log records representing pointers to a given virtual block address to determine a first reference count, and to determine whether the first reference count is different than a second reference count obtained from a given virtual entry of a given virtual block structure that corresponds to the given virtual block address. The processing device is further configured, responsive to determining that the first and second reference counts are different, to modify pointers to the given virtual block address in leaf pages with associated leaf page addresses in the identified subset of the log records.


