Integrating Reliable Memory in Databases.

Wee Teck Ng, Peter M. Chen: Integrating Reliable Memory in Databases. VLDB J. 7(3): 194-204(1998)
  author    = {Wee Teck Ng and
               Peter M. Chen},
  title     = {Integrating Reliable Memory in Databases},
  journal   = {VLDB J.},
  volume    = {7},
  number    = {3},
  year      = {1998},
  pages     = {194-204},
  ee        = {db/journals/vldb/NgC98.html},
  bibsource = {DBLP,}


Recent results in the Rio project at the University of Michigan show that it is possible to create an area of main memory that is as safe as disk from operating system crashes. This paper explores how to integrate the reliable memory provided by the Rio file cache into a database system. Prior studies have analyzed the performance benefits of reliable memory; we focus instead on how different designs affect reliability. We propose three designs for integrating reliable memory into databases: non-persistent database buffer cache, persistent database buffer cache, and persistent database buffer cache with protection. Non-persistent buffer caches use an I/O interface to reliable memory and require the fewest modifications to existing databases. However, they waste memory capacity and bandwidth due to double buffering. Persistent buffer caches use a memory interface to reliable memory by mapping it into the database address space. This places reliable memory under complete database control and eliminates double buffering, but it may expose the buffer cache to database errors. Our third design reduces this exposure by write protecting the buffer pages. Extensive fault tests show that mapping reliable memory into the database address space does not significantly hurt reliability. This is because wild stores rarely touch dirty, committed pages written by previous transactions. As a result, we believe that databases should use a memory interface to reliable memory.

Key Words

Reliability - Recovery - Main memory database system (MMDB)

Copyright © 1998 by Springer, Berlin, Heidelberg. Permission to make digital or hard copies of the abstract is granted provided that copies are not made or distributed for profit or direct commercial advantage, and that copies show this notice along with the full citation.

Online Edition (Springer)

Citation Page

ACM SIGMOD Anthology

CDROM Version: Load the CDROM "Volume 5 Issue 2, JACM, VLDB-J, POS, ..." and ... DVD Version: Load ACM SIGMOD Anthology DVD 2" and ... BibTeX


Rakesh Agrawal, H. V. Jagadish: Recovery Algorithms for Database Machines with Nonvolatile Main Memory. IWDM 1989: 269-285 BibTeX
Sedat Akyürek, Kenneth Salem: Management of Partially Safe Buffers. IEEE Trans. Computers 44(3): 394-407(1995) BibTeX
Joel F. Bartlett: A NonStop Kernel. SOSP 1981: 22-19 BibTeX
James H. Barton, Edward W. Czeck, Zary Segall, Daniel P. Siewiorek: Fault Injection Experiments Using FIAT. IEEE Trans. Computers 39(4): 575-582(1990) BibTeX
Brian N. Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gün Sirer, Marc E. Fiuczynski, David Becker, Craig Chambers, Susan J. Eggers: Extensibility, Safety and Performance in the SPIN Operating System. SOSP 1995: 267-284 BibTeX
Anupam Bhide, Daniel M. Dias, Nagui Halim, T. Basil Smith, Francis N. Parr: A Case for Fault-Tolerant Memory for Transaction Processing. FTCS 1993: 451-460 BibTeX
Dina Bitton, David J. DeWitt, Carolyn Turbyfill: Benchmarking Database Systems A Systematic Approach. VLDB 1983: 8-19 BibTeX
Philip Bohannon, Daniel F. Lieuwen, Rajeev Rastogi, Abraham Silberschatz, S. Seshadri, S. Sudarshan: The Architecture of the Dalí Main-Memory Storage Manager. Multimedia Tools Appl. 4(2): 115-151(1997) BibTeX
Peter M. Chen, Edward L. Lee, Garth A. Gibson, Randy H. Katz, David A. Patterson: RAID: High-Performance, Reliable Secondary Storage. ACM Comput. Surv. 26(2): 145-185(1994) BibTeX
Peter M. Chen, Wee Teck Ng, Subhachandra Chandra, Christopher M. Aycock, Gurushankar Rajamani, David E. Lowell: The Rio File Cache: Surviving Operating System Crashes. ASPLOS 1996: 74-83 BibTeX
George P. Copeland, Tom W. Keller, Ravi Krishnamurthy, Marc G. Smith: The Case For Safe RAM. VLDB 1989: 327-335 BibTeX
David J. DeWitt, Randy H. Katz, Frank Olken, Leonard D. Shapiro, Michael Stonebraker, David A. Wood: Implementation Techniques for Main Memory Database Systems. SIGMOD Conference 1984: 1-8 BibTeX
Klaus Elhardt, Rudolf Bayer: A Database Cache for High Performance and Fast Restart in Database Systems. ACM Trans. Database Syst. 9(4): 503-525(1984) BibTeX
Hector Garcia-Molina, Kenneth Salem: Main Memory Database Systems: An Overview. IEEE Trans. Knowl. Data Eng. 4(6): 509-516(1992) BibTeX
Richard B. Gillett: Memory Channel Network for PCI. IEEE Micro 16(1): 12-18(1996) BibTeX
Jim Gray: Notes on Data Base Operating Systems. Advanced Course: Operating Systems 1978: 393-481 BibTeX
Jim Gray, Paul R. McJones, Mike W. Blasgen, Bruce G. Lindsay, Raymond A. Lorie, Thomas G. Price, Gianfranco R. Putzolu, Irving L. Traiger: The Recovery Manager of the System R Database Manager. ACM Comput. Surv. 13(2): 223-243(1981) BibTeX
Jim Gray, Andreas Reuter: Transaction Processing: Concepts and Techniques. Morgan Kaufmann 1993, ISBN 1-55860-190-2
Contents BibTeX
Theo Härder, Andreas Reuter: Principles of Transaction-Oriented Database Recovery. ACM Comput. Surv. 15(4): 287-317(1983) BibTeX
Robert B. Hagmann: Crash Recovery Scheme for a Memory-Resident Database System. IEEE Trans. Computers 35(9): 839-843(1986) BibTeX
Kieran Harty, David R. Cheriton: Application-Controlled Physical Memory using External Page-Cache Management. ASPLOS 1992: 187-197 BibTeX
Ghani A. Kanawati, Nasser A. Kanawati, Jacob A. Abraham: FERRARI: A Flexible Software-Based Fault and Error Injection System. IEEE Trans. Computers 44(2): 248-260(1995) BibTeX
Wei-lun Kao, Ravishankar K. Iyer, Dong Tang: FINE: A Fault Injection and Monitoring Environment for Tracing the UNIX System Behavior under Faults. IEEE Trans. Software Eng. 19(11): 1105-1118(1993) BibTeX
Inhwan Lee, Ravishankar K. Iyer: Faults, Symptoms, and Software Fault Tolerance in the Tandem GUARDIAN90 Operating System. FTCS 1993: 20-29 BibTeX
Barbara Liskov, Sanjay Ghemawat, Robert Gruber, Paul Johnson, Liuba Shrira, Michael Williams: Replication in the Harp File System. SOSP 1991: 226-238 BibTeX
David E. Lowell, Peter M. Chen: Free Transactions With Rio Vista. SOSP 1997: 92-101 BibTeX
C. Mohan, Donald J. Haderle, Bruce G. Lindsay, Hamid Pirahesh, Peter M. Schwarz: ARIES: A Transaction Recovery Method Supporting Fine-Granularity Locking and Partial Rollbacks Using Write-Ahead Logging. ACM Trans. Database Syst. 17(1): 94-162(1992) BibTeX
Gilles Muller, Michel Banâtre, Nadine Peyrouze, Bruno Rochat: Lessons from FTM: An Experiment in Design and Implementation of a Low-Cost Fault-Tolerant System. IEEE Transactions on Reliability 45(2): 332-339(1996) BibTeX
R. Hugo Patterson, Garth A. Gibson, Eka Ginting, Daniel Stodolsky, Jim Zelenka: Informed Prefetching and Caching. SOSP 1995: 79-95 BibTeX
Erhard Rahm: Performance Evaluation of Extended Storage Architectures for Transaction Processing. SIGMOD Conference 1992: 308-317 BibTeX
Mendel Rosenblum, Edouard Bugnion, Stephen Alan Herrod, Emmett Witchel, Anoop Gupta: The Impact of Architectural Trends on Operating System Performance. SOSP 1995: 285-298 BibTeX
Mahadev Satyanarayanan, Henry H. Mashburn, Puneet Kumar, David C. Steere, James J. Kistler: Lightweight Recoverable Virtual Memory. SOSP 1993: 146-160 BibTeX
Steven L. Scott, James R. Goodman, Mary K. Vernon: Performance of the SCI Ring. ISCA 1992: 403-414 BibTeX
Margo I. Seltzer, Yasuhiro Endo, Christopher Small, Keith A. Smith: Dealing with Disaster: Surviving Misbehaved Kernel Extensions. OSDI 1996: 213-227 BibTeX
Amitabh Srivastava, Alan Eustace: ATOM - A System for Building Customized Program Analysis Tools. PLDI 1994: 196-205 BibTeX
Michael Stonebraker: Operating System Support for Database Management. Commun. ACM 24(7): 412-418(1981) BibTeX
Michael Stonebraker: The Design of the POSTGRES Storage System. VLDB 1987: 289-300 BibTeX
Mark Sullivan, Michael Stonebraker: Using Write Protected Data Structures To Improve Software Fault Tolerance in Highly Available Database Management Systems. VLDB 1991: 171-180 BibTeX
Mark Sullivan, Ram Chillarege: Software Defects and their Impact on System Availability: A Study of Field Failures in Operating Systems. FTCS 1991: 2-9 BibTeX
Mark Sullivan, Ram Chillarege: A Comparison of Software Defects in Database Management Systems and Operating Systems. FTCS 1992: 475-484 BibTeX
Mark Sullivan: System Support for Software Fault Tolerance in Highly Available Database Management Systems. Ph.D. thesis, University of California at Berkeley 1993
Robert Wahbe, Steven Lucco, Thomas E. Anderson, Susan L. Graham: Efficient Software-Based Fault Isolation. SOSP 1993: 203-216 BibTeX
Michael Wu, Willy Zwaenepoel: eNVy: A Non-Volatile, Main Memory Storage System. ASPLOS 1994: 86-97 BibTeX
ACM SIGMOD Anthology - DBLP: [Home | Search: Author, Title | Conferences | Journals]
VLDB Journal: 1992-1995 Copyright © by VLDB Endowment / 1996-... Copyright © by Springer Verlag,
ACM SIGMOD Anthology: Copyright © by ACM (, Corrections:
DBLP: Copyright © by Michael Ley (, last change: Sun May 17 00:31:34 2009