Storage Node Data Synchronization Using Pointer-Based Chunking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-node active/active storage clusters, data synchronization during node failback operations often causes performance hiccups due to the suspension of I/O operations, leading to an undesirable client experience.
Innovation Solution
A method where data is iteratively transferred from one node to another using pointers to manage memory pool chunks, allowing continuous I/O operations during synchronization, with additional pointers generated until the data size falls below a predefined threshold, enabling efficient synchronization and minimizing downtime.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data synchronization is performed between storage nodes during failback operations, then data consistency is improved, but I/O operations must be suspended causing performance degradation
Solution Approach 1:
The patent segments the memory pool into multiple chunks and uses multiple pointers to track different data regions. This allows the system to synchronize specific data portions independently rather than suspending all I/O operations for complete data synchronization, thereby maintaining productivity while achieving reliability.
Solution Approach 2:
The patent performs preliminary data synchronization actions by writing data portions from the first node to the second node before complete failback is required. This preliminary action reduces the amount of data that needs to be synchronized during actual failback, minimizing I/O suspension time while ensuring data consistency.
2Reliability
If complete data synchronization is performed before failback, then data consistency is improved, but the duration of I/O suspension increases
Solution Approach 1:
The patent applies partial action by synchronizing only the necessary data portions identified by pointer differences rather than performing complete data synchronization. This reduces the time required for synchronization while maintaining data consistency, as only the divergent data regions need to be transferred.
Solution Approach 2:
By performing preliminary synchronization of data portions before failback operations, the patent reduces the amount of data that requires synchronization during the actual failback event, thereby minimizing I/O suspension duration while ensuring data consistency is achieved.
3Productivity
If iterative pointer-based data transfer is used during failback, then I/O operation continuity is improved, but the complexity of data management increases
Solution Approach 1:
The patent introduces pointers as intermediary elements that track data regions in the memory pool. These pointers serve as mediators between the data storage structure and the synchronization process, enabling continuous I/O operations while managing data transfer complexity through structured pointer-based tracking rather than direct data management.
Data Source
AI summary
A method, computer program product, and computing system for writing, from a first node to a second node, a first portion of data from a memory pool in the first node defined by, at least in part, a first pointer. One or more input/output (IO) operations may be received while writing the first portion of data to the second node. Data from the one or more IO operations may be stored within the memory pool after the first pointer.


