Options
1998
Report
Titel
Declarative and procedural object-oriented views
Abstract
Das Anpassen und Mischen von Datenbankschemas mit Hilfe von Sichten ist einer der Hauptansätze zur Datenbankintegration. Im Falle von objektorientierten Datenbanken müssen die Sichten dabei die beiden Hauptkonzepte objektorientierter Datenmodelle unterstützen: Objektidentität und Methoden. Die Identität eines Sichtobjekts muß stets aus der Identität der zugehörigen Basisobjekte hergeleitet werden. Die Ausführung von Methoden auf Sichtobjekten erfordert, sofern man sie nicht in einer Anfrage durch äquivalente Query-Ausdrücke ersetzen kann, eine effiziente Sprachbindung. Das hier vorgestellte Sichtsystem unterstützt sowohl die prozedurale als auch die deklarative Integration objektorientierter Datenbanken. Hierzu haben wir die Definitionssprache ODL des ODMG-93-Standards erweitert und verwenden einfache OQL-Queries, um Sichtklassen zu instanziieren und abgeleitete Attribute zu berechnen. Zusätzlich kann durch entsprechende Methoden auch eine komplexere Integrationssemantik ausgedrückt werden. Die deklarativen und prozeduralen Spezifikationsteile werden mittels eines Präprozessors konsistent aus einer gemeinsamen Quelle generiert. Zur Laufzeit arbeitet ein speziell entworfener Objekt-Manager mit dem Query-Prozessor und den Sichtklassen zusammen. Er gewährleistet eine konsistente Objektidentifikation und bietet die notwendige Funktionalität zum dynamischen Ausführen von Methoden in der Sprachbindung. Das dargestellte Sichtkonzept bietet eine flexible Integrationssemantik für objektorientierte Datenbanken, erhält aber gleichzeitig die traditionellen Optimierungsmöglichkeiten.
;
One major approach to realise database integration is to adapt and merge the database schemas by defining views. When integrating object-oriented databases, views need to adequately support the two main concepts of object-oriented data models: object identity and methods. View objects need to be identified on the basis of the objects they have been derived from. Methods require an efficient language binding and need to be substituted by declarative query mappings where possible. In this paper we present a view system that supports both declarative and procedural integration of object-oriented databases. We have extended the object definition language ODL of ODMG-93 and use simple OQL queries for instantiating the extents of derived classes and for performing simple attribute derivations. In addition, methods can be attached to view objects in order to provide more complex view semantics. A pre-processor is employed for consistently generating the declarative and the procedural parts from a common source, and an object manager has been designed that interacts with both the query processor and the view implementation and guarantees consistent object identification and method dispatching at run-time. The presented view concept provides flexible integration semantics for object-oriented databases without sacrificing the optimisation potential.