Consistency Interval Markers for Distributed Storage Replication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In distributed storage environments, achieving consistent data replication across multiple nodes is challenging due to the complexity of managing write operations and resolving conflicts, particularly during consistency interval transitions, which can lead to data inconsistencies and prolonged recovery times.
Innovation Solution
The implementation of consistency interval marker based replication, where nodes suspend writes and include interval markers to ensure data consistency, with an interval coordinator managing transitions and resolving block conflicts by tracking and ordering writes, allowing for efficient generation of snapshots or checkpoints.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If asynchronous replication is used to reduce impact on primary storage performance, then replication performance is improved, but data consistency between primary and secondary storage systems deteriorates
Solution Approach 1:
The system performs preliminary actions by recording write operations in a write log before they are fully committed to secondary storage. This allows the system to maintain data consistency information in advance, enabling fast recovery without compromising primary storage performance during normal replication operations.
Solution Approach 2:
The replication process is segmented into distinct phases: write logging, checkpointing, and recovery. By dividing the replication task into manageable segments with clear boundaries marked by checkpoints, the system achieves both high replication performance and data consistency without requiring continuous synchronization.
2Reliability
If consistent snapshots are achieved by suspending writes at all nodes, then data consistency is improved, but system availability and write throughput deteriorate
Solution Approach 1:
Instead of continuously suspending writes to maintain consistency, the system implements periodic checkpoints at predetermined intervals. Writes continue asynchronously between checkpoints, and consistency is established only when needed for snapshots or recovery, minimizing impact on write throughput while maintaining data consistency when required.
Solution Approach 2:
The system introduces an intermediary checkpoint mechanism that mediates between ongoing writes and consistency requirements. Checkpoints act as intermediaries that capture the state of the system at specific points without requiring write suspension, allowing writes to proceed freely while periodic consistency snapshots are taken.
3Reliability
If entire volume contents are copied for consistency recovery, then data consistency is improved, but recovery time deteriorates
Solution Approach 1:
The system extracts only the necessary data for recovery by maintaining write logs and dirty region bitmaps that identify specifically which blocks have changed since the last checkpoint. During recovery, only these extracted changed regions need to be replayed or copied, rather than transferring entire volume contents, dramatically reducing recovery time while ensuring data consistency.
Solution Approach 2:
Instead of performing a complete volume copy for recovery, the system applies partial action by replaying only the write log entries and restoring only the dirty regions identified by bitmaps. This partial recovery approach is sufficient to restore consistency without the excessive time required for full volume replication.
4Loss of time
If dirty region bitmaps are maintained to track in-progress I/Os, then consistency recovery speed is improved, but memory usage and system complexity deteriorate
Solution Approach 1:
The dirty region bitmaps are temporary structures that are discarded after recovery completes. The system recovers by replaying write logs and clearing bitmaps once consistency is restored, then discards the bitmap structures. This allows the system to use bitmap tracking for fast recovery when needed, then recover memory and simplify the system state afterward, balancing recovery speed with ongoing system complexity.
Data Source
AI summary
Applications executing on various nodes in a distributed storage environment may write data to primary storage and may also replicate the data to secondary storage via a replication target. An interval coordinator may coordinate the periodic saving of checkpoints or snapshots of the replicated data. The interval coordinator may determine the length of consistency intervals between the saving of each of the checkpoints. Writes to the replication target from each of the nodes may be associated with the current consistency interval and, in some embodiments, with a unique per-node sequence number. When transitioning between consistency intervals, each node may be configured to temporarily suspend completion of the writes and to send the replication target a consistency interval marker indicating that the node has completed all writes for the current consistency interval.


