 
                                VL Informationsintegration Verteilung, Autonomie und Heterogenität 25.10.2004 Felix Naumann Wiederholung: Data Warehouse Aufbau eines Data Warehouse Quelle: Ulf Leser, VL Data Warehouses 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 2 Wiederholung: Föderierte DBMS 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 3 Wiederholung: 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 Zwei Quellen, die über gleiche Dinge sprechen können zu einer dichteren Quelle integriert werden. Insgesamt ist das Ziel der Integration eine vollständigere Quelle. 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 4 Wiederholung: Redundanz 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 25.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 5 Überblick      Verteilung Autonomie Syntaktische Heterogenität Strukturelle Heterogenität Später: Semantische Heterogenität 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 6 Klassifikation von Informationssystemen [ÖV99]  Drei orthogonale Dimensionen    Verteilung Autonomie Heterogenität 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 7 Klassifikation verteilter DBMS [ÖV91] Verteilte, homogene DBS Verteilung Verteilte, föderierte DBS Verteilte, heterogene DBS Verteilte, heterogene föderierte DBS Autonomie Logisch integrierte und homogene DBS Heterogenität 25.10.2004 Heterogene, integrierte DBS Heterogene, föderierte DBS Felix Naumann, VL Informationsintegration, WS 05/06 Homogene, föderierte DBS 8 Klassifikation verteilter DBMS nach [ÖV99] Peer-to-peer Verteilung/Distribution z.B. A2,D1,H0 Client/Server Autonomie Heterogenität 25.10.2004 Enge Integration Semiautonom Felix Naumann, VL Informationsintegration, WS 05/06 Isolation 9 Zusammenhang mit Föderierten DBMS   Verteilung führt zu Autonomie,  Intra-Organisation: Historisch  Inter-Organisation: Internet & WWW und Autonomie führt zu Heterogenität.  Verantwortung liegt bei lokalen Administratoren       Systempflege Nutzbarkeit und Nützlichkeit Erweiterungen am Informationssystem Design ... Diskussion  Historischer Entwicklung,  aber orthogonale Kriterien! 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 10 Verteilung (Distribution)  Ein verteiltes Informationssystem ist eine Sammlung mehrerer, logisch verknüpfter Informationssysteme, die über ein gemeinsames Netzwerk verteilt sind. [ÖV91] 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 11 Physikalische Verteilung   Motiviert durch Hardwareanforderungen (Hardwarebeschränkungen) Server stehen an unterschiedlichen Orten     Gleicher Raum, anderer Raum Anderes Gebäude Andere Stadt, anderes Land Shared Nothing  Server haben keine gemeinsamen, abhängigen Hardwarekapazitäten    Memory Disk CPU  Mit Ausnahme des Netzwerks  Im Gegensatz zu shared-disk und shared-memory 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 12 Logische Verteilung  Motiviert durch Anwendungsanforderungen     Redundanz    Zuverlässigkeit  Bei Ausfall eines Servers Verfügbarkeit  Bei Ausfall eines Netzwerkteils Effizienz Replikation Caching Partitionierung   Vertikal Horizontal 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 13 Verteilung – Vor- und Nachteile   Vorteile aus Sicht der Quellen und des IIS  Autonomie (gleich genauer)  Performance: Kapazität dort, wo sie gebraucht wird  Verfügbarkeit: Bei Ausfall eines Standorts  Erweiterbarkeit  Teilbarkeit (Verantwortung bei anderen Organisationseinheiten) Nachteile aus Sicht des IIS  Komplexität (Verwaltung, Optimierung)  Kosten  Sicherheit  Autonomie 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 14 Verteilung – Techniken  HTTP, CORBA, ... nicht hier.   Anwendungsentwicklung ohne Spezifikation der physikalischen Präsenz der Komponenten Annahmen an Transparenz  Datenunabhängigkeit (jedes DBMS)     auch Speicherorttransparenz Netzwerktransparenz Replikationstransparenz Fragmentationstransparenz  auch Partitionierungstransparenz 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 15 Überblick      Verteilung Autonomie Syntaktische Heterogenität Strukturelle Heterogenität Später: Semantische Heterogenität 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 16 Autonomie (Autonomy)    Der Grad zu dem verschiedene DBMS unabhängig operieren können. Bezieht sich auf Kontrolle, nicht auf Daten. Klassen nach [ÖV99]    Design-Autonomie Kommunikations-Autonomie Ausführungs-Autonomie 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 17 Design-Autonomie   Auch: Entwurfsautonomie Freiheit des lokalen DBMS bezüglich  Datenmodell   Schema     Abdeckung der Domäne (universe of discourse, miniworld) Grad der Normalisierung Benennung Transaktionsmanagement   Relational, hierarchisch, XML Sperrprotokolle Freiheit dies jederzeit zu ändern.  Besonders problematisch! 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 18 Design-Autonomie – Beispiel  Schema und Datenmodell 1    (Fast) relational Flach Schema und Datenmodell 2   XML hierarchisch 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 19 Kommunikations-Autonomie  DBMS frei bezüglich  Wahl mit welchen Systemen kommuniziert wird  Wahl wann mit anderen Systemen kommuniziert wird    Wahl was (welcher Teil der Information) kommuniziert wird Wahl wie mit anderen Systemen kommuniziert wird   Jederzeit Eintritt/Austritt aus integriertem System Anfragesprache Wahl welcher Teil der Anfragemöglichkeiten zur Verfügung gestellt werden     Prädikate Sortierung Write ... 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 20 Kommunikations-Autonomie – Beispiel  Extrem 1: Voller SQL Zugang        z.B. via JDBC Transaktionen Optimierung Lesend (und Schreibend?) Schemaveränderungen? Antwort als Ergebnisrelation Extrem 2: HTML Formular    Nur ein (oder mehr) Suchfelder Antwort als HTML Text Nur Teile der Daten (public area) 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 21 Ausführungs-Autonomie  DBMS frei bezüglich      Wahl wann Anfragen ausgeführt werden Wahl wie Anfragen ausgeführt werden Wahl der Scheduling-Strategien Wahl Optimierungs-Strategien Wahl ob globale Transaktionen unterstützt werden 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 22 Ausführungs-Autonomie – Beispiel  Optimierung und Scheduling     Behandlung externer vs. lokaler Anfragen Golden customers Garantierte Antwortzeiten Transaktionen  Dirty-read egal? 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 23 Autonomie  Heterogenität   Verteilung als „Ursache“ für Autonomie Autonomie als Ursache für Heterogenität:     Autonome Systeme Gestaltungsfreiheit Unterschiedliche Entscheidungen Heterogenität 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 24 Überblick      Verteilung Autonomie Syntaktische Heterogenität Strukturelle Heterogenität Später: Semantische Heterogenität 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 25 Heterogenität (Heterogeneity)  Heterogenität herrscht, wenn sich zwei miteinander verbundene Informationssysteme syntaktisch, strukturell oder inhaltliche unterscheiden.  Syntaktische Heterogenität    Auch: „Technische Heterogenität“ Strukturelle Heterogenität Semantische Heterogenität Heterogenitäten zu überbrücken ist die Kernaufgabe der Informationsintegration. 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 26 Heterogenitätsklassen  Auch andere Klassifikationen möglich, z.B. [BKLW99]     Syntaktische Heterogenität Datenmodell Heterogenität Logische Heterogenität Oder nach [SPD92]      Semantische Konflikte Beschreibungskonflikte Heterogenitätskonflikte Strukturelle Konflikte Datenkonflikte 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 27 Syntaktische Heterogenität    Hardware-Heterogenität Software-Heterogenität Schnittstellen-Heterogenität 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 28 Hardware Heterogenität    Bandbreite Hauptspeicher CPU   Art Geschwindigkeit Nicht hier 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 29 Software Heterogenität    Betriebssystem Dateisystem Protokolle    HTTP, ODBC, Java API, CORBA, etc. Zustandsbehaftet vs. zustandsfrei Sicherheit   Security level Log-on Prozedur 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 30 Software Heterogenität – Beispiel String sqlQuery = „SELECT Name, Strasse FROM Hersteller WHERE PLZ = 69115“; ... Connection jdbcCon = DriverManager.getConnection(dbURL, ...); Statement stmt = jdbcCon.createStatement(); ResultSet table = stmt.executeQuery(sqlQuery); ... String webQuery = „plz=69115“; ... URL url = new URL(„http://www.system2.de/cgi-bin /search.cgi“ + „?“ + webQuery); URLConnection urlCon = new url.openConnection(); InputStreamReader reader = new InputStreamReader( urlCon.openStream()); ... 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 Nicht hier Quelle: VL: Föderierte Datenbanksysteme Peter Tomczyk, FZI & Uni Karlsruhe 31 Schnittstellen Heterogenität  Schnittstellen von Informationssystemen sind im wesentlichen deren Anfragensprache:      HTML Formular, „Google“-Sprache (+, - , ...), SQL, XQuery, etc. Jetzt hier! 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 32 Schnittstellen Heterogenität       Negation vs. keine Negation  Oft zu teuer Gleichheit / Ungleichheit  „=“ oder auch „>,<, , “ Konjunktion (UND)  oder auch Disjunktion (ODER) Prädikate nur mit Konstanten (author = „Melville“)  Oder auch mit anderen Variablen (ResidenceCountry = Nationality) Gebundene und freie Variablen [RSU95,LC00,YLGU99]  später Andere Einschränkungen  Joins über maximal 3 Relationen  z.B. Prädikate nur über eine Auswahl von Werten 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 33 Schnittstellen Heterogenität Beispiel Suche Konjunktion/Disjunktion gleich/ungleich 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 34 Schnittstellen Heterogenität – Beispiel Gebundene Variablen Prädikat nur mit Auswahl von Werten 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 35 Schnittstellen Heterogenität   In einzelnen Systemen kein Problem Probleme für integrierte Systeme 1. 2. 3. Globale Anfragesprache ist mächtiger als lokale Anfragesprache  Anfragen eventuell nicht ausführbar  Oder globales System muss kompensieren Lokale Anfragesprache ist mächtiger als globale Anfragesprache  Verpasste Chance, lokale (effiziente) Ausführung auszunutzen Gebundene und freie Variablen sind inkompatibel  Anfragen eventuell nicht ausführbar 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 36 Mächtige globale Anfragesprache SQL SELECT WHERE AND * FROM Books Author = „Defoe“ PubYear = 1979 HTML Form 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 37 Mächtige globale Anfragesprache SELECT * FROM Books WHERE Author = „Defoe“ AND PubYear = 1979 Daniel Defoe, Robinson Crusoe, 1979 PubYear = 1979 Daniel Defoe, Robinson Crusoe, 1986 Daniel Defoe, Robinson Crusoe, 1979 Daniel Defoe, Moll Flanders, 1933 Defoe 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 38 Mächtige globale Anfragesprache SELECT * FROM Books WHERE Author = „Defoe“ AND PubYear > 1979 Daniel Defoe, Robinson Crusoe, 1979 PubYear = 1979 Daniel Defoe, Robinson Crusoe, 1986 Daniel Defoe, Robinson Crusoe, 1979 Daniel Defoe, Moll Flanders, 1933 Defoe Year: 25.10.2004 1979 ? Felix Naumann, VL Informationsintegration, WS 05/06 39 Mächtige lokale Anfragesprache HTML Form SELECT WHERE SQL 25.10.2004 * FROM Books Author = „Defoe“ Verpasste Chancen. Felix Naumann, VL Informationsintegration, WS 05/06 40 Gebundene & Freie Variablen  Gebundene Variablen müssen bei einer Anfrage gebunden werden.   z.B.: „Search“-Feld bei Google Freie Variablen müssen nicht gebunden werden.  z.B. „Autor“-Feld bei Amazon.de, falls Titel gebunden ist. 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 41 Gebundene & Freie Variablen – Beispiel & Ausblick SONGS Song CD CDs CD Künstler Preis Friends Life Love Lucy 15 Friends Love Story Snoopy 14 Künstler CD Künstler Preis Story Lucy 13 Love Snoopy 10 Life Charlie 8 Bastelaufgabe 1: Wie teuer ist die billigste CD mit einem Song namens “Friends”? 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 Quelle: [LC00] 42 Gebundene & Freie Variablen – Beispiel & Ausblick SONGS Song CD CDs CD Künstler Preis Friends Life Love Lucy 15 Friends Love Story Snoopy 14 Künstler CD Unterstrichen = gebundene Variable Story Lucy 13 Love Snoopy 10 Life Charlie 8 Bastelaufgabe 2: Welches ist die billigste CD mit einem Song namens “Friends”, die Sie anfragen können? 25.10.2004 Künstler Preis Felix Naumann, VL Informationsintegration, WS 05/06 Mehr nächste Woche! 43 Syntaktische Heterogenität Zusammenfassung  Hardware Heterogenität   Software Heterogenität   Bandbreite, CPU, ... Protokolle, Sicherheit, ... Schnittstellen Heterogenität   Mächtigkeit der Anfragesprachen Gebundene & freie Variablen 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 44 Überblick      Verteilung Autonomie Syntaktische Heterogenität Strukturelle Heterogenität Später: Semantische Heterogenität 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 45 Strukturelle Heterogenität  Datenmodell-Heterogenität    Unterschiedliche Semantik Unterschiedliche Struktur Schematische Heterogenität    Integritätsbedingungen, Schlüssel, Fremdschlüssel, etc. Schema (Attribut vs. Relation etc.) Struktur (Gruppierung in Tabellen) 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 46 Datenmodell-Heterogenität  Datenmodelle     Relationales Modell XML Modell OO Modell Hierarchisches Modell Adresse(PersonId, Strasse, Hausnr., PLZ, Stadt) Adresse Strasse Hausnr. PLZ Stadt n 1 Person Name Alter Person( Id, Name, Alter) 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 47 Schematische Heterogenität  Sprachregelung hier: Schemas statt Schemata  Alt-Griechisch wird ignoriert... 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 48 Schematische Heterogenität  Struktur      Modellierung  Relation vs. Attribut  Attribut vs. Wert  Relation vs. Wert Benennung  Relationen  Attribute  Jeweils Homonyme und Synonyme Normalisiert vs. Denormalisiert Geschachtelt vs. Fremdschlüssel Diese Probleme sogar bei gleichem Datenmodell! 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 49 Schematische Heterogenität Männer( Id, Vorname, Nachname) Frauen( Id, Vorname, Nachname) Relation vs. Wert Person( Id, Vorname, Nachname,männlich, weiblich) Person( Id, Vorname, Nachname, Geschlecht) 25.10.2004 Relation vs. Attribut Attribut vs. Wert Felix Naumann, VL Informationsintegration, WS 05/06 50 Schematische Heterogenität  Tabellen-Tabellen Konflikte  Namenskonflikte    Strukturkonflikte    Semantisch gleiche Tabellen mit verschiedenen Namen (Synonym) Verschiedene Tabellen mit gleichem Namen (Homonym) fehlende Attribute fehlende, aber ableitbare Attribute IC-Konflikte (Integrity-Constraint = Integritätsbedingungen) 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 51 Schematische Heterogenität – Beispiel mitarbeiter p_id vorname nachname funktion 1 Peter Müller Sachbearb. 5 Petra Weger Sekr. ... ... ... ... Homonym mitarbeiter (leitend) p_id vorname 2 Stefanie Meier 2 Petra Weger 2 Andreas Zwickel ... 25.10.2004 ... Fehlendes (ableitbares) Attribut name ... IC Konflikt (Eindeutigkeit) Felix Naumann, VL Informationsintegration, WS 05/06 52 Schematische Heterogenität  Attribut-Attribut Konflikte  Namenskonflikte     Verschiedene Namen für gleiche Attribute (Synonyme) Gleiche Namen für verschiedene Attribute (Homonyme) Default-Wert-Konflikte IC-Konflikte   Datentypkonflikte Bedingungskonflikte 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 53 Schematische Heterogenität – Beispiel mitarbeiter p_id Vorname VARCHAR(35) nachname 1 Wolfgang Meyer 33 5 Klaus Schmidt NULL ... ... alter ... ... Synonym mitarbeiter p_id Vorname VARCHAR(20) name alter 1 Peter Müller 0 5 Petra Weger 17 ... IC: alter > 18 ... ... ... Default Werte Datentypkonflikt 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 54 Schematische Heterogenität Beispiel  Normalisiert vs. Denormalisiert  1:1 Assoziationen zwischen Werten wird unterschiedlich dargestellt   Durch Vorkommen im gleichen Tupel Durch Schlüssel-Fremdschlüssel Beziehung •ARTICLE •artPK •title •AUTHOR •artFK •name 25.10.2004 •PUBLICATION •pubID •title •author Felix Naumann, VL Informationsintegration, WS 05/06 55 Schematische Heterogenität Beispiel  Geschachtelt vs. Flach  1:n Assoziationen werden unterschiedlich dargestellt   Als geschachtelte Elemente Als Schlüssel-Fremdschlüssel Beziehung •ARTICLE •artPK •title •pages •AUTHOR •name 25.10.2004 •PUBLICATION •pubID •title •author Felix Naumann, VL Informationsintegration, WS 05/06 ID? 56 Schematische Heterogenität Lösungen  Problem  Einheitlich auf beide Schemas zugreifen    Beide Schemas in eine gemeinsames neues Schema integrieren    Auf Schemaebene: Schemaintegration Auf Datenebene: Materialisierte Integration Für die materialisierte Integration    Auf Schemaebene: Schema Mapping und Schema-Sprachen Auf Datenebene: Virtuelle Integration Schemaintegration ETL Für die virtuelle Integration  Schema-Sprachen   Z.B. SchemaSQL, MSQL, CPL Schema Mapping  Z.B. Clio, RONDO, u.a. 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 57 Schematische Heterogenität – Lösungen (Ausblick)  SchemaSQL [LSS96]      Erweiterung von SQL Daten und Metadaten werden gleich behandelt Umstrukturierungen innerhalb der Anfrage Dynamische Sicht-Definition Horizontale Aggregation SELECT FROM WHERE AND AND 25.10.2004 RelA uniA->RelA, uniA::RelA A, uniB::grundgehalt B RelA = B.institut High-order Join A.Kategorie = „Student“ A.grundgehalt > B.Student Felix Naumann, VL Informationsintegration, WS 05/06 58 Schematische Heterogenität – Lösungen (Ausblick)  Schema Mapping •ARTICLE •artPK •title •pages •AUTHOR •artFK •name •PUBLICATION •pubID •title •date •author SELECT FROM WHERE 25.10.2004 artPK AS pubID title AS title null AS date name AS author ARTICLE, AUTHOR ARTICLE.artPK = AUTHOR.artFK Felix Naumann, VL Informationsintegration, WS 05/06 59 Zusammenfassung   Verteilung Autonomie      „Verursacht durch Autonomie“ Syntaktische Heterogenität     Physikalisch Design-Autonomie Kommunikations-Autonomie Ausführungs-Autonomie Heterogenität   Hardware Heterogenität Software Heterogenität Schnittstellen Heterogenität Strukturelle Heterogenität   Datenmodell-Heterogenität Schematische Heterogenität     Schema    25.10.2004 Hardwarekauf Protokolle Anfragesprachen geschachtelt, flach, objektorientiert Attribute, Wert; Relation SchemaSQL und Schema Mapping Felix Naumann, VL Informationsintegration, WS 05/06 60 Literatur   Wichtigste Literatur für heute  [BKLW99] Busse, Kutsche, Leser, Weber, Federated Information Systems: Concepts, Terminology and Architectures. Forschungsbericht 99-9 des FB Informatik der TU Berlin, 1999. Online: http://www.informatik.huberlin.de/~leser/publications/tr_terminology.ps  [ÖV99] Principles of Distributed Database Systems M. Tamer Özsu, Patrick Valduriez, Prentice Hall, (1991/)1999. Kapitel 1 und 4 Weitere Literatur  [Con97] Föderierte Datenbanksysteme. Konzepte der Datenintegration Stefan Conrad, Springer Verlag, 1997 25.10.2004 Felix Naumann, VL Informationsintegration, WS 05/06 61