Publication | Closed Access
A recovery algorithm for a high-performance memory-resident database system
93
Citations
11
References
1987
Year
Unknown Venue
EngineeringDatabasesIn-memory DatabaseComputer ArchitectureTransaction ProcessingConcurrency ControlIn-memory DatabasesRecovery AlgorithmStorage SystemsData ScienceDistributed DatabaseData RecoveryManagementAdaptive MemoryMemory PricesParallel ComputingData ManagementStorage StrategiesComputer EngineeringComputer ScienceDatabase TechnologyParallel Data ManagementBackground RecoveryData RestorationDatabase RecoverySystem Software
Memory prices are falling and capacities are rising, prompting research into high‑performance database systems that manage memory‑resident data. This paper tackles the recovery problem for such memory‑resident database systems. The authors propose a recovery mechanism that stores per‑object recovery information in a few megabytes of reliable memory, amortizes checkpoint costs over a controllable number of updates, and splits post‑crash recovery into a fast, transaction‑essential phase and a background phase. Performance analysis indicates the mechanism reduces checkpoint overhead, enables rapid recovery of critical data, and performs well in high‑performance, memory‑resident database environments.
With memory prices dropping and memory sizes increasing accordingly, a number of researchers are addressing the problem of designing high-performance database systems for managing memory-resident data. In this paper we address the recovery problem in the context of such a system. We argue that existing database recovery schemes fall short of meeting the requirements of such a system, and we present a new recovery mechanism which is designed to overcome their shortcomings. The proposed mechanism takes advantage of a few megabytes of reliable memory in order to organize recovery information on a per “object” basis. As a result, it is able to amortize the cost of checkpoints over a controllable number of updates, and it is also able to separate post-crash recovery into two phases—high-speed recovery of data which is needed immediately by transactions, and background recovery of the remaining portions of the database. A simple performance analysis is undertaken, and the results suggest our mechanism should perform well in a high-performance, memory-resident database environment.
| Year | Citations | |
|---|---|---|
Page 1
Page 1