&lgr;-DB: an ODMG-based object-oriented DBMS

  • Authors:
  • Leonidas Fegaras;Chandrasekhar Srinivasan;Arvind Rajendran;David Maier

  • Affiliations:
  • The University of Texas at Arlington, CSE, 416 Yates Street, P.O.Box 19015, Arlington, TX;The University of Texas at Arlington, CSE, 416 Yates Street, P.O.Box 19015, Arlington, TX;The University of Texas at Arlington, CSE, 416 Yates Street, P.O.Box 19015, Arlington, TX;Oregon Graduate Institue of Science Technology, CSE, 20000 N.W. Walker Road, P.O.Box 91000, Portland

  • Venue:
  • SIGMOD '00 Proceedings of the 2000 ACM SIGMOD international conference on Management of data
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

The &lgr;-DB project at the University of Texas at Arlington aims at developing frameworks and prototype systems that address the new query optimization challenges for object-oriented and object-relational databases, such as query nesting, multiple collection types, methods, and arbitrary nesting of collections. We have already developed a theoretical framework for query optimization based on an effective calculus, called the monoid comprehension calculus [4]. The system reported here is a fully operational ODMG 2.0 [2] OODB management system, based on this framework. Our system can handle most ODL declarations and can process most OQL query forms. &lgr;-DB is not ODMG compliant. Instead it supports its own C++ binding that provides a seamless integration between OQL and C++ with low impedance mismatch. It allows C++ variables to be used in queries and results of queries to be passed back to C++ programs. Programs expressed in our C++ binding are compiled by a preprocessor that performs query optimization at compile time, rather than run-time, as it is proposed by ODMG. In addition to compiled queries, &lgr;-DB provides an interpreter that evaluates ad-hoc OQL queries at run-time. The &lgr;-DB system architecture is shown in Figure 1. The &lgr;-DB evaluation engine is written in SDL (the SHORE Data Language) of the SHORE object management system [1], developed at the University of Wisconsin. ODL schemas are translated into SDL schemas in a straightforward way and are stored in the system catalog. The &lgr;-DB OQL compiler is a C++ preprocessor that accepts a language called &lgr;-OQL, which is C++ code with embedded DML commands to perform transactions, queries, updates, etc. The preprocessor translates &lgr;-OQL programs into C++ code that contains calls to the &lgr;-DB evaluation engine. We also provide a visual query formulation interface, called VOODOO, and a translator from visual queries to OQL text, which can be sent to the &lgr;-DB OQL interpreter for evaluation.Even though a lot of effort has been made to make the implementation of our system simple enough for other database researchers to use and extend, our system is quite sophisticated since it employs current state-of-the-art query optimization technologies as well as new advanced experimental optimization techniques which we have developed through the years, such as query unnesting [3]. The &lgr;-DB OODBMS is available as an open source software through the web at http://lambda.uta.edu/lambda-DB.html