Informationsintegration Anwendungsszenarien Abgrenzung Extension und Intension Ulf Leser Wissensmanagement in der Bioinformatik Client-Server JAVA (JDBC) JAVA (JDBC) JAVA (JDBC) Native (SQL*Plus, Native (SQL*Plus, OCI) Native (SQL*Plus, OCI) OCI) Andere Datenbank Listener DB1Server Sekundärspeicher DB2Server Sekundärspeicher Konsistenz Parallelisierung Recovery Lastverteilung Authentifizierung Autorisierung .... Ulf Leser: Informationsintegration, Wintersemester 2006/2007 2 Relationales Datenmodell • Repräsentation aller Daten in Tabellen • Tabellenname • Attribute • Datentypen • Vergleich zu UML Datenmodellen? Spalten/Attribute Mitarbeiter P_ID Zeilen/ Rows/ Tupel Vorname Nachname Alter Adresse 1 Peter Müller 32 10101 Berlin 2 Stefanie Meier 34 11202 Berlin 5 Petra Weger 28 80223 München 7 Andreas Zwickel 44 80443 München ... ... ... Ulf Leser: Informationsintegration, Wintersemester 2006/2007 ... ... 3 Uni-Schema voraussetzen Nachfolger Vorgänger MatrNr N Name Semester hören Studenten N SWS M N Titel M lesen prüfen PersNr Name M Vorlesungen N Note 1 Assistenten N VorlNr arbeitenFür Fachgebiet Ulf Leser: Informationsintegration, Wintersemester 2006/2007 Rang 1 Professoren 1 PersNr Raum Name 4 Entwicklung des relationalen Schemas Professoren 1 lesen N Vorlesungen 1:N-Beziehung • Initial-Entwurf Vorlesungen : {VorlNr, Titel, SWS} 1 Professoren : {PersNr, Name, Rang, Raum} lesen: {VorlNr, PersNr} Ulf Leser: Informationsintegration, Wintersemester 2006/2007 5 Die relationale Algebra • • • • • • • • • • • • • • σ Selektion π Projektion x Kreuzprodukt ⋈ Join (Verbund) ρ Umbenennung − Mengendifferenz ÷ Division ∪ Vereinigung ∩ Mengendurchschnitt ⋊ linker Semijoin ⋉ rechter Semijoin ⋈ Left outer join ⋈ Right outer join ⋈ Full outer join Ulf Leser: Informationsintegration, Wintersemester 2006/2007 6 SQL – Grundkonzepte SELECT FROM WHERE • • • • • • M.nachname, A.arbeitet_in mitarbeiter M, arbeitet_in A M.p_id = A.p_id AND A.anteil > 0.1 SQL: Structured Query Language ANSI-SQL, SQL-92, SQL-99, SQL-3 Deklarativer Charakter: Was, nicht wie Vier Grundbefehle: Insert, Update, Delete, Select DDL versus DML Andere Sprachen • Tupel/Domänenkalkül, relationale Algebra, QBE, Datalog Ulf Leser: Informationsintegration, Wintersemester 2006/2007 7 Select • Selektieren von Werten aus mehreren Tabellen SELECT FROM WHERE M.nachname, A.anteil mitarbeiter M, arbeitet_in A M.p_id = A.p_id AND a.anteil > 0.1 SELECT FROM WHERE M.nachname, P.name, A.anteil mitarbeiter M, projekte P, arbeitet_in A M.p_id = A.p_id AND A.proj_id = P.proj_id SELECT FROM WHERE M.nachname, A.anteil mitarbeiter M, arbeitet_in A M.p_id = A.proj_id ? • Ergebnis ist immer eine Tabelle • Ausführung ist Sache des RDBMS - Optimierung Ulf Leser: Informationsintegration, Wintersemester 2006/2007 8 Views • Definition von „benannten“ Queries CREATE VIEW proj_pers AS SELECT P.proj_id, P.name, M.P_id, M.name, M.alter, FROM mitarbeiter M, arbeitet_in A, projekte P WHERE M.p_id=A.p_id AND A.proj_id=P.proj_id • Können viel Schreibarbeit sparen SELECT FROM GROUP BY proj_id, COUNT(*), SUM(alter)/COUNT(*) proj_pers proj_id • Verwendung für tupelgenauen Zugriffsschutz • Views werden i.d.R. syntaktisch expandiert • Erweiterungen • Materialisierte Sichten • Rekursive Views Ulf Leser: Informationsintegration, Wintersemester 2006/2007 9 Anfrageübersetzung und -optimierung • Prinzipieller Ablauf • • • • Parsen der Anfrage (Syntax) Überprüfen der Schemaelemente („Semantik“) Expandieren von Views Berechnung von Ausführungsplänen • Exponentiell viele • Wahl des optimalen Ausführungsplans • Regelbasierter Optimierer • Kostenbasierter Optimierer - Statistik • Ausführung • (Dynamisches Re-Planen?) Ulf Leser: Informationsintegration, Wintersemester 2006/2007 10 Integrität • Semantisch konsistenter Zustand der Daten • Kann nur im Anwendungskontext definiert werden • Überwachung nach Möglichkeit durch RDBMS • • • • Datenmodell selber (Kardinalitäten) Referentielle Integrität (Fremdschlüssel) CHECK Constraints in DDL Trigger • Zeitpunkt der Überwachung? • Nach jeder Operation • Nach jeder Transaktion Ulf Leser: Informationsintegration, Wintersemester 2006/2007 11 Überblick • Zwei Anwendungsszenarien • Data Warehouse • Föderierte Datenbanken • Abgrenzung • Enterprise Application Integration • Objektorientierte Middleware • Potential und Probleme der Integration • Extension versus Intension • Redundanz versus Komplementierung Ulf Leser: Informationsintegration, Wintersemester 2006/2007 12 Data Warehouse • Ein Unternehmen verkauft viele Bücher über das Internet • Datenbank mit Bücherverkaufsinformationen • Daten werden oft aktualisiert • Jede Bestellung einzeln • Katalog Updates täglich • Management benötigt Entscheidungshilfen • Decision support • Komplexe Anfragen Ulf Leser: Informationsintegration, Wintersemester 2006/2007 13 Bücher im Internet bestellen Backup Durchsatz Loadbalancing Portfolio Umsatz Werbung Daten bank Ulf Leser: Informationsintegration, Wintersemester 2006/2007 14 Die Datenbank dazu Bookgroup id name Year id year Month Id Month year_id Order Order_id Book_id amount single_price Orders Day Id day month_id Id Day_id Customer_id Total_amt Ulf Leser: Informationsintegration, Wintersemester 2006/2007 Book id Book_group_id Customer id name 15 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 Orders Day Id day month_id Id Day_id Customer_id Total_amt Ulf Leser: Informationsintegration, Wintersemester 2006/2007 Book id Book_group_id Customer id name 16 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 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 Ulf Leser: Informationsintegration, Wintersemester 2006/2007 Book id Book_group_id Customer id name 17 In Wahrheit ... DE FR IT AT Ulf Leser: Informationsintegration, Wintersemester 2006/2007 UK 18 Einfach: 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 FROM WHERE ... Y.year, PG.name, count(B.id) EN.year Y, EN.month M, EN.day D, DE.order O, ... M.year = Y.id and SELECT FROM GROUP BY ORDER BY year, name, count(B.id) christmas year, name year Ulf Leser: Informationsintegration, Wintersemester 2006/2007 19 Probleme • Count über Union über verteilte Datenbanken? • Integrationsproblem • Quellen entwickeln Eigenleben • Schema divergieren, Bezeichner werden geändert • Verschiedene Sprachen, Währungen, gesetzliche Bestimmungen • Performanzproblem • Potentiell sehr große Zwischenergebnisse • Müssen alle übers Netz geschickt werden • Ressourcenproblem • Zentrale Anfragen kommen zu lokal unpassenden Zeiten • Zeitunterschied • Erfordern viele Systemressourcen • Kerngeschäft (Transaktionen) werden behindert Ulf Leser: Informationsintegration, Wintersemester 2006/2007 20 Lösung 1: Zentralisieren • Zentrale Datenbank - Divergenz in Daten kann verhindert werden Kein Netzwerkverkehr für strategische Anfragen Ressourcenhungrige Anfragen können geplant werden • Neue Probleme – Zweigstellen schreiben übers Netz – Schlechter Durchsatz – Lange Antwortzeiten im Kerngeschäft Ulf Leser: Informationsintegration, Wintersemester 2006/2007 21 Lösung 2: Aufbau eines Data Warehouse • Doppelte Datenhaltung - Ausgewählte Daten liegen redundant vor Asynchrone (geplante) Aktualisierung Bereinigung von Divergenzen beim Import • Operative und strategische Anfragen behindert sich nicht Ulf Leser: Informationsintegration, Wintersemester 2006/2007 22 Todo • Aktualisierungsprozess • Regelmäßige Exporte aktueller Daten aus den Quellen • Transformation, Umrechnung, Reformatierung, … der Daten • Laden in das Data Warehouse • Sicherstellung • Aktualität der Warehousedaten • Konsistenz • Gelöschte oder geänderte Datensätze; stornierte Bestellungen • Qualität • Einheitliche Währungen, Bezeichner, Datumsformate, … • Vollständigkeit • Informationsintegration Ulf Leser: Informationsintegration, Wintersemester 2006/2007 23 Überblick • Zwei Anwendungsszenarien • Data Warehouse • Föderierte Datenbanken • Abgrenzung • Enterprise Application Integration • Objektorientierte Middleware • Potential und Probleme der Integration • Extension versus Intension • Redundanz versus Komplementierung Ulf Leser: Informationsintegration, Wintersemester 2006/2007 24 Frage eines Biologen Finde alle menschlichen Sequenzen, die zu mindestens 60% identisch sind mit „channel“ Proteinen, die im Gewebe des zentralen Nervensystems der Maus exprimiert werden 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. Ulf Leser: Informationsintegration, Wintersemester 2006/2007 25 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 Ulf Leser: Informationsintegration, Wintersemester 2006/2007 26 Zusammenhang Finde alle menschlichen Sequenzen, die zu mindestens 60% identisch sind mit „channel“ Proteinen, die im Gewebe des zentralen Nervensystems der Maus exprimiert werden • MGD speichert Aktivität und Sequenz von Mausgenen • Was sind „channel“ Proteine? Wo werden die exprimiert? • Swiss-Prot speichert die Proteinsequenz eines Gens • Proteinsequenz zu exprimierten Genen • BLAST findet ähnliche Proteinsequenzen • Suche nach ähnlichen Sequenzen • Genbank enthält DNA-Sequenz von Proteinen • Spezies zu einem Protein? DNA-Sequenz zum Protein • Keine existierende Datenbank enthält alles gemeinsam Ulf Leser: Informationsintegration, Wintersemester 2006/2007 27 Herkömmlicher Ansatz: Browsing 1. Suche im zentralen Nervensystem aktive „channel“ Gene und deren Sequenzen in der MGD mittels HTML Formular Ulf Leser: Informationsintegration, Wintersemester 2006/2007 28 Herkömmlicher Ansatz: Browsing • MGD Resultat • 14 Gene aus 17 Experimenten Ulf Leser: Informationsintegration, Wintersemester 2006/2007 29 Herkömmlicher Ansatz: Browsing • In MGD Details zu jedem der 14 Gene ansehen • Durchschnittlich fünf SwissProt Links pro Gen Ulf Leser: Informationsintegration, Wintersemester 2006/2007 30 Herkömmlicher Ansatz: Browsing • Betrachtung jedes SwissProt Eintrags • Durch Klick BLAST anwerfen Ulf Leser: Informationsintegration, Wintersemester 2006/2007 31 Herkömmlicher Ansatz: Browsing • Betrachtung jedes BLAST Resultats • nicht-menschliche Treffer eliminieren, • 60% Identität sicherstellen Ulf Leser: Informationsintegration, Wintersemester 2006/2007 32 Herkömmlicher Ansatz: Browsing • Für jede verbleibende Sequenz • Komplette Gensequenz bei GenBank holen • Wir haben oft geklickt • • • • • 1+ 14 + 14*5 + 14*5 + 14*5*X (Suche) (Gendetails) (SwissProt) (Blast) (Genbank) Ulf Leser: Informationsintegration, Wintersemester 2006/2007 33 Idee föderierter Informationssysteme • Bildung eines globalen Schemas • Beinhaltet die „Semantik“ aller integrierten Datenquellen • Wird nur als Schema gespeichert • Daten bleiben in den Quellen • Generierung von Wrappern für jede Datenquelle • Mapping von Anfragen gegen das globales Schema in Anfragen an die Quellen • Beachtung der Anfragefähigkeiten der Quellen • Anfragebearbeitung • Anfrage an das globale Schema in Anfragen an Wrapper zerlegen • Wrapper ansprechen • Ergebnisse integrieren und präsentieren Ulf Leser: Informationsintegration, Wintersemester 2006/2007 34 Föderierter DBMS Ansatz Finde alle menschlichen Sequenzen, die zu mindestens 60% identisch sind mit „channel“ Proteinen, die im Gewebe des zentralen Nervensystems der Maus exprimiert werden • „Einfache“ SQL-Anfrage: SELECT FROM WHERE AND AND AND AND 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 Ulf Leser: Informationsintegration, Wintersemester 2006/2007 35 DiscoveryLink Architektur Ulf Leser: Informationsintegration, Wintersemester 2006/2007 36 Eigenschaften föderierter IS • Daten bleiben in den Quellen • Keine redundante Datenhaltung wie bei DWH • Informationsquellen sind autonom • Und wissen oft nicht von ihrer Integration • Anfragen werden deklarativ an das globale Schema gestellt • Aufteilung auf Quellen ist für den Benutzer transparent • Anfrage wird verteilt ausgeführt • Ausgleich mangelnder Fähigkeiten der Quellen notwendig • Anfrageoptimierung Ulf Leser: Informationsintegration, Wintersemester 2006/2007 37 Weitere Anwendungsgebiete • Immer, wenn • Datenquellen zu groß (Web) • Datenquellen nicht „downloadbar“ (Sicherheit, Copyright, Ruhm, …) • Inhalt der Datenquellen sich rasend schnell ändert (Ticker, …) • Beispiele • Meta-Suchmaschinen • Onlineanfragen • Kriminellensuche, Status der Ausweisbestellung, Kontenaufklärung, Maut-Kosten, … • Grid • Verteiltes Arbeiten („groupware“) • Peer Data Management und P2P Ulf Leser: Informationsintegration, Wintersemester 2006/2007 38 Vergleich • DWH – Materialisierung • • • • • Schnelle Anfragen Hoher Speicherbedarf Möglichkeit zur „informierten“ lokalen Änderung Gefahr veralteter Daten Gefahr der Divergenz zwischen Quelle und DWH • Föderation – Virtuelle Anfragen • • • • • Langsamere und nur bestimmte Anfragen Kaum Speicherbedarf auf der Integrationsebene Nur on-the-fly Korrekturen Stets aktuellste Daten Keine Divergenz Ulf Leser: Informationsintegration, Wintersemester 2006/2007 39 Integration im Web • Seit es das Web gibt … • • • • • • • • • Viel mehr potentielle Informationsquellen Zugriff über Formulare statt Anfragen Quellen kommen und gehen ständig Integration oft ohne Wissen der Quelle Download kompletter Quelle oft nicht möglich Teilweise sehr volatile Quellen (Newsfeeds, Blogs) Ergebnisse sind HTML, nicht CSV Zugriff eventuell verboten, aber möglich … Ulf Leser: Informationsintegration, Wintersemester 2006/2007 40 Überblick • Zwei Anwendungsszenarien • Data Warehouse • Föderierte Datenbanken • Abgrenzung • Enterprise Application Integration • Objektorientierte Middleware • Potential und Probleme der Integration • Extension versus Intension • Redundanz versus Komplementierung Ulf Leser: Informationsintegration, Wintersemester 2006/2007 41 Enterprise Application Integration • „Integration ist ein Produkt, kein Projekt“ • Viele kommerzielle Produkte und Anbieter • Grundprinzip • Geschäftsvorfälle erzeugen Nachrichten • Diese werden an einen Message Broker gesendet • Der erkennt den Inhalt und SCM wählt interessierte Quellen aus • Transformation der ERP Nachrichten Message Broker • Transaktionale Sicherheit („exactly once“) E-Commerce Ulf Leser: Informationsintegration, Wintersemester 2006/2007 CRM E-Procurement 42 Verteilungsprinzip • Publish-Subscribe • Sender ordnen Nachrichten einem Thema (Kanal) zu • Empfänger abbonieren Themen • Oder: Content-based Routing • Thema wird automatisch erkannt Publisher Subscriber Kanal Publisher Subscriber Kanal Publisher Subscriber Kanal Publisher Ulf Leser: Informationsintegration, Wintersemester 2006/2007 Subscriber 43 Unterschiede • Enterprise Application Integration • • • • • Nachrichtenbasiert Informationsverteilung Keine Anfragen Aktion beim Eintreten eines Ereignisses „Business Process Integration“ • Informationsintegration • Anfragebasiert • Annahme eines (praktisch) statischen Datenbestands • Aktion • Erst bei Anfrage (virtuelle Integration) • In regelmäßigen Zyklen (materialisierte Integration) • „Informationsintegration“, Datenbankintegration Ulf Leser: Informationsintegration, Wintersemester 2006/2007 44 OO Middleware • „Verteilung von Objekte wird vollkommen transparent“ • Viele Ansätze: DCOM, CORBA, OpenView, EJB, … • Weiterentwicklung von Remote Procedure Calls • Grundidee • Objekte haben weltweit eindeutige ID und Interfaces • Clients programmieren gegen das Interface • Broker finden aufgerufene Objekt zur Laufzeit anhand ID • Marshalling, RPC, unmarshalling • Ziel: Plattformunabhängigkeit • Sprache, Betriebssystem, Kodierung, Protokoll Ulf Leser: Informationsintegration, Wintersemester 2006/2007 45 Beispiel: CORBA Ulf Leser: Informationsintegration, Wintersemester 2006/2007 46 Unterschiede • Middleware • • • • • Werkzeug für die Programmerstellung Basiert auf Funktionsaufrufen Versendung programmiersprachlicher Objekte Transiente Objekte Fokus auf Methodenaufrufen • Informationsintegration • Ist eine Aufgabe (Projekt), kein Werkzeug • Basiert auf Anfragen • Arbeiten mit strukturierter Daten • Nach Datenmodellen, nicht nach Klassenhierarchien • Persistente Objekte • Fokus auf Objektmanipulation und -suche Ulf Leser: Informationsintegration, Wintersemester 2006/2007 47 Synergie • Middleware ist eine wunderbare Plattform zur Entwicklung von integrierten Systemen • Lösung der Verteilungsproblematik • Auflösung von low-level Formatunterschieden (ASCII versus UniCode, Littel Endian versus Big Endian, Datumsformate, …) • Auflösung von Unterschieden im Betriebssystem, Programmiersprache, … • Middleware leistet nicht • Umgang mit strukturierten Daten / Schemata • Übersetzung von Anfragen • Semantische Integration • EAI wird i.d.R. auf Middleware implementiert Ulf Leser: Informationsintegration, Wintersemester 2006/2007 48 Überblick • Zwei Anwendungsszenarien • Data Warehouse • Föderierte Datenbanken • Abgrenzung • Enterprise Application Integration • Objektorientierte Middleware • Potential und Probleme der Integration • Extension versus Intension • Redundanz versus Komplementierung Ulf Leser: Informationsintegration, Wintersemester 2006/2007 49 Intension & Extension • „Definition“: Intension • Die Intension eines Informationssystems ist die Menge der Schemainformationen und deren Semantik • Sprich: Schemata, Metadaten, Modelle, Klassen • Definition: Extension • Die Extension eines Informationssystems ist die Menge aller in ihm gespeicherten Daten • Sprich: Instanzen, Tupel, Daten, Objekte, Entitäten • Die Intension gibt der Extension Struktur • „Verstanden“ wird in der Regel nur die Intension • Intension ist klein, Extension ist groß • Extension kann zum Verständnis der Intension benutzt werden Ulf Leser: Informationsintegration, Wintersemester 2006/2007 50 Intension und Extension einer Tabelle • Intension • Struktur einer Menge von Entitäten • Semantik der Struktureinheiten • Extension • „Zustand“ der Tabelle • Menge von Entitäten Buch ISBN Titel Autor 3442727316 Moby Dick Herman Melville 3491960827 Robinson Crusoe Daniel Defoe 3462032283 Zwölf Nick McDonell 3883891606 Timbuktu Paul Auster … … … Ulf Leser: Informationsintegration, Wintersemester 2006/2007 51 Redundanz und Komplementierung • Redundanz • Segen: Ohne minimale Redundanz ist Integration sinnlos • Was gehört zu was? • Fluch: Hohe Redundanz bringt meist Probleme • Widersprüche, Doppelungen, … • Auch gut zur Überprüfung von Fakten • Komplementierung • Hier liegt der eigentliche „Sinn“ der Informationsintegration • Informationen mehrerer Quellen werden zu einem größeren Ganzen integriert • Setzt Redundanz (gleiche Objekte) voraus Ulf Leser: Informationsintegration, Wintersemester 2006/2007 52 Intensionale Redundanz ISBN ISBN Titel Autor 3442727316 3442727316 Moby Dick Herman Melville 3491960827 3491960827 Robinson Crusoe Daniel Defoe 3462032283 3462032283 Zwölf Nick McDonell 3883891606 3883891606 Timbuktu Paul Auster Intensionale Redundanz liegt vor, wenn das Entfernen von Teilen der Intension den semantischen Gehalt des Ganzen nicht verändert (siehe Normalformen) Ulf Leser: Informationsintegration, Wintersemester 2006/2007 53 Intensionale Redundanz ISBN ID Titel Autor 3442727316 3442727316 Moby Dick Herman Melville 3491960827 3491960827 Robinson Crusoe Daniel Defoe 3462032283 3462032283 Zwölf Nick McDonell 3883891606 3883891606 Timbuktu Paul Auster Die Bedeutung der Dinge zählt, nicht ihr Name Ulf Leser: Informationsintegration, Wintersemester 2006/2007 54 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 Typischer Fall bei der Integration: Intensionale Redundanz über mehrere Quellen Ulf Leser: Informationsintegration, Wintersemester 2006/2007 55 Vorteil: Verifikation Quelle 2 Quelle 1 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 Ulf Leser: Informationsintegration, Wintersemester 2006/2007 56 Extension versus Intension 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 ? ? ? • Komplementierung hängt von der Extension ab • Intensionale Redundanz notwendig, aber nicht hinreichend • Erfordert Zuordnung gleicher Objekte Ulf Leser: Informationsintegration, Wintersemester 2006/2007 57 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 • Voraussetzung dafür ist intensionale Redundanz • Gleiche Objekte müssen aus der gleichen Klasse sein • Voraussetzung ist das Erkennen gleicher Objekte Ulf Leser: Informationsintegration, Wintersemester 2006/2007 58 Probleme Quelle 1 Quelle 2 ISBN Autor ID Author 3442727316 Herman Melville 3491960827 Daniel Düsentrieb 3491960827 Daniel Defoe 3883891606 Paul Auster Extensionale Redundanz Ulf Leser: Informationsintegration, Wintersemester 2006/2007 DatenKonflikt 59 Extensionale Komplementierung Quelle 1 ISBN Autor 3442727316 Herman Melville 3491960827 Daniel Defoe Quelle 2 ISBN Autor 3462032283 Nick MacDonell 3883891606 Paul Auster Extensionale Komplementierung ist möglich, wenn die Differenz der Mengen der repräsentierten Objekte zweier Quellen nicht leer ist Ulf Leser: Informationsintegration, Wintersemester 2006/2007 60 Alles auf einmal Quelle 1 Quelle 2 Intensionale Redundanz A a1 a2 B b1 b2 C c1 - D d1 d2 Extensionale Redundanz A a2 a3 B d2 d3 C c2 e3 F f3 Intensionale Komplementierung Quelle 1 & 2 A a1 a2 a3 B C b1 c1 f(b2,d2) c2 d3 e3 Ulf Leser: Informationsintegration, Wintersemester 2006/2007 D d1 d2 - Extensionale Komplementierung F f3 61 Zusammenfassung • Intensionale Redundanz ermöglicht extensionale Komplementierung • Zwei Quellen mit teilweise „gleichem“ Schema können zu einer überdeckenderen Datenbasis integriert werden • Coverage • Extensionale Redundanz ermöglicht intensionale Komplementierung • Zwei Quellen, die über gleiche Objekte sprechen, können zu einer dichteren Datenbasis integriert werden • Density • Insgesamt ist das Ziel der Integration eine vollständigere Datenbasis (completeness) Ulf Leser: Informationsintegration, Wintersemester 2006/2007 62