Distributed Data Replication in Cluster Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In cluster storage environments, the existing data replication methods often lead to performance bottlenecks due to reliance on a single node for replication, causing delays and degrading system and network performance, especially when the rate of application writes exceeds the replication rate, and adding new replicator nodes in Flexible Shared Storage clusters does not alleviate these issues.
Innovation Solution
The method distributes the replication task across multiple nodes in a cluster by dividing data structures into portions, where nodes share access to the data volume and send modified regions to a secondary site, using a logowner node and data change maps to track and replicate write operations, ensuring write-order fidelity and reducing the burden on a single node.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a single node performs replication for all application writes in the cluster, then replication responsibility is centralized and simple to manage, but system and network performance degrade due to the node becoming a bottleneck
Solution Approach 1:
The patent segments the replication task by dividing the data structure into portions and assigning different portions to different nodes in the cluster. Each node replicates only the portion it owns, eliminating the single-node bottleneck while maintaining manageable replication through the logowner node's coordination of the division process.
2Ease of manufacture
If replication is performed iteratively by a single node, then implementation is simple, but the replication rate cannot keep up with the application write rate, causing data loss risk
Solution Approach 1:
The patent divides the data structure into multiple portions and assigns each portion to a different node for parallel replication. This segmentation enables the replication rate to match the application write rate by distributing the workload, while maintaining implementation simplicity through the logowner node's management of the division and assignment process.
Solution Approach 2:
The patent combines the replication efforts of multiple nodes working in parallel on different portions of the data structure. This merging of replication capabilities across multiple nodes increases the overall replication rate to keep pace with application writes, while the logowner node maintains coordination to ensure data consistency.
3Productivity
If a dedicated replicator node is added to handle replication, then replication capacity increases, but system and network performance are burdened due to excessive readback operations
Solution Approach 1:
The patent segments the data structure into portions and assigns each portion to a specific node that owns the data in memory. Each node replicates its owned portion directly from its own memory without reading from shared storage, eliminating excessive readback operations while maintaining increased replication capacity through parallel processing.
4Adaptability or versatility
If multiple nodes share access to CSVs in Flexible Shared Storage clusters, then storage accessibility improves, but adding new replicator nodes does not alleviate performance bottlenecks due to lack of direct connectivity to data volumes
Solution Approach 1:
The patent segments the data structure and assigns portions to nodes based on their memory ownership rather than their connectivity to shared storage. This allows any node in the FSS cluster to replicate its owned portion directly from memory without requiring direct connectivity to the underlying data volumes, maintaining both storage accessibility and replication performance.
Data Source
AI summary
Various systems and methods for dividing, accessing, and sending portions of a data structure from one node to another for replication from a primary site to a secondary site are disclosed. The method includes dividing a data structure into portions. The data structure stores information identifying which regions of a data volume have been modified and nodes in a cluster share access to the data volume. The nodes and the data volume are located at the primary site. The method also includes sending a first portion of the data structure to a second node in the cluster. The sending causes the second node to replicate the data identified in the portion of the data structure from the data volume to the secondary site. In one embodiment, the accessing and the sending are performed by a logowner node.


