Partial Outer Parity Caching for Reliable Partial Block Writes
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage devices face challenges in accurately writing and reading data due to environmental factors like scratches on magnetic storage discs, which can invalidate outer parity information during partial data block writes, leading to errors in data recovery.
Innovation Solution
Implementing a partial outer parity cache that stores and extends partial outer parity generated during previous partial data block writes, allowing for the generation of complete and valid outer parity when the rest of the data block is written, ensuring robust error detection and correction.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If partial data block writes are performed to improve write flexibility and speed, then productivity is improved, but outer parity information becomes invalidated leading to data recovery errors
Solution Approach 1:
The outer parity cache is divided into multiple segments or portions, each associated with specific data blocks. This allows partial updates to only the affected parity segments rather than invalidating the entire outer parity, enabling partial data block writes while maintaining reliability for unwritten portions.
Solution Approach 2:
The system预先 generates and stores outer parity information in the outer parity cache before actual data writing is complete. This preliminary parity generation allows the system to maintain valid parity information even during partial writes, resolving the contradiction between write flexibility and data recovery reliability.
2Reliability
If outer parity is regenerated during partial data block writes to maintain data integrity, then reliability is improved, but additional processing time and complexity are introduced
Solution Approach 1:
Outer parity is generated in advance and stored in the outer parity cache during the initial write operation or previous partial writes. This eliminates the need for complex real-time parity regeneration during subsequent partial writes, maintaining data integrity while reducing processing complexity.
Solution Approach 2:
The system creates and maintains a copy of outer parity information in the dedicated outer parity cache, separate from the main data blocks. This copying approach allows the system to reference pre-generated parity without complex regeneration logic, simplifying the parity management process while ensuring data integrity.
3Measurement precision
If a dedicated outer parity cache is implemented to store partial outer parity, then data recovery accuracy is improved, but device complexity and memory requirements increase
Solution Approach 1:
The outer parity cache is segmented into multiple portions, with each portion associated with specific data blocks or product codes. This segmentation allows the cache to be managed in discrete units, improving data recovery accuracy for specific regions while making cache management more tractable through modular organization.
Solution Approach 2:
The outer parity cache acts as an intermediary structure between the data blocks and the error correction processes. It stores pre-generated parity information that mediates between the physical data storage and the logical data recovery operations, improving accuracy while simplifying the overall system architecture through a dedicated intermediate storage layer.
Data Source
AI summary
A partial outer parity management system generates a product code based on a partial data block write to a data block and partial outer parity generated by a previous partial data block write to the data block. In one implementation, a storage device includes cache storage circuit accessible by the parity generator, the cache storage circuit being configured to cache the partial outer parity generated by the previous partial data block write to the data block in a partial outer parity cache designated for association with the product code.


