Informationsintegration Heterogenität Transparenz Ulf Leser Wissensmanagement in der Bioinformatik Klassifikationsdimensionen Verteilung Autonomie Heterogenität Ulf Leser: Informationsintegration, Wintersemester 2006/2007 2 Verteilung z Ein verteiltes Informationssystem ist eine Sammlung mehrerer, logisch verknüpfter Informationssysteme, die über ein gemeinsames Netzwerk erreichbar sind z Zwei Aspekte z Physische Verteilung z Logische Verteilung Ulf Leser: Informationsintegration, Wintersemester 2006/2007 3 Physische Verteilung • Server stehen an unterschiedlichen Orten • Anderes Land, Gebäude, Raum, Schrank, Rack, … • Server sind physikalisch unabhängig (hoffentlich) • Shared Nothing • Server haben keine gemeinsamen Speicher, Disk, CPU, … • Aber: Storage Area Networks • Motiviert durch • • • • • Höhere Sicherheit (desaster protection) Lokale Nähe von Servern zu Clients Historisch begründete Orte Physikalische Einschränkungen (Hitze, Gewicht, Energie) Monetäre Gründe (Grid) Ulf Leser: Informationsintegration, Wintersemester 2006/2007 4 Logische Verteilung • Daten stehen an verschiedenen logischen „Orten“ • • • • Können, müssen aber nicht physikalisch unterschiedlich sein Verschiedene Attribute/Tabellen/Schemata Kann auch in einem Schema vorliegen (Tabellen buecher1, buecher2) Zusätzlich: Intensionale Überlappung • Immer mit Redundanz verbunden • • • Kontrollierte Redundanz – „jemand“ weiß, warum buecher1 oder buecher2 Unkontrollierte Redundanz – keiner weiß, … Gefahr von (extensionalen) Duplikaten • Ursachen • • • • Schlechte Integration – Redundanz wird nicht entfernt Historisch gewachsen Autonomie von Datenquellen Fehlende Kenntnisse (Unentdeckte Verteilung) Ulf Leser: Informationsintegration, Wintersemester 2006/2007 5 Take Home Message • Definition von logischer Verteilung ist anwendungsabhängig, die von physischer Verteilung nicht • Daten können logisch verteilt sein, obwohl sie in einer Datenbank liegen • • Schema verdoppeln und Daten verteilen Zwei Filmquellen unverändert in ein Schema kopieren • Daten können physisch verteilt sein, obwohl sie logisch unverteilt sind • • • Replikation und Caching • Klare Master – Slave Beziehung Performanzsteigerung durch Partitionierung • Auftrennung nach festen Kriterien Verteile Datenbanken: Strenge Kontrolle des „wo“ von Daten Ulf Leser: Informationsintegration, Wintersemester 2006/2007 6 Autonomie z Der Grad, zu dem verschiedene DBMS unabhängig voneinander betrieben werden z Bezieht sich auf Kontrolle, Weiterentwicklung, Administration z Meint nicht „Unabhängigkeit“ im Sinne von Stromversorgung, Verschaltung, Vernetzung … z Klassen nach [ÖV99] z Design-Autonomie z Kommunikations-Autonomie z Ausführungs-Autonomie Ulf Leser: Informationsintegration, Wintersemester 2006/2007 7 Autonomie → Heterogenität z Verteilung als „Ursache“ für Autonomie z Autonomie als „Ursache“ für Heterogenität ⇒ Gestaltungsfreiheit ⇒ Unterschiedliche Entscheidungen ⇒ Heterogenität z Besonders schlimm: Softwareentwickler z Das Recht, alles dauernd zu ändern z „Not invented here“ Syndrom z Wiederverwendung als ewiger Traum z Standards grenzen Autonomie ein z Im Web ist alles mega-autonom z Aber: Marktplätze etc. Ulf Leser: Informationsintegration, Wintersemester 2006/2007 8 Inhalt dieser Vorlesung • Heterogenität • • • • • Überblick Technische Heterogenität Syntaktische Heterogenität Datenmodellheterogenität Strukturelle Heterogenität • Schematische Heterogenität • Semantische Heterogenität • Datenkonflikte • Transparenz Ulf Leser: Informationsintegration, Wintersemester 2006/2007 9 Heterogenität • Zwei Informationssysteme sind heterogen, wenn sie sich „irgendwie“ unterscheiden • Verschiedene Ausprägungen von „irgendwie“ => verschiedene Arten von Heterogenität • Informationsintegration = Überbrückung von Heterogenität • Erstellung eines homogenen Systems • Erweckung des Anscheins eines homogenen Systems Ulf Leser: Informationsintegration, Wintersemester 2006/2007 10 Übersicht • Technische Heterogenität • • Technische Realisierung des Datenzugriffs Technische Unterschiede in der Darstellung • Syntaktische Unterschiede • • Unterschiede in der Darstellung Gleiche Dinge verschieden repräsentieren • Datenmodellheterogenität • Strukturelle Heterogenität • • Strukturelle Unterschiede in der Darstellung Gleiche Dinge verschieden modellieren • Semantische Heterogenität • Unterschiede in der Bedeutung von Informationen Ulf Leser: Informationsintegration, Wintersemester 2006/2007 11 Erinnerung Anfrage Integriertes Informationssystem Oracle, DB2… Dateisystem Web Service Anwendung HTML Form Integriertes Info.-system Heterogenität zwischen Datenquellen Ulf Leser: Informationsintegration, Wintersemester 2006/2007 12 Erinnerung Anfrage Heterogenität zwischen globaler Schicht und Datenquellen Integriertes Informationssystem Quelle Ulf Leser: Informationsintegration, Wintersemester 2006/2007 13 Probleme gelöst • Technische Heterogenität • Das IntInfoSys kann eine Anfrage absetzen und kriegt „was“ zurück • Syntaktische Unterschiede • In dem „was“ sind gleiche Dinge auch gleich dargestellt • Datenmodellheterogenität • Die Quelle liefert das „was“ im Datenmodell des IntInfoSys • Strukturelle Heterogenität • Die Quelle liefert das „was“ im Schema des IntInfoSys • Semantische Heterogenität • Die Quelle meint mit Begriffen dasselbe wie das IntInfoSys • Gilt auf Schema- und Datenebene Ulf Leser: Informationsintegration, Wintersemester 2006/2007 14 Heterogenitätsklassen • Auch andere Klassifikationen möglich [BKLW99] • • • Syntaktische Heterogenität (= technische Heterogenität) Datenmodellheterogenität (= Datenmodellheterogenität) Logische Heterogenität (= semantische & strukturelle Heterogenität) • … oder nach [Con97] • • • • Semantische Konflikte (= semantische Heterogenität) Beschreibungskonflikte (= strukturelle Heterogenität bei geringfügig unterschiedlicher Intension) Heterogenitätskonflikte (= Datenmodellheterogenität) Strukturelle Konflikte (= strukturelle Heterogenität bei gleicher Intension, schematische Konflikte) • Aber • • • Man kann (und muss) das nicht immer klar trennen In der Realität treten immer schwer entwirrbare Kombinationen auf Ziel ist es, die Bandbreite der möglichen Probleme kennen zu lernen Ulf Leser: Informationsintegration, Wintersemester 2006/2007 15 Technische Heterogenität Ulf Leser: Informationsintegration, Wintersemester 2006/2007 16 Hardware Heterogenität • Bandbreite • Hauptspeicher • CPU • Art • Geschwindigkeit Nicht hier Ulf Leser: Informationsintegration, Wintersemester 2006/2007 17 Einschränkung des Zugriffs macht Sinn • Komplexität • • • • Negation: teuer Gleichheit / Ungleichheit (Negation) „=“ oder auch „>,<, ≥, ≤“ Konjunktion (UND) oder auch Disjunktion (ODER - teuer) • Benutzbarkeit • Benutzer wollen einfache Schnittstellen (Volltextsuche) • Technische Hindernisse • • Gebundene und freie Variablen Maximale Länge des Kommandozeilenpuffers • Sicherheit • • Nur bestimmte Funktionen erlauben Teure Queries vermeiden, SQL-Injektion, … Ulf Leser: Informationsintegration, Wintersemester 2006/2007 18 Beispiel Suche Konjunktion/Disjunktion gleich/ungleich Ulf Leser: Informationsintegration, Wintersemester 2006/2007 19 Beispiel Gebundene Variablen, vorgegebene Disjunktion Feste Auswahl von Werten, vorgegebene Konjunktion Ulf Leser: Informationsintegration, Wintersemester 2006/2007 20 Typische Probleme • Globale Anfragesprache ist mächtiger als lokale Anfragesprache • • Anfragen nicht ausführbar Globales System muss kompensieren • Lokale Anfragesprache ist mächtiger als globale Anfragesprache • Verpasste Chance, lokale (effiziente) Ausführung auszunutzen • Einschränkungen bzgl. Variablenbindung sind inkompatibel • Anfragen eventuell nicht ausführbar • Übersetzung von Anfragesprachen notwendig • • SQL – XQuery, SQL – HTTP, Web-Service – SQL, etc. Oft nicht einfach möglich, da unterschiedliche Konzepte Ulf Leser: Informationsintegration, Wintersemester 2006/2007 21 Mächtige globale Anfragesprache SQL SELECT FROM WHERE AND * Books Author = „Defoe“ PubYear = 1979 HTML Form Ulf Leser: Informationsintegration, Wintersemester 2006/2007 22 Kompensation möglich SELECT FROM WHERE AND * Books Author = „Defoe“ 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 Ulf Leser: Informationsintegration, Wintersemester 2006/2007 23 Kompensation nicht möglich SQL SELECT FROM WHERE * Books Price < 10 Euro HTML Form Ulf Leser: Informationsintegration, Wintersemester 2006/2007 24 Syntaktische Heterogenität • Unterschiedliche Darstellung desselben Sachverhalts • • • • • • • Dezimalpunkt oder –komma Euro oder € Comma-separated oder tab-separated HTML oder ASCII oder Unicode Notenskala 1-6 oder „sehr gut“, „gut“, … Binärcodierung oder Zeichen Datumsformate (12. September 2006, 12.9.2006, 9/12/2006, …) • Überwindung in der Regel nicht problematisch • Umrechnung, Übersetzungstabellen, … Ulf Leser: Informationsintegration, Wintersemester 2006/2007 25 Inhalt dieser Vorlesung • Heterogenität • • • • • Überblick Technische Heterogenität Syntaktische Heterogenität Datenmodellheterogenität Strukturelle Heterogenität • Schematische Heterogenität • Semantische Heterogenität • Datenkonflikte • Transparenz Ulf Leser: Informationsintegration, Wintersemester 2006/2007 26 Datenmodellheterogenität • Typische Datenmodelle • • • • • • CSV Relational (Tupel) XML (XML) Non-Standard (ASN.1) Domänenspezifisch (ACeDB, EXPRESS, OPEN-GIS, …) Proprietär (UniProt, PDB, …) • Unterschied: Zum Austausch oder zur Speicherung • XML als Speicherformat? • Erfordert Konvertierung • • • Spezielle Semantik geht unter Umständen verloren XML-Schachtelung im relationalen Modell? Später mehr (Modellmanagement) Ulf Leser: Informationsintegration, Wintersemester 2006/2007 27 Beispiel Ulf Leser: Informationsintegration, Wintersemester 2006/2007 28 Strukturelle Heterogenität • Allgemein • Gleiche Dinge in unterschiedlichen Schemata ausdrücken • Andere „Aufteilung“ von Attributen auf Tabellen • Setzt intensionale Überlappung voraus („gleiche Dinge“) • Kann meist durch Anfragesprachen überwunden werden • Sichten / Views • Meistens mit semantischen Heterogenität verbunden • Ausnahme: 1:1 Beziehungen • Was bedeutet „Äquivalenz“ zweier Schemata? • Spezialfall: Schematische Heterogenität • Verwendung anderer Elemente eines Datenmodells • Kann meist nicht durch Anfragesprachen überwunden werden Ulf Leser: Informationsintegration, Wintersemester 2006/2007 29 Beispiel • Verursacht durch verschiedene Abbildungen eines objektorientierten Modells • Gleichwertig? • Nur durch zusätzliche IC • 1: Typ darf nur bestimmte Werte annehmen • 1: Umsatz darf nicht immer gefüllt sein (abh. von typ) • 2: Gleiche film_id darf nicht in verschiedenen Tabellen vorkommen • … Ulf Leser: Informationsintegration, Wintersemester 2006/2007 30 Denormalisierung • Geschachtelt vs. flach • 1:n Assoziationen werden unterschiedlich dargestellt • Als geschachtelte Elemente • Als Schlüssel-Fremdschlüssel Beziehung • Redundanz wird in Kauf genommen (höhere Performanz) •ARTICLE •artPK •title •pages •AUTHOR •name •PUBLICATION •pubID •title •author Ulf Leser: Informationsintegration, Wintersemester 2006/2007 ID? 31 Kardinalitäten • Schema sind ähnlich, aber semantisch nicht gleichwertig • m:n Beziehung zwischen Film und Sprache • 1:1 Beziehung zwischen Film und Sprache • Wenn eine Anwendung aber nur 1:1 Beziehungen enthält? Ulf Leser: Informationsintegration, Wintersemester 2006/2007 32 Spezialfall: Schematische Heterogenität maenner( Id, vorname, nachname) frauen( Id, vorname, nachname) Relation vs. Wert Relation vs. Attribut person( Id, vorname, nachname, maennlich?, weiblich?) person( Id, vorname, nachname, geschlecht) Ulf Leser: Informationsintegration, Wintersemester 2006/2007 Attribut vs. Wert 33 Schematische Konflikte sind gemein Ulf Leser: Informationsintegration, Wintersemester 2006/2007 34 Integrierte Sichten • Verlangt viele Verrenkungen • Sicht muss angepasst werden, wenn neue Filmtypen vorliegen • • Datenänderungen erzeugen Schemaänderungen Das will man unbedingt vermeiden Ulf Leser: Informationsintegration, Wintersemester 2006/2007 35 Lösung (Ausblick) • SchemaSQL [LSS96] • Erweiterung von SQL • Daten und Metadaten werden gleich behandelt Iteriert über alle Tupel von q1.Film CREATE SELECT FROM UNION SELECT FROM WHERE VIEW q1_q1 id, title, regisseur, typ q1.film A.id, A.title, A.regisseur, A q1::Film F, q2-> A A = F.Typ Iteriert über alle Relationennamen von q2 Join über Attributwerte in q1 und Tabellennamen in q2 Ulf Leser: Informationsintegration, Wintersemester 2006/2007 36 Exotische Probleme? • Oh nein • Schema zur Speicherung von Filmen des Verleihers „XYZ“ • • • • • ACTORS als VARCHAR ORIGINAL – bedeutet was? TITLE, YEAR, … an drei Stellen ID-Räume DEUTSCH und ORIGINAL getrennt? … Ulf Leser: Informationsintegration, Wintersemester 2006/2007 37 Exotische Probleme? • Schema von eachmovie (HP) • Eine einzige Tabelle für Filme • Zusätzliche Informationen über Benutzer des WebSystems • Wenig Infos über Filme, aber Links zu weiteren Quellen • GENRE sind boolsche Attribute • … Ulf Leser: Informationsintegration, Wintersemester 2006/2007 38 Exotische Probleme? • Schema von movielens.umn.edu • Praktisch keine Informationen über Filme • Eigene Tabelle für GENRE • FILM-GENRE ist m:n • Mehr Informationen über Benutzer • Links sind verschwunden • … Ulf Leser: Informationsintegration, Wintersemester 2006/2007 39 Schema des Filmdienst FILM-PERSONEN ist m:n FILM-GENRE ist m:n Personen können mehrere Namen haben (Aliase, Künstlernamen) Ulf Leser: Informationsintegration, Wintersemester 2006/2007 Eigene Tabelle für Filmtitel und 40 Filmtiteltypen (?) Schema der IMDB ACTOR und ACTRESS in verschiedenen Tabellen Beteiligte in eigenen Tabellen (FD hat Tabelle FUNKTIONEN) Ulf Leser: Informationsintegration, Wintersemester 2006/2007 41 Inhalt dieser Vorlesung • Heterogenität • • • • • Überblick Technische Heterogenität Syntaktische Heterogenität Datenmodellheterogenität Strukturelle Heterogenität • Schematische Heterogenität • Semantische Heterogenität • Datenkonflikte • Transparenz Ulf Leser: Informationsintegration, Wintersemester 2006/2007 42 Semantik • Fremdwörterduden zu “Semantik” • „Teilgebiet der Linguistik, das sich mit den Bedeutungen sprachlicher Zeichen und Zeichenfolgen befasst“ • „Bedeutung, Inhalt eines Wortes, Satzes oder Textes“ • Programmiersprachen • Syntax: EBNF, Grammatiken • Semantik: Wirkungen der Ausführung; operationale Semantik, Fixpunktsemantik, … • Sprache • Syntaktisch falsch: „Ich esse Butterbrot ein“ • Semantisch falsch: „Ich esse einen Schrank“ Ulf Leser: Informationsintegration, Wintersemester 2006/2007 43 Semantik • „Semantische Heterogenität ist ein überladener Begriff ohne klare Definition. Er bezeichnet die Unterschiede in Bedeutung, Interpretation und Art der Nutzung.“ [ÖV91] • Semantik von • Schemaelementen (meistens) • Daten (siehe Ontologien) Ulf Leser: Informationsintegration, Wintersemester 2006/2007 44 Semantik von was? Name Extension Realweltliche Objekte Intension repräsentiert Ulf Leser: Informationsintegration, Wintersemester 2006/2007 Konzept 45 Probleme • Homonyme: Gleiche Namen, verschiedene Konzepte • Synonyme: Verschiedene Namen, gleiche Konzepte • Beziehungen zwischen Konzeptextensionen • • • • A=B (Äquivalenz): „semantische“ (echte) Synonyme • Kreditinstitut, Bank (?) • Gibt es echte Synonyme? A⊆B (Inklusion): B ist Hyperonym zu A; B ist Hyponym zu A • Tochter ⊆ Kind A ∩ B ≠ ∅ ∧ A≠B (Überlappung): Schwierigster Fall • Küche-Kochnische; Haus-Gebäude; Regisseur-Schauspieler A ∩ B = ∅ (Disjunktion): nicht verwandte Begriffe (häufigster Fall) • Dose-Lohnsteuerjahresausgleich Ulf Leser: Informationsintegration, Wintersemester 2006/2007 46 Synonyme • Verschiedene Worte für dasselbe Konzept • Immer im Kontext der Anwendung DB1: Angestellter( Id, Vorname, Name,männlich,weiblich) DB2: Person( Id, Vorname, Nachname, Geschlecht) Ulf Leser: Informationsintegration, Wintersemester 2006/2007 47 Homonyme • Gleiche Worte verschiedener Bedeutung • Treten oft bei Überschreitung von Domänengrenzen auf Sekr., Sachbearbeiter, Bereichsleiter, etc. DB1: Angestellter( Id, Vorname, Name, m, w, Funktion) DB2: Protein( Id, Sequenz, organismus, Funktion, …) Transport, Katalyse, Signal, … Ulf Leser: Informationsintegration, Wintersemester 2006/2007 48 -nym Wörter • Synonym • Homonym • Antonym • • Verschiedene Wörter, gegenteilige Semantik Hell-dunkel, billig-teuer, … • Auto-Antonym • Gleiche Wörter, gegenteilige Semantik • Transparenz, left, clip, … • Heteronym • • Gleiche Schreibung, verschiedene Aussprache, verschiedene Semantik „It's the referee's job to record the new world record.“ • Pseudonym • http://www.fun-with-words.com/nym_words.html Ulf Leser: Informationsintegration, Wintersemester 2006/2007 49 Semantik: Woher nehmen? • Schemaelemente sind erst mal nur Namen • Was bestimmt die Semantik eines Namens? • Für Attributnamen: • • • • • • • • • • Datentyp Constraints (Schlüssel, FK, unique, CHECK, …) Zugehörigkeit zu einer Relation Andere Attribute dieser Relation Beziehung der Relation zu anderen Relationen Dokumentation Vorhandene Werte Wissen über den Anwendungsbereich … Der Kontext Ulf Leser: Informationsintegration, Wintersemester 2006/2007 50 Konzepte sind schwierig • Wie viele Mitarbeiter hat IBM? • Was ist ein Mitarbeiter? • • • • • Temporäre Mitarbeiter Feste Freie, Leiharbeiter, seit Jahren bei IBM arbeitende externe Berater Studentische Mitarbeiter, Diplomanden Stellen oder Köpfe? Doppelte Zählung bei mehreren Anstellungen? • Was ist IBM? • • Welche Region? Welcher Geschäftsbereich? Informix? PWC? • Welcher Zeitpunkt ist gemeint? • • Fester Zeitpunkt? Im Schnitt über alle Tage im letzten Quartal? Ulf Leser: Informationsintegration, Wintersemester 2006/2007 51 Konzepte ändern sich • Synonyme? • • • • Prince, „The artist formerly known as prince“ Ja – dieselbe Person Nein – dieselbe Person zu verschiedene Zeiten Temporale Abhängigkeit • Synonyme? • • • • England, Großbritannien Ja – für uns Nein – für Schotten Anhängig vom kulturellen Hintergrund Ulf Leser: Informationsintegration, Wintersemester 2006/2007 52 Kontext • Semantik kann nur im Kontext ermittelt werden • Beispiel • • • • Unternehmen A: angestellte( …) Unternehmen B: mitarbeiter( …) Mitarbeiter und Angestellte kann man als Synonyme betrachten Aber: A.angestellte ∩ B.mitarbeiter = ∅ • Wenn Personen nicht in zwei Unternehmen beschäftigt sind • Erst bei einem Merger von A und B werden A.angestellte und B.mitarbeiter zu Synonymen • Sollten dann zu einer Tabelle integriert werden Ulf Leser: Informationsintegration, Wintersemester 2006/2007 53 Semantik ist individuell • Konzepte existieren nur im Kopf • Man kann sie beschreiben, aber meint man auch dasselbe? • Individuelle Kenntnisse und Erfahrungen • Also: Reden, reden, reden • Dann: Standards definieren • Wie definiert man die Bedeutung eines Namens? • Formale Wissensrepräsentation (Ontologien, OWL – später) • Dokumentieren Ulf Leser: Informationsintegration, Wintersemester 2006/2007 54 Quasi-Synoynme • Integration = Entfernen von semantischer Redundanz • Extensionen im integrierten Schema sollen disjunkt sein • Keine Tabellen „gute Kunden“, „neue Kunden“ oder „Kunde1“, „Kunde2“ • Schwierig: Quasi-Synonyme • • • • • • • • Konzepte in verschiedenen Quellen, die sich so ähnlich sind, dass sie zur Integration genau untersucht werden müssen A/R: Integritätsbedingungen? A/R: Beziehungen zu anderen Elementen? R: Fehlende oder zusätzliche Attribute? R: Andere Schlüssel? R: Unterschiedliche Kardinalitäten gleicher Beziehungen? A: Unterschiedliche Einheiten? A: Unterschiedliche Wertebereiche (Controlled Vocs) Ulf Leser: Informationsintegration, Wintersemester 2006/2007 55 Beispiele IC: alter > 18 mitarbeiter p_id Vorname VARCHAR(35) nachname alter 1 Wolfgang Meyer 33 5 Klaus Schmidt NULL ... ... ... ... Vorname VARCHAR(20) name alter Synonym mitarbeiter p_id 1 Peter Müller 0 5 Petra Weger 17 ... ... ... Default Werte ... Datentypkonflikt Ulf Leser: Informationsintegration, Wintersemester 2006/2007 56 Inhalt dieser Vorlesung • Heterogenität • • • • • Überblick Technische Heterogenität Syntaktische Heterogenität Datenmodellheterogenität Strukturelle Heterogenität • Schematische Heterogenität • Semantische Heterogenität • Datenkonflikte • Transparenz Ulf Leser: Informationsintegration, Wintersemester 2006/2007 57 Identität • Semantische Konflikte auf Datenebene • • Konzept = Realweltobjekt Name = Identifikation, Schlüssel • Synonyme: Verschiedene IDs für gleiches Objekt • • Personalausweisnummer und Führerscheinnummer ISBN und Kombination Autor/Titel • Homonym: Gleiche IDs für verschiedene Objekte • • Dann ging was schief (gefälschte Pässe, …) Oder über Unternehmensgrenzen hinweg (Kunden.ID, …) • Schwieriges Problem: Lokale IDs • • • • Schlüssel gelten in einer Tabelle Häufig verwendet man nur surrogate Keys (sequence) Die bedeuten nichts außerhalb der eigenen Datenbank Integration erfordert Duplikaterkennung Ulf Leser: Informationsintegration, Wintersemester 2006/2007 58 Duplikaterkennung • Objektidentifikation, Record Linkage, Data Cleansing, ... • Wichtiger, als man denken man • Anwendungsgebiete • • • • Personen- und Adressdaten • Volkszählungen • Werbeaktionen • Kundenpflege Artikel und Autoren in Publikationsdatenbanken Anzeigen in einer Immobiliendatenbank … • Typische Merkmale zur Entstehung • • • • Gleiches Objekt mehrfach beobachtet Fehler bei der Datenerfassung (manuelle Eingabe, OCR, …) Objekt ändert Eigenschaften über die Zeit hinweg (Umzug) Keine global konsistente ID vorhanden Ulf Leser: Informationsintegration, Wintersemester 2006/2007 59 Problem • Duplikate in Relationen • • Zwei Tupel, die das gleiche real-world Objekt repräsentieren Attributwerte dürfen sich unterscheiden • Formales Problem • • Eine Tabelle mit (zunächst unbekannten) Duplikaten Erzeuge für jedes Tupel einen Identifier, so dass Duplikate gleiche Identifier erhalten • Problemerweiterungen • • Zwei Tabellen mit unterschiedlichem Schema Ein XML Dokument mit Duplikaten • Typisches Vorgehen (später mehr) • • Ähnlichkeiten der Werte => Ähnlichkeit des Tupels Hinzuziehen weiterer Informationen (Links, …) Ulf Leser: Informationsintegration, Wintersemester 2006/2007 60 Implementierung • Praktisches, reales Problem • • • Potentiell sehr große Datenmenge Kein Vergleich jedes Tupel mit jedem möglich • Komplexität? Kein Hauptspeicher-Algorithmus • Als SQL Anfrage • • Sei R die Relation mit Duplikaten SELECT C1.*, genID(C1,C2) FROM R as C1, R as C2 WHERE sim(C1,C2)>t • Schwieriger als normaler Join • Ähnlichkeitsmaß ist nicht nur Gleichheit • Siehe VL „Duplikaterkennung“ Ulf Leser: Informationsintegration, Wintersemester 2006/2007 61 Datenkonflikte • Datenkonflikt • Zwei Duplikate haben unterschiedliche Attributwerte für ein semantisch gleiches Attribut. • Datenkonflikte entstehen • Innerhalb eines Informationssystems (intra-source) • Bei der Integration mehrerer Informationssysteme (inter-source) • Voraussetzung • Duplikate (sonst kein Konflikt) • Die muss man erst mal finden Ulf Leser: Informationsintegration, Wintersemester 2006/2007 62 Datenkonflikte - Beispiel Konflikt kann auch mit NULL-Wert herrschen amazon.de 0766607194 H. Melville $3.98 $5.99 ID 0766607194 Herman Melville Moby Dick bol.de Ulf Leser: Informationsintegration, Wintersemester 2006/2007 63 Datenkonflikte – Entstehung • Innerhalb eines Informationssystems • Mangels Integritätsbedingungen oder Konsistenz-Checks • Freitextfelder, Kommentarfelder • Redundante Schemata • Falsche Einträge • Tippfehler, Übertragungsfehler, OCR-Fehler , … • Obsolete Einträge • Divergierende Aktualisierungszeitpunkte • Vergessene oder verzögerte Aktualisierung Ulf Leser: Informationsintegration, Wintersemester 2006/2007 64 Datenkonflikte – Entstehung • Bei der Integration von Informationssystemen • • • • Lokal konsistent aber global inkonsistent Duplikate (extensionale Redundanz) Andere Datentypen („1“ versus „eins“) Andere lokale Schreibweisen oder Konventionen • Skalen, Währungen, … • Auflösen • Konfliktlösungsfunktionen • Präferenzordnung über Datenquellen • nach Aktualität, Trust (Vertrauen), Öffnungszeiten usw. • Siehe VL „Informationsqualität“ Ulf Leser: Informationsintegration, Wintersemester 2006/2007 65 Inhalt dieser Vorlesung • Heterogenität • • • • • Überblick Technische Heterogenität Syntaktische Heterogenität Datenmodellheterogenität Strukturelle Heterogenität • Schematische Heterogenität • Semantische Heterogenität • Datenkonflikte • Transparenz Ulf Leser: Informationsintegration, Wintersemester 2006/2007 66 Transparenz • Verteilung, Autonomie, Heterogenität kann in unterschiedlichem Maße überwunden werden • Ortstransparenz • Benutzer müssen den Ort der integrierten Systeme nicht kennen • Keine URLs, Datenbankpräfixe, … • Quellentransparenz, Verteilungstransparenz • Benutzer weiß nicht, welche Quelle für eine Anfrage benutzt werden kann (und muss daher nicht auswählen) • Benutzer weiß nicht, welche Quelle für eine Anfrage benutzt wurde (Datenherkunft) • Setzt ein globales Schema voraus Ulf Leser: Informationsintegration, Wintersemester 2006/2007 67 Transparenz 2 • Schnittstellentransparenz • Benutzer kennt verschiedene Quellen, aber kann sie alle gleich ansprechen • Keine Kenntnis lokaler Anfragesprachen, Protokolle, … • Schematransparenz • Benutzer kennt die Schemata lokaler Quellen nicht • Anfragen richten sich nur an das (homogene) globale Schema • Spezialfall der Verteilungstransparenz Ulf Leser: Informationsintegration, Wintersemester 2006/2007 68 Will man nicht immer! • Intuitiv strebt man maximale Transparenz an • Tatsächlich ist das oft kontraproduktiv • Benutzer kennen und lieben „ihre“ Datenquellen • Datenherkunft ist wichtigstes Kriterium für Einschätzung der Qualität der Informationen • Zugriff durch globales Schemas nur bei Kenntnis dieses • Benutzer muss neues Schema lernen • Globale Schemata können sehr kompliziert werden • Da sie viele Quellen integrieren • Für „kleine“ Zugriffe unnötig schwierig • Transparenz bedingt Informationsverlust Ulf Leser: Informationsintegration, Wintersemester 2006/2007 69 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. • [Con97] Föderierte Datenbanksysteme. Konzepte der Datenintegration Stefan Conrad, Springer Verlag, 1997 Ulf Leser: Informationsintegration, Wintersemester 2006/2007 70