y
Abstract:
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 eective 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. -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, -DB provides an interpreter that evaluates ad-hoc OQL queries at run-time. The -DB system architecture is shown in Figure 1. The -DB evaluation engine is written in SDL (the SHORE Data Language) of the SHORE object management system [1], developed at the University of Wiscon-
Citations
| 50 | et al. Shoring Up Persistent Applications – Carey, DeWitt, et al. - 1994 |
| 19 | Query Unnesting in Object-Oriented Databases – Fegaras - 1998 |
| 16 | et al.: The Object Database Standard: ODMG 2.0 – Cattell, Barry - 1997 |
| 6 | Towards an Eective Calculus for Object Query Languages – Fegaras, Maier - 1995 |

