ABSTRACT
This paper presents, QuickStore, a memory-mapped storage system for persistent C++ built on top of the EXODUS Storage Manager. QuickStore provides fast access to in-memory objects by allowing application programs to access objects via normal virtual memory pointers. The paper also presents the results of a detailed performance study using the OO7 benchmark. The study compares the performance of QuickStore with the latest implementation of the E programming language. These systems exemplify the two basic approaches (hardware and software) that have been used to implement persistence in object-oriented database systems. Both systems use the same underlying storage manager and compiler allowing us to make a truly apples-to-apples comparison of the hardware and software techniques.
- Ball92.T. Ball and J. Larus, "Optimally Profiling and Tracing Programs", POPL 1992, pp. 59-70, January 1992. Google ScholarDigital Library
- Carey89a.M. Carey et al., "The EXODUS Extensible DBMS Project: An Overview," in Readings in Object-Oriented Databases, S. Zdonik and D. Maier, eds., Morgan-Kaufman, 1989. Google ScholarDigital Library
- Carey89b.M. Carey et al., "Storage Management for Objects in EXODUS," in Object-Oriented Concepts, Databases, and Applications, W. Kim and F. Lochovsky, eds., Addison-Wesley, 1989. Google ScholarDigital Library
- Exodu92.Using the EXODUS Storage Manager V2.0.2, technical documentation, Department of Computer Sciences, University of Wisconsin- Madison, January 1992.Google Scholar
- Carey93.M. Carey, D. DeWitt, J. Naughton, "The OO7 Benchmark", Proc. ACM SIGMOD Int'l Conf. on Management of Data, Washington, DC, May 1993. Google ScholarDigital Library
- Frank92.M. Franklin et al., "Crash Recovery in Client-Server EXODUS", Proc. ACM SIGMOD Int'l Conf. on Management of Data, San Diego, California, 1992. Google ScholarDigital Library
- Hoski93.A. Hosking, J. E. B. Moss, "Object Fault Handling for Persistent Programming Languages: A Performance Evaluation", OOPSLA '93, pp. 288-303 Google ScholarDigital Library
- Lamb91.C. Lamb et al., "The ObjectStore Database System", CACM, Vol. 34, No. 10, October 1991 Google ScholarDigital Library
- Moss90.J. Eliot B. Moss, "Working with Persistent Objects: To Swizzle or Not to Swizzle", COINS Object-Oriented Systems Laboratory Technical Report 90-38, University of Massachusetts at Amherst, May 1990.Google Scholar
- Objec90.Object Design, Inc., ObjectStore User Guide, Release 1.0, October 1990.Google Scholar
- Rich93.J. Richardson, M. Carey, and D. Schuh, "The Design of the E Programming Language", ACM Trans. on Programming Languages and Systems, Vol. 15, No. 3, July 1993. Google ScholarDigital Library
- Rich90.J. Richardson, "Compiled Item Faulting", Proc. of the 4th lnt't. Workshop on Persistent Object Systems, Martha's Vineyard, MA, September 1990.Google Scholar
- Schuh90.D. Schuh, M. Carey, and D. DeWitt, "Persistence in E Revisited---Implementation Experiences, in Implementing Persistent Object Bases Principles and Practice", The 4th Int'I. Workshop on Persistent Object Systems.Google Scholar
- Shek90.E. Shekita and M. Zwilling, "Cricket: A Mapped Persistent Object Store", Proc. of the 4th Int'l. Workshop on Persistent Object Systems, Martha's Vineyard, MA, Sept. 1990.Google Scholar
- Singh92.V. Singhal, S. Kakkad, and P. Wilson, "Texas: An Efficient, Portable Persistent Store", in Proc. of the 5th lnt'I. Workshop on Persistent Object Systems, San Miniato, Italy, Sept. 1992.Google Scholar
- White92.S. White and I3. DeWitt, "A Performance Study of Alternative Object Faulting and Pointer Swizzling Strategies", in Proc. of the 18th Int't. Conf. on Very Large Data Bases, Vancouver, British Columbia, August 1992. Google ScholarDigital Library
- Wilso90.Paul R. Wilson, "Pointer Swizzling at Page Fault Time: Efficiently Supporting Huge Address Spaces on Standard Hardware", Technical Report UIC-EECS-90-6, University of illinois at Chicago, December 1990.Google Scholar
Index Terms
- QuickStore: a high performance mapped object store
Recommendations
QuickStore: a high performance mapped object store
QuickStore is a memory-mapped storage system for persistent C++, built on top of the EXODUS Storage Manager. QuickStore provides fast access to in-memory objects by allowing application programs to access objects via normal virtual memory pointers. This ...
QuickStore: a high performance mapped object store
This paper presents, QuickStore, a memory-mapped storage system for persistent C++ built on top of the EXODUS Storage Manager. QuickStore provides fast access to in-memory objects by allowing application programs to access objects via normal virtual ...
Implementing crash recovery in QuickStore: a performance study
SIGMOD '95: Proceedings of the 1995 ACM SIGMOD international conference on Management of dataImplementing crash recovery in an Object-Oriented Database System (OODBMS) raises several challenging issues for performance that are not present in traditional DBMSs. These performance concerns result both from significant architectural differences ...
Comments