Associative Access Support in GemStone

  • Jacob Stein
  • David Maier
Part of the Topics in Information Systems book series (TINF)


The GemStone object server is the first commercially available system to combine the expressive power of an object-oriented language and model with database features for shared, persistent storage. After outlining GemStone’s architecture and data model, we explore the issues that arose in incorporating associative access support into the system. The issues include language constructs for specifying associative search, the organization of auxiliary search structures, whether to index on classes or collections and the interaction with other features of GemStone, such as authorization and concurrency. We then describe how these issues were resolved in the design of GemStone, with language and model extensions for paths and typing, multicomponent indexes on long paths, dependency lists connecting objects to indexes, and two varieties of indexes, based on identity and equality. We conclude with a short section on related research.


Instance Variable Logical Record Equality Index Class Student Index Component 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [BaBu84]
    Batory, D.S., Buchmann, A.P.: “Molecular Objects, Abstract Data Types, and Data Models: A Framework”, Proc. 1984 VLDB, Singapore, 1984.Google Scholar
  2. [Brod84]
    Bachman, C., Daya, M.: “The Role Concept in Database Models”, Proc. 1977 VLDB Conference, Tokyo, Japan, October 1977.Google Scholar
  3. [Catt83]
    Bancilhon, F., Khoshafian, S.: “A Calculus for Complex Objects”, Proc. PODS 1986, Cambridge, MA, 1986.Google Scholar
  4. [CFLR81]
    Batory, D., Kim, W.: “Modeling Concepts for VLSI CAD Objects”, ACM TODS, Vol. 10, No. 3, September 1985.Google Scholar
  5. [Chan82]
    Batory, D., Kim, W.: “Supporting Versions of VLSI CAD Objects”, M.C.C. Technical Report, Austin, TX,1985.Google Scholar
  6. [CoKo85]
    Barbic, F., Rabitti, F.: “The Type Concept in Office Document Retrieval”, In: Proc. 11th International Conference on VLDB, Pirotte, A., Vassiliou, Y., (Eds.), Stockholm, Sweden, August 1985.Google Scholar
  7. [CoMa84]
    Bayer, R., Schkolnick, M.: “Concurrency of Operations on Btrees”, Acta Informatica 9, 1977.Google Scholar
  8. [Date83]
    Batory, D.S.: “Modeling the Storage Architectures of Commercial Database Systems”, ACM TODS, Vol. 10, No. 4, 1985.Google Scholar
  9. [DoKo84]
    Batory, D., Barnett, J., Garza, J., Smith, K., Tsukuda, K., Twichell, C., Wise, T.: “GENESIS: A Reconfigurable Database Management System”, Technical Report, TR-86–07, Department of Computer Sciences, University of Texas at Austin, TX, March 1986.Google Scholar
  10. [East80]
    Barbic, F., Carli, M., Pernici, B., Bracchi, G.: “A Tool for Form Definition in Office Information Systems Specification”, In: New Applications of Data Bases, Gardarin, G., Gelenbe, E., ( Eds. ), Academic Press, 1984.Google Scholar
  11. [GoRo83]
    Bernstein, P., Blaustein, B., Clarke, E.: “Fast Maintenance of Semantic Integrity Assertions Using Redundant Aggregate Data”, In: Proc. 6th International Conference on VLDB, October 1980.Google Scholar
  12. [Gray84]
    Bensoussan, A., Clingen, C.T., Daley, R.C.: “The MULTICS Virtual Memory”, In: Proc. 2nd Symp. Operating Systems Principles, Princeton University, pp. 30–42, October 1969.Google Scholar
  13. [HaLo82]
    Beech, D., Feldman, J.S.: “The Integrated Data Model: A Database Perspective”, In: Proc. 9th International Conference on VLDB, Florence, Italy, October 1983.Google Scholar
  14. [Hayn81]
    Bernstein, P.A., Goodman, N., Hdzilacos, V.: “Recovery Algorithms for Database Systems”, Aiken Computation Laboratory, Technical Report.Google Scholar
  15. [JoSW83]
    Bernstein, P.A., Goodman, N.: “A Sophisticate’s Guide to Distributed Database Concurrency Control”, Aiken Computation Laboratory, Technical Report.Google Scholar
  16. [Kras83]
    Bekic, H., Bjorner, D., Henhapl, W., Jones, C.B., Lucas, P.: “A Formal Definition of a PL/1 Subset”, Technical Report, IBM Vienna Laboratory, December 1974.Google Scholar
  17. [LoPl83]
    Biller, H., Neuhold, E.J.: “Semantics of Databases: The Semantics of Data Models”, Information Systems, Vol. 3, pp. 130, 1978.Google Scholar
  18. [Maie83]
    Bishop, P.B.: “Computer Systems with a Very Large Address Space and Garbage Collection”, Technical Report TR-178, Laboratory for Computer Science, Cambridge, MA, May 1977.Google Scholar
  19. [MaOP85]
    Bjorner, D., Jones, C.B., (Eds.): “The Vienna Development Method: The Meta-Language”, Lecture Notes in Computer Science, Vol. 61, Springer-Verlag, May 1978.Google Scholar
  20. [MaPr84]
    Bjorner, D., Lovengren, H.H.: “Formalization of Database Systems - And a Formal Definition of IMS”, In: Proc. 8th International Conference on VLDB, Mexico City, Mexico, September 1982.Google Scholar
  21. [MaSt86]
    Bjorner, D., Oest, O.N., (Eds.): “Towards a Formal Description of Ada”, Lecture Notes in Computer Science, Vol. 98, Springer-Verlag, 1980.Google Scholar
  22. [Morg83]
    Booth, T.L., Hart, R., Qin, B.: “High Performance Software Design”, Proc. Hawaii Int. Conf. on Sys. Sci., Vol. Il, pp. 41–52, January 1986.Google Scholar
  23. [MSOP86]
    Bobrow, D., Kiczales, G.: “Common Lisp Object System Specification”, Draft X3 Document 87–001, Am. Nat. Stand. Inst., February 1987.Google Scholar
  24. [Nier85b]
    Borgida, A., Mylopoulos, J., Wong, H.K.T.: “Generalization/ Specialization as a Basis for Software Specification”, In: On Conceptual Modeling, Brodie, M.L., Mylopoulos, J., Schmidt, J.W., (Eds.), Springer-Verlag, New York, 1984.Google Scholar
  25. [PKLM84]
    Borgida, A.: “Language Features for Flexible Handling of Exceptions in Information Systems”, ACM TODS, Vol. 10, pp. 565–603, 1985.CrossRefGoogle Scholar
  26. [Purd]
    Borning, A.: “The Programming Language Aspects of ThingLab, A Constraint-Oriented Simulation Laboratory”, In: ACM Transactions on Programming Languages, Vol. 3, No. 4, pp. 353–387, October 1981.Google Scholar
  27. [RoSh79]
    Borning, A.: Defining Constraints Graphically, University of Washington TR 85–09–06, Seattle, WA, September 1985.Google Scholar
  28. [Sidl80]
    Borning, A.: “Classes vs. Prototypes in Object-Oriented Languages”, Proc. FJCC, Dallas, TX, November 1986.Google Scholar
  29. [StRG83]
    Bobrow, D.G., Stefik, M.: “The LOOPS Manual”, In: LOOPS Release Notes, Xerox Corporation, Palo Alto, CA, 1983.Google Scholar
  30. [StRo86]
    Brachman, R.J.: “What IS-A Is and Isn’t: An Analysis of Taxonomic Links in Semantic Neworks”, IEEE Computer Magazine, pp. 37–41, October 1983.Google Scholar
  31. [Weis85]
    Bragger, R.P., et al.: “Gambit: An Interactive Database Design Tool for Data Structures, Integrity Constraints, and Transactions”, IEEE Trans. on Soft. Eng., Vol. (SE-11, 7), pp. 574–582, July 1985.CrossRefGoogle Scholar
  32. [Zdon84]
    Broverman, C.A., Croft, W.B.: “A Knowledge-Based Approach to Data Management for Intelligent User Interfaces”, In: Proc. 11th International Conference on VLDB, Pirotte, A., Vassiliou, Y., (Eds.), Stockholm, Sweden, August 1985.Google Scholar
  33. [ZdWe85a]
    Bremser, J.: “COOLE: C Object-Oriented Language Extension, Reference Manual”, Technical Report, Center for Interactive Computer Graphics, Rensselaer Polytechnic Institute, Troy, NY, 1986.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1991

Authors and Affiliations

  • Jacob Stein
  • David Maier

There are no affiliations available

Personalised recommendations