Informationsintegration Integrierte Informationssysteme

Werbung
Datenbanksysteme I
Informationsintegration
5.2.2007
Felix Naumann
Integrierte Informationssysteme
2
Anfrage
Integriertes Informationssystem
Oracle,
DB2…
Dateisystem
Web
Service
Anwendung
HTML
Form
Integriertes
Info.-system
Felix Naumann | Datenbanksysteme I | WS 06/07
1
Synonyme
3
■ Content Merging
■ Objekt Fusion
■ Datenintegration
■ Data Amalgamation
■ Data Cleansing
■ Intelligent Information Integration: I³
■ Data Consolidation
Felix Naumann | Datenbanksysteme I | WS 06/07
Was ist Informationsintegration?
4
■ „Informationsintegration ist die Zusammenführung von Daten und
Inhalt verschiedener Quellen zu einer einheitlichen
Informationsmenge.“
■ „Informationsintegration ist die korrekte, vollständige und
effiziente Zusammenführung von Daten und Inhalt verschiedener,
heterogener Quellen zu einer einheitlichen und strukturierten
Informationsmenge zur effektiven Interpretation durch Nutzer und
Anwendungen.“
Felix Naumann | Datenbanksysteme I | WS 06/07
2
Integration = Abstraktion
5
■ Logisches DB-Design abstrahiert von physischem DB-Design
□ Datenunabhängigkeit
□ Anfragen: Prozedural vs. deklarativ
■ Informationsintegration abstrahiert von logischen DB Design
□ Quellenunabhängigkeit (Speicherort)
□ Datenmodell- und Syntaxunabhängigkeit
□ Unabhängigkeit von semantischen Unterschieden (hoffentlich!)
Felix Naumann | Datenbanksysteme I | WS 06/07
Anwendungsgebiet 1: Business
[Halevy04]
6
Felix Naumann | Datenbanksysteme I | WS 06/07
3
Anwendungsgebiet 2: Wissenschaft
[Halevy04]
7
Felix Naumann | Datenbanksysteme I | WS 06/07
Anwendungsgebiet 3: Das Web
[Halevy04]
8
Felix Naumann | Datenbanksysteme I | WS 06/07
4
Informationsintegration: Ein altes
Problem
9
■ Seit 50 Jahren auf der Forschungsagenda
■ Frühe Systeme in den 70ern
■ Integration per Hand natürlich noch früher
■ Neue Probleme
□ Viele, viele Quellen
□ Heterogenität
□ Neue Arten von Daten (XML, GIS, OO,...)
□ Neue Arten von Anfragen (Search, UDFs,...)
□ Neue Arten von Ergebnissen (Ranking, Visualisierung, ...)
□ Neue Arten von Nutzern (Laien, Manager, Admins, ...)
■ Alon Halevy: „It‘s plain hard!“ [Halevy04]
Felix Naumann | Datenbanksysteme I | WS 06/07
Warum ist es so schwer? [Halevy04]
10
■ System-bedingte Gründe
□ Verschiedene Plattformen
□ Anfragebearbeitung über mehrere Systeme
■ Soziale Gründe
□ Finden relevanter Daten in Unternehmen
□ Beschaffen relevanter Daten in Unternehmen
□ Menschen zur Zusammenarbeit überreden
■ Logik-bedingte Gründe
□ Schema- und Datenheterogenität
□ Dies ist unabhängig von der jeweiligen
Integrationsarchitektur.
Felix Naumann | Datenbanksysteme I | WS 06/07
5
Informationsintegration
11
<pub>
<Titel> Federated Database
Systems </Titel>
<Autoren>
<Autor> Amit Sheth </Autor>
<Autor> James Larson </Autor>
</Autoren>
</pub>
Web
Service
A
<publication>
<title> Federated Database
Systems for Managing
Distributed, Heterogeneous,
and Autonomous
Databases </title>
<auth> Scheth & Larson </auth>
<year> 1990 </year>
</publication>
Web
Service
B
Integration
Identifikation
Fusion
Optimierung
Visualisierung
Felix Naumann | Datenbanksysteme I | WS 06/07
Beispiel – Web Service A
12
Web Service A
■ Standort: Trier
■ Operation:
□ getPubByAuthor(firstName, lastName)
□ getPubByTitle(title)
■ Output-Struktur:
Felix Naumann | Datenbanksysteme I | WS 06/07
6
Beispiel – Web Service A Output
13
Felix Naumann | Datenbanksysteme I | WS 06/07
Beispiel – Web Service B
14
Web Service B
■ Standort: Humboldt-Universität
■ Operation: myPubs(Autor, Jahr)
■ Struktur:
Felix Naumann | Datenbanksysteme I | WS 06/07
7
Beispiel – Web Service B Output
15
Felix Naumann | Datenbanksysteme I | WS 06/07
Integration von Web Services A & B
16
1. Nutzerschnittstelle
2. Schema Integration / Schema Mapping
3. Anfrage-Umwandlung
4. Zeit abschätzen (Optimierung)
5. Requests an beide Services abschicken
6. Antworten einholen
7. Objektidentifikation
8. Integrationsschritte
1. Konfliktlösung etc.
2. Entscheidung kleinster gemeinsamer Nenner?
3. Durchführung (deklarativ, prozedural)
9. Anzeige beim Nutzer
Felix Naumann | Datenbanksysteme I | WS 06/07
8
Nutzerschnittstellen
17
Felix Naumann | Datenbanksysteme I | WS 06/07
Informationsintegration
18
Web
Service
A
Web
Service
B
<pub>
<Titel> Federated Database
Systems </Titel>
<Autoren>
<Autor> Amit Sheth </Autor>
<Autor> James Larson </Autor>
</Autoren>
</pub>
<publication>
<title> Federated Database
Systems for Managing
Distributed, Heterogeneous,
and Autonomous
Databases </title>
<auth> Scheth & Larson </auth>
<year> 1990 </year>
</publication>
<pub>
<Titel> </Titel>
<Autoren>
<Autor> </Autor>
<Autor> </Autor>
</Autoren>
<year> </year>
</pub>
Schemaintegration
Schema Mapping
Modellierung durch eine Menge von Anfragen (Views)
Felix Naumann | Datenbanksysteme I | WS 06/07
9
Anfrage Umwandlung
19
Integration der Anfrage durch Mediator:
■ Integrierte Schnittstelle
■ Z.B.
Concat(First Name, Last Name)
= Autor
Felix Naumann | Datenbanksysteme I | WS 06/07
Anfrageoptimierung
20
■ Was ist besser: Eine schnelle Antwort oder vollständige Antwort?
□ Web Service A in Trier (remote)
□ Web Service B in Adlershof (local)
□ Web Service A hat mehr Attribute und mehr Objekte.
□ Web Service B hat weniger Attribute.
■ Außerdem:
□ Eine Suche nach „year“ kann nur durch Web Service B
beantwortet werden.
□ Transformationen können teuer sein.
Felix Naumann | Datenbanksysteme I | WS 06/07
10
Zwei Resultate
21
Web Service A
Web Service B
Felix Naumann | Datenbanksysteme I | WS 06/07
Schema Matching
22
?
Felix Naumann | Datenbanksysteme I | WS 06/07
11
Objektidentifikation
23
Edit-distance: 5
Edit-distance: 6
Zusammen?
Felix Naumann | Datenbanksysteme I | WS 06/07
Stand der Dinge
24
■ Wir haben die heterogenen Informationen.
■ Wir wissen, was wir integrieren wollen.
■ Aber noch nicht wie:
□ Integriertes Schema
□ Integrierte Daten
Felix Naumann | Datenbanksysteme I | WS 06/07
12
Angestrebtes Integrationsergebnis
25
+
=
Integriertes Schema:
Felix Naumann | Datenbanksysteme I | WS 06/07
Angestrebtes Integrationsergebnis
26
Integrierte Daten:
Felix Naumann | Datenbanksysteme I | WS 06/07
13
Integrierte Daten – was ist passiert?
27
Konfliktlösung
NeuStrukturierung
Vorher:
„Naumann“
Neu
Felix Naumann | Datenbanksysteme I | WS 06/07
Implementierung
28
■ Auf Folien ist alles klar, aber wie implementieren?
■ Deklarativ?
□ SQL, XQuery, XSLT
□ Oft nicht alles möglich
□ Langsam
■ Prozedural?
□ Java, C++
□ Schlecht wartbar
□ Schnell
Felix Naumann | Datenbanksysteme I | WS 06/07
14
Anzeige beim Nutzer
29
Visualisierung der
■ Datenherkunft
■ Qualität
■ veränderten Daten
■ Operationen
Vorher:
„Naumann“
Konfliktlösung
Felix Naumann | Datenbanksysteme I | WS 06/07
Integrierte Informationssysteme
30
Anfrage
Design time
Architekturen
Anfragesprache
Run time
Integriertes Informationssystem
Datenfusion / ETL
Anfrageplanung
Schemamanagement
Optimierung
Wrapper
Anfrageausführung
Oracle,
DB2…
Dateisystem
Web
Service
Anwendung
HTML
Form
Integriertes
Info.-system
Felix Naumann | Datenbanksysteme I | WS 06/07
15
Herunterladen