Materialisierte vs. Virtuelle Integration

Werbung
Informationsintegration
Materialisierte vs.
Virtuelle Integration
15.5.2008
Felix Naumann
Überblick
2
■ Szenarien der Informationsintegration
□ Data Warehouse
□ Föderierte Datenbanken
■ Einführung
■ Materialisiert
□ Data Warehouse
■ Virtuell
□ Mediator-Wrapper System
■ Vergleich
□ Flexibilität
□ Antwortzeiten
□ Aktualität
□ etc.
etc
Felix Naumann | VL Informationsintegration | SS 2008
Real-life Informationsintegration
3
Überblick: Zwei wesentliche Modelle
■ Data Warehouses
□ Materialisierte
M t i li i t IIntegration
t
ti
□ Am Beispiel Buchhändler
(Folien von Prof. Leser)
■ Föderierte Datenbanken
□ Virtuelle Integration
□ Am Beispiel einer Life Sciences DB (DiscoveryLink)
□ Weitere Beispiele
Felix Naumann | VL Informationsintegration | SS 2008
Data Warehouse
4
■ Eine oder mehrere (ähnliche) Datenbanken mit
Bücherverkaufsinformationen
■ Daten werden oft aktualisiert
□ Jede Bestellung einzeln
g Updates
p
täglich
g
□ Katalog
■ Management benötigt Entscheidungshilfen (decision support)
■ Komplexe Anfragen
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann | VL Informationsintegration | SS 2008
Bücher im Internet bestellen
5
Backup
Durchsat
z
Loadbalancing
Portfolio
Umsatz
Werbung
Zielkonflikt
Daten
b k
bank
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann | VL Informationsintegration | SS 2008
Die Datenbank dazu
6
Bookgroup
id
name
Year
id
year
Month
Id
Month
year id
Order
Order_id
Book id
amount
single_price
Book
id
Book group id
Orders
Day
Id
day
month_id
Customer
Id
Day id
Customer_id
Total_amt
id
name
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann | VL Informationsintegration | SS 2008
Fragen eines Marketingleiters
7
Wie viele Bestellungen haben wir jeweils im Monat vor Weihnachten,
aufgeschlüsselt nach Produktgruppen?
Bookgroup
id
name
Year
id
year
Month
Id
Month
year_id
Order
Order_id
book_id
amount
single_price
Book
id
Book_group_id
Orders
Day
Id
day
month_id
Customer
Id
Day id
Customer_id
Total_amt
id
name
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann | VL Informationsintegration | SS 2008
Technisch
SELECT Y.year,
8
PG.name, count(B.id)
FROM
year Y, month M, day D, order O,
orders OS, book B, bookgroup BG
WHERE M.year = Y.id and
M.id = D.month and
O.day_id = D.id and
OS.order_id = O.id and
B.id = O.book_id and
B.book_group_id = BG.id and
day < 24 and month = 12
GROUP BY Y.year, PG.product_name
PG.product name
ORDER BY Y.year
Bookgroup
Year
id
year
Month
Id
Month
year_id
Day
Id
day
month_id
id
name
Order
Order_id
Book_id
amount
single_price
Orders
Id
Day_id
Customer_id
Total_amt
Book
id
Book_group_id
Customer
id
name
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann | VL Informationsintegration | SS 2008
SELECT Y.year, PG.name, count(B.id)
FROM
year Y, month M, day D, order O, orders OS,
book B
B, bookgroup BG
Technisch
WHERE M.year = Y.id and
M.id = D.month and
O.day_id
y_
= D.id and
OS.order_id = O.id and
B.id = O.book_id and
B.book_group_id = BG.id and
day < 24 and month = 12
GROUP BY Y.year, PG.product_name
ORDER BY Y.year
9
6 Joins
• Year:
•
•
•
•
•
•
10 Records
Month:
120 Records
Day:
3650 Records
Od
Orders:
36 000 000
36.000.000
Order:
72.000.000
Books:
200.000
Bookgroups: 100
Problem!
• Schwierig
S h i i zu optimieren
i i
(Join(J i
Reihenfolge)
• Je nach Ausführungsplan
g p
riesige
g
Zwischenergebnisse
• Ähnliche Anfragen – ähnlich riesige
Zwischenergebnisse
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann | VL Informationsintegration | SS 2008
In Wahrheit ... noch schlimmer
10
Es gibt noch:
■ Amazon.de
Amazon de
■ Amazon.fr
■ Amazon.it
■ ...
Verteilte Ausführung
■ Count über Union mehrerer gleicher Anfragen in unterschiedlichen
Datenbanken
HILFE!
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann | VL Informationsintegration | SS 2008
In Wahrheit ...
11
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann | VL Informationsintegration | SS 2008
Technisch: Eine VIEW
12
CREATE VIEW christmas AS
SELECT
Y.year, PG.name, count(B.id)
DE.year Y, DE.month M, DE.day D, DE.order O, ...
M.year
M
year = Y
Y.id
id and
FROM
WHERE
...
GROUP BY Y.year, PG.product_name
ORDER BY
Y.year
UNION
SELECT
FROM
WHERE
...
Y.year, PG.name, count(B.id)
EN.year Y, EN.month M, EN.day D, DE.order O, ...
M.year
M
year = Y
Y.id
id and
SELECT
FROM
GROUP BY
ORDER BY
year, name, count(B.id)
t(B id)
christmas
year, name
year
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann | VL Informationsintegration | SS 2008
Probleme
13
Count über Union über verteilte Datenbanken?
■ Integrationsproblem
B
Berechnung
h
riesiger
i i
Z
Zwischenergebnisse
i h
b i
b
beii jjeder
d Anfrage?
A f
?
■ Datenmengenproblem
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann | VL Informationsintegration | SS 2008
Lösung des Integrationsproblems?
14
Zentrale Datenbank
• Aber Probleme:
– Zweigstellen schreiben übers Netz
– Schlechter Durchsatz
– Lange Antwortzeiten im operativen Betrieb
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann | VL Informationsintegration | SS 2008
Lösung Datenmengenproblem?
15
Denormalisierte Schema
Aber Probleme:
■ Jeder lesende / schreibende Zugriff
g
erfolgt
g auf eine Tabelle mit 72
Mill. Records
■ Lange Antwortzeiten im operativen Betrieb
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann | VL Informationsintegration | SS 2008
Zielkonflikt
16
Felix Naumann | VL Informationsintegration | SS 2008
Tatsächliche Lösung
17
Aufbau eines Data Warehouse
■ Redundante, transformierte Datenhaltung
■ Asynchrone Aktualisierung
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann | VL Informationsintegration | SS 2008
Weitere Anwendungsgebiete: Data
Warehouses
18
■ „Customer Relationship Management“ (CRM)
□ Identifikation von Premiumkunden
□ Personalisierung / Automatische Kundenberatung
□ Gezielte Massen-Mailings (Direktvertrieb)
■ Controlling / Rechnungswesen
□ Kostenstellen
□ Organisationseinheiten
□ Personalmanagement
■ Logistik
□ Flottenmanagement,
g
, Tracking
g
■ Gesundheitswesen
□ Studienüberwachung, Patiententracking
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann | VL Informationsintegration | SS 2008
Überblick
19
■ Szenarien der Informationsintegration
□ Data Warehouse
□ Föderierte Datenbanken
■ Einführung
■ Materialisiert
□ Data Warehouse
■ Virtuell
□ Mediator-Wrapper System
■ Vergleich
□ Flexibilität
□ Antwortzeiten
□ Aktualität
□ etc.
etc
Felix Naumann | VL Informationsintegration | SS 2008
Föderierte Datenbanken
20
■ Mehrere autonome Informationsquellen
■ Mit unterschiedlichsten Inhalten
□ Gene,
G
Proteine,
P t i
BLAST
BLAST, etc.
t
■ Und unterschiedlichsten Schnittstellen
□ HTML
HTML-Form
Form, flat file,
file SQL,
SQL etc.
etc
■ Wissenschaftler (Biologe) benötigt z.B. möglichst viele
Informationen über ein bestimmtes Protein
□ Funktion, Veröffentlichungen, verwandte Proteine usw.
■ Sehr komplexe Anfragen
■ Üblicher
Übl h Ansatz: Browsing, Note-Taking,
k
Copy
C
& Paste
■ Föderierte Datenbanken (wie DiscoveryLink) helfen.
Felix Naumann | VL Informationsintegration | SS 2008
Frage eines Biologen
21
Finde alle menschlichen EST Sequenzen, die nach BLAST
zu mindestens 60% über mindestens 50 Aminosäuren
identisch sind mit mouse-channel Genen im Gewebe des
zentralen Nervensystems.
Quelle für das komplette Beispiel: A Practitioner’s Guide to Data Management and
Data Integration in Bioinformatics, Barbara A. Eckman in
Bioinformatics by Zoe Lacroix and Terence Critchlow, 2003, Morgan Kaufmann.
Felix Naumann | VL Informationsintegration | SS 2008
Verschiedene Informationsquellen
22
Beteiligte Informationsquellen
■ Mouse Genome Database (MGD) @ Jackson Labs
■ SwissProt
S i P t @ EBI
■ BLAST tool @ NCBI
■ GenBank nucleotide sequence database @ NCBI
Alle Quellen sind frei verfügbar
Felix Naumann | VL Informationsintegration | SS 2008
Herkömmlicher Ansatz: Browsing
23
1. Suche „channel“ Sequenzen
im Gewebe des ZNS durch
MGD HTML Formular
Felix Naumann | VL Informationsintegration | SS 2008
Herkömmlicher Ansatz: Browsing
24
MGD Resultat
■ 14 Gene aus 17
Experimenten
Felix Naumann | VL Informationsintegration | SS 2008
Herkömmlicher Ansatz: Browsing
25
■ Details zu jedem der 14 Gene
ansehen
■ Durchschnittlich fünf SwissProt
Links pro Gen
Felix Naumann | VL Informationsintegration | SS 2008
Herkömmlicher Ansatz: Browsing
26
■ Betrachten jedes SwissProt
Eintrages
g
■ Durch Klick BLAST
Algorithmus anwerfen
Felix Naumann | VL Informationsintegration | SS 2008
Herkömmlicher Ansatz: Browsing
27
■ Betrachten jedes BLAST Resultats
um
□ nicht-menschliche Treffer zu
eliminieren,
□ andere Bedingungen zu
prüfen (>60% Identität,
etc.).
)
Felix Naumann | VL Informationsintegration | SS 2008
Herkömmlicher Ansatz: Browsing
28
Für jeden verbleibenden Eintrag
■ Komplette EST Sequenz bei
GenBank holen
Felix Naumann | VL Informationsintegration | SS 2008
Idee der Integration
29
■ Bildung eines globalen Schemas (Schemaintegration)
□ Gespeichert als Datenbankschema in DiscoveryLink
■ Generierung
G
i
von W
Wrappern für
fü jede
j d Datenquelle
D t
ll
□ Softwarekomponente
□ Mapping von lokalen Schemata auf globales Schema
□ Kennt Anfragefähigkeiten der Quellen
Felix Naumann | VL Informationsintegration | SS 2008
DiscoveryLink Architektur
30
Felix Naumann | VL Informationsintegration | SS 2008
Eigenschaften föderierter IS (und
DiscoveryLink)
31
■ Daten bleiben vor Ort.
■ Informationsquellen sind autonom (und wissen oft nicht von ihrer
Integration).
Integration)
■ Anfragen werden deklarativ an das globale Schema gestellt.
g wird so verteilt wie möglich
g
ausgeführt.
g
■ Anfrage
□ Je nach Mächtigkeit der Quellen
□ DiscoveryLink gleicht etwaige mangelnder Fähigkeiten aus.
Felix Naumann | VL Informationsintegration | SS 2008
Föderierter DBMS Ansatz
32
„Finde alle menschlichen EST Sequenzen, die nach BLAST zu
mindestens 60% über mindestens 50 Aminosäuren identisch sind mit
mouse-channel
mouse
channel Genen im Gewebe des zentralen Nervensystems.
Nervensystems “
„Einfache“ SQL-Anfrage um alle vorigen Schritte zu vereinen:
g.accnum,g.sequence
,g
q
SELECT g
FROM
genbank g, blast b, swissprot s, mgd m
WHERE
m.exp = “CNS”
AND
m.defn LIKE “%channel%”
AND
m.spid = s.id AND s.seq = b.query
AND
b hi = g.accnum
b.hit
AND
b.percentid > 60 AND b.alignlen > 50
Felix Naumann | VL Informationsintegration | SS 2008
Föderierter DBMS Ansatz
33
■ Effiziente Ausführung durch Optimierer
□ Herkömmliche Optimierung
□ Wrapper
W
helfen
h lf
mit
it
◊ Kostenmodell
◊ do
domänenspezifischen
ä e spe sc e Funktionen
u to e
■ Sichere Ausführung
□ Wiederholbar
□ Transaktional
Felix Naumann | VL Informationsintegration | SS 2008
Weitere Anwendungsgebiete: Föderierte
Datenbanken
34
■ Meta-Suchmaschinen
■ Unternehmensfusionen
□ Kundendatenbanken
□ Personaldatenbanken
■ Grid
■ Krankenhausinformationssysteme
□ Röntgenbilder
□ Krankheitsverlauf (Akte)
□ Verwaltung
□ Krankenkasse...
■ Verteiltes Arbeiten („groupware“)
■ Peer Data Management und P2P
Felix Naumann | VL Informationsintegration | SS 2008
Überblick
35
■ Szenarien der Informationsintegration
□ Data Warehouse
□ Föderierte Datenbanken
■ Einführung
■ Materialisiert
□ Data Warehouse
■ Virtuell
□ Mediator-Wrapper System
■ Vergleich
□ Flexibilität
□ Antwortzeiten
□ Aktualität
□ etc.
etc
Felix Naumann | VL Informationsintegration | SS 2008
Integration
36
Materialisiert
■ A priori Integration
■ Zentrale
Z t l D
Datenbasis
t b i
■ Zentrale Anfragebearbeitung
■ Typisches Beispiel: Data Warehouse
Virtuell
■ On demand Integration
■ Dezentrale Daten
■ Dezentrale Anfragebearbeitung
■ Typisches Beispiel: Mediator-basiertes Informationssystem
Felix Naumann | VL Informationsintegration | SS 2008
Data Warehouse vs. Mediator-basiertes
Informationssystem
37
Anwendung 1 Anwendung 2 Anwendung 1 Anwendung 2
Data
Warehouse
Q ll 1
Quelle
Q ll 2
Quelle
Mediator
Q ll 3
Quelle
Q ll 1
Quelle
Felix Naumann | VL Informationsintegration | SS 2008
Q
Quelle
2
Q
Quelle
3
Data Warehouse vs.
vs Mediator
38
Anwendung 1 Anwendung 2 Anwendung 1 Anwendung 2
Mediator
Data
Warehouse
ETL 3
ETL 1
Wrapper 1
ETL 2
Quelle 1
Quelle 2
Wrapper 3
Wrapper 2
Quelle 3
Quelle 1
Felix Naumann | VL Informationsintegration | SS 2008
Quelle 2
Quelle 3
Taxonomie nach [DD99]
39
Felix Naumann | VL Informationsintegration | SS 2008
Data Warehouse vs.
vs Mediator
40
Jetzt jeweils kurzer Überblick
■ Datenfluss
■ Anfragebearbeitung
A f
b
b it
■ Entwurf und Entwicklung (Schema)
Details in den folgenden Wochen
Felix Naumann | VL Informationsintegration | SS 2008
Überblick
41
■ Szenarien der Informationsintegration
□ Data Warehouse
□ Föderierte Datenbanken
■ Einführung
■ Materialisiert
□ Data Warehouse
■ Virtuell
□ Mediator-Wrapper System
■ Vergleich
□ Flexibilität
□ Antwortzeiten
□ Aktualität
□ etc.
etc
Felix Naumann | VL Informationsintegration | SS 2008
Materialisierte Integration - Datenfluss
42
Anwendung 1 Anwendung 2
■ Push
g „„Bevölkerung“
g
■ Erstmalige
(population) des DW
Data
Warehouse
□ Data Cleansing
■ Periodischer Datenimport
□ Stündlich / Täglich /
Wöchentlich
ETL 1
ETL 2
ETL 3
□ Materialisierte Sichten /
Sicht-Updates
■ Redundante Datenhaltung
Quelle 1
Quelle 2
Quelle 3
■ Aggregation und Löschung alter
Daten
□ Je älter,
l
d
desto „aggregierter““
Felix Naumann | VL Informationsintegration | SS 2008
Materialisierte Integration Anfragebearbeitung
43
Anwendung 1 Anwendung 2
Data
Warehouse
■ Wie „normale“ DBMS
■ Besonderheiten
□ Star Schema
□ Aggregation
□ Decision Support
■ Siehe auch VL DWH
ETL 1
Quelle 1
ETL 2
Quelle 2
ETL 3
Quelle 3
Felix Naumann | VL Informationsintegration | SS 2008
Materialisierte Integration - Schema
44
Anwendung 1 Anwendung 2
■ Bottom-Up Entwurf
■ Schemaintegration
■ Star-Schema
Data
Warehouse
□ Fact-Table
□ Dimension Tables
ETL 1
Quelle 1
ETL 2
Quelle 2
ETL 3
Quelle 3
Felix Naumann | VL Informationsintegration | SS 2008
M
Materialisierte
i li i
IIntegration
i
- Schema
S h
45
□ Bottom-Up Entwurf
□ Schemaintegration
□ Star-Schema
◊ Fact-Table
◊ Dimension Tables
Felix Naumann | VL Informationsintegration | SS 2008
Überblick
46
■ Szenarien der Informationsintegration
□ Data Warehouse
□ Föderierte Datenbanken
■ Einführung
■ Materialisiert
□ Data Warehouse
■ Virtuell
□ Mediator-Wrapper System
■ Vergleich
□ Flexibilität
□ Antwortzeiten
□ Aktualität
□ etc.
etc
Felix Naumann | VL Informationsintegration | SS 2008
Virtuelle Integration - Datenfluss
47
Anwendung 1 Anwendung 2
■ Pull
■ Daten sind in Quellen
gespeichert.
■ Nur die zur
Anfragebeantwortung
notwendigen Daten werden
übertragen.
g
Mediator
Wrapper 1
Wrapper 2
Wrapper 3
Quelle 1
Quelle 2
Quelle 3
■ Data Cleansing nur online
möglich.
Felix Naumann | VL Informationsintegration | SS 2008
Virtuelle Integration Anfragebearbeitung
48
Anwendung 1 Anwendung 2
■ Optimierung schwierig
□ Fähigkeiten der Quellen
□ Geschwindigkeit der Quellen
Mediator
■ Viele mögliche Pläne
□ Redundante Quellen
□ Redundante Pläne
Wrapper 1
Wrapper 2
Wrapper 3
Quelle 1
Quelle 2
Quelle 3
■ Dynamisch, um ausfallende
Quellen auszugleichen
Felix Naumann | VL Informationsintegration | SS 2008
Virtuelle Integration - Schema
49
Anwendung 1 Anwendung 2
■ Top-Down Entwurf
■ Leicht erweiterbar
□ Global: Neue Quellen
suchen
Mediator
□ Lokal: Nur ein mapping
verändern.
Wrapper 1
Wrapper 2
Wrapper 3
Quelle 1
Quelle 2
Quelle 3
■ Schema Mapping statt
Schema-integration
Felix Naumann | VL Informationsintegration | SS 2008
Überblick
50
■ Szenarien der Informationsintegration
□ Data Warehouse
□ Föderierte Datenbanken
■ Einführung
■ Materialisiert
□ Data Warehouse
■ Virtuell
□ Mediator-Wrapper System
■ Vergleich
□ Flexibilität
□ Antwortzeiten
□ Aktualität
□ etc.
etc
Felix Naumann | VL Informationsintegration | SS 2008
Dimensionen des Vergleichs
51
■ Aktualität
■ Antwortzeit
■ Flexibilität / Wartbarkeit
■ Komplexität
■ Autonomie
■ Anfragebearbeitung / Mächtigkeit
■ Read / Write
■ Größe / Speicherbedarf
■ Ressourcenbedarf
■ Vollständigkeit
g
■ Data Cleansing
■ Informationsqualität
Felix Naumann | VL Informationsintegration | SS 2008
Aktualität (up-to-date-ness)
52
■ Materialisierte Integration
■ Virtuelle Integration
□ Je nach Update-Frequenz
p
q
□ Sehr g
gut
□ In Unternehmen meist täglich
(über Nacht)
□ Abhängig von Aktualität der
autonomern Quellen
□ Beispiel SwissProt
□ Manchmal: Caching
◊ Updates in SwissProt
täglich
◊ Aber: Release nur
monatlich
Felix Naumann | VL Informationsintegration | SS 2008
Antwortzeit (response time)
53
■ Materialisierte Integration
■ Virtuelle Integration
□ Sehr g
gut
□ Nicht g
gut
□ Lokale Bearbeitung
□ Daten sind entfernt
□ Wie DBMS
◊ Übertragung durch das
Netz
◊ Optimierung
O i i
◊ Materialisierte Sichten
◊ Indices
◊ ...
□ Allerdings: Typische Anfragen
sind komplex
□ Abhängig von Antwortzeit der
Quellen
□ Optimierung schwierig
□ Komplexe Operatoren müssen
naïv ausgeführt
g
werden.
□ Data Cleansing Operationen
müssen nachgeholt werden.
Felix Naumann | VL Informationsintegration | SS 2008
Flexibilität / Wartbarkeit (flexibility /
maintenance)
54
■ Materialisierte Integration
■ Virtuelle Integration
□ Schwierig
g
□ Einfacher
□ Entfernen / Ändern /
Hinzufügen einer Quelle kann
gesamte Integration
verändern (bei GaV)
□ Entfernen / Ändern /
Hinzufügen einer Quelle wirkt
sich nur auf das mapping
dieser Quelle aus (bei LaV)
□ Lokale Wartung eines großen
und wachsenden
Datenbestandes
□ Quellen müssen Daten selbst
warten
warten.
◊ Mit Indices etc.
□ Tägliche Integration nötig
Felix Naumann | VL Informationsintegration | SS 2008
◊ Backups, DBMS Wartug
etc.
Komplexität (complexity)
55
■ Materialisierte Integration
□ Wie DBMS
□ Komplexe Anfragen
■ Virtuelle Integration
□ Modellierung
g der Q
Quellen
wichtig
◊ Fähigkeiten der Quellen
□ Anfrageplanung im GaV leicht
□ Q
Quellen
ll
sind
i d oft
f untereinander
i
d
ähnlich.
◊ Oft sind es selbst DBMS
□ Anfrageplanung in LaV
schwierig
□ Oft verschiedenste Quellen
◊ Web Services
◊ HTML Formulare
◊ Flat Files
◊ ...
Felix Naumann | VL Informationsintegration | SS 2008
Autonomie (autonomy)
56
■ Materialisierte Integration
□ Q
Quellen wenig
g autonom
■ Virtuelle Integration
□ Quellen
Q
können autonom
sein.
◊ Keine Kommunikationsautonomie
□ Volle Design-Autonomie
◊ Geringe AusführungsAusführungs
autonomie
□ Fast volle KommunikationsKommunikations
Autonomie
◊ Geringe Designautonomie
t
i
◊ Gewisse Kommunikation
i t nötig,
ist
öti sonstt nicht
i ht
Teilnehmer der
Integration
□ Müssen bulk-read o.ä.
zulassen
□ Update notifications
□ Fast volle AusführungsAutonomie
◊ Nur: Anfragen müssen
irgendwann beantwortet
werden.
Felix Naumann | VL Informationsintegration | SS 2008
Anfragebearbeitung / Mächtigkeit
(query planning / expressivenes)
57
■ Materialisierte Integration
□ Anfragebearbeitung
g
g wie DBMS
bzw. anderes globales System
■ Virtuelle Integration
□ Anfragebearbeitung
g
g komplex
p
◊ Verteilung
□ Anfragemächtigkeit wie
globales System
◊ z.B. volle SQL Mächtigkeit
◊ Autonomie
H
iä
◊ Heterogenität
□ Mangelnde Fähigkeiten der
Quellen können global
eventuell ausgeglichen
werden.
□ Aber auch: Spezialfähigkeiten
p
g
der Quellen können genutzt
werden:
◊ Image retrieval
◊ Text Index
Felix Naumann | VL Informationsintegration | SS 2008
Lesen / Schreiben
(Read / Write)
58
■ Materialisierte Integration
■ Virtuelle Integration
□ Read immer möglich
g
□ Read meist möglich
g
□ DW: Write oft nicht
gewünscht, aber möglich
□ Verfügbarkeit!
□ Write meist nicht möglich
◊ Kann zu Inkonsistenz mit
Quellen führen
Beii Redundanz:
R d d
Wohin
W hi
◊ B
schreiben?
◊ Transaktionen schwierig
◊ Autonomie
Felix Naumann | VL Informationsintegration | SS 2008
Größe / Speicherbedarf
(size / memory consumption)
59
■ Materialisierte Integration
□ Hoch
■ Virtuelle Integration
□ Gering
g
◊ Redundante
Datenhaltung
◊ Metadaten
◊ DW: Historische Daten
◊ Zwischenergebnisse
Z i h
b i
□ Wachstum
◊ Cache
□ Footprint: wie DBMS
◊ Stetig wachsend
◊ Oder konstant durch
zunehmende Aggregation
im Laufe der Zeit
□ Footprint: wie DBMS
Felix Naumann | VL Informationsintegration | SS 2008
Ressourcenbedarf
(resource consumption)
60
■ Materialisierte Integration
■ Virtuelle Integration
□ Planbare Netzwerklast
□ Potentiell hohe Netzwerklast
□ Daten werden eventl. unnötig
übertragen
□ Daten werden mehrfach
übertragen.
◊ Abhängig von Anfrage
◊ Aggregation
◊ Pre-Aggregation
◊ Cache kann helfen
helfen.
□ Nur jeweils nötige Daten
werden übertragen.
Je nach Workload.
Spannendes Optimierungsproblem!
Felix Naumann | VL Informationsintegration | SS 2008
Vollständigkeit (completeness)
61
■ Materialisierte Integration
□ Gut
□ Annahme: Materialisation ist
vollständig
■ Virtuelle Integration
□ Nur bei Verfügbarkeit
g
aller
nötigen Quellen
□ Gegebenenfalls Anfrage
unbeantwortbar oder nur
unvollständig beantwortbar
◊ Fuzzy Anfragesemantik:
– Alle Tupel?
– Alle Attribute?
□ Definition der Vollständigkeit
◊ Open World Assumption
◊ Closed World Assumption
Felix Naumann | VL Informationsintegration | SS 2008
Datenreinigung (Data Cleansing)
62
■ Materialisierte Integration
□ Viele Methoden
■ Virtuelle Integration
□ Online cleansing
g schwierig
g
◊ Aufwändig
□ Offline (über Nacht)
Felix Naumann | VL Informationsintegration | SS 2008
◊ Aufwand
◊ Keine Interaktion mit
Experten möglich
Informationsqualität (information
quality)
63
■ Materialisierte Integration
■ Virtuelle Integration
□ Hoch
□ Abhängig
g g von Q
Quellen
□ Kontrolliert
□ Oft zweifelhaft
□ Kann bei Bedarf verbessert
werden
werden.
Felix Naumann | VL Informationsintegration | SS 2008
◊ Autonomie
Z
Zusammenfassung
f
VorV
und
d Nachteile
N h il
64
Materialisiert Virtuell
Aktualität
- (Cache)
+
Antwortzeit
+
-
Flexibilität
- (GaV)
+ (LaV)
Komplexität
-
--
Autonomie
-
+
Anfragemächtigkeit
+
-
Read/Write
+/+
+/-
Größe
-
+
Ressourcenbedarf
? (workload)
? (workload)
Vollständigkeit
+
? (OWA, CWA)
Datenreinigung
+
-
Informationsqualität +
-
Felix Naumann | VL Informationsintegration | SS 2008
Hybrider Ansatz
65
Teile der Daten werden materialisiert
■ Oft benötigte Daten (Cache)
Anwendung 1 Anwendung 2
■ Als bulk verfügbare Daten
□ Dump Files
□ SQL Zugang
Mediator
□ ...
Teile der Daten bleiben bei den Quellen
■ Oft aktualisierte Daten
ETL 1
Wrapper 3
■ Daten mit beschränktem Zugang
Wrapper 2
□ mind. eine gebundene Variable
□ Beschränkte Lizenzen
Optimierung bevorzugt lokale Daten
Quelle 1
■ Prüfung,
Prüfung ob Aktualisierung vorliegt
Felix Naumann | VL Informationsintegration | SS 2008
Quelle 2
Quelle 3
Rückblick
66
■ Szenarien der Informationsintegration
□ Data Warehouse
□ Föderierte Datenbanken
■ Einführung
■ Materialisiert
□ Data Warehouse
■ Virtuell
□ Mediator-Wrapper System
■ Vergleich
□ Flexibilität
□ Antwortzeiten
□ Aktualität
□ etc.
etc
Felix Naumann | VL Informationsintegration | SS 2008
Literatur
67
■ [BKLW99] Busse, Kutsche, Leser, Weber, Federated Information
Systems: Concepts, Terminology and Architectures.
Forschungsbericht 99
99-9
9 des FB Informatik der TU Berlin, 1999.
Online: http://www.informatik.huberlin.de/~leser/publications/tr_terminology.ps
■ [DD99] Ruxandra Domenig, Klaus R. Dittrich: An Overview and
Classification of Mediated Query Systems. SIGMOD Record 28(3):
63-72 (1999)
Felix Naumann | VL Informationsintegration | SS 2008
Herunterladen