Storage System Snapshot Acquisition via Cache Time Relation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In storage systems, acquiring a next snapshot is delayed due to the need to wait for all data to be saved to a secondary volume and reflected in the primary volume, which slows down write response times.
Innovation Solution
A storage system with multiple storage media, memory, cache, and a processor is implemented, where logical volumes include a primary volume and secondary volumes for snapshot acquisition points. The system uses time relation information to identify snapshot data elements, allowing for asynchronous processing and allocation of pages for efficient data management.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data is saved to secondary volume before snapshot acquisition, then snapshot integrity is ensured, but write response time deteriorates
Solution Approach 1:
The system performs preliminary actions by storing write data in cache memory before it is needed for snapshot acquisition. When a write request arrives, the data is immediately cached and a response is returned to the host, while the actual data transfer to the primary volume occurs asynchronously in the background. This preliminary caching action eliminates the need to wait for data transfer completion before responding to the host.
Solution Approach 2:
The cache memory acts as an intermediary between the host and the primary volume. Instead of directly transferring data between the host and primary volume (which would require waiting for completion), the cache memory serves as a buffer that accepts data quickly and transfers it to the primary volume at its own pace, decoupling the host's write response time from the actual data transfer time.
2Reliability
If all cache data is written to primary volume before next snapshot, then data consistency is maintained, but snapshot acquisition time increases
Solution Approach 1:
The system performs partial action by acquiring snapshots based on triggers (such as scheduled intervals or specific events) rather than waiting for complete data synchronization. The snapshot acquisition is triggered when certain conditions are met, allowing the system to capture the current state of data without requiring all cached data to be fully written to the primary volume first. This partial action approach reduces snapshot acquisition time while maintaining acceptable data consistency.
Solution Approach 2:
The system prepares for snapshot acquisition by maintaining time relation information that tracks when data was written to the cache and when snapshots are acquired. This preliminary tracking allows the system to determine which cached data needs to be reflected in the primary volume at snapshot time, enabling faster snapshot acquisition by focusing only on the necessary data synchronization rather than waiting for all data to be written.
3Speed
If asynchronous write processing is used, then write response speed improves, but complexity of data management increases
Solution Approach 1:
The system performs preliminary action by pre-establishing time relation information that records when data was written to the cache memory and which logical regions are affected. This preliminary tracking information is stored in advance, allowing the system to quickly determine the state of data during snapshot acquisition without complex real-time analysis. The time relation information serves as a pre-computed index that simplifies the management of asynchronous write operations.
Solution Approach 2:
The system segments data management by dividing the storage space into logical regions and managing them independently. Each logical region has its own time relation information tracking writes to that specific region. This segmentation allows the system to handle asynchronous writes on a per-region basis rather than managing all data globally, reducing the overall complexity of data management while maintaining fast write responses.
Data Source
AI summary
A storage system is provided with a memory region, a cache memory region, and a processor. The memory region stores the time relation information that indicates a time relationship of a data element that has been stored into the cache memory region and that is to be written to the logical region and a snapshot acquisition point of time to the primary volume. The processor judges whether or not the data element that has been stored into the cache memory region is a snapshot configuration element based on the time relation information for the data element that is to be written to a logical region of a write destination that conforms to the write request that specifies the primary volume and that has been stored into the cache memory region. In the case in which the result of the judgment is positive, the processor saves the data element to the secondary volume for holding a snapshot image in which the snapshot configuration element is a configuration element, and a data element of a write target is then stored into the cache memory region.


