Parallel IO Replication for Distributed System Scaling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In distributed systems, recovering from component failures is challenging due to the complexity of determining the correct replica for data recovery, especially as the number of nodes and replica sets increase, as traditional methods require ordering and consensus mechanisms that introduce performance penalties and serialization issues.
Innovation Solution
A distributed system that sends IO requests in parallel to unordered members of a replica set, treats IO completion responses as votes for membership, and removes error-responsive replicas from the set based on node agreement, eliminating the need for ordering and simplifying recovery by using any surviving member as a master copy.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional ordering and consensus mechanisms are used for data replication, then data consistency is maintained, but system performance deteriorates due to serialization and consensus overhead
Solution Approach 1:
The patent extracts and eliminates the ordering mechanism from the data replication process. Instead of requiring replicas to be ordered and processed sequentially through consensus, the system sends IO requests in parallel to unordered replicas and determines consistency through response aggregation, removing the performance-burdening consensus step while maintaining reliability
Solution Approach 2:
The system performs preliminary actions by sending IO requests to all replicas in parallel before any consistency determination is needed. This parallel execution eliminates the sequential waiting that occurs in traditional consensus mechanisms, improving performance while the response aggregation step ensures consistency is still verified
2Productivity
If the number of nodes and replica sets increases for scaling, then system capacity improves, but recovery complexity increases due to difficulty in determining correct replicas
Solution Approach 1:
The patent changes the parameter of replica identification from ordered positions to unordered response-based identification. By treating all replicas equally without predetermined order and using response aggregation to determine consistency, the system simplifies recovery logic regardless of replica set size, allowing capacity to scale without proportionally increasing recovery complexity
3Reliability
If synchronous data replication is used to avoid data loss during failures, then data reliability improves, but performance penalties and hotspots are introduced
Solution Approach 1:
The system performs preliminary parallel IO operations to all replicas before failure occurs, ensuring data is already replicated synchronously. This eliminates the need for performance-burdening consensus operations during normal operation while maintaining data availability, as the parallel execution completes all replication before any failure response is needed
Data Source
AI summary
A system and a method are disclosed that provides a data replication management technique for a distributed environment that eliminates a need to order members of a replica set. A node of a node cluster in the distributed system may be configured to send in parallel an IO request to each respective member of the replica set. Reponses are received from members of the replica set that indicate a completion status of the IO request at the replica set member sending the IO response. A request is sent to other nodes of the node cluster to remove a replica from the replica set based on an error response received from the replica. The replica that responded with the error response is removed from the replica set based on an agreement of nodes of the node cluster to remove the replica from the replica set.


