Battery-Backed Replication for Crash-Consistent Application Restart
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional techniques for achieving high availability in applications that write persistent data to local storage or persistent memory fail to ensure crash-consistent restarts when the host system experiences a failure, as local storage cannot be accessed by other machines during downtime.
Innovation Solution
The implementation of application-transparent battery-backed replication and crash-consistent asynchronous replication methods, where the operating system or BIOS detects failures and copies local persistent data to remote destinations using battery power, allowing the application to be restarted on another machine in a crash-consistent manner, either by post-failure copying or asynchronous data logging and replication.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If local storage or persistent memory is used for persistent data, then device complexity is reduced and performance is improved, but availability deteriorates because local storage cannot be accessed by other machines during host system downtime
Solution Approach 1:
The patent implements post-failure copying of persistent data from local storage to remote storage destinations. When a host system fails, another system in the HA domain copies the persistent data from the failed system's local storage to a remote location, enabling crash-consistent restart without requiring shared storage during operation
Solution Approach 2:
The patent employs battery-backed mechanisms to perform preliminary copying actions before complete system failure occurs. The battery maintains power to copying operations for a limited time window, allowing critical data to be replicated to remote destinations before total power loss, thereby enabling faster recovery
2Reliability
If synchronous replication is used to ensure crash-consistent restarts, then reliability is improved, but performance deteriorates due to the overhead of waiting for confirmation from remote storage
Solution Approach 1:
The patent implements asynchronous periodic replication where persistent data is copied to remote storage at periodic intervals or based on change events rather than synchronously with every write operation. This maintains crash-consistency while avoiding the performance penalty of synchronous confirmation waits
Solution Approach 2:
The patent uses a battery as a temporary, short-living energy source to enable copying operations during the critical failure window. The battery provides sufficient power for a limited time to complete essential data replication tasks without requiring permanent infrastructure changes or synchronous protocols
Applied Scientific Principles
This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.
Function Achieved in This Case
Enables applications to be restarted in a crash-consistent state even after host system failures, reducing downtime and maintaining high availability without the performance overhead of synchronous replication.
Implementation Method 1
the copying is performed in a manner that is transparent to the application and while the computer system runs on battery power
Data Source
AI summary
Techniques for achieving application high availability via application-transparent battery-backed replication of persistent data are provided. In one set of embodiments, a computer system can detect a failure that causes an application of the computer system to stop running. In response to detecting the failure, the computer system can copy persistent data written by the application and maintained locally at the computer system to one or more remote destinations, where the copying is performed in a manner that is transparent to the application and while the computer system runs on battery power. The application can then be restarted on another computer system using the copied data.


