Dokument 1 - RWTH Aachen University
Dokument 1 - RWTH Aachen University
Dokument 1 - RWTH Aachen University
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
18 2 Umfeld der Arbeit<br />
äquivalent 1 zur Ausgangsanfrage ist.<br />
Die logischen Ansätze werden bei der Datenintegration eingesetzt um beim LAV-Modell die<br />
Anfragen umzuschreiben. Das Ziel ist hierbei, für eine gegebene Anfrage q eine äquivalente<br />
Anfrage q ′ zu finden, die nur die Sichten (d.h. die Datenquellen) benutzt. Das Finden einer äquivalenten<br />
Anfrage ist aber nicht immer möglich. Darüber hinaus ist es, in Abhängigkeit von den<br />
Sprachen für die Abbildungen und die Anfragen, auch nicht immer entscheidbar, ob die Anfrage<br />
q ′ äquivalent zu q ist (für Datalog ist dies z.B. nicht möglich [Shmueli, 1993]).<br />
Daher versuchen die meisten Algorithmen in diesem Bereich eine maximal-enthaltene Umschreibung<br />
für q zu finden. Eine Anfrage q ′ ist dann in einer Anfrage q maximal-enthalten, wenn q ′ in q<br />
enthalten ist und es keine Anfrage q ′′ gibt, die in q enthalten ist und q ′ enthält. Verschiedene Algorithmen<br />
liefern genau die maximal-enthaltene Umschreibung zu einer Anfrage (z.B. [Duschka<br />
und Genesereth, 1997; Pottinger und Halevy, 2001]).<br />
Als Beispiel für das prinzipielle Vorgehen bei der Umschreibung einer Anfrage beschreibe ich<br />
hier kurz den Bucket-Algorithmus aus [Levy et al., 1996]. Angenommen, die Anfrage q referenziert<br />
die Schemaelemente g1, . . . , gn aus dem globalem Schema G. Für jedes gi überprüft man<br />
nun, bei welchen Schemaelementen sj der Datenquellen gi auf der rechten Seite einer Abbildung<br />
sj ❀ qG aus M vorkommt. Ist dies der Fall, so kann man sj für die Auswertung von gi nutzen<br />
und fügt daher sj zum Bucket von gi hinzu. In einer zweiten Phase überprüft man nun alle möglichen<br />
Kombinationen der Buckets, d.h. für jedes gi wird ein Element aus dem zugehörigen Bucket<br />
eingesetzt. So erhält man eine Anfrage qS, die nur Datenquellen referenziert. qS kann dann für<br />
die Beantwortung von q benutzt werden, wenn qS in q enthalten ist und es keinen Widerspruch<br />
enthält (d.h. die Antwortmenge zu qS ist nicht leer). Das Ergebnis des Bucket-Algorithmus ist<br />
dann die Vereinigung aller Anfragen qS, die diese Bedingungen erfüllen.<br />
Offensichtlich ist die Umschreibung einer Anfrage im LAV-Modell schwieriger als beim GAV-<br />
Modell, da komplexe logische Schlussfolgerungen über die Abbildungen und die Anfrage zu<br />
benutzen sind, z.B. muss man im Bucket-Algorithmus mehrmals testen, ob eine Anfrage qS in q<br />
enthalten ist.<br />
2.2.3 Anforderungen an Datenintegrationssysteme im Internet<br />
Die Integration von Daten im Internet ist ein aktuelles Forschungsthema. Im Gegensatz zu den<br />
klassischen Informationssystemen wie DW-Systeme oder verteilte Datenbanken, kann man bei<br />
Internet-Informationssystemen nicht davon ausgehen, dass es eine zentrale Komponente mit einem<br />
globalem Schema gibt. Die Datenquellen im Internet werden daher als Peer-to-Peer-System<br />
dargestellt, in dem jede Datenquelle einen gleichrangigen Knoten darstellt und einen Teil der<br />
insgesamt verfügbaren Informationen verwaltet [Bernstein et al., 2002]. Das Datenmodell eines<br />
Knotens besteht aus einem externen Schema (Peer-Schema), das nach außen für andere Knoten<br />
sichtbar ist, einem internen Schema, das nur für die interne Datenverwaltung genutzt wird,<br />
1 Eine Anfrage q1 ist in einer Anfrage q2 enthalten, wenn die Antwortmenge zu q1 für alle Datenbankinstanzen<br />
eine Teilmenge der Antwortmenge zu q2 ist. Äquivalent sind zwei Anfragen, wenn sie wechselseitig ineinander<br />
enthalten sind.