Informationsintegration I Einführung Felix Naumann Integrierte Informationssysteme Anfrage Integriertes Informationssystem Oracle, DB2 Anwendung Dateisystem Web Service HTML Form Integriertes Info.-system 2
Einige Untertitel Content Merging Objekt Fusion Datenintegration Data Amalgamation Data Cleansing Intelligent Information Integration: I³ Data Consolidation 3 Was ist Informationsintegration? 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. 4
Wo herrscht Informationsintegration? Im weiteren Sinne Business-Integration Application-Integration Prozess-Integration (Workflow-Integration) Im engeren Sinne Datenbanken und Informationssysteme Verteilt Autonom Heterogen 5 Forschungsgruppe Informationsintegration Juniorprofessor: Felix Naumann Mitarbeiter Jens Bleiholder (bleiho@informatik.hu-berlin.de) Melanie Weis (ab 1.11.) Forschungsthemen Objektidentifikation Informationsintegration Optimierung Visualisierung 6
Voraussetzungen DBS I Oder Crashkurs Informationssysteme Siehe Folien im WWW MySQL noch 1 Woche offen, danach auf Anfrage Oder äquivalentes Wissen, d.h. Relationales Modell & XML Modell SQL (& XQuery) DBMS Grundlagen der Anfrageverarbeitung & -optimierung 7 Integrierte Informationssysteme Anfrage Integriertes Informationssystem Oracle, DB2 Anwendung Dateisystem Web Service HTML Form Integriertes Info.-system 8
Beispiele für Informationssysteme Dateisystem Informationseinheit: Flat file Anfrage: File search, RegEx Struktur: Flach oder hierarchisch Beispiele NTFS NIS FTP Zugriff Einsatzgebiete WWW (HTML Dateien) Desktop-Anwendungen (Textverarbeitung, etc.) 9 Beispiele für Informationssysteme Datei Informationseinheit: Zeile /Token Anfrage: Parser Struktur: Flach Beispiele Komma-delimited files Annotated files Einsatzgebiete SwissProt 10
11 Beispiele für Informationssysteme Markup Datei Informationseinheit: Tagged text Anfrage: Parser, Anfragesprache Struktur: Flach, hierarchisch oder graph-basiert Beispiele XML HTML Einsatzgebiete Web Services Messages Interoperationale Anwendungen 12
Beispiele für Informationssysteme Datenbank Anfrage: Komplexe Sprache, z.b. SQL Informationseinheit: Tupel / Attribut, Objekt Struktur: Relational, OO, Hierarchisch Beispiele Relationale DBMS OO DBMS Auch: XML DBMS Einsatzgebiete Data Warehouses OLTP Banken/Versicherungen 13 Beispiele für Informationssysteme HTML Formular Informationseinheit: HTML Seite, Text Anfrage: Suchworte, Formular (inkl. Radiobutton, dropdown-list, etc.) Struktur: wie Markup Datei: Flach, hierarchisch oder graph-basiert I.d.R. flach Beispiele Einfache Suchformulare Komplexe Anfrageformulare Einsatzgebiete Suchmaschinen Reisedienste Kataloge 14
15 Beispiele für Informationssysteme Web Service Informationseinheit: XML Dokument Anfrage XML Dokument Struktur: Wie XML: Flach, hierarchisch, graphbasiert Beispiele Einfach: Temperaturdienst, etc Komplex: Reservierungen (Schachtelung und Verknüpfung von Web Services) Einsatzgebiete Intra-organisatorische Workflows E-Marketplaces Datenaustausch 16
17 Beispiele für Informationssysteme Anwendung Informationseinheit: Java Objekt, Text Anfrage: via Anwendungsschnittstelle oder GUI Struktur: Objekt (Interface) Display (GUI) Beispiele Java, C++, etc Legacy Informationssysteme Einsatzgebiete Komplexe Analysen (Data Mining, Statistik) 18
Beispiele für Informationssysteme Integriertes Informationssystem Verhält sich in Anfrage, Struktur und Informationseinheit je nach Design: DBMS HTML Formular Web Service... Beispiele Data Warehouses Föderierte Datenbanken Portale Einsatzgebiete: Meta Search Life Sciences Int. Unternehmen Intranets 19 Integrierte Informationssysteme Anfrage Integriertes Informationssystem Oracle, DB2 Anwendung Dateisystem Web Service HTML Form Integriertes Info.-system 20
Integrierte Suchmaschinen Anfrage Meta-Suchmaschine Intranet Index Thesaurus 21 Beispiel der Informationsintegration Web Service A Web Service B 1sec. 5sec. <pub> <Titel> MAC: Merging Autonomous Content </Titel> <Autoren> <Autor> Felix Naumann </Autor> <Autor> Jens Bleiholder </Autor> </Autoren> </pub> <publication> <title> Merging Autonomous Content </title> <auth> Felix Naumann </auth> <year> 2002 </year> </publication> 22 Identifikation Integration Optimierung Visualisierung
Beispiel Web Service A Web Service A Standort: Trier Operation: getpubbyauthor(firstname, lastname) getpubbytitle(title) Output-Struktur: 23 Beispiel Web Service A Output 24
Beispiel Web Service B Web Service B Standort: Humboldt-Universität Operation: mypubs(autor, Jahr) Struktur: 25 Beispiel Web Service B Output 26
Integration von Web Services A & B 1. Nutzerschnittstelle 2. Anfrage-Umwandlung 3. Zeit abschätzen (Optimierung) 4. Requests an beide Services abschicken 5. Antworten einholen 6. Objektidentifikation 7. Integrationsschritte 1. Konfliktlösung etc. 2. Entscheidung kleinster gemeinsamer Nenner? 3. Durchführung (deklarativ, prozedural) 8. Anzeige beim Nutzer 27 Nutzerschnittstellen 28
Anfrage Umwandlung Integration der Anfrage durch Mediator: Integrierte Schnittstelle Z.B. Concat(First Name, Last Name) = Autor 29 Anfrageoptimierung 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. 30
Zwei Resultate Web Service A Web Service B 31 Schema Matching? 32
Objektidentifikation 33 Objektidentifikation Edit-distance: 5 Edit-distance: 6 Zusammen? 34
Stand der Dinge Wir haben die heterogenen Informationen. Wir wissen, was wir integrieren wollen. Aber noch nicht wie: Integriertes Schema Integrierte Daten 35 Angestrebtes Integrationsergebnis + Integriertes Schema: = 36
Angestrebtes Integrationsergebnis Integrierte Daten: 37 Integrierte Daten was ist passiert? 38 Konfliktlösung Neu- Strukturierung Vorher: Naumann Neu
Implementierung Auf Folien ist alles klar, aber wie implementieren? Deklarativ? SQL, XQuery, XSLT Oft nicht alles möglich Langsam Prozedural? Java, C++ Schlecht wartbar Schnell 39 Anzeige beim Nutzer Konfliktlösung Visualisierung der Datenherkunft Qualität veränderten Daten Operationen Vorher: Naumann 40
Literatur Leider kein geeignetes Lehrbuch Föderierte Datenbanksysteme. Konzepte der Datenintegration Stefan Conrad ISBN: 3540631763 Principles of Distributed Database Systems M. Tamer Özsu, Patrick Valduriez ISBN: 0136597076 Mediators in the Architecture of Future Information Systems"; Gio Wiederhold IEEE Computer, March 1992, pages 38-49. 41