Replication Task Distribution in Computing Clusters
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional cluster-based replication solutions concentrate replication tasks on a single node, leading to increased input/output and processing loads, which can negatively impact the performance of cluster-based applications.
Innovation Solution
A computer-implemented method and system that distribute replication tasks within computing clusters by dividing tasks into logging and replicating processes, performed on separate nodes, and adaptively select nodes based on load and resource availability to optimize performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If all replication tasks are performed on a single node, then replication simplicity is maintained, but input/output load and processing load on that node increase, negatively impacting application performance
Solution Approach 1:
The patent segments replication tasks into two distinct functions: logging (performed on the primary node) and actual data replication (performed on a separate secondary node). This segmentation distributes the workload, preventing any single node from becoming a performance bottleneck while maintaining replication functionality.
Solution Approach 2:
The patent extracts the replication function from the primary node and assigns it to a dedicated secondary node. By taking out the replication workload from the node handling application writes, the system eliminates the conflict between replication I/O and application I/O, improving overall system performance.
2Productivity
If replication tasks are distributed across multiple nodes, then input/output load and processing load are reduced, but system complexity increases
Solution Approach 1:
The patent merges the coordination function into the primary node while the secondary node handles execution. The primary node maintains the replication log and coordinates replication operations, while the secondary node executes the actual data copying. This merging of coordination and execution roles into different but complementary functions simplifies the overall system architecture compared to fully distributed coordination.
Solution Approach 2:
The system performs preliminary action by maintaining a replication log on the primary node before actual replication occurs. This log captures all write operations in advance, allowing the secondary node to replicate data efficiently without needing to coordinate each individual write operation in real-time, thus reducing system complexity.
3Adaptability or versatility
If the same node performs both application writes and replication tasks, then resource utilization is simplified, but the node's input/output capacity becomes a bottleneck
Solution Approach 1:
The patent segments the node roles into primary (handling application writes and logging) and secondary (handling replication execution). This segmentation allows each node to specialize in specific functions, increasing replication speed without sacrificing the flexibility to assign different nodes to different roles based on system conditions.
Solution Approach 2:
The system maintains universality by allowing any node in the cluster to potentially serve as either primary or secondary node depending on workload conditions. The architecture supports dynamic role assignment, enabling the system to adapt to changing conditions while maintaining high replication throughput through dedicated replication nodes.
Data Source
AI summary
A computer-implemented method for distributing replication tasks within computing clusters may include (1) identifying a primary volume that is replicated to a secondary volume, (2) identifying a computing cluster with access to the primary volume that includes at least a first node and a second node, (3) receiving a request to write data to the primary volume, (4) logging, via the first node, the request to write the data to the primary volume to a replication log, and (5) using the replication log to replicate, via the second node, the data to the secondary volume. Various other methods, systems, and computer-readable media are also disclosed.


