Szenarien der Informationsintegration

Werbung
Informationsintegration
Anwendungsszenarien
20.10.2004
Felix Naumann
Überblick

Beispiele der
Informationsintegration



Data Warehouse
Föderierte Datenbanken
Potential und Probleme
der Informationsintegration


Redundanz
Komplementierung
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
2
Real-life
Informationsintegration

Überblick: Zwei wesentliche Modelle

Data Warehouses



Materialisierte Integration
Am Beispiel Buchhändler (Folien von Prof. Leser)
Föderierte Datenbanken



Virtuelle Integration
Am Beispiel einer Life Sciences DB (DiscoveryLink)
Weitere Beispiele
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
3
Data Warehouse


Eine oder mehrere (ähnliche) Datenbanken
mit Bücherverkaufsinformationen
Daten werden oft aktualisiert




Jede Bestellung einzeln
Katalog Updates täglich
Management benötigt Entscheidungshilfen
(decision support)
Komplexe Anfragen
Quelle: Ulf Leser, VL Data Warehouses
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
4
Bücher im Internet bestellen
Backup
Durchsat
z
Loadbalancing
Portfolio
Umsatz
Werbung
Zielkonflikt
Daten
bank
Quelle: Ulf Leser, VL Data Warehouses
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
5
Die Datenbank dazu
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
20.10.2004
Id
Day_id
Customer_id
Total_amt
Customer
id
name
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann, VL Informationsintegration, WS 05/06
6
Fragen eines Marketingleiters
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
20.10.2004
Id
Day_id
Customer_id
Total_amt
Customer
id
name
Quelle: Ulf Leser, VL Data Warehouses
Felix Naumann, VL Informationsintegration, WS 05/06
7
SELECT Y.year, 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
ORDER BY Y.year
Technisch
Year
id
year
Month
Id
Month
year_id
Day
Id
day
month_id
20.10.2004
Bookgroup
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, WS 05/06
8
SELECT Y.year, 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
ORDER BY Y.year
Technisch
6 Joins
• Year:
•
•
•
•
•
•
10 Records
Month:
120 Records
Day:
3650 Records
Orders:
36.000.000
Order:
72.000.000
Books:
200.000
Bookgroups: 100
Problem!
• Schwierig zu optimieren (Join-
Reihenfolge)
• Je nach Ausführungsplan riesige
Zwischenergebnisse
• Ähnliche Anfragen – ähnlich riesige
Zwischenergebnisse
Quelle: Ulf Leser, VL Data Warehouses
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
9
In Wahrheit ... noch schlimmer

Es gibt noch:





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
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
10
In Wahrheit ...
Quelle: Ulf Leser, VL Data Warehouses
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
11
Technisch: Eine VIEW
CREATE VIEW christmas AS
SELECT
FROM
...
WHERE
...
GROUP BY
ORDER BY
Y.year, PG.name, count(B.id)
DE.year Y, DE.month M, DE.day D, DE.order O,
M.year = Y.id and
Y.year, PG.product_name
Y.year
UNION
SELECT
Y.year, PG.name, count(B.id)
FROM
EN.year Y, EN.month M, EN.day D, DE.order O,
...
WHERE
M.year = Y.id and
SELECT
year, name, count(B.id)
...
FROM
GROUP BY
ORDER BY
christmas
year, name
year
Quelle: Ulf Leser, VL Data Warehouses
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
12
Probleme

Count über Union über verteilte
Datenbanken?


Integrationsproblem
Berechnung riesiger Zwischenergebnisse bei
jeder Anfrage?

Datenmengenproblem
Quelle: Ulf Leser, VL Data Warehouses
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
13
Lösung des
Integrationsproblems?
Zentrale Datenbank
• Aber Probleme:
– Zweigstellen schreiben übers Netz
– Schlechter Durchsatz
– Lange Antwortzeiten im operativen Betrieb
20.10.2004
Quelle: Ulf Leser, VL Data Warehouses
14
Felix Naumann, VL Informationsintegration, WS 05/06
Lösung
Datenmengenproblem?
Denormalisierte Schema
• Aber Probleme:
– Jeder lesende / schreibende Zugriff erfolgt auf eine Tabelle mit
72 Mill. Records
– Lange Antwortzeiten im operativen Betrieb
20.10.2004
Quelle: Ulf Leser, VL Data Warehouses
15
Felix Naumann, VL Informationsintegration, WS 05/06
Zielkonflikt
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
16
Tatsächliche Lösung
Aufbau eines Data Warehouse
• Redundante, transformierte Datenhaltung
• Asynchrone Aktualisierung
Quelle: Ulf Leser, VL Data Warehouses
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
17
Weitere Anwendungsgebiete:
Data Warehouses




„Customer Relationship Management“ (CRM)
 Identifikation von Premiumkunden
 Personalisierung / Automatische Kundenberatung
 Gezielte Massen-Mailings (Direktvertrieb)
Controlling / Rechnungswesen
 Kostenstellen
 Organisationseinheiten
 Personalmanagement
Logistik
 Flottenmanagement, Tracking
Gesundheitswesen
 Studienüberwachung, Patiententracking
Quelle: Ulf Leser, VL Data Warehouses
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
18
Überblick

Beispiele der
Informationsintegration



Data Warehouse
Föderierte Datenbanken
Probleme und Potential
der
Informationsintegration


Redundanz
Komplementierung
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
19
Föderierte Datenbanken







Mehrere autonome Informationsquellen
Mit unterschiedlichsten Inhalten
 Gene, Proteine, BLAST, etc.
Und unterschiedlichsten Schnittstellen
 HTML-Form, flat file, SQL, 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 Ansatz: Browsing, Note-Taking, Copy & Paste
Föderierte Datenbanken (wie DiscoveryLink) helfen.
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
20
Frage eines Biologen
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.
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
21
Verschiedene
Informationsquellen

Beteiligte Informationsquellen





Mouse Genome Database (MGD) @ Jackson Labs
SwissProt @ EBI
BLAST tool @ NCBI
GenBank nucleotide sequence database @ NCBI
Alle Quellen sind frei verfügbar
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
22
Herkömmlicher Ansatz:
Browsing
1. Suche „channel“
Sequenzen im
Gewebe des ZNS
durch MGD HTML
Formular
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
23
Herkömmlicher Ansatz:
Browsing

MGD Resultat

14 Gene aus 17
Experimenten
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
24
Herkömmlicher Ansatz:
Browsing


Details zu jedem der
14 Gene ansehen
Durchschnittlich fünf
SwissProt Links pro
Gen
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
25
Herkömmlicher Ansatz:
Browsing


Betrachten jedes
SwissProt Eintrages
Durch Klick BLAST
Algorithmus
anwerfen
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
26
Herkömmlicher Ansatz:
Browsing

Betrachten jedes
BLAST Resultats um


nicht-menschliche
Treffer zu eliminieren,
andere Bedingungen zu
prüfen (>60% Identität,
etc.)
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
27
Herkömmlicher Ansatz:
Browsing

Für jeden
verbleibenden
Eintrag

Komplette EST
Sequenz bei
GenBank holen
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
28
Idee der Integration

Bildung eines globalen Schemas
(Schemaintegration)


Gespeichert als Datenbankschema in
DiscoveryLink
Generierung von Wrappern für jede
Datenquelle



Softwarekomponente
Mapping von lokalen Schemata auf globales
Schema
Kennt Anfragefähigkeiten der Quellen
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
29
DiscoveryLink Architektur
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
30
Eigenschaften föderierter IS
(und DiscoveryLink)




Daten bleiben vor Ort.
Informationsquellen sind autonom (und wissen oft
nicht von ihrer Integration).
Anfragen werden deklarativ an das globale Schema
gestellt.
Anfrage wird so verteilt wie möglich ausgeführt.


Je nach Mächtigkeit der Quellen
DiscoveryLink gleicht etwaige mangelnder Fähigkeiten aus.
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
31
Föderierter DBMS Ansatz
„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.“

„Einfache“ SQL-Anfrage um alle vorigen
Schritte zu vereinen:
SELECT
FROM
WHERE
AND
AND
AND
AND
20.10.2004
g.accnum,g.sequence
genbank g, blast b, swissprot s, mgd m
m.exp = “CNS”
m.defn LIKE “%channel%”
m.spid = s.id AND s.seq = b.query
b.hit = g.accnum
b.percentid > 60 AND b.alignlen > 50
Felix Naumann, VL Informationsintegration, WS 05/06
32
Föderierter DBMS Ansatz

Effiziente Ausführung durch Optimierer


Herkömmliche Optimierung
Wrapper helfen mit



Kostenmodell
domänenspezifischen Funktionen
Sichere Ausführung


Wiederholbar
Transaktional
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
33
Weitere Anwendungsgebiete:
Föderierte Datenbanken


Meta-Suchmaschinen
Unternehmensfusionen




Grid
Krankenhausinformationssysteme






Kundendatenbanken
Personaldatenbanken
Röntgenbilder
Krankheitsverlauf (Akte)
Verwaltung
Krankenkasse...
Verteiltes Arbeiten („groupware“)
Peer Data Management und P2P
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
34
Überblick

Beispiele der
Informationsintegration



Data Warehouse
Föderierte Datenbanken
Probleme und Potential
der
Informationsintegration


Redundanz
Komplementierung
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
35
Integrationspotential

Wann ist Informationsintegration möglich?


Wann ist Informationsintegration schwierig?


Intensionale Redundanz
Extensionale Redundanz
Wann ist Informationsintegration nützlich?


Extensionale Komplementierung
Intensionale Komplementierung
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
36
Intension & Extension

Definition: Intension


Die Intension eines Informationssystems ist die
Menge der Schemainformationen und deren
Semantik (Bedeutung).
Definition: Extension

Die Extension eines Informationssystems ist die
Menge aller zur Intension gehörigen, zugreifbaren
Daten.
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
37
Intension & Extension

Die Intension einer
Datenbank



Schema für eine Menge
von Entitäten/Dingen
Semantik
Die Extension einer
Datenbank


Buch ISBN
Zustand
Menge von Entitäten
20.10.2004
Titel
Autor
3442727316
Moby
Dick
Herman
Melville
3491960827
Robinson Daniel
Crusoe
Defoe
3462032283
Zwölf
3883891606
Timbuktu Paul
Auster
Felix Naumann, VL Informationsintegration, WS 05/06
Nick
McDonell
38
Redundanz und
Komplementierung

Redundanz hilft



zur Verifikation
Nur bei gewisser Redundanz kann
Komplementierung genutzt werden
Komplementierung ist gut


Hier liegt der eigentliche „Sinn“ der
Informationsintegration.
Informationen mehrerer (sich
komplementierender) Quellen werden zu einem
größeren Ganzen integriert.
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
39
Intensionale Redundanz
ISBN
ISBN
Titel
Autor
3442727316
3442727316 Moby
Dick
3491960827
3491960827 Robinson Daniel Defoe
Crusoe
3462032283
3462032283 Zwölf
3883891606
3883891606 Timbuktu Paul Auster
Herman
Melville
Nick
McDonell
Intensionale Redundanz liegt vor, wenn das Entfernen von Teilen
der Intension die Gesamtintension nicht verändert.
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
40
Intensionale Redundanz
ISBN
ID
Titel
Autor
3442727316
3442727316 Moby
Dick
3491960827
3491960827 Robinson Daniel Defoe
Crusoe
3462032283
3462032283 Zwölf
3883891606
3883891606 Timbuktu Paul Auster
Herman
Melville
Nick
McDonell
Intensionale Redundanz trotz unterschiedlicher Label?
Ja, denn Semantik zählt!
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
41
Intensionale Redundanz
Quelle 1
Quelle 2
ISBN
Autor
ISBN
Autor
3442727316
Herman
Melville
3491960827
Daniel Defoe
3491960827
Daniel Defoe
3442727316
H Melville
3462032283
Nick
McDonell
3462032283
Nick
MacDonell
3883891606
Paul Auster
3883891606
Paul Auster
Intensionale Redundanz auch über mehrere Relationen und Quellen.
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
42
Potential Intensionaler
Redundanz
Quelle 1
Quelle 2
ISBN
Autor
3442727316
ISBN
Autor
Herman
Melville
3491960827
Daniel Defoe
3491960827
Daniel Defoe
3442727316
H Melville
3462032283
Nick
McDonell
3462032283
Nick
MacDonell
3883891606
Paul Auster
3883891606
Paul Auster
Verifikation
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
43
Potential Intensionaler
Redundanz
Quelle 1
Quelle 2
ISBN
Autor
ISBN
Titel
3442727316
Herman
Melville
3491960827
Moby Dick
3491960827
Daniel Defoe
3442727316
Robinson
Crusoe
3462032283
Nick
McDonell
3462032283
Zwölf
3883891606
Paul Auster
3883891606
Timbuktu
Integration
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
44
Potential Intensionaler
Redundanz
Quelle 1 + 2
ISBN
Autor
3442727316
Herman Melville Moby Dick
3491960827
Daniel Defoe
Robinson Crusoe
3462032283
Nick McDonell
Zwölf
3883891606
Paul Auster
Timbuktu
Titel
Integration
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
45
Intensionale
Komplementierung
Quelle 1
Quelle 2
ISBN
Autor
ISBN
Titel
3442727316
Herman
Melville
3442727316
Moby Dick
3491960827
Daniel
Defoe
3491960827
Robinson Crusoe
3462032283
Zwölf
3883891606
Timbuktu
3462032283
3883891606
Nick
McDonell
Paul
Auster
Intensionale Komplementierung liegt vor, wenn von zwei Intensionen
- mindestens eine Differenz ist nicht leer ist,
- und deren Schnittmenge nicht leer ist.
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
46
Potential Intensionaler
Komplementierung
Quelle 1
ISBN
Autor
3442727316
Quelle 2
ISBN
Titel
Herman
Melville
3462032283
Zwölf
3491960827
Daniel
Defoe
3499139278
Leviathan
3462032283
Nick
McDonell
3442727316
Moby Dick
3883891606
Paul
Auster
???
20.10.2004
???
Verdichtung: Mehr
Informationen über
einzelne Objekte
Felix Naumann, VL Informationsintegration, WS 05/06
47
Potential Intensionaler
Komplementierung
Quelle 1
Quelle 2
ISBN
Autor
Autor
Titel
3442727316
Herman
Melville
MacDonell
Zwölf
3491960827
Daniel
Defoe
Auster
Leviathan
H Melville
Moby Dick
3462032283
3883891606
Nick
McDonell
???
Paul
Auster
???
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
Verdichtung
nicht immer
leicht.
48
Extensionale Redundanz
Quelle 1
Quelle 2
ISBN
Autor
ID
Author
3442727316
Herman
Melville
3442727316
Herman
Melville
3491960827
Daniel Defoe
3491960827
Daniel Defoe
Extensionale Redundanz liegt vor, wenn die Menge der von zwei
Quellen gemeinsam repräsentierten Objekte nicht leer ist.
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
49
Extensionale Redundanz
Quelle 1
Quelle 2
ISBN
Autor
ID
Author
3442727316
Herman
Melville
3491960827
Daniel Defoe
3491960827
Daniel Defoe
3883891606
Paul Auster
Extensionale Redundanz nur über Teile der Quellen.
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
50
Probleme Extensionaler
Redundanz
Quelle 1
Quelle 2
ISBN
Autor
ID
Author
3442727316
Herman
Melville
3491960827
Daniel
Düsentrieb
3491960827
Daniel Defoe
3883891606
Paul Auster
Extensionale
Redundanz
DatenKonflikt
Extensionale Redundanz ist nur auf „real-world“ Objekten definiert,
nicht auf den Daten über sie.
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
51
Extensionale
Komplementierung
Quelle 1
Quelle 2
ISBN
Autor
ISBN
Autor
3442727316
Herman
Melville
3462032283
Nick
MacDonell
3491960827
Daniel Defoe
3883891606
Paul Auster
Extensionale Komplementierung liegt vor, wenn die Differenz der
repräsentierten Objekte zweier Quellen nicht leer ist.
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
52
Potential Extensionaler
Komplementierung
Quelle 1 + Quelle 2
ISBN
Autor
3442727316
Herman
Melville
3491960827
Daniel Defoe
3462032283
Nick
MacDonell
3883891606
Paul Auster
20.10.2004
Höhere
Überdeckung
Felix Naumann, VL Informationsintegration, WS 05/06
53
Extensionaler Komplementierung
mit Extensionaler Redundanz
Quelle 1
Quelle 2
ISBN
Autor
ID
Author
3442727316
Herman
Melville
3491960827
Daniel
Düsentrieb
3491960827
Daniel Defoe
3883891606
Paul Auster
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
54
Probleme Extensionaler
Komplementierung und Redundanz
Quelle 1 + Quelle 2
ISBN
Autor
3442727316
Herman
Melville
3491960827
Daniel Defoe
3491960827
Daniel
Düsentrieb
3883891606
Paul Auster
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
Datenkonflikt
55
Der Allgemeine Fall
Quelle 1
Quelle 2
A(V)
a1
a2
B(W) C(X) D(Y)
b1
c1
d1
b2
d2
A(V)
a2
a3
D(W) E(X)
d2
c2
d3
e3
Quelle 1 & 2 A(V)
a1
a2
a3
20.10.2004
F(Z)
f3
Intensionale Redundanz
Extensionale Redundanz
Extensionale
Komplementierung
Intensionale
Komplementierung
B/D(W) C/E(X) D(Y) F(Z)
b1
c1
d1
f(b2,d2) c2
d2
d3
e3
f3
Felix Naumann, VL Informationsintegration, WS 05/06
56
Zusammenfassung Redundanz

Intensionale Redundanz ermöglicht extensionale
Komplementierung



Extensionale Redundanz ermöglicht intensionale
Komplementierung



Zwei Quellen mit gleichem Schema können zu einer
überdeckenderen Quelle integriert werden
Coverage
Zwei Quellen, die über gleiche Dinge sprechen können zu
einer dichteren Quelle integriert werden.
Density
Insgesamt ist das Ziel der Integration eine
vollständigere Quelle (completeness)
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
57
Zusammenfassung:
Data Warehouse
Aufbau eines Data Warehouse
Quelle: Ulf Leser, VL Data Warehouses
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
58
Zusammenfassung:
Föderierte DBMS/IS
20.10.2004
Felix Naumann, VL Informationsintegration, WS 05/06
59
Herunterladen