Storage System Resource Rebuild via IO Operation Indicator
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storage systems often encounter issues with corrupted data or failed resources that are not visible to the system, leading to repeated IO operations with the same issues, resulting in application crashes or timeouts due to the inability to resolve the underlying problems.
Innovation Solution
The implementation of IO hinting logic, which includes host side and storage side IO hinting logic, uses an indicator in IO operations to detect repeat operations and trigger corrective actions such as rebuilding resources like cache buffers or mapping tables to prevent further issues.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If the storage system services repeated IO operations using the same resources, then the IO operation speed is maintained, but the reliability deteriorates due to encountering the same corrupted data or failed resources
Solution Approach 1:
The system performs preliminary detection of IO operation patterns to identify repeats before processing. By detecting that a current IO operation is a repeat of a prior operation that encountered corrupted data or failed resources, the system proactively rebuilds the compromised resources (cache buffers, mapping tables) before the repeat operation can fail again, preventing the reliability issue before it occurs
Solution Approach 2:
The system implements feedback by monitoring IO operation outcomes and using this information to trigger resource rebuilding. When a repeat IO operation is detected, the system feeds back the information about the prior failure to the resource management logic, which then rebuilds the affected resources to eliminate the underlying cause of the failure
2Reliability
If the storage system rebuilds resources for repeat IO operations, then the reliability is improved, but the processing time increases
Solution Approach 1:
The system applies partial action by selectively rebuilding only the specific resources associated with failed IO operations (such as particular cache buffers or mapping tables) rather than rebuilding all resources. This targeted approach rebuilds only the necessary portions to resolve the specific failure, minimizing unnecessary rebuild operations and reducing the overall time loss while still achieving the reliability improvement
3Reliability
If the storage system detects and rebuilds compromised resources, then the data integrity is improved, but the system complexity increases
Solution Approach 1:
The system implements self-service by automatically detecting repeat IO operations and triggering resource rebuilding without external intervention. The IO hinting logic autonomously monitors operation patterns, identifies repeats, determines which resources are compromised, and initiates rebuilding of those resources, eliminating the need for complex external monitoring and manual intervention systems
Data Source
AI summary
An apparatus comprises a storage system comprising at least one processing device and a plurality of storage devices. The at least one processing device is configured to obtain a given input-output operation from a host device and to determine that the given input-output operation comprises an indicator having a particular value. The particular value indicates that the given input-output operation is a repeat of a prior input-output operation. The at least one processing device is further configured to rebuild at least one resource of the storage system that is designated for servicing the given input-output operation based at least in part on the determination that the given input-output operation comprises the indicator having the particular value.


