Program Replication for Continuous Availability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing program and data storage replication systems fail to provide accurate replication that accounts for both program state and data storage state, leading to potential downtime and revenue loss in enterprises.
Innovation Solution
A method and system for replicating programs and data storage by sending program replication data from a first program to a second program, which is a replica, and replicating data between storage systems, ensuring mirroring of processor and memory state, and enabling seamless user interaction in case of failures, using techniques like Record and Replay for state synchronization and Logical Volume Manager (LVM) mirroring.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If program and data storage replication is implemented, then system availability is improved, but system complexity increases
Solution Approach 1:
The patent creates a replica program on a second device that mirrors the application program, processor state, and memory state of the first program. This copying approach ensures continuous availability by having a standby system that can take over immediately if the primary system fails, directly resolving the contradiction by providing reliability through replication while managing complexity through systematic state mirroring
Solution Approach 2:
The replication system is divided into distinct components: program replication data transmission, data storage replication, processor state mirroring, and memory state synchronization. This segmentation allows each component to be independently managed and optimized, reducing overall system complexity while maintaining comprehensive replication capabilities for high availability
2Manufacturing precision
If accurate replication of program state and data storage state is achieved, then data consistency is improved, but replication accuracy requirements increase system complexity
Solution Approach 1:
The system continuously monitors and compares the state of the first program and second program, including processor state and memory state, ensuring they remain synchronized. This feedback mechanism maintains data consistency by detecting and correcting any deviations, achieving high replication accuracy while managing complexity through automated state comparison and synchronization protocols
3Reliability
If program replication data is sent continuously to maintain state mirroring, then availability is improved, but network bandwidth consumption increases
Solution Approach 1:
The system transmits program replication data periodically or event-driven rather than continuously, sending updates when state changes occur. This approach maintains program availability by ensuring the replica can take over when needed, while reducing network bandwidth consumption by transmitting only necessary updates rather than continuous data streams
Data Source
AI summary
A method for replicating a program and data storage according to one embodiment comprises sending program replication data from a first program to a second program, the second program having an application program that is a replica of an application program of the first program; sending data storage requests from the first program to a first storage system; and replicating data stored in the first storage system in a second storage system. Additional methods, systems, and computer program products are disclosed.


