Storage System Data Fault Severity Assessment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Network-based storage systems face challenges in handling data corruption or inconsistency, leading to system panics and downtime, which is undesirable due to potential loss of data and significant costs in enterprise-level systems.
Innovation Solution
A method and apparatus that detect data faults in storage systems, assess their severity, and select a course of action to handle corrupted or inconsistent data without panicking, such as denying access to affected portions or attempting correction, while maintaining system operation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the storage server panics when encountering corrupted or inconsistent data, then data integrity is protected by shutting down the system, but system availability and continuity of operation deteriorate
Solution Approach 1:
The system dynamically adjusts its response to data corruption based on severity assessment. Instead of a static panic response, the system evaluates the corruption level and selectively applies different handling strategies (ignore, correct, or panic), allowing continuous operation for minor issues while maintaining data integrity for severe corruptions.
Solution Approach 2:
The system changes the operational parameter from binary (panic or not) to a multi-level response based on corruption severity. By introducing severity thresholds and corresponding response levels, the system can tolerate minor corruptions while still protecting against major data integrity violations.
2Productivity
If the storage server continues operating despite data corruption, then system availability is maintained, but data integrity and consistency deteriorate
Solution Approach 1:
The system introduces a severity parameter to differentiate between acceptable and unacceptable data corruption levels. By establishing thresholds, the system can continue operating with minor corruptions while initiating panic responses for severe corruptions that would compromise data integrity.
Solution Approach 2:
The system implements a feedback mechanism where data corruption is detected, assessed for severity, and triggers appropriate responses. This closed-loop approach allows the system to monitor data integrity continuously and adjust its operation accordingly, maintaining both availability and integrity.
3Reliability
If traditional error detection and correction techniques like RAID are used, then data protection is improved, but the system still panics when errors exceed correction capabilities
Solution Approach 1:
The system performs preliminary assessment of data corruption severity before taking drastic action. By evaluating the extent of corruption first, the system can determine whether to attempt correction, ignore the error, or panic, avoiding unnecessary system shutdowns for correctable or minor errors.
Solution Approach 2:
The system transitions from a static error handling approach (always panic or always correct) to a dynamic multi-level response. Based on real-time assessment of corruption severity, the system adaptively selects the most appropriate response strategy, improving both stability and data protection.
4Reliability
If the system panics on data corruption, then immediate data protection is achieved, but downtime and operational costs increase
Solution Approach 1:
The system changes the response parameter from binary (panic immediately or never) to a severity-based continuum. By introducing severity thresholds, the system can delay or avoid panic responses for minor corruptions, reducing unnecessary downtime while still protecting against severe data integrity issues.
Solution Approach 2:
The system performs preliminary severity assessment before initiating a panic response. This preliminary evaluation allows the system to distinguish between correctable errors and critical failures, taking action only when necessary and thereby minimizing unnecessary downtime.
Data Source
AI summary
A method for handling a fault in a storage system comprises maintaining data in a mass storage subsystem and providing access to the data on behalf of a client. The method further comprises detecting a fault in a volume of data stored in the mass storage subsystem, determining a severity of the fault, and selecting a course of action in response to the fault, based on the severity of the fault.


