Snapshot Creation via Extent Copy Trackers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional data storage systems face significant latency issues during snapshot creation due to mapping operations being performed while I/O requests are suspended, leading to increased processing time and delayed resumption of host computer requests.
Innovation Solution
The implementation of extent copy trackers that perform operations such as flushing dirty data and allocating block storage space during background processing, allowing these tasks to be completed after the transaction has been committed, thereby reducing snapshot creation time and latency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If mapping operations are performed during snapshot creation while I/O requests are suspended, then snapshot consistency is ensured, but I/O latency increases significantly
Solution Approach 1:
The system performs preliminary actions by creating extent copy trackers during the transaction that will execute the actual copying operations after the transaction commits. This allows the snapshot creation to be initiated and tracked beforehand, while the actual data copying occurs in the background without blocking I/O requests.
Solution Approach 2:
The patent extracts the time-consuming mapping operations (extent copying, pointer updates) from the critical transaction path. By separating the transaction commit from the actual extent copying through the use of extent copy trackers, the system removes the blocking operations from the I/O path, allowing I/O requests to resume immediately while copying continues in the background.
2Manufacturing precision
If extent copying is performed synchronously during transaction processing, then data accuracy is maintained, but processing time increases
Solution Approach 1:
The extent copy tracker acts as an intermediary between the transaction system and the extent copying process. It receives the snapshot creation request during the transaction, stores the necessary metadata and tracking information, and then orchestrates the actual copying operations afterward. This intermediary mechanism ensures data accuracy through proper tracking while decoupling the timing of the copying operation from the transaction processing.
Solution Approach 2:
The system performs preliminary setup during the transaction by creating the extent copy tracker with all necessary metadata about the extents to be copied, the source and destination locations, and the tracking information. This preliminary action ensures data accuracy is maintained through proper setup, while the actual time-consuming copying occurs afterward without blocking the transaction.
3Reliability
If I/O requests are suspended during snapshot creation, then data consistency is achieved, but system productivity decreases
Solution Approach 1:
The system dynamically changes the state of I/O operations from suspended to resumed immediately after transaction commit, while the extent copying process dynamically continues in the background. The extent copy tracker enables this dynamic transition by separating the transaction completion from the actual copying execution, allowing the system to adapt between consistency requirements and productivity needs at different phases.
Solution Approach 2:
The patent segments the snapshot creation process into distinct phases: (1) transaction commit phase where consistency is established and I/O is suspended only briefly, and (2) background copying phase where actual extent copying occurs without affecting I/O. The extent copy tracker serves as the boundary between these segments, enabling each phase to optimize for its specific requirement without compromising the other.
Data Source
AI summary
Techniques for creating snapshots of data storage objects that can perform certain operations (e.g., flushing dirty data, setting up extent pointers, allocating block storage space, etc.) during background (or deferred) processing. The disclosed techniques employ one or more extent copy trackers that can be created during processing of a transaction, while I/O request from host computers are suspended. The extent copy trackers are configured to perform some or all of the certain operations in the background, after the transaction has been committed and/or the processing of the transaction has been completed. By performing such operations during background processing, a processing time required to complete the snapshot transaction is reduced, thereby reducing latency in the resumption of the I/O requests from the host computers.


