Storage Device UNMAP Command Timeout Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage devices face inefficiencies in utilizing physical disk capacity due to delayed data writing and high timeouts when handling UNMAP commands and snapshot copies, particularly when TPPS data is in a reserved state for release.
Innovation Solution
A storage device with a control module that allocates and manages storage regions by updating mapping information to allow immediate allocation of new TPPS upon receiving an UNMAP command, independent of the copy process, ensuring timely response to UNMAP and write I/O operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the storage device copies all TPPS data requested by an UNMAP command, then the TPPS release process is completed, but the time until the UNMAP command is executed increases and timeout likelihood increases
Solution Approach 1:
The storage device performs preliminary actions by immediately responding to the UNMAP command without waiting for the copy process to complete. The copy process is initiated but allowed to proceed independently in the background, while the UNMAP command is processed and completed immediately, thus preventing timeout while ensuring data integrity through the preliminary copy action.
Solution Approach 2:
The UNMAP command processing is segmented into independent components: the copy process and the release process. By separating these operations, the storage device can respond to the UNMAP command immediately while the copy process executes independently in the background, eliminating the timeout issue without compromising data integrity.
2Stability of the object's composition
If the storage device puts write data requests on standby until TPPS is released, then data consistency is maintained, but the server is not able to receive a response and write I/O timeout likelihood increases
Solution Approach 1:
The storage device performs preliminary actions by allocating new TPPS immediately upon receiving write I/O requests, without waiting for the previous TPPS release to complete. The copy and release processes proceed independently in the background, ensuring data consistency through proper mapping updates while eliminating write I/O timeout by providing immediate response.
Solution Approach 2:
The storage device dynamically manages TPPS allocation by allowing overlapping of copy, release, and write operations. The system transitions from a static sequential process to a dynamic parallel process where multiple operations can coexist, improving response time while maintaining data consistency through intelligent mapping management.
3Productivity
If the storage device allocates physical disk capacity at the time of host access request as in thin provisioning, then physical disk capacity is utilized efficiently, but TPPS allocated to deleted data is consumed uselessly
Solution Approach 1:
The storage device implements feedback mechanisms through UNMAP commands that allow the host to notify the storage device about deleted data. This feedback enables the storage device to identify and release TPPS that are no longer needed, preventing unnecessary consumption of physical disk capacity while maintaining the efficiency benefits of thin provisioning.
Solution Approach 2:
The storage device discards TPPS that are no longer needed by processing UNMAP commands and releasing the corresponding physical disk capacity. The released TPPS are then recovered and made available for future allocations, eliminating waste while maintaining efficient capacity utilization through the thin provisioning model.
Data Source
AI summary
A storage device includes a memory and a control device. The control device allocates a first storage region out of a plurality of storage regions to a first logical address specified by an external device. The control device stores, in the memory, first information associating the first logical address with a first physical address indicating the first storage region. The control device deletes, upon accepting a request for release of a second storage region indicated by a second physical address associated with a second logical address specified by the external device, second information associating the second logical address with the second physical address from the memory. The control device releases, when copy process of copying first data stored in the second storage region is unexecuted, the second storage region after finishing the copy process.


