Title :
Main memory orientated optimization of OO queries using typed Datalog with foreign predicates
Author :
Litwin, Witold ; Risch, Tore
Author_Institution :
HP Lab., Palo Alto, CA, USA
fDate :
12/1/1992 12:00:00 AM
Abstract :
Object-oriented database systems (OODBs) have created a demand for relationally complete, extensible, and declarative object-oriented query languages. Until now, the runtime performance of such languages was far behind that of procedural OO interfaces. One reason is the internal use of a relational engine with magnetic disk resident databases. The authors address the processing of the declarative OO language WS-OSQL, provided by the fully operational prototype OODB called WS-IRIS. A WS-IRIS database is main memory (MM) resident. The system architecture, data structures, and optimization techniques are designed accordingly. WS-OSQL queries are compiled into an OO extension of Datalog called ObjectLog, providing for objects, typing, overloading, and foreign predicates for extensibility. Cost-based optimizations in WS-IRIS using ObjectLog are presented. Performance tests show that WS-IRIS is about as fast as current OODBs with procedural interfaces only and is much faster than known relationally complete systems. These results would not be possible for a traditional disk-based implementation. However, MM residency of a database appears to be only a necessary condition for better performance. An efficient optimization is of crucial importance as well
Keywords :
object-oriented databases; object-oriented languages; query languages; query processing; relational databases; ObjectLog; WS-IRIS database; WS-OSQL; data structures; declarative object-oriented language; foreign predicates; magnetic disk resident databases; main memory resident; object-oriented database; object-oriented query languages; optimization techniques; overloading; relational engine; system architecture; typed Datalog; typing; Data structures; Database languages; Database systems; Design optimization; Engines; Object oriented databases; Prototypes; Relational databases; Runtime; System testing;
Journal_Title :
Knowledge and Data Engineering, IEEE Transactions on