Informationsintegration local as view lav
This presentation is the property of its rightful owner.
Sponsored Links
1 / 44

Informationsintegration Local-as-View: LaV PowerPoint PPT Presentation


  • 74 Views
  • Uploaded on
  • Presentation posted in: General

Informationsintegration Local-as-View: LaV. 22.11.2005 Felix Naumann. Überblick. Global as View (GaV) Modellierung Anfragebearbeitung Local as View (LaV) Modellierung Anwendungen Ausblick: Anfragebearbeitung Global Local as View (GLAV) Vergleich. Wrapper 3. Wrapper 1. Wrapper 2.

Download Presentation

Informationsintegration Local-as-View: LaV

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Informationsintegration local as view lav

InformationsintegrationLocal-as-View: LaV

22.11.2005

Felix Naumann


Berblick

Überblick

  • Global as View (GaV)

    • Modellierung

    • Anfragebearbeitung

  • Local as View (LaV)

    • Modellierung

    • Anwendungen

    • Ausblick: Anfragebearbeitung

  • Global Local as View (GLAV)

  • Vergleich

Felix Naumann, VL Informationsintegration, WS 05/06


Wdh das problem

Wrapper 3

Wrapper 1

Wrapper 2

WdH.: Das Problem

Wie drückt man diesen Übergang aus?

Externes Schema 1

Externes Schema N

Anwendung 1

Anwendung 2

...

Föderiertes Schema

Mediator

Exportschema

Exportschema

...

Komponenten-

schema

Komponenten-

schema

Lokales

internes

Schema

Lokales

internes

Schema

...

Quelle 1

Quelle 2

Quelle 3

Wie drückt man die Funktionalität des Wrappers aus?

Felix Naumann, VL Informationsintegration, WS 05/06


Wdh das problem1

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 22-24 (Schema Mapping & Schema Matching)

Felix Naumann, VL Informationsintegration, WS 05/06


Wdh modellierung von datenquellen

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

Felix Naumann, VL Informationsintegration, WS 05/06


Wdh global as view local as view

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.

Felix Naumann, VL Informationsintegration, WS 05/06


Wdh global as view gav beispiel

WdH.: Global as View (GaV) – Beispiel

S1: IMDB(Titel, Regie, Jahr, Genre)

S2: MyMovies(Titel, Regie, Jahr, Genre)

S3: RegieDB(Titel, Regie)

S4: GenreDB(Titel, Jahr, Genre)

Globales Schema

Film(Titel, Regie, Jahr, Genre)

Programm(Kino, Titel, Zeit)

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

Typisches Merk-mal bei GaV

Join über mehrere Quellen

(Anfragebearbeitung!)

Quelle: VL „Data Integration“, Alon Halevy, University of Washington, 2002

Felix Naumann, VL Informationsintegration, WS 05/06


Wdh gav beispiel

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

WdH.: GaV – Beispiel

S1: IMDB(Titel, Regie, Jahr, Genre)

S2: RegieDB(Titel, Regie)

S3: GenreDB(Titel, Jahr, Genre)

S7: KinoDB(Titel, Kino, Genre, Zeit)

SELECT F.Titel, P.Kino

FROM Film F, Programm P

WHERE F.Titel = P.Titel

AND P.Zeit > 20:00

Felix Naumann, VL Informationsintegration, WS 05/06


Wdh gav schachtelung

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

Felix Naumann, VL Informationsintegration, WS 05/06


Berblick1

Überblick

  • Global as View (GaV)

    • Modellierung

    • Anfragebearbeitung

  • Local as View (LaV)

    • Modellierung

    • Anwendungen

    • Ausblick: Anfragebearbeitung

  • Global Local as View (GLAV)

  • Vergleich

Felix Naumann, VL Informationsintegration, WS 05/06


Local as view lav beispiel

Local as View (LaV) – Beispiel

Globales Schema

Film(Titel, Regie, Jahr, Genre)

Programm(Kino, Titel, Zeit)

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

S1: IMDB(Titel, Regie, Jahr, Genre)

S2: MyMovies(Titel, Regie, Jahr, Genre)

S3: RegieDB(Titel, Regie)

S4: GenreDB(Titel, Jahr, Genre)

Quelle: VL „Data Integration“, Alon Halevy, University of Washington, 2002

Felix Naumann, VL Informationsintegration, WS 05/06


Local as view lav beispiel1

Local as View (LaV) – Beispiel

Globales Schema

Film(Titel, Regie, Jahr, Genre)

Programm(Kino, Titel, Zeit)

CREATE VIEW S9 AS

SELECT Titel, NULL, Jahr

FROM Film

S9: ActorDB(Titel, Schauspieler, Jahr)

„Verpasste Chance“

Felix Naumann, VL Informationsintegration, WS 05/06


Local as view lav beispiel2

Local as View (LaV) – Beispiel

Globales Schema

Film(Titel, Regie, Jahr, Genre)

Programm(Kino, Titel, Zeit)

CREATE VIEW S7 AS

SELECT Programm.Kino, Film.Genre

FROM Film, Programm

WHERE Film.Titel = Programm.Titel

S7: KinoDB(Kino, Genre)

Assoziationen des globalen

Schemas können in der

Sicht hergestellt werden.

Felix Naumann, VL Informationsintegration, WS 05/06


Local as view lav beispiel3

Local as View (LaV) – Beispiel

CREATE VIEW S7Filme AS

SELECT Titel, Jahr, NULL, NULL

FROM Film

CREATE VIEW S7Regie AS

SELECT NULL, Regie

FROM Film

Globales Schema

Film(Titel, Regie, Jahr, Genre)

Programm(Kino, Titel, Zeit)

S9: Filme(Titel, Jahr, Ort, RegieID) Regie(ID, Regisseur)

Assoziationen des lokalen

Schemas können nicht

abgebildet werden.

Später: Erzeugung neuer IDs

(VL Schema Mapping)

Felix Naumann, VL Informationsintegration, WS 05/06


Local as view lav beispiel4

Local as View (LaV) – Beispiel

Globales Schema

Film(Titel, Regie, Jahr, Genre)

Programm(Kino, Titel, Zeit)

CREATE VIEW S8 AS

SELECT Titel, Regie, Genre

FROM Film

WHERE Jahr > 2000

S8: NeueFilme(Titel, Regie, Genre)

(Nebenbedingung: Jahr > 2000)

Bekannte Nebenbedingung auf

der Quelle kann modelliert werden.

Felix Naumann, VL Informationsintegration, WS 05/06


Local as view lav beispiel5

Local as View (LaV) – Beispiel

CREATE VIEW S1 AS

SELECT * FROM NeuerFilm

(WHERE Jahr> 2000)

CREATE VIEW S2 AS

SELECT * FROM NeuerFilm

(WHERE Jahr> 2000)

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)

Felix Naumann, VL Informationsintegration, WS 05/06


Local as view lav lokale nebenbedingungen

Local as View (LaV) – lokale Nebenbedingungen

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)

Globales Schema

Film(Titel, Regie, Jahr, Genre)

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

Felix Naumann, VL Informationsintegration, WS 05/06


Local as view lav globale nebenbedingungen

Local as View (LaV) – globale Nebenbedingungen

Globales Schema

NeuerFilm(Titel, Regie, Jahr, Genre)

Nebenbedingung: Jahr > 2000

oder

NeuerFilm(Titel, Regie, Genre)

Nebenbedingung: Jahr > 2000

CREATE VIEW AlleFilmeNett AS

SELECT * FROM NeuerFilm

(WHERE JAHR > 2000)

[CREATE VIEW AlleFilmeBöse AS

SELECT Titel, Regie, Genre

FROM NeuerFilm]

S1: AlleFilmeNett(Titel, Regie, Jahr, Genre)

S2: AlleFilmeBöse(Titel, Regie, Genre)

Problem:

Bekannte Nebenbedingung auf

dem globalen Schema kann

nicht modelliert werden.

Frage:

Ist das schlimm?

Felix Naumann, VL Informationsintegration, WS 05/06


Berblick2

Überblick

  • Global as View (GaV)

    • Modellierung

    • Anfragebearbeitung

  • Local as View (LaV)

    • Modellierung

    • Anwendungen

    • Ausblick: Anfragebearbeitung

  • Global Local as View (GLAV)

  • Vergleich

Felix Naumann, VL Informationsintegration, WS 05/06


Problem anfrageverarbeitung

Problem Anfrageverarbeitung

Globales Schema

Film(Titel, Regie, Jahr, Genre)

Programm(Kino, Titel, Zeit)

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

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

Felix Naumann, VL Informationsintegration, WS 05/06


Anfragebearbeitung lav

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

"Query Answering Using Views"

Felix Naumann, VL Informationsintegration, WS 05/06


Lav anfragebearbeitung

LaV - Anfragebearbeitung

  • ABBILDUNG MIT SYSTEM-ÜBERBLICK

    • WER MACHT WANN WAS

Felix Naumann, VL Informationsintegration, WS 05/06


Lav anwendungen

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

Felix Naumann, VL Informationsintegration, WS 05/06


Lav anwendung anfrageoptimierung

LaV Anwendung: Anfrageoptimierung

Q1: R1

Q4: R1 ⋈ R2

  • 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

Q2: R1, A=10

Q5: R4

Q3: R3

Q6: R1 ⋈ R2 ⋈ R3

Optimierer:

Query Answering Using Views

MV1

σ(A=10)

MV2

MV3

⋈|

MV4

R1

R2

R3

R4

R5

Felix Naumann, VL Informationsintegration, WS 05/06


Lav anwendung datawarehouse design

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?

Felix Naumann, VL Informationsintegration, WS 05/06


Lav anwendung semantisches caching

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?

Felix Naumann, VL Informationsintegration, WS 05/06


Lav anwendung datenintegration

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?

Felix Naumann, VL Informationsintegration, WS 05/06


Berblick3

Überblick

  • Global as View (GaV)

    • Modellierung

    • Anfragebearbeitung

  • Local as View (LaV)

    • Modellierung

    • Anwendungen

    • Ausblick: Anfragebearbeitung

  • Global Local as View (GLAV)

  • Vergleich

Felix Naumann, VL Informationsintegration, WS 05/06


Lav beispiel

Umgeschriebene Anfrage

SELECT prof

FROM DB-kurs D

WHERE D.univ = „Humboldt“

LaV – Beispiel

Ausschnitt Globales Schema

Lehrt(prof,kurs_id, sem, eval, univ)

Kurs(kurs_id, titel, univ)

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_%“

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“

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“

Frage: Warum nicht Quelle 2 einbeziehen?

Felix Naumann, VL Informationsintegration, WS 05/06


Lav beispiel1

Umgeschriebene Anfrage

SELECT titel, kurs_id

FROM DB-kurs D

WHERE D.univ = „Humboldt“

UNION

SELECT titel, kurs_id

FROM Hum-VL

LaV – Beispiel

Ausschnitt Globales Schema

Lehrt(prof,kurs_id, sem, eval, univ)

Kurs(kurs_id, titel, univ)

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_%“

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“

Globale Anfrage

SELECT titel, kurs_id

FROM Kurs K

WHERE L.univ = „Humboldt“

Frage:

Warum hier doch

Quelle 2 einbeziehen?

Felix Naumann, VL Informationsintegration, WS 05/06


Lav beispiel vergleich

Vollständige

Antwort

Maximale

Antwort

LaV – Beispiel Vergleich

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“

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:

Was fehlt?

Felix Naumann, VL Informationsintegration, WS 05/06


Lav anfragebearbeitung1

LaV – Anfragebearbeitung

  • Gegeben: Anfrage Q und Sichten V1, ..., Vn

  • 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?

Felix Naumann, VL Informationsintegration, WS 05/06


Lav beispiele

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“

Felix Naumann, VL Informationsintegration, WS 05/06


Lav beispiele1

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 Kurse3 AS

SELECT K.titel, K.kurs_id

FROM Kurs K

AND K.univ = „Humboldt“

Quelle 5:

CREATE VIEW Kurse2 AS

SELECT K.titel, K.univ

FROM Kurs K

AND K.univ = „Humboldt“

AND K.titel LIKE „%VL_%“

Quelle 6:

CREATE VIEW Kurse4 AS

SELECT K.titel

FROM Kurs K

AND K.univ = „Humboldt“

Felix Naumann, VL Informationsintegration, WS 05/06


Lav beispiele2

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 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“

Quelle 5:

CREATE VIEW Kurse2 AS

SELECT K.titel, K.univ

FROM Kurs K

AND K.univ = „Humboldt“

Felix Naumann, VL Informationsintegration, WS 05/06


Cwa owa

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

Felix Naumann, VL Informationsintegration, WS 05/06


Cwa owa beispiel

CWA / OWA – Beispiel

  • Relation R(A,B)

  • View 1

    • CREATE VIEW V1 ASSELECT A FROM R

    • Extension: a

  • View 2

    • CREATE VIEW V2 ASSELECT 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)

R = (a,b)

oder

R = (a,x)

(y,b)

o.ä.

Felix Naumann, VL Informationsintegration, WS 05/06


Berblick4

Überblick

  • Global as View (GaV)

    • Modellierung

    • Anfragebearbeitung

  • Local as View (LaV)

    • Modellierung

    • Anwendungen

    • Ausblick: Anfragebearbeitung

  • Global Local as View (GLAV)

  • Vergleich

Felix Naumann, VL Informationsintegration, WS 05/06


Global local as view glav

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

Felix Naumann, VL Informationsintegration, WS 05/06


Berblick5

Überblick

  • Global as View (GaV)

    • Modellierung

    • Anfragebearbeitung

  • Local as View (LaV)

    • Modellierung

    • Anwendungen

    • Ausblick: Anfragebearbeitung

  • Global Local as View (GLAV)

  • Vergleich

Felix Naumann, VL Informationsintegration, WS 05/06


Vergleich gav lav

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.

Felix Naumann, VL Informationsintegration, WS 05/06


Vergleich gav lav1

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

Felix Naumann, VL Informationsintegration, WS 05/06


Literatur

Literatur

  • Gute Zusammenfassung für LaV und weiterführende Literatur:

    • [Levy01] Alon Y. Halevy: Answering queries using views: A survey, in VLDB Journal 10: 270-294, 2001.

  • Eher theoretisch

    • [Ull00] Jeffrey D. Ullman: Information Integration Using Logical Views. TCS 2000: 189-210

    • [Hull97] Managing Semantic Heterogeneity in Databases: A Theoretical Perspective. Richard Hull. PODS 1997 tutorial

Felix Naumann, VL Informationsintegration, WS 05/06


Lav beispiel2

name

fach

Arbeitet

Vertiefung

name

name

Betreut

Prof

stud

bereich

lehrt

Eingeschrieben

eval

Kurs

sem

sem

titel

kurs_id

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)

Felix Naumann, VL Informationsintegration, WS 05/06


  • Login