Object Store Replication Guarantee During Communications Outage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data storage systems face challenges in maintaining replication relationships between object stores during communications outages, leading to data integrity and availability issues.
Innovation Solution
The implementation of methods and apparatus for establishing guarantees to maintain replication relationships between object stores, including cross-region replicated object stores, during communications outages, utilizing application-side infrastructure and specific protocols to ensure data consistency and availability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If replication is suspended during communications outages, then data consistency is maintained, but data availability and replication continuity deteriorate
Solution Approach 1:
The system performs preliminary actions by establishing a guarantee mechanism before communications outages occur. This includes setting up local metadata storage, pre-configuring replication state tracking, and preparing conflict resolution protocols so that when outages happen, the system can maintain replication relationships without interruption rather than suspending them.
Solution Approach 2:
The patent introduces an intermediary mechanism in the form of a guarantee layer that mediates between the primary and secondary object stores during communications outages. This intermediary tracks replication state locally and manages data synchronization asynchronously, allowing replication to continue without direct real-time communication between stores.
2Productivity
If real-time replication is maintained during communications outages, then replication continuity is preserved, but data integrity and system stability worsen
Solution Approach 1:
The system performs preliminary actions by establishing a guarantee mechanism before communications outages occur. This includes setting up local metadata storage, pre-configuring replication state tracking, and preparing conflict resolution protocols so that when outages happen, the system can maintain replication relationships without interruption rather than suspending them.
Solution Approach 2:
The patent implements feedback mechanisms where the system continuously monitors communication status and replication state. During outages, the system receives feedback about disconnected states and automatically adjusts its operation mode, switching to asynchronous replication with local state tracking, and then synchronizes upon recovery based on the tracked state feedback.
3Device complexity
If replication state is tracked centrally, then coordination is simplified, but single points of failure and communication dependency increase
Solution Approach 1:
The patent segments the centralized replication state tracking into distributed local state tracking at each object store. Each store maintains its own replication metadata and state information locally, eliminating the single point of failure. The segmentation allows each node to operate independently during outages while still contributing to overall replication consistency.
Solution Approach 2:
The system enables self-service by allowing each object store to autonomously track its own replication state and manage its local copy of data. Each store independently monitors its replication health, manages local metadata, and can continue serving requests during outages without relying on centralized coordination, thereby reducing communication dependency.
Data Source
AI summary
Establishing a guarantee for maintaining a replication relationship between object stores during a communications outage, an embodiment including identifying, by a first storage system, respective local clock values of one or more second storage systems, wherein the first storage system and the one or more second storage systems are among a plurality of storage systems replicating an object store, wherein the plurality of storage systems are configured to receive requests directed to the replicated object store; determining, by the first storage system in dependence upon the respective local clock values, respective clock differences of the one or more second storage systems relative to the first storage system; and ordering, by the first storage system, one or more updates to the replicated object store in dependence upon the respective clock differences.


