Storage Manager Snapshot Consistency and Rollback
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for creating snapshots of distributed storage volumes are inefficient and lack the ability to roll back to specific consistency points, limiting the frequency and granularity of snapshot creation and recovery.
Innovation Solution
A method involving a storage manager that coordinates snapshot creation across multiple storage nodes, using quiesce instructions to suppress write requests, create snapshots, and manage segment allocation and garbage collection, allowing for efficient snapshot creation and roll-back to specific consistency points.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If snapshots are created frequently with high granularity, then data recovery precision is improved, but system performance and operational efficiency deteriorate due to write suppression overhead
Solution Approach 1:
The system performs preliminary actions by pre-allocating segments for snapshots and using write suppression only temporarily during consistency point creation. The storage manager coordinates with compute nodes to suppress writes only when necessary, then quickly restores normal operations, minimizing performance impact while enabling frequent snapshots.
Solution Approach 2:
The system dynamically adjusts snapshot creation based on operational conditions. The storage manager can create snapshots at operation-level consistency points when performance allows, or use less frequent snapshots when system load is high. The segment allocation and garbage collection processes are also dynamically managed to balance snapshot granularity with system performance.
2Reliability
If write requests are suppressed frequently for snapshot creation, then data consistency is improved, but operational efficiency and throughput deteriorate
Solution Approach 1:
The system uses preliminary action by pre-coordinating write suppression with compute nodes before snapshot creation. The storage manager sends quiesce instructions to compute nodes in advance, allowing them to prepare for consistent snapshot capture without abrupt interruptions. This coordinated approach ensures data consistency while minimizing operational disruption.
Solution Approach 2:
Write suppression is applied periodically rather than continuously, only during the brief intervals when consistency points are created. The system alternates between normal write operations and temporary write suppression periods, allowing high operational efficiency during normal periods while achieving data consistency during snapshot periods.
3Adaptability or versatility
If segments are retained for extended periods to support rollback, then rollback capability is improved, but storage resource utilization deteriorates
Solution Approach 1:
Segment retention is dynamically managed based on rollback requirements. The storage manager retains segments only as long as needed to support rollback to the most recent consistency point, then performs garbage collection to free segments. This dynamic approach provides adequate rollback capability while optimizing storage resource utilization by not permanently retaining all historical segments.
Solution Approach 2:
The system discards segments after they have served their purpose of enabling rollback. Once a segment has been used to support a rollback operation or is no longer needed for consistency point recovery, the garbage collection process discards it and recovers the storage resources for new data allocation.
Data Source
AI summary
A new snapshot of a storage volume is created by instructing computing nodes to suppress write requests. Storage nodes create a new snapshot for the storage volume by allocating a new segment to the new snapshot and finalizes and performs garbage collection with respect to segments allocated to the previous snapshot. Subsequent write requests to the storage volume are then performed on the segments allocated to the new snapshot. A segment maps segments to a particular snapshot and metadata stored in the segment indicates storage volume addresses of data written to the segment. The snapshots may be represented by a storage manager in a hierarchy that identifies an ordering of snapshots and branches to clone snapshots. Consistency points may be created by storage nodes transmitting sequence numbers assigned to write IOPs to the storage manager. Segments store the sequence numbers in metadata enabling rolling back to specific sequence numbers.


