Client-Based Data Replication for Distributed Storage Consistency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed file systems face limitations in replication capabilities due to infrastructure and architectural constraints, particularly in server-to-server replication, which is hindered by bandwidth limitations and challenges in maintaining consistency across geographically dispersed storage servers.
Innovation Solution
A client-based replication system with a replication layout mechanism that delegates IO operations to clients, using a replication controller to manage replication layouts across multiple data servers, ensuring strongly consistent file system objects replication while reducing server communication overhead through integrity assertions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If server-to-server replication is used, then replication consistency is maintained, but replication performance is limited by bandwidth between servers
Solution Approach 1:
The patent introduces clients as intermediary participants in the replication process. Instead of direct server-to-server replication, clients act as mediators that fetch data from source servers and distribute it to target servers, thereby bypassing the bandwidth limitations between servers while maintaining replication consistency through coordinated client actions.
Solution Approach 2:
The patent inverts the traditional replication architecture by shifting the replication initiation and execution responsibilities from servers to clients. Rather than servers directly replicating data to each other, clients are empowered to perform replication operations, fundamentally changing the replication flow to overcome server bandwidth constraints.
2Reliability
If centralized server control is used, then replication consistency is ensured, but network overhead and server resource consumption increase
Solution Approach 1:
The patent implements self-service by enabling clients to autonomously perform replication operations without requiring continuous centralized coordination from servers. Clients independently manage data fetching, distribution, and verification, significantly reducing network overhead and server resource consumption while maintaining replication consistency through built-in client-side coordination mechanisms.
Solution Approach 2:
The patent applies preliminary action by having clients establish replication layouts and prepare replication operations in advance. By pre-configuring replication parameters and initiating data transfers before actual replication needs arise, the system reduces real-time network overhead and server involvement while ensuring consistency through pre-planned replication strategies.
3Reliability
If geographic dispersion of storage servers is implemented, then system availability is improved, but maintaining replication consistency becomes more difficult
Solution Approach 1:
The patent applies segmentation by dividing the replication control function into discrete replication layouts that can be independently managed and executed by different clients. This segmentation allows geographic dispersion of servers while maintaining consistency through modular, independently verifiable replication units, reducing the overall complexity of coordinating replication across distributed locations.
Data Source
Figure 1
Figure 2~3
Figure 4
AI summary
A client computing device having a processor and a memory receives, in response to a request, a replication layout from a replication controller. The client device initiates a data replication request at each of a plurality of data servers according to the replication layout. The client device receives, from each of the data servers, integrity information representing a state of a replication dataset at each of the servers. The client device transmits the integrity information to the replication controller.