Non-Volatile Record System for Mass Storage PUT Operation Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Mass storage systems face challenges in ensuring data integrity and reliability, particularly when physical storage devices fail, as traditional replication and erasure coding methods do not effectively handle controller crashes or incomplete PUT operations.
Innovation Solution
The implementation of a non-volatile record system in working devices to store information about successfully written replicas or extents, allowing the repair function to restore and complete PUT operations even after a controller crash.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional replication or erasure coding is used to protect data, then data integrity is improved, but the system cannot handle controller crashes or incomplete PUT operations
Solution Approach 1:
The patent applies preliminary action by having working devices store success information in non-volatile memory before the controller crash occurs. This allows the repair function to later identify which PUT operations were successfully written without requiring the controller to track this information, enabling the system to handle controller crashes effectively.
Solution Approach 2:
The patent introduces non-volatile memory as an intermediary between the working devices and the controller. This intermediary stores success information persistently, allowing the repair function to recover PUT operation status even when the controller crashes, thus bridging the gap between working devices and controller reliability.
2Reliability
If the controller tracks all PUT operations to ensure completion, then data integrity is improved, but system complexity increases
Solution Approach 1:
The patent extracts the tracking function from the controller and places it in the working devices themselves. Each working device stores success information in its own non-volatile memory, eliminating the need for the controller to track PUT operation completion status, thus reducing controller complexity while maintaining reliability.
Solution Approach 2:
The patent implements self-service by enabling working devices to autonomously track and record their own PUT operation success information in non-volatile memory. This self-tracking capability eliminates the need for centralized controller tracking, reducing controller complexity while ensuring PUT operation completion reliability.
3Loss of time
If early confirmation is sent to users before all replicas are written, then user experience is improved, but data integrity risk increases
Solution Approach 1:
The patent implements feedback by having the repair function continuously monitor non-volatile memory for success information and automatically initiate repair operations when crashes are detected. This feedback mechanism allows early confirmation to users while maintaining data integrity through automatic recovery, resolving the contradiction between response time and reliability.
Data Source
AI summary
A method is described. The method includes receiving a PUT operation request from a user to store a data item. The method also includes sending S PUT commands to S working storage devices to respectively store S replicas or extents for the data item. The method also includes confirming to the user that the data item was stored after receiving X acknowledgments from the S working devices where X<S. The method also includes, in response to a crash, reading non volatile records for the S working devices that record successful stores performed by the S working devices having corresponding acknowledgements that were not responded to. The method also includes recognizing from the non volatile records that less than S of the S replicas or extents were successfully stored into the S working devices. The method includes causing those of the S replicas or extents that were not successfully stored to be stored to complete the PUT operation.


