Storage Controller Atomic Write Coherence Across Devices
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In storage device configurations, I/O operations spanning multiple devices can lead to data corruption during power failures or other failures, as data may only be written to one storage device, resulting in a mix of new and previously written data.
Innovation Solution
The solution involves using unexposed locations on storage devices to atomically write and update metadata, ensuring that either the entirety of the write data is written to one device, maintaining data coherence by always having a coherent version of the data available, even in the event of a failure.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If I/O operations are split across multiple storage devices to satisfy a single I/O request, then the I/O operation can be completed, but data corruption may occur during power failures or other failures
Solution Approach 1:
The patent applies preliminary action by writing data to unexposed locations on a first storage device before the metadata update is complete. This ensures that if a failure occurs during the metadata update, the data can be recovered from the unexposed locations, preventing data corruption and maintaining data coherence across storage device boundaries.
2Reliability
If data is written to unexposed locations on a storage device, then data coherence is maintained during failures, but additional storage locations are required
Solution Approach 1:
The patent applies segmentation by dividing the storage device into exposed and unexposed locations. The unexposed locations serve as a protected buffer zone for atomic write operations, allowing the system to maintain data coherence while using additional storage space in a structured and controlled manner.
3Measurement precision
If metadata is updated to reflect data written to unexposed locations, then data location tracking is accurate, but the metadata update may fail during power failures
Solution Approach 1:
The patent applies beforehand cushioning by preparing unexposed locations in advance as a safety buffer. These pre-prepared locations provide a fallback mechanism that cushions against metadata update failures during power failures, ensuring that data can be recovered even if the metadata update does not complete successfully.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A controller maintains exposed and unexposed locations of a first storage device and a second storage device. In response to receiving a request a perform a write operation to write data in locations that span the first storage device and the second storage device, the controller atomically writes an entirety of the data in the unexposed locations of the first storage device.