Writable Snapshots for Network Storage Consistency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network storage systems face challenges in synchronizing data snapshots with external events, such as virtual machine backups, due to timing discrepancies between data backup and snapshot creation, leading to inconsistencies and resource-intensive clone creation.
Innovation Solution
The implementation of writable snapshots in network storage arrays, which allow for point-in-time data modification and snap-point management, enabling synchronization without creating full clones, thus reducing resource usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional read-only snapshots are created to maintain data consistency, then data integrity is preserved, but the system cannot accommodate post-snapshot data modifications and requires full clones for synchronization
Solution Approach 1:
The snapshot is transformed from a static read-only structure to a dynamic writable structure. The system allows the snapshot to transition between different states (writable and read-only) and enables modifications to be made directly to the snapshot data without requiring full clone creation, thus resolving the contradiction between maintaining consistency and allowing modifications.
Solution Approach 2:
The write protection parameter of the snapshot is dynamically changed. The system can set the snapshot as writable when modifications are needed and switch to read-only mode when consistency is required. This parameter flexibility allows the same snapshot structure to serve both purposes without requiring separate clone operations.
2Adaptability or versatility
If full clones are created to enable data modifications, then snapshot adaptability is improved, but resource consumption and system complexity increase
Solution Approach 1:
The storage structure is segmented into original volume data and snapshot data with shared portions. When a snapshot is created, only the metadata and data pointers are initially allocated, not full data copies. Modifications to the snapshot are stored in separate change tracking structures, allowing the snapshot to be modified without duplicating the entire volume data, thus reducing resource consumption.
Solution Approach 2:
Instead of creating full physical clones, the system uses metadata copying and pointer redirection. The snapshot references the original volume data through pointers, and modifications are tracked separately. This virtual copying approach maintains adaptability while minimizing actual data duplication and storage resource usage.
3Ease of operation
If snapshots are made writable to allow post-creation modifications, then operational flexibility is improved, but data consistency and reliability may be compromised
Solution Approach 1:
The system performs preliminary actions by creating change tracking structures and metadata before allowing modifications to the snapshot. This preliminary setup ensures that all modifications are recorded and can be reverted or committed in a controlled manner, maintaining consistency while allowing editability. The snapshot is prepared for writing with proper tracking mechanisms in place before any data changes occur.
Solution Approach 2:
The system implements feedback mechanisms through change tracking and snap-point management. When modifications are made to the snapshot, the system tracks these changes and provides feedback about the current state. Administrators can review changes before committing them, and the system can revert to previous snap-points if needed, thus maintaining reliability while allowing operational flexibility.
4Measurement precision
If multiple snap-points are created to track snapshot versions, then snapshot management precision is improved, but system complexity increases
Solution Approach 1:
The version tracking system is segmented into discrete snap-point markers within the snapshot metadata. Each snap-point represents a specific version or state of the snapshot, and these markers are organized in a structured hierarchy. This segmentation allows precise version tracking while keeping the management structure organized and manageable through clear separation of version identifiers.
Data Source
AI summary
Methods, systems, and computer programs are presented for creating writable snapshots of logical data units in a network storage array. One method includes operations for receiving a request to create a snapshot at a storage device, the snapshot being a point-in-time copy of a volume in the storage device, and for creating the snapshot with a first snap-point corresponding to a state of the volume when the snapshot is created. The snapshot is writeable when the snapshot is created. Further, the method includes operations for receiving one or more requests to make changes to the snapshot, for creating one or more snap-points for the snapshot after processing the one or more requests, and for closing the snapshot. The snapshot is not writeable after the snapshot is closed and access to the snapshot, after closing the snapshot, accesses data associated with a last snap-point of the snapshot.


