Skip to main content
Log in

Distributed Multi-Level Recovery in Main-Memory Databases

  • Published:
Distributed and Parallel Databases Aims and scope Submit manuscript

Abstract

In this paper we present recovery techniques for distributed main-memory databases, specifically for client-server and shared-disk architectures. We present a recovery scheme for client-server architectures which is based on shipping log records to the server, and two recovery schemes for shared-disk architectures—one based on page shipping, and the other based on broadcasting of the log of updates. The schemes offer different tradeoffs, based on factors such as update rates.

Our techniques are extensions to a distributed-memory setting of a centralized recovery scheme for main-memory databases, which has been implemented in the Dalì main-memory database system. Our centralized as well as distributed-memory recovery schemes have several attractive features—they support an explicit multi-level recovery abstraction for high concurrency, reduce disk I/O by writing only redo log records to disk during normal processing, and use per-transaction redo and undo logs to reduce contention on the system log. Further, the techniques use a fuzzy checkpointing scheme that writes only dirty pages to disk, yet minimally interferes with normal processing—all but one of our recovery schemes do not require updaters to even acquire a latch before updating a page. Our log shipping/broadcasting schemes also support concurrent updates to the same page at different sites.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. P. Bohannon, D. Lieuwen, R. Rastogi, S. Seshadri, S. Sudarshan, and A. Silberschatz. The architecture of the Dali main-memory storage manager. Multimedia Tools and Applications, 4(2):115-151, March 1997.

    Article  Google Scholar 

  2. P. Bohannon, J. Parker, R. Rastogi, S. Seshadri, and S. Sudarshan. Distributed multi-level recovery in main-memory databases. Technical Report 112530-96-02-27-01TM, Lucent Technologies, Bell Laboratories, February 1996.

  3. M. J. Carey, D. J. DeWitt, M. J. Franklin, N. E. Hall, M. L. McAuliffe, J. F. Naughton, D. T. Schuh, M. H. Solomon, C. K. Tan, O. G. Tsatalos, S. J. White, and M. J. Zwilling. Shoring up persistent applications. In Proceedings of ACM-SIGMOD 1994 International Conference on Management of Data, Minneapolis, Minnesota, pages 383-394, May 1994.

  4. M. J. Carey, M. J. Franklin, and M. Zaharioudakis. Fine-grained sharing in a page server OODBMS. In Proceedings of ACM-SIGMOD 1994 International Conference on Management of Data, Minneapolis, Minnesota, pages 359-370, May 1994.

  5. D. J. DeWitt, R. Katz, F. Olken, D. Shapiro, M. Stonebraker, and D. Wood. Implementation techniques for main memory database systems. Proc. ACM-SIGMOD 1984 Int'l Conf. on Management of Data, pages 1-8, June 1984.

  6. M. J. Franklin, M. J. Zwilling, C. K. Tan, M. J. Carey, and D. J. DeWitt. Crash recovery in client-server EXODUS. In Proceedings of ACM-SIGMOD 1992 International Conference on Management of Data, San Diego, California, pages 165-174, June 1992.

  7. H. Garcia-Molina and K. Salem. Main memory database systems: An overview. IEEE Transactions on Knowledge and Data Engineering, 4(6):509-516, December 1992.

    Article  Google Scholar 

  8. Robert B. Hagmann. A crash recovery scheme for a memory-resident database system. IEEE Transactions on Computers, C-35(9):839-847, September 1986.

    Google Scholar 

  9. H.V. Jagadish, Dan Lieuwen, Rajeev Rastogi, Avi Silberschatz, and S. Sudarshan. Dali: Ahigh performance main-memory storage manager. In Procs. of the International Conf. on Very Large Databases, 1994.

  10. H.V. Jagadish, Avi Silberschatz, and S. Sudarshan. Recovering from main-memory lapses. In Procs. of the International Conf. on Very Large Databases, 1993.

  11. C. Lamb, G. Landis, J. Orenstein, and D. Weinreb. The objectstore database system. Communications of the ACM, 34(10), October 1991.

  12. T. Lehman, E. J. Shekita, and L. Cabrera. An evaluation of Starburst's memory resident storage component. IEEE Transactions on Knowledge and Data Engineering, 4(6):555-566, December 1992.

    Article  Google Scholar 

  13. D. Lomet. MLR: A recovery method for multi-level systems. In Proceedings of ACM-SIGMOD 1992 International Conference on Management of Data, San Diego, California, pages 185-194, 1992.

  14. C. Mohan, D. Haderle, B. Lindsay, H. Pirahesh, and P. Schwarz. ARIES: A transaction recovery method supporting fine-granularity locking and partial rollbacks using write-ahead logging. ACM Transactions on Database Systems, 17(1):94-162, March 1992.

    Article  Google Scholar 

  15. C. Mohan and I. Narang. Recovery and coherency-control protocols for fast intersystem page transfer and fine-granularity locking in a shared disks transaction environment. In Proceedings of the Seventeenth International Conference on Very Large Databases, Barcelona, pages 193-207, September 1991.

  16. C. Mohan and I. Narang. ARIES/CSA: a method for database recovery in client-server architectures. In Proceedings of ACM-SIGMOD 1994 International Conference on Management of Data, Minneapolis, Minnesota, pages 55-66, May 1994.

  17. E. Rahm. Recovery concepts for data sharing systems. In Proceedings of the Twenty first International Conference on Fault-Tolerant Computing (FTCS-21), Montreal, pages 109-123, June 1991.

  18. K. Salem and H. Garcia-Molina. System M: A transaction processing testbed for memory resident data. IEEE Transactions on Knowledge and Data Engineering, 2(1):161-172, March 1990.

    Article  Google Scholar 

  19. K. Salem and H. Garcia-Molina. System M: A transaction processing testbed for memory resident data. IEEE Transactions on Knowledge and Data Engineering, 2(1):161-172, 1990.

    Article  Google Scholar 

  20. G. Weikum, C. Hasse, P. Broessler, and P. Muth. Multi-level recovery. In Proceedings of the Nineth ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems, Nashville, pages 109-123, June 1990.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Rastogi, R., Bohannon, P., Parker, J. et al. Distributed Multi-Level Recovery in Main-Memory Databases. Distributed and Parallel Databases 6, 41–71 (1998). https://doi.org/10.1023/A:1008694713931

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1008694713931

Navigation