NVRAM In-Memory Database Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In-memory database management systems (IMDBMS) face significant recovery time challenges due to the volatility of main memory, requiring extensive reloading of checkpoint images and application of uncheckpointed transactions, which slows down the recovery process after system failures.
Innovation Solution
Implementing non-volatile random access memory (NVRAM) to store database data and control information, allowing for in-memory-based recovery by modifying surviving data instead of loading entire checkpoint images, thus reducing the need for extensive operations like reloading and applying change records.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If checkpoint-based recovery is used in IMDBMS, then data durability is ensured, but recovery time becomes extensive due to reloading entire checkpoint images and applying uncheckpointed transactions
Solution Approach 1:
The patent applies preliminary action by pre-storing database data in NVRAM before system failures occur. This allows the database to be quickly restored after failure since the data is already in a persistent, fast-access medium, eliminating the need to reload entire checkpoint images from slower block-based storage.
Solution Approach 2:
The patent changes the physical state parameter of memory from volatile (RAM) to non-volatile (NVRAM). This parameter change maintains the fast access characteristics of memory while adding persistence, thereby reducing recovery time without sacrificing data durability.
2Speed
If volatile RAM is used for primary storage in IMDBMS, then access speed is improved, but data loss occurs during system failures
Solution Approach 1:
The patent changes the volatility parameter of the memory system from volatile (RAM) to non-volatile (NVRAM). This allows the system to maintain fast memory-like access speeds while ensuring data persistence across system failures, resolving the contradiction between speed and reliability.
Solution Approach 2:
The patent uses a composite memory architecture combining NVRAM and block-based storage. NVRAM provides fast access and persistence for active database data, while block-based storage serves as backup, creating a composite system that achieves both speed and reliability.
3Loss of time
If NVRAM is used to store database data, then recovery time is reduced, but hardware complexity increases
Solution Approach 1:
The patent changes the persistence parameter of the storage medium, transitioning from volatile to non-volatile memory. This single parameter change achieves the dual benefit of reducing recovery time while maintaining compatibility with existing memory management architectures, thereby limiting the increase in hardware complexity.
Data Source
AI summary
In an in-memory database management system, non-volatile random access memories (NVRAMs) are used to store database data and control data. Because this data is stored in NVRAM, the data survives system failures. Recovery from a system failure may be accomplished more quickly by, at least in part, modifying the surviving data in NVRAM, rather than loading an entire checkpoint image and applying uncheckpointed transactions needed to synchronize the database. Because in this form of recovery the database state that serves as the starting point for applying change records is the database as stored in the NVRAM, this form of recovery is referred to herein as in-memory-based recovery. Recovery, where the database state that serves as the starting point for applying change records is a checkpoint image, is referred to herein as checkpointed-based recovery. In-memory-based recovery eliminates or reduces the need to perform certain operations that are performed for checkpointed-based recovery.


