Formal specification, object oriented design, and implementation of an ephemeral logger for database systems

  • Paul Hennessey
  • Mohamed T. Ibrahim
  • Alexander M. Fedorec
Object-Oriented Databases 3
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1134)


Recent attempts to relax the ACID rules of transaction processing in order to support Long-Lived Transactions (LLTs) have produced a number of systems which incorporate a meta-transactional framework to store the context of simple atomic transactions. Such a system creates problems for logger design, as a small number of very long transactions can fill the log leading to the premature termination of other transactions. Ephemeral Logging (EL) is a logging algorithm which performs generational garbage collection on the log, thus optimising disk space usage. Its claimed advantage over traditional loggers is most marked in a situation where there are a few long transactions amongst many short ones. This paper describes the formal specification of a transactional logger based on the EL algorithm, its modelling using Object-oriented design (OMT) and implementation. The application of the EL logger to new, emerging applications is also considered. At present the published performance data for this algorithm have been derived using a simulator. This report attempts to examine and scrutinise those results, and asks whether EL could be the logging method of choice in systems that support LLTs.

Key words

Transaction processing Logging Log manager Ephemeral logging Formal specification LLT Long-Lived Transactions OMT Object design Distributed database systems Log performance 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aho et al. Compilers: Principles, Techniques and Tools. Addison Wesley. 1986.Google Scholar
  2. 2.
    Astrahan, M. M. et al. An Overview of System R: A Relational Database System, IEEE Computer. 13(4): 42–55, 1979.Google Scholar
  3. 3.
    Bernstein, Philip A. Transaction Processing Monitors. Communications of the ACM, Nov 1993.Google Scholar
  4. 4.
    Booch, G., Next Generation Methods: Bringing Order out of Chaos. C++ Report. 5(7). SIGS Publ. Sept 1993.Google Scholar
  5. 5.
    Date, C. J. An Introduction to Database Systems. Vol 1. 5th ed. Addison Wesley.Google Scholar
  6. 6.
    Dayal et al. Third Generation TP Monitors: A Database Challenge. Proceedings of the 1993 ACM SIGMOD. Volume 22, Number 2, June 1993.Google Scholar
  7. 7.
    Diller, A. Z: An Introduction to Formal Methods. 2nd Ed. Wiley, 1994.Google Scholar
  8. 8.
    Elmagarmid et al. Introduction to Advanced Transaction Models. Database Transaction Models For Advanced Applications; Moprgan-Kaufmann, 1992Google Scholar
  9. 9.
    Elmasri & Navathe. Fundamentals of Database Systems. 2nd Ed. Addison Wesley 1994.Google Scholar
  10. 10.
    Eppinger et al. Camelot and Avalon: A Distributed Transaction Facility. San Mateo, CA. Morgan Kaufman.Google Scholar
  11. 11.
    Farr, T., Formal Methods — can they deliver their promise?, in Software Engineering for Technical Managers, Peter Peregrinus, 19–30, 1990.Google Scholar
  12. 12.
    Fowler, M., OO Methods: A Comparative Overview. C++ Report. 5(7). SIGS Publ. Sep 1993.Google Scholar
  13. 13.
    Garcia-Molina, H. & Salem, K. Sagas. Proceedings of the ACM Conference on Management of Data. May 1987.Google Scholar
  14. 14.
    Gray, J. The Transaction Concept: Virtues and Limitations. Proceedings of the 7th International Conference on Very Large Data Bases. Sept 1981.Google Scholar
  15. 15.
    Gray & Reuter. Transaction Processing: Concepts and Techniques. Morgan Kaufman 1993.Google Scholar
  16. 16.
    Haerder, T., & Reuter, A., Principles of Transaction-Oriented Database Recovery. ACM Computing Surveys. 15(4):287–317 1983.CrossRefGoogle Scholar
  17. 17.
    Hall, A., Seven Myths of Formal Methods, IEEE Software, 7(5) 11–19, Sept 1990.CrossRefGoogle Scholar
  18. 18.
    Harel, D., Algorithmics: The Spirit of Computing. 2nd ed. Addison Wesley. 1992Google Scholar
  19. 19.
    Hayes, I., Specifying the CICS Application Programming Interface. Technical Monograph PRG — 47, Oxford University Computing Laboratory, Programming Research Group July 1985.Google Scholar
  20. 20.
    Hsu, Meichun. Transaction Processing and Workflow Management. Digital Equipment Corporation Activity Management Group. Palo Alto, California. 1994.Google Scholar
  21. 21.
    Jacobsen, I. et al. Object-Oriented Software Engineering: A Use case Driven Approach. Addison Wesley. 1992.Google Scholar
  22. 22.
    Keen, J. S., Logging and Recovery in a Highly Concurrent Database. PhD Thesis, MIT 1994.Google Scholar
  23. 23.
    Keen, J. S. & Dally, W. J. Performance Evaluation of Ephemeral Logging. SIGMOD May 1993.Google Scholar
  24. 24.
    Klein, J., & Reuter, A. Migrating Transactions. Workshop on the future Trends of Distributed Computing Systems. 512–520 1988.Google Scholar
  25. 25.
    Knuth, D. E. The Art of Computer Programming. Vol 1. Fundamental Algorithms. 2e. Addison Wesley, 1973.Google Scholar
  26. 26.
    Leu, Y. et al. An Extended Transaction Model for Multidatabase Systems. Purdue University, CSD-TR925.Google Scholar
  27. 27.
    Lieberman, H & Hewitt, C. A Real-Time Garbage Collector Based on the Lifetime of Objects. Communications of the ACM, Jun 1983.Google Scholar
  28. 28.
    Liskov, B. Distributed Programming in Argus. CACM. 31(3) 1988Google Scholar
  29. 29.
    Malaika, Susan. A Tale of a Transaction Monitor. IEEE Computer Society Special Issue on TP Monitors and distributed transaction Management 1994.Google Scholar
  30. 30.
    Meyer, B. Object-oriented Software Construction. Prentice Hall. 1988.Google Scholar
  31. 31.
    Mohan & Rothermel. ARIES/NT: A Recovery Method Based on Write-Ahead Logging for Nested Transactions. Proc. International Conference on Very Large Databases. 1989.Google Scholar
  32. 32.
    Moss, J. E. Nested Transactions: An Approach to Reliable Distributed Computing. PhD Thesis, MIT 1981.Google Scholar
  33. 33.
    OTM Spectrum Reports. Nov 1992.Google Scholar
  34. 34.
    OTM Spectrum Reports. Vol 7. Report 1. Feb 1993.Google Scholar
  35. 35.
    Reuter, A. ConTracts: A Means for Extending Control Beyond Transaction Boundaries. 3rd International Workshop on High Performance Transaction Systems.Google Scholar
  36. 36.
    Rumbaugh, J., et al. Object-Oriented Modeling and Design. Prentice hall. 1991.Google Scholar
  37. 37.
    Spivey, J. M., An introduction to Z and formal specifications. S/W Eng Journal. 330–338, Nov. 1989.Google Scholar
  38. 38.
    Stonebraker, M., Operating System Support for Database Management. CACM. 24(7):412–418, 1981.Google Scholar
  39. 39.
    Ungar, D.M. The Design and Evaluation of a High Performance Smalltalk System. Ch 5, pp82–121. ACM Distinguished Dissertations 1986.Google Scholar
  40. 40.
    Frost, S., The Select Perspective: Developing Enterprise Systems Using Object technology, Select Software Tools Inc., 1995.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Paul Hennessey
    • 1
  • Mohamed T. Ibrahim
    • 2
  • Alexander M. Fedorec
    • 2
  1. 1.Praxis SystemsBathUK
  2. 2.School of Computing and Mathematical SciencesUniversity of GreenwichLondonUK

Personalised recommendations