Skip to main content

Managing persistent data with mneme: Designing a reliable, shared object interface

  • Data Maniputation And Persistent Languages
  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 334))

Abstract

We investigate issues that arise when attempting to integrate object-oriented languages and database features. We provide criteria for database/language support in the context of design applications, and consider the advantages of integration over more traditional database systems. We then discuss the design of Mneme, a system that narrows the gap between object-oriented databases and programming languages, both traditional and object-oriented. Mneme includes facilities for sharing, reliability, and clustering of objects, as well as a high degree of flexibility. We compare Mneme with other current and recent research efforts, and describe Mneme's particular contributions.

This project is supported by National Science Foundation Grants CCR-8658074 and DCR-8500332, and by Digital Equipment Corporation, Apple Computer, Inc., GTE Laboratories, and the Eastman Kodak Company.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. ANSI. IEEE Standard Pascal Computer Programming Language. IEEE, New York, 1983. Standard ANSI/IEEE770X3.97-1983.

    Google Scholar 

  2. M. P. Atkinson, K. J. Chisolm, and W. P. Cockshott. PS-Algol: an Algol with a peristent heap. ACM SIGPLAN Notices 17, 7 (July 1981).

    Google Scholar 

  3. M. P. Atkinson, P. Bailey, W. P. Cockshott, K. J. Chisolm, and R. Morrison. Progress with persistent programming. In Databases—Role and Structure: An Advanced Course. Cambridge University Press, Cambridge, England, 1984, pp. 245–310.

    Google Scholar 

  4. Jay Banerjee, Hong-Tai Chou, Jorge F. Garza, Won Kim, Darrell Woelk, Nat Ballou, and Houng-Joo Kim. Data model issues for object-oriented applications. ACM Trans. Office Inf. Syst. 5, 1 (Jan. 1987), 3–26.

    Google Scholar 

  5. Jay Banerjee, Won Kim, and Kim Kyng-Chang. Queries in object-oriented databases. MCC Technical Report DB-188-87, Microelectronics and Computer Technology Corporation, Austin, TX, June 1987.

    Google Scholar 

  6. D. S. Batory, J. R. Barnett, J. F. Garza, K. P. Smith, K. Tsukuda, B. C. Twichell, and T. E. Wise. Genesis: A reconfigurable database management system. Tech. Rep. TR-86-07, Department of Computer Sciences, University of Texas at Austin, Austin, TX, Mar. 1986.

    Google Scholar 

  7. Philip Bernstein. Database system support for software engineering. In Proceedings of the Ninth International Conference on Software Engineering (Monterey, CA, Apr. 1987), IEEE.

    Google Scholar 

  8. Peter B. Bishop. Computer Systems with a Very Large Address Space and Garbage Collection. PhD thesis, Massachusetts Institute of Technology, Cambridge, MA, May 1977.

    Google Scholar 

  9. Toby Bloom and Stanley B. Zdonik. Issues in the design of object-oriented database programming languages. In Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (Orlando, FL, Oct. 1987), ACM, pp. 441–451.

    Google Scholar 

  10. D. G. Bobrow, K. Kahn, G. Kiczales, L. Masinter, M. Stefik, and F. Zdybel. CommonLoops: Merging Common Lisp and object-oriented programming. Intelligent Systems Laboratory Series ISL-85-8, Xerox Palo Alto Research Center, Palo Alto, CA, 1985.

    Google Scholar 

  11. Peter Buneman. Can we reconcile programming languages and databases? In Databases—Role and Structure: An Advanced Course. Cambridge University Press, Cambridge, England, 1984, pp. 225–243.

    Google Scholar 

  12. M. J. Carey, D. J. DeWitt, J. E. Richardson, and E. J. Shekita. Object and file management in the EXODUS extensible database system. In Proceedings of the 12th International Conference on Very Large Databases (Kyoto, Japan, Sept. 1986), ACM, pp. 91–100.

    Google Scholar 

  13. Lori A. Clarke, Jack C. Wileden, and Alexander L. Wolf. Graphite: a meta-tool for Ada environment development. In Proceedings of IEEE Society Second International Conference on Ada Applications and Environments (Miami Beach, FL, Aug. 1986), IEEE.

    Google Scholar 

  14. Adele Goldberg and David Robson. Smalltalk-80: The Language and its Implementation. Addison-Wesley, 1983.

    Google Scholar 

  15. S. Hudson and R. King. CACTIS: A database system for specifying functionally-defined data. In Proceedings of the Workshop on Object-Oriented Databases (Pacific Grove, CA, Sept. 1986), ACM, pp. 26–37.

    Google Scholar 

  16. J. D. Ichbiah et al., Rationale for the design of the ADA programming language. ACM SIGPLAN Notices 14, 6 (June 1979).

    Google Scholar 

  17. Kathleen Jensen and Niklaus Wirth. Pascal User Manual and Report, second ed. Springer-Verlag, 1974.

    Google Scholar 

  18. Ted Kaehler and Glenn Krasner. LOOM-large object-oriented memory for Smalltalk-80 systems. In Smalltalk-80: Bits of History, Words of Advice, Glenn Krasner, Ed. Addison-Wesley, 1983, ch. 14, pp. 251–270.

    Google Scholar 

  19. Brian W. Kernighan and Dennis M. Ritchie. The C Programming Language. Prentice-Hall, 1978.

    Google Scholar 

  20. B. Liskov, A. Snyder, R. Atkinson, and C. Schaffert. Abstraction mechanisms in CLU. Commun. ACM 20, 8 (Aug. 1977).

    Google Scholar 

  21. B. Liskov, R. Atkinson, T. Bloom, E. Moss, C. Schaffert, R. Scheifler, and A. Snyder. CLU Reference Manual. Springer-Verlag, 1981.

    Google Scholar 

  22. J. Eliot B. Moss, Antony L. Hosking, Rajesh Nakhwa, and Steven Sinofsky. Implementing Smalltalk-80 on the VAX. Tech. rep., Department of Computer and Information Science, University of Massachusetts, Amherst, MA, 1988. Work in progress.

    Google Scholar 

  23. Alan Purdy, Bruce Schuchardt, and David Maier. Integrating an object server with other worlds. ACM Trans. Office Inf. Syst. 5, 1 (Jan. 1987), 27–47.

    Google Scholar 

  24. Joel E. Richardson and Michael J. Carey. Programming constructs for database system implementations in EXODUS. In Proceedings of the ACM SIGMOD International Conference on the Management of Data (San Francisco, CA, May 1987), ACM, pp. 208–219.

    Google Scholar 

  25. James Rumbaugh. Relations as semantic constructs in an object-oriented language. In Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (Orlando, FL, Oct. 1987), ACM, pp. 466–481.

    Google Scholar 

  26. Craig Schaffert, Topher Cooper, Bruce Bullis, Mike Kilian, and Carrie Wilpolt. An introduction to Trellis/Owl. In Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (Portland, OR, Sept. 1986), ACM, pp. 9–16.

    Google Scholar 

  27. J. W. Schmidt. Some high level language constructs for data of type relation. ACM Trans. Database Syst. 2, 3 (Sept. 1977), 247–281.

    Google Scholar 

  28. Andrea Skarra, Stanley B. Zdonik, and Stephen P. Reiss. An object server for an object oriented database system. In Proceedings of International Workshop on Object-Oriented Database Systems (Pacific Grove, CA, Sept. 1987), ACM, pp. 196–204.

    Google Scholar 

  29. Alfred Z. Spector and Peter M. Schwarz. Synchronizing shared abstract data types. ACM Trans. Comput. Syst. 2, 3 (Aug. 1984), 223–250.

    Google Scholar 

  30. Alfred Z. Spector, Joshua J. Bloch, Dean S. Daniels, Richard P. Draves, Dan Duchamp, Jeffrey L. Eppinger, Sherri G. Menees, and Dean S. Thompson. The camelot project. Tech. Rep. CMU-CS-86-166, Department of Computer Science, Carnegie-Mellon University, Pittsburgh, PA, 1986.

    Google Scholar 

  31. M. Stonebraker and L. A. Rowe. The design of Postgres. In Proceedings of the ACM SIGMOD International Conference on the Management of Data (Washington, D.C., May 1986), ACM, pp. 340–355.

    Google Scholar 

  32. M. Stonebraker, E. Wong, P. Kreps, and G. Held. The design and implementation of Ingres. ACM Trans. Database Syst. 1, 3 (Sept. 1976), 189–222.

    Google Scholar 

  33. B. Stroustrup. The C++ Programming Language. Addison-Wesley, 1986.

    Google Scholar 

  34. W. Teitelman and L. Masinter. The Interlisp programming environment. Computer 14, 4 (Apr. 1981), 25–33.

    Google Scholar 

  35. William Weihl and Barbara Liskov. Implementation of resilient, atomic data types. ACM Trans. Program. Lang. Syst. 7, 2 (Apr. 1985), 244–269.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Klaus R. Dittrich

Rights and permissions

Reprints and permissions

Copyright information

© 1988 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Moss, J.E.B., Sinofsky, S. (1988). Managing persistent data with mneme: Designing a reliable, shared object interface. In: Dittrich, K.R. (eds) Advances in Object-Oriented Database Systems. OODBS 1988. Lecture Notes in Computer Science, vol 334. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-50345-5_28

Download citation

  • DOI: https://doi.org/10.1007/3-540-50345-5_28

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-50345-3

  • Online ISBN: 978-3-540-45981-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics