Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Informationsintegration Local-as-View: LaV 22.11.2005 Felix Naumann.

Ähnliche Präsentationen


Präsentation zum Thema: "Informationsintegration Local-as-View: LaV 22.11.2005 Felix Naumann."—  Präsentation transkript:

1 Informationsintegration Local-as-View: LaV Felix Naumann

2 Felix Naumann, VL Informationsintegration, WS 05/062 Überblick Global as View (GaV) Modellierung Anfragebearbeitung Local as View (LaV) Modellierung Anwendungen Ausblick: Anfragebearbeitung Global Local as View (GLAV) Vergleich

3 Felix Naumann, VL Informationsintegration, WS 05/063 WdH.: Das Problem Föderiertes Schema Externes Schema 1 Externes Schema N... Komponenten- schema Komponenten- schema Lokales internes Schema Lokales internes Schema... Exportschema Wie drückt man diesen Übergang aus? Quelle 1 Quelle 2Quelle 3 Mediator Anwendung 1Anwendung 2 Wrapper 2Wrapper 3Wrapper 1 Wie drückt man die Funktionalität des Wrappers aus?

4 Felix Naumann, VL Informationsintegration, WS 05/064 WdH.: Das Problem Zwei heterogene Schemata Quellschema: Hier sind die Daten. Zielschema: Hiergegen wird die Anfrage gestellt. Teilproblem 1 Beziehungen zwischen Schemata spezifizieren Mappings Teilproblem 2 Daten von der Quelle zum Ziel transformieren Transformationsanfragen Teilproblem 3 Wie mache ich dies alles automatisch? -> VL (Schema Mapping & Schema Matching)

5 Felix Naumann, VL Informationsintegration, WS 05/065 WdH.: Modellierung von Datenquellen Kernidee Modellierung strukturell heterogener Quellen in Bezug auf ein globales Schema als Views (Sichten) Relationales Modell Allgemein: Eine Sicht verknüpft mehrere Relationen und produziert eine Relation. Sichten zur Verknüpfung von Schemata Sicht definiert auf Relationen eines Schemas und produziert eine Relation des anderen Schemas Jetzt: Unterscheidung lokales und globales Schema

6 Felix Naumann, VL Informationsintegration, WS 05/066 WdH.: Global as View / Local as View Global as View Relationen des globalen Schemas werden als Sichten auf die lokalen Schemas der Quellen ausgedrückt. Local as View Relationen der Schemas der Quellen werden als Sichten auf das globale Schema ausgedrückt.

7 Felix Naumann, VL Informationsintegration, WS 05/067 WdH.: Global as View (GaV) – Beispiel Globales Schema Film(Titel, Regie, Jahr, Genre) Programm(Kino, Titel, Zeit) S1: IMDB(Titel, Regie, Jahr, Genre) S2: MyMovies(Titel, Regie, Jahr, Genre) S3: RegieDB(Titel, Regie) S4: GenreDB(Titel, Jahr, Genre) CREATE VIEW Film AS SELECT * FROM IMDB UNION SELECT * FROM MyMovies UNION SELECT RegieDB.Titel, RegieDB.Regie, GenreDB.Jahr, GenreDB.Genre FROM RegieDB, GenreDB WHERE RegieDB.Titel = GenreDB.Titel Quelle: VL Data Integration, Alon Halevy, University of Washington, 2002 Typisches Merk- mal bei GaV Join über mehrere Quellen (Anfragebearbeitung!)

8 Felix Naumann, VL Informationsintegration, WS 05/068 WdH.: GaV – Beispiel SELECT F.Titel, P.Kino FROM Film F, Programm P WHERE F.Titel = P.Titel AND P.Zeit > 20:00 SELECT F.Titel, P.Kino FROM ( SELECT * FROM IMDB UNION SELECT R.Titel, R.Regie, G.Jahr, G.Genre FROM RegieDB R, GenreDB G WHERE R.Titel = G.Titel ) AS F, ( SELECT * FROM KinoDB ) AS P WHERE F.Titel = P.Titel AND P.Zeit > 20:00 S1: IMDB(Titel, Regie, Jahr, Genre) S2: RegieDB(Titel, Regie) S3: GenreDB(Titel, Jahr, Genre) S7: KinoDB(Titel, Kino, Genre, Zeit)

9 Felix Naumann, VL Informationsintegration, WS 05/069 WdH.: GaV - Schachtelung Schachtelung i.d.R. Belassen bei entfernten Quellen i.d.R. Auflösung bei materialisierten Sichten SELECT F.Titel, P.Kino FROM ( SELECT * FROM IMDB UNION SELECT R.Titel, R.Regie, G.Jahr, G.Genre FROM RegieDB R, GenreDB G WHERE R.Titel = G.Titel ) AS F, ( SELECT * FROM KinoDB ) AS P WHERE F.Titel = P.Titel AND P.Zeit > 20:00 SELECT F.Titel, P.Kino FROM IMDB F, KinoDB P WHERE F.Titel = P.Titel AND P.Zeit > 20:00 UNION SELECT F1.Titel, P1.Jino FROM RegieDB F1, GenreDB F2, KinoDB P WHERE F1.Titel = F1.Titel WHERE F1.Titel = P1.Titel AND P1.Zeit > 20:00

10 Felix Naumann, VL Informationsintegration, WS 05/0610 Überblick Global as View (GaV) Modellierung Anfragebearbeitung Local as View (LaV) Modellierung Anwendungen Ausblick: Anfragebearbeitung Global Local as View (GLAV) Vergleich

11 Felix Naumann, VL Informationsintegration, WS 05/0611 Local as View (LaV) – Beispiel Globales Schema Film(Titel, Regie, Jahr, Genre) Programm(Kino, Titel, Zeit) S1: IMDB(Titel, Regie, Jahr, Genre) S2: MyMovies(Titel, Regie, Jahr, Genre) S3: RegieDB(Titel, Regie) S4: GenreDB(Titel, Jahr, Genre) CREATE VIEW S1 AS SELECT * FROM Film CREATE VIEW S2 AS SELECT * FROM Film CREATE VIEW S3 AS SELECT Film.Titel, Film.Regie FROM Film CREATE VIEW S4 AS SELECT Film.Titel, Film.Jahr, Film.Genre FROM Film Quelle: VL Data Integration, Alon Halevy, University of Washington, 2002

12 Felix Naumann, VL Informationsintegration, WS 05/0612 Local as View (LaV) – Beispiel Globales Schema Film(Titel, Regie, Jahr, Genre) Programm(Kino, Titel, Zeit) S9: ActorDB(Titel, Schauspieler, Jahr) CREATE VIEW S9 AS SELECT Titel, NULL, Jahr FROM Film Verpasste Chance

13 Felix Naumann, VL Informationsintegration, WS 05/0613 Local as View (LaV) – Beispiel Globales Schema Film(Titel, Regie, Jahr, Genre) Programm(Kino, Titel, Zeit) S7: KinoDB(Kino, Genre) CREATE VIEW S7 AS SELECT Programm.Kino, Film.Genre FROM Film, Programm WHERE Film.Titel = Programm.Titel Assoziationen des globalen Schemas können in der Sicht hergestellt werden.

14 Felix Naumann, VL Informationsintegration, WS 05/0614 Local as View (LaV) – Beispiel Globales Schema Film(Titel, Regie, Jahr, Genre) Programm(Kino, Titel, Zeit) S9: Filme(Titel, Jahr, Ort, RegieID) Regie(ID, Regisseur) CREATE VIEW S7Filme AS SELECT Titel, Jahr, NULL, NULL FROM Film CREATE VIEW S7Regie AS SELECT NULL, Regie FROM Film Assoziationen des lokalen Schemas können nicht abgebildet werden. Später: Erzeugung neuer IDs (VL Schema Mapping)

15 Felix Naumann, VL Informationsintegration, WS 05/0615 Local as View (LaV) – Beispiel Globales Schema Film(Titel, Regie, Jahr, Genre) Programm(Kino, Titel, Zeit) S8: NeueFilme(Titel, Regie, Genre) (Nebenbedingung: Jahr > 2000) CREATE VIEW S8 AS SELECT Titel, Regie, Genre FROM Film WHERE Jahr > 2000 Bekannte Nebenbedingung auf der Quelle kann modelliert werden.

16 Felix Naumann, VL Informationsintegration, WS 05/0616 Local as View (LaV) – Beispiel Globales Schema NeuerFilm(Titel, Regie, Jahr, Genre) Programm(Kino, Titel, Zeit) Nebenbedingung: Jahr > 2000 S1: IMDB(Titel, Regie, Jahr, Genre) S2: MyMovies(Titel, Regie, Jahr, Genre) CREATE VIEW S1 AS SELECT * FROM NeuerFilm (WHERE Jahr> 2000) CREATE VIEW S2 AS SELECT * FROM NeuerFilm (WHERE Jahr> 2000)

17 Felix Naumann, VL Informationsintegration, WS 05/0617 Local as View (LaV) – lokale Nebenbedingungen Globales Schema Film(Titel, Regie, Jahr, Genre) CREATE VIEW S1 AS SELECT * FROM Film CREATE VIEW S2 AS SELECT Titel, Regie, Genre FROM Film CREATE VIEW S3 AS SELECT * FROM Film (WHERE Jahr > 2000) CREATE VIEW S4 AS SELECT Titel, Regie, Genre FROM Film (WHERE Jahr > 2000) CREATE VIEW S5 AS SELECT Titel, Regie, Genre FROM Film (WHERE Jahr = 2004) S1: AlleFilmeNett(Titel, Regie, Jahr, Genre) S2: AlleFilmeBöse(Titel, Regie, Genre) S3: NeueFilmeNett(Titel, Regie, Jahr, Genre) (Nebenbedingung: Jahr > 2000) S4: NeueFilmeBöse(Titel, Regie, Genre) (Nebenbedingung: Jahr > 2000) S5: AktuelleFilme(Titel, Regie, Genre) (Nebenbedingung: Jahr = 2004) Modellierung jeweils nur für Optimierung

18 Felix Naumann, VL Informationsintegration, WS 05/0618 Local as View (LaV) – globale Nebenbedingungen CREATE VIEW AlleFilmeNett AS SELECT * FROM NeuerFilm (WHERE JAHR > 2000) [CREATE VIEW AlleFilmeBöse AS SELECT Titel, Regie, Genre FROM NeuerFilm] Problem: Bekannte Nebenbedingung auf dem globalen Schema kann nicht modelliert werden. Frage: Ist das schlimm? Globales Schema NeuerFilm(Titel, Regie, Jahr, Genre) Nebenbedingung: Jahr > 2000 oder NeuerFilm(Titel, Regie, Genre) Nebenbedingung: Jahr > 2000 S1: AlleFilmeNett(Titel, Regie, Jahr, Genre) S2: AlleFilmeBöse(Titel, Regie, Genre)

19 Felix Naumann, VL Informationsintegration, WS 05/0619 Überblick Global as View (GaV) Modellierung Anfragebearbeitung Local as View (LaV) Modellierung Anwendungen Ausblick: Anfragebearbeitung Global Local as View (GLAV) Vergleich

20 Felix Naumann, VL Informationsintegration, WS 05/0620 Problem Anfrageverarbeitung Globales Schema Film(Titel, Regie, Jahr, Genre) Programm(Kino, Titel, Zeit) S1: IMDB(Titel, Regie, Jahr, Genre) S2: RegieDB(Titel, Regie) S3: GenreDB(Titel, Jahr, Genre) GaV CREATE VIEW Film AS SELECT * FROM IMDB UNION SELECT R.Titel, R.Regie, G.Jahr, G.Genre FROM RegieDB R, GenreDB G WHERE R.Titel = G.Titel LaV CREATE VIEW S1 AS SELECT * FROM Film CREATE VIEW S2 AS SELECT Film.Titel, Film.Regie FROM Film CREATE VIEW S3 AS SELECT Film.Titel, Film.Jahr, Film.Genre FROM Film

21 Felix Naumann, VL Informationsintegration, WS 05/0621 Anfragebearbeitung – LaV Gegeben: Anfrage an globales Schema Insbesondere: Auf Relationen des globalen Schemas Für jede lokale Relation genau eine Sicht auf globales Schema Gesucht: Alle Tupel, die die Anfragebedingungen erfüllen Aber: Daten sind in lokalen Quellen gespeichert. Idee: Anfrageumschreibung durch Einbeziehung der Sichten Kombiniere geschickt die einzelnen Sichten zu einer Anfrage, so dass deren Ergebnis einen Teil der Anfrage (oder die ganze Anfrage) beantworten. Gesamtergebnis ist dann die UNION der Ergebnisse mehrerer Anfrageumschreibungen

22 Felix Naumann, VL Informationsintegration, WS 05/0622 LaV - Anfragebearbeitung ABBILDUNG MIT SYSTEM-ÜBERBLICK WER MACHT WANN WAS

23 Felix Naumann, VL Informationsintegration, WS 05/0623 LaV – Anwendungen Anfrageoptimierung Materialisierte Sichten auf Datenbankschema Datawarehouse Design Materialisierte Sichten auf Warehouse-Schema Semantisches Caching Materialisierte Daten beim Client Datenintegration Datenquellen als Sichten auf globales (Mediator) Schema

24 Felix Naumann, VL Informationsintegration, WS 05/0624 LaV Anwendung: Anfrageoptimierung Materialisierte Sichten (materialized views, MV) auf Datenbankschema MQT: Materialized Query Table AST: Advanced Summary Table Welche Sichten helfen bei der Beantwortung einer Datenbankanfrage durch Vorberechnung von Prädikaten? Probleme: Es ist nicht immer besser eine MV zu verwenden (Indizes!). Aktualisierung von MVs Write auf MV Write auf Basisrelation R1R2R3R4R5 MV1 σ(A=10) MV2 MV4 MV3 | Optimierer: Query Answering Using Views Q1: R1 Q3: R3 Q2: R1, A=10 Q4: R1 R2 Q5: R4 Q6: R1 R2 R3

25 Felix Naumann, VL Informationsintegration, WS 05/0625 LaV Anwendung: Datawarehouse Design Materialisierte Sichten auf Warehouse-Schema Gegeben eine query workload Query workload = Menge von Anfragen mit Häufigkeiten Welche Sichten sollte ich materialisieren? Um alle Anfragen der Workload zu beantworten Allgemeiner: Gegeben eine query workload, welche Sichten sollte ich materialisieren um die workload optimal zu beantworten. Idee: Alle Kombinationen prüfen (AST Wizard) Frage: Warum ist dieses Problem eigentlich ganz einfach?

26 Felix Naumann, VL Informationsintegration, WS 05/0626 LaV Anwendung: Semantisches Caching In verteilten DBMS Materialisierte Daten beim Client Gegeben eine Anfrage Welche Daten im Cache kann ich zur Beantwortung verwenden? Welche Daten muss ich neu anfragen? Auch: Welche Sichten sollte ich vorberechnen?

27 Felix Naumann, VL Informationsintegration, WS 05/0627 LaV Anwendung: Datenintegration Datenquellen als Sichten auf globales (Mediator) Schema Fragen: Wie kann ich Antworten auf eine Anfrage an das globale Schema nur mittels der Sichten beantworten? Unterschied zu Anfrageoptimierung: Keine Basistabellen verfügbar. Kann ich die Anfrage vollständig (extensional) beantworten?

28 Felix Naumann, VL Informationsintegration, WS 05/0628 Überblick Global as View (GaV) Modellierung Anfragebearbeitung Local as View (LaV) Modellierung Anwendungen Ausblick: Anfragebearbeitung Global Local as View (GLAV) Vergleich

29 Felix Naumann, VL Informationsintegration, WS 05/0629 LaV – Beispiel Ausschnitt Globales Schema Lehrt(prof,kurs_id, sem, eval, univ) Kurs(kurs_id, titel, univ) Quelle 1: Alle Datenbankveranstalt. CREATE VIEW DB-kurs AS SELECT K.titel, L.prof, K.kurs_id, K.univ FROM Lehrt L, Kurs K WHERE L.kurs_id = K.kurs_id AND L.univ = K.univ AND K.titel LIKE %_Datenbanken Quelle 2: Alle Humboldtvorlesungen CREATE VIEW Hum-VL AS SELECT K.titel, L.prof, K.kurs_id, K.univ FROM Lehrt L, Kurs K WHERE L.kurs_id = K.kurs_id AND K.univ = Humboldt AND L.univ = Humboldt AND K.titel LIKE %VL_% Globale Anfrage SELECT prof FROM Lehrt L, Kurs K WHERE L.kurs_id = K.kurs_id AND K.titel LIKE %_Datenbanken AND L.univ = Humboldt Umgeschriebene Anfrage SELECT prof FROM DB-kurs D WHERE D.univ = Humboldt Frage: Warum nicht Quelle 2 einbeziehen?

30 Felix Naumann, VL Informationsintegration, WS 05/0630 LaV – Beispiel Ausschnitt Globales Schema Lehrt(prof,kurs_id, sem, eval, univ) Kurs(kurs_id, titel, univ) Quelle 1: Alle Datenbankveranstalt. CREATE VIEW DB-kurs AS SELECT K.titel, L.prof, K.kurs_id, K.univ FROM Lehrt L, Kurs K WHERE L.kurs_id = K.kurs_id AND L.univ = K.univ AND K.titel LIKE %_Datenbanken Quelle 2: Alle Humboldtvorlesungen CREATE VIEW Hum-VL AS SELECT K.titel, L.prof, K.kurs_id, K.univ FROM Lehrt L, Kurs K WHERE L.kurs_id = K.kurs_id AND K.univ = Humboldt ANDL.univ = Humboldt AND K.titel LIKE %VL_% Globale Anfrage SELECT titel, kurs_id FROM Kurs K WHERE L.univ = Humboldt Umgeschriebene Anfrage SELECT titel, kurs_id FROM DB-kurs D WHERE D.univ = Humboldt UNION SELECT titel, kurs_id FROM Hum-VL Frage: Warum hier doch Quelle 2 einbeziehen?

31 Felix Naumann, VL Informationsintegration, WS 05/0631 LaV – Beispiel Vergleich Globale Anfrage SELECT titel, kurs_id FROM Kurs K WHERE L.univ = Humboldt Umgeschriebene Anfrage SELECT titel, kurs_id FROM DB-kurs D WHERE D.univ = Humboldt UNION SELECT titel, kurs_id FROM Hum-VL Globale Anfrage SELECT prof FROM Lehrt L, Kurs K WHERE L.kurs_id = K.kurs_id AND K.titel = VL_Datenbanken AND L.univ = Humboldt Umgeschriebene Anfrage SELECT prof FROM DB-kurs D WHERE D.univ = Humboldt Vollständige Antwort Maximale Antwort Frage: Was fehlt?

32 Felix Naumann, VL Informationsintegration, WS 05/0632 LaV – Anfragebearbeitung Gegeben: Anfrage Q und Sichten V 1,..., V n Gesucht: Umgeschriebene Anfrage Q, die bei Optimierung: äquivalent ist (Q = Q). bei Integration: maximal enthalten ist. D.h. Q Q und es existiert kein Q mit Q Q Q wobei Q Q. Problem: Wie definiert und testet man Äquivalenz und maximal containment?

33 Felix Naumann, VL Informationsintegration, WS 05/0633 LaV – Beispiele Quelle 2: CREATE VIEW Hum-VL AS SELECT K.titel, L.prof, K.kurs_id, K.univ FROM Lehrt L, Kurs K WHERE L.kurs_id = K.kurs_id AND K.univ = Humboldt ANDL.univ = Humboldt AND K.titel LIKE %VL_% Quelle 3: CREATE VIEW Hum-Kurse AS SELECT K.titel, L.prof, K.kurs_id, K.univ FROM Lehrt L, Kurs K WHERE L.kurs_id = K.kurs_id AND K.univ = Humboldt ANDL.univ = Humboldt ???

34 Felix Naumann, VL Informationsintegration, WS 05/0634 LaV – Beispiele Quelle 4: CREATE VIEW Kurse1 AS SELECT K.titel, K.kurs_id FROM Kurs K AND K.univ = Humboldt AND K.titel LIKE %VL_% Quelle 5: CREATE VIEW Kurse2 AS SELECT K.titel, K.univ FROM Kurs K AND K.univ = Humboldt AND K.titel LIKE %VL_% Quelle 5: CREATE VIEW Kurse3 AS SELECT K.titel, K.kurs_id FROM Kurs K AND K.univ = Humboldt Quelle 6: CREATE VIEW Kurse4 AS SELECT K.titel FROM Kurs K AND K.univ = Humboldt

35 Felix Naumann, VL Informationsintegration, WS 05/0635 LaV – Beispiele Prüfung von containment durch Prüfung aller möglichen Datenbanken? Zu complex! Prüfung von containment durch Existenz eines containment mapping. NP-vollständig in |Q|+|Q| nach [CM77] Mehrere Algorithmen Mehr in VL 19 Quelle 5: CREATE VIEW Kurse2 AS SELECT K.titel, K.univ FROM Kurs K AND K.univ = Humboldt Quelle 3: CREATE VIEW Hum-Kurse AS SELECT K.titel, K.univ FROM Lehrt L, Kurs K WHERE L.kurs_id = K.kurs_id AND K.univ = Humboldt ANDL.univ = Humboldt

36 Felix Naumann, VL Informationsintegration, WS 05/0636 CWA / OWA Closed World Assumption (CWA) Vereinigung aller Daten der Datenquellen entspricht der Menge aller relevanten Daten. Beispiele: Data Warehouse (und traditionelle DBMS) Open World Assumption (OWA) Vereinigung aller Daten der Datenquellen ist eine Teilmenge aller relevanten Daten. Probleme Inhalt der globalen Relation nicht fest Anfrageergebnisse können sich ändern Definition der Vollständigkeit der Ergebnisse Welchen Anteil an der world hat das Ergebnis? Negation in Anfragen

37 Felix Naumann, VL Informationsintegration, WS 05/0637 CWA / OWA – Beispiel Relation R(A,B) View 1 CREATE VIEW V1 AS SELECT A FROM R Extension: a View 2 CREATE VIEW V2 AS SELECT B FROM R Extension: b Anfrage: SELECT * FROM R CWA: (a,b) muss in der Extension von R sein. OWA: (a,b) muss nicht in der Extension von R sein. R = (a,b) oder R = (a,x) (y,b) o.ä.

38 Felix Naumann, VL Informationsintegration, WS 05/0638 Überblick Global as View (GaV) Modellierung Anfragebearbeitung Local as View (LaV) Modellierung Anwendungen Ausblick: Anfragebearbeitung Global Local as View (GLAV) Vergleich

39 Felix Naumann, VL Informationsintegration, WS 05/0639 Global-Local-as-View (GLAV) Kombination GaV und LaV GaV: Globale Relation = Sicht auf lokale Relationen (Globale Relation Sicht auf lokale Relationen) LaV: Sicht auf globale Relationen = lokale Relation Sicht auf globale Relationen lokale Relation GLaV: Sicht auf globale Relationen = Sicht auf lokale Relationen Sicht auf globale Relationen Sicht auf lokale Relationen Auch BaV: Both-as-View

40 Felix Naumann, VL Informationsintegration, WS 05/0640 Überblick Global as View (GaV) Modellierung Anfragebearbeitung Local as View (LaV) Modellierung Anwendungen Ausblick: Anfragebearbeitung Global Local as View (GLAV) Vergleich

41 Felix Naumann, VL Informationsintegration, WS 05/0641 Vergleich GaV / LaV Modellierung GaV Jede globale Relation definiert als Sicht auf eine oder mehr Relationen aus einer oder mehr Quellen. Meist UNION über mehrere Quellen Nebenbedingungen auf lokalen Quellen können nicht modelliert werden. LaV Globale Relationen werden durch mehrere Sichten definiert. Definition oft nur in Kombination mit anderen globalen Relationen Nebenbedingungen auf globale Relationen können nicht definiert werden.

42 Felix Naumann, VL Informationsintegration, WS 05/0642 Vergleich GaV / LaV Anfragebearbeitung GaV: Anfrageumschreibung: Einfaches View unfolding Eine große, umgeschriebene Anfrage Interessante Optimierungsprobleme LaV Anfrageumschreibung: Answering queries using views UNION über viele mögliche umgeschriebene Anfragen Mehrere Algorithmen Viele Anwendungen Noch interessantere Optimierungsprobleme Flexibilität GaV: Views setzen Relationen mehrerer Quellen in Beziehung LaV: Jede View bezieht sich nur auf eine Quelle

43 Felix Naumann, VL Informationsintegration, WS 05/0643 Literatur Gute Zusammenfassung für LaV und weiterführende Literatur: [Levy01] Alon Y. Halevy: Answering queries using views: A survey, in VLDB Journal 10: , Eher theoretisch [Ull00] Jeffrey D. Ullman: Information Integration Using Logical Views. TCS 2000: [Hull97] Managing Semantic Heterogeneity in Databases: A Theoretical Perspective. Richard Hull. PODS 1997 tutorial

44 Felix Naumann, VL Informationsintegration, WS 05/0644 LaV – Beispiel Globales Schema Prof(name, bereich) Kurs(kurs_id, titel, univ) Lehrt(prof,kurs_id, sem, eval, univ) Eingeschrieben(stud, kurs_id, sem) Vertiefung(stud, fach) Arbeitet(prof, fach) Betreut(prof, stud) Prof fach stud name Kurs name bereich lehrt eval sem Betreut Eingeschrieben sem VertiefungArbeitet titelkurs_id


Herunterladen ppt "Informationsintegration Local-as-View: LaV 22.11.2005 Felix Naumann."

Ähnliche Präsentationen


Google-Anzeigen