gif gif up gif contents
Nächste Seite: 4.1 Sichtenwartung in relationalen Vorige Seite: 3.4 Fazit

4 Lösungsansätze für das Sichtenwartungsproblem

 

Eine Sicht ist eine von Basisrelationen abgeleitete Relation. Die Sicht kann materialisiert werden, indem die abgeleiteten Informationen abgespeichert werden. Da die Sicht sich durch Änderungen bei den Basisrelationen ändern kann, mußdie Materialisierung der Sicht an die Änderungen angepaßt werden. Den Vorgang der Berechnung der Änderungen für eine Sicht mit Hilfe der Basisdatenänderungen nennt man Sichtenwartung.

Das Problem der Sichtenwartung wurde verstärkt in den letzten Jahren in der Literatur behandelt. Ein Überblick, insbesondere für den Bereich der deduktiven Datenbanken, wird in [GM95] gegeben. Dort werden auch die verschiedenen Ansätze klassifiziert und beurteilt.

Sichtenwartungsprobleme und -algorithmen kann man anhand von vier Dimensionen klassifizieren [GM95]:

Informationsdimension
Welche Art und wieviele Informationen stehen zur Verfügung? Ist ein Zugriff auf Basisrelationen und alte Daten der Sicht möglich? Sind zusätzliche Integritätsbedingungen bekannt?

Modifikationsdimension
Die meisten Sichtenwartungsalgorithmen können nur Löschungen und Einfügungen von Basistupeln behandeln. Eine Änderung an einer Basisrelation muß daher als eine Löschoperation gefolgt von einer Einfügeoperation modelliert werden. Kann auch die Sichtendefinition geändert werden?

Sprachdimension
Welche Art von Sprache wird zur Sichtendefinition benutzt? Gibt es in dieser Sprache auch Rekursion und Aggregation? Sind Duplikate zugelassen?

Instanzierungsdimension
Gilt der Algorithmus für alle Datenbankzustände? Können alle Änderungen behandelt werden?

Die nachfolgend skizzierten Algorithmen benutzen die Basisrelationen, die Sichtendefinition und die Sichtenextension vor und nach dem Update zur Sichtenwartung. Sie sind auf alle Datenbankzustände anwendbar und unterscheiden sich im wesentlichen in der Sprach- und Modifikationsdimension. Zunächst werden zwei Verfahren zur Sichtenwartung in relationalen Datenbanksystemen vorgestellt, die als Datendefinitionssprachen die Relationenalgebra und SQL benutzen. Anschließend werden Methoden zur Sichtenwartung in deduktiven Datenbanken dargestellt.





Christoph Quix
31. Juli 1996