Battery-Backed Memory Aperture Flush Order for Data Preservation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In computing systems, especially in networked multi-node environments like clouds running virtual machines, there is a risk of losing critical data due to power loss or reboot, and existing solutions either compromise data integrity or are cost-prohibitive, such as relying on battery-backed memory which may fail or require costly redundancy.
Innovation Solution
A data preservation subsystem with a battery-backed memory aperture that prioritizes critical data by flushing it ahead of non-critical data based on a defined flush order, reducing the need for redundant copies and optimizing memory allocation according to battery characteristics.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If battery-backed memory is used to preserve critical data during power loss, then data integrity is improved, but system cost increases and reliability of the battery itself becomes a concern
Solution Approach 1:
The patent applies preliminary action by pre-positioning critical data in the aperture region of battery-backed memory before power loss occurs. The system identifies and prioritizes critical data, allocating it to specific memory regions that will be flushed first, ensuring data integrity without requiring costly redundant battery capacity or complex error correction mechanisms.
Solution Approach 2:
The patent segments memory into distinct regions: aperture memory (protected by battery), non-aperture memory, and further divides aperture memory into critical and non-critical data regions. This segmentation allows the system to protect only essential data with the battery, reducing the required battery capacity and system cost while maintaining data integrity for critical information.
2Reliability
If all data is flushed to non-volatile storage during power loss events, then data integrity is improved, but flushing time increases and critical data may not be preserved due to battery capacity limitations
Solution Approach 1:
The system performs preliminary identification and prioritization of critical data, pre-positioning it in the aperture region before power loss occurs. This ensures that when flushing is triggered, critical data is already in the optimal location for immediate preservation, eliminating time-consuming identification and relocation operations during the actual flush event.
Solution Approach 2:
The patent applies partial action by flushing only the necessary portion of data (critical data in the aperture region) rather than all data in memory. The battery-backed aperture is sized and positioned to contain only the minimum critical data that requires protection, allowing the flush operation to complete quickly within battery capacity and time constraints while still preserving essential information.
3Ease of operation
If memory allocation is performed without considering flush order, then memory management simplicity is maintained, but critical data preservation during power loss cannot be guaranteed
Solution Approach 1:
The patent applies local quality by implementing different allocation strategies for different memory regions. The aperture region uses priority-based allocation that considers data criticality and flush order, while non-aperture memory uses standard allocation. This localized differentiation ensures critical data preservation in the aperture region without complicating overall memory management, as the complex allocation logic is confined to a specific memory segment.
Solution Approach 2:
The system implements self-service by automatically identifying critical data and allocating it to appropriate regions in the aperture based on predefined priorities. The memory allocation process autonomously considers flush order and data criticality without requiring manual intervention or complex external control, maintaining operational simplicity while ensuring reliable critical data preservation.
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
This approach enhances the likelihood of preserving critical data integrity by prioritizing its flushing and reduces reliance on redundant copies, balancing cost and service level agreements while ensuring data availability.
Implementation Method 1
A data preservation subsystem with a battery-backed memory aperture that prioritizes critical data by flushing it ahead of non-critical data based on a defined flush order
Data Source
Figure 1~3
Figure 4~7
Figure 8
AI summary
Combined operational steps and device characteristics help preserve data against integrity threats. Data is divided into critical data and non-critical data, based on criteria such as customer requirements, workload criticality, or virtual machine criticality. Data may be generated in a compute node for storage in a storage node, for example. Critical data is stored in a battery-backed memory aperture at physical addresses where it will be flushed ahead of the non-critical data due to a flush order imposed by or on the battery-backed memory, e.g., a bottom-up NVDIMM flush order. Redundant copies of the data (especially non-critical data) may also be kept in case it does not get flushed in time. Battery-backed memory apertures are sized and located according to their battery's characteristics, and may be relocated or resized as conditions change. Flush defragging is performed to optimize use of the aperture, especially within the portion that holds critical data.