μDatabase: parallelism in a memory-mapped environment (research summary)

The goal of the ~Database project is to understand the behaviour of data structures and their algorithms, both parallel and sequential, in a memory-mapped environment. Memory mapping allows primary-memory pointer-based data structures to be stored on secondary storage, and subsequently traversed and modified, without transforming the embedded point ers. The project incorporates a collaboration between practitioners and theoreticians and has produced a toolkit to support a parallel memory-mapped environment, ext ensive concurrence y tools, an analytical model for the system vaEdated by experiments, and preliminary results involving parallel database join algorithms as well as sequential Btree and R-tree data structures. Future work includes augmenting the toolkit, developing and testing more parallel algorithms tuned for efficiency in a memory-mapped environment, and extending the current model to cover more general algorithms and capture more low-level details of the physical machine.

[1]  Naomi Nishimura,et al.  Parallel pointer-based join algorithms in memory mapped environments , 1996, Proceedings of the Twelfth International Conference on Data Engineering.

[2]  Peter A. Buhr,et al.  μC++: Concurrency in the object‐oriented language C++ , 1992, Softw. Pract. Exp..

[3]  Bowen Alpern,et al.  A model for hierarchical memory , 1987, STOC.

[4]  Ronald Morrison,et al.  Procedures as persistent data objects , 1985, TOPL.

[5]  David J. DeWitt,et al.  Pointer-Based Join Techniques for Object-Oriented Databases , 1993 .

[6]  David J. DeWitt,et al.  Parallel pointer-based join techniques for object-oriented databases , 1993, [1993] Proceedings of the Second International Conference on Parallel and Distributed Information Systems.

[7]  Alok Aggarwal,et al.  Communication Complexity of PRAMs , 1990, Theor. Comput. Sci..

[8]  Ronald Morrison,et al.  An Approach to Persistent Programming , 1989, Comput. J..

[9]  David J. DeWitt,et al.  A performance evaluation of four parallel join algorithms in a shared-nothing multiprocessor environment , 1989, SIGMOD '89.

[10]  David Maier,et al.  Persistent Object Systems , 1995, Workshops in Computing.

[11]  David J. DeWitt,et al.  QuickStore: A High Performance Mapped Object Store , 1994, SIGMOD Conference.

[12]  Gerhard Weikum,et al.  Uniform Object Management , 1990, EDBT.

[13]  Bowen Alpern,et al.  Uniform memory hierarchies , 1990, Proceedings [1990] 31st Annual Symposium on Foundations of Computer Science.

[14]  Michael J. Carey,et al.  A performance evaluation of pointer-based joins , 1990, SIGMOD '90.

[15]  Michael J. Carey,et al.  The design of the E programming language , 1993, TOPL.

[16]  Randy H. Katz,et al.  A case for redundant arrays of inexpensive disks (RAID) , 1988, SIGMOD '88.

[17]  Goetz Graefe,et al.  Sort-merge-join: an idea whose time has(h) passed? , 1994, Proceedings of 1994 IEEE 10th International Conference on Data Engineering.

[18]  Paul R. Wilson,et al.  Pointer swizzling at page fault time: efficiently supporting huge address spaces on standard hardware , 1991, CARN.

[19]  Andrew W. Appel,et al.  Virtual memory primitives for user programs , 1991, ASPLOS IV.

[20]  Jack A. Orenstein,et al.  The ObjectStore database system , 1991, CACM.

[21]  Vivek Singhal,et al.  Texas: An Efficient, Portable Persistent Store , 1992, POS.

[22]  Gerhard Weikum,et al.  Dynamic file allocation in disk arrays , 1991, SIGMOD '91.

[23]  Alok Aggarwal,et al.  The input/output complexity of sorting and related problems , 1988, CACM.

[24]  Anil K. Goel,et al.  µDatabase: A Toolkit for Constructing Memory Mapped Databases , 1992, POS.

[25]  Eugene J. Shekita,et al.  Cricket: A Mapped, Persistent Object Store , 1990, POS.

[26]  H. T. Kung,et al.  I/O complexity: The red-blue pebble game , 1981, STOC '81.

[27]  Bernhard Seeger,et al.  Multi-disk B-trees , 1991, SIGMOD '91.

[28]  Patrick Martin,et al.  Parallel Hash-Based Join Algorithms for a Shared-Everything , 1994, IEEE Trans. Knowl. Data Eng..