VL Informationsintegration

Slides:



Advertisements
Ähnliche Präsentationen
Persistente Domänenmodelle mit JPA 2.0 und Bean Validation
Advertisements

ER-Datenmodell und Abfragen in SQL
Heterogene Informationssysteme
Hash-Tabellen und -Funktionen Hash-Tabellen in Java
Daten- und Informationsqualität. © Prof. T. Kudraß, HTWK Leipzig Management der Informationsqualität Keine verbindlichen Standards oder Vorgaben für Informationsqualität.
Folien 2-5, 7-8 © Prof. Dr. Manfred Rössle (FH Aalen)
Informationsintegration Heterogenität Felix Naumann.
Informationsintegration Global-as-View: GaV
Informationsintegration SchemaSQL Felix Naumann.
Objekt – Relationales – Modell Tomasz Makowski IN
Institut für Informatik Abteilung Datenbanken Problemseminar Datacleaning Überblick Datacleaning.
Kapitel 4 Datenstrukturen
Systemüberblick Beispiele: Microsoft Access Oracle Ingres Informix
On a Buzzword: Hierachical Structure David Parnas.
Java: Objektorientierte Programmierung
Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/7 Datenbanken werden als Anhäufung von Werten eines Wertebereiches aufgefasst und Datenbankabfragen.
QBE in MS Access formulieren
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 4 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
SQL als Abfragesprache
SQL als Abfragesprache
IS: Datenbanken, © Till Hänisch 2000 CREATE TABLE Syntax: CREATE TABLE name ( coldef [, coldef] [, tableconstraints] ) coldef := name type [länge], [[NOT]NULL],
SQL/XML. © Prof. T. Kudraß, HTWK Leipzig 2 2 Motivation Speicherung von XML in allen großen kommerziellen DBMS vorhanden proprietäre Lösungen für die.
Prof. Dr. T. Kudraß1 Relationen-Algebra. Prof. Dr. T. Kudraß2 Relationale Anfragesprachen Query Language (QL): Manipulation und Retrieval von Daten einer.
Otto-von-Guericke-Universität MagdeburgGamal Kassem Übung 7 Reports mit Datenbankzugriff.
MMQL – Multimedia Query Language Eine Anfragesprache für Multimedia-Ähnlichkeitsanfragen Christian Mantei.
Übung Datenbanksysteme SQL-Anfragen (2)
Vererbung Spezialisierung von Klassen in JAVA möglich durch
Geometrische Objekte in Datenbanken Martin Pfeifle Institut für Informatik, Universität München Lehr- und Forschungseinheit für Datenbanksysteme Prof.
SQL 2 Order by null Aggregatfunktionen group by Join subselect.
Seminar: Verteilte Datenbanken
Einführung Dateisystem <-> Datenbanksystem
Informationsintegration Materialisierte vs. Virtuelle Integration
Kombination von AOP und FOP Ein Vortrag für das Seminar erweiterte Programmiertechniken von Samuel Simeonov im Sommersemester 2007.
Beispielrelation Buchbestellungen H = Menge der bedeutenden Ziele = {a, d} Schwelle T = 4 Stichprobe S = {a, b, a, a, a, a} mit s = |S| = 6 N = Anzahl.
Abfragen – Tipps und Tricks Buch S102ff (Informatik I, Oldenbourg-Verlag) Nach einer Vorlage von Dieter Bergmann.
SQL in Visual FoxPro. © 1999 TMN-Systemberatung GmbH SQL Historie n SQL - Structured Query Language n In den 70er Jahren von IBM entwickelt n 1986 zum.
objekt-relationale Datenbanken
Übung 1: SQL Übungen finden bei Bedarf anstelle der Vorlesungen statt
... und alles was dazugehört
SQL PHP und MySQL Referat von Katharina Stracke und Carina Berning
Vom XML Schema zur relationalen Datenbank Seminararbeit zum Multimedia-Seminar im SS 2002 Erstellt von: Thomas Dickel.
XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte*
Datenbankentwicklung IV-LK
Die Grundterminologie
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #4 SQL (Teil 1)
SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung #7 SQL (Teil 2)
Vorlesung #4 SQL (Teil 1).
SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung #3 ER Modellierung.
WS 2013/14 Datenbanksysteme D0 15:15 – 16:45 R Vorlesung #5 SQL (Teil 2)
WS 2007/08 Datenbanksysteme Mi 17:00 – 18:30 R Vorlesung #5 SQL (Teil 2)
Allgemeines zu Datenbanken
Befehle in SQL Erläuterungen.
Datenbanksysteme für hörer anderer Fachrichtungen
Einführung in Datenbankmodellierung und SQL
WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R Vorlesung #5 SQL (Teil 2)
1 Gruppierung, Aggregierung und Sortierung (2) Abarbeitungsmodell bei Gruppierung: Werte from- und where-Klauseln aus wie bisher (Bildung von Kreuzprodukt.
How Does Fuzzy Arithmetic Work ? © Hartwig Jeschke Institut für Mikroelektronische Schaltungen und Systeme Universität Hannover
Institute of Scientific Computing – University of ViennaP.Brezany Integration von föderierten Datenbanken Peter Brezany Institut für Scientific Computing.
Structured Query Language
Eike Schallehn, Martin Endig
Eike Schallehn, Martin Endig
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 Vorlesung #3 Anfragebearbeitung (Teil 1)
Vorlesung #5 SQL (Teil 2).
WS 2014/15 Datenbanksysteme D0 15:15 – 16:45 R Vorlesung #6 SQL (Teil 3)
SS 2015 – IBB4C Datenmanagement Fr 17:00 – 18:30 R Vorlesung #1 Datenmanagement.
Datenbanken abfragen mit SQL
XML-Erweiterungen in ORDBMS Seminar: DBMS für spezielle Anwendungen Florian Brieler.
Abfragen Wiederholung Manuel Friedrich Schiller-Gymnasium Hof.
Vorlesung #5 SQL (Teil 2).
Vorlesung #6 SQL (Teil 3).
 Präsentation transkript:

VL Informationsintegration 31.1.2006 Datenfusion: Union und Co.

Rückblick „Semantische Heterogenität ist ein überladener Begriff ohne klare Definition. Er bezeichnet die Unterschiede in Bedeutung, Interpretation und Art der Nutzung.“ [Öszu, Valduriez 91] Namenskonflikte Identität Datenkonflikte 31.1.2006

Semantische Heterogenität Gleiches Objekt mehrfach beobachtet Manuelle Erfassung der Daten Objekt ändert Eigenschaften von Zeit zu Zeit Keine global konsistente ID ISBN, SSN, etc. 0875 ✍ 0815 0815 4711 Quelle A Quelle B 0815 t 31.1.2006

Typische Anwendungen Personen- und Adressdaten Bibliographische Daten Volkszählungen Werbeaktionen Kundenpflege Bibliographische Daten Zentrale Register Waren/Katalogdaten Einkauf bei mehreren Shops Webseiten Metasuchmaschinen Molekularbiologische Daten 31.1.2006

Visualisierung/Export Überblick Namenskonflikte (schematische Konflikte) Schema Matching Duplikaterkennung Datenfusion Visualisierung/Export Anwendung Schritt 1: Schritt 2: Schritt 3: Schritt 4: Datenquellen Identitätsproblem Datenkonflikte 31.1.2006

Schema Matching Findet semantisch gleiche Attribute in Relationen Zwei Attribute, die gleiche Bedeutung tragen Attributnamen und -werte dürfen sich unterscheiden Title Year Director Genre Snatch 2000 Ritchie Crime Troy 2004 Petersen  Vanilla Sky 2001 Crowe Sci-Fi Shrek Adamson Anim. The Matrix 1999 Wachowski Fantasy Titel Jahr Rating Genre Snatch 1999 R Crime Troja 2004 History Vannila Ski 2001 Sci-Fi Vannile Sky 2000 16 Comedy Matrix Fantasy 31.1.2006

Schema Matching Formales Problem Problemerweiterungen Zwei Tabellen, mit unterschiedlichen Attributen Erzeuge eine Abbildung, die jedem Attribut einer Tabelle die semantisch gleichen der anderen Tabellen zuordnet Problemerweiterungen Mehrere Tabellen 1:m und n:m Beziehungen XML Dokument, also Nesting 31.1.2006

Objektidentifikation Findet Duplikate in Relationen Zwei Tupel, die das gleiche real-world Objekt repräsentieren Attributwerte dürfen sich unterscheiden Title Year Director Genre ID Snatch 2000 Ritchie Crime 1 Troy 2004 Petersen  2 Vanilla Sky 2001 Crowe Sci-Fi 3 Shrek Adamson Anim. 4 The Matrix 1999 Wachowski Fantasy 5 ID Titel Jahr Rating Genre 1 Snatch 1999 R Crime 2 Troja 2004 History 3 Vannila Ski 2001 Sci-Fi Vannile Sky 2000 16 Comedy 5 Matrix Fantasy 31.1.2006

Objektidentifikation Formales Problem Eine Tabelle (der Größe N), potentiell mit Duplikaten Erzeuge für jedes Tupel eine ID, so dass Duplikate gleiche ID‘s erhalten Problemerweiterungen Zwei Tabellen mit unterschiedlichem Schema Ein XML Dokument mit Duplikaten 31.1.2006

Datenkonflikte unique, check, key (inter-source) (intra-source) Zwei Duplikate haben unterschiedliche Attributwerte für semantisch gleiches Attribut. unique, check, key (inter-source) ID A B C D 1 2 ID A B C E 1 (intra-source) 31.1.2006

Datenkonflikte – Beispiele amazon.de   5.99 € Moby Dick Herman Melville 0766607194  3.98 € H. Melville  ID bol.de 31.1.2006

Datenkonflikte – Entstehung Keine Integritätsbedingungen / Konsistenz-Checks Redundante Schemata Vorhandensein von Duplikaten Nicht korrekte Einträge Tippfehler, Übertragungsfehler Falsche Rechenergebnisse Obsolete Einträge Verschiedene Aktualisierungszeitpunkte ausreichende Aktualität einer Quelle verzögerte Aktualisierung Vergessene Aktualisierung Innerhalb eines Informationssystems 31.1.2006

Datenkonflikte – Entstehung Unterschiedliche Datentypen (mit/ohne Codierung) 1,2,...,5 bzw. "sehr gut", "gut", ..., mangelhaft" Gleicher Datentyp Schreibvarianten Kantstr. / Kantstrasse / Kant Str. / Kant Strasse Kolmogorov / Kolmogoroff / Kolmogorow Typische Verwechslungen (OCR) U<->V, 0<->o, 1<->l, usw. Innerhalb eines Informationssystems 31.1.2006

Datenkonflikte – Behebung Referenztabellen für exakte Wertabbildung Z.B. Städte, Länder, Produktnamen, Codes... Ähnlichkeitsmaße bei Tippfehlern bei Sprachvarianten (Meier, Mayer,...) Standardisieren und transformieren Nutzung von Hintergrundwissen (Metadaten) Konventionen (landestypische Schreibweisen) Ontologien zur Behandlung von Zusammenhängen Thesauri, Wörterbücher zur Behandlung von Homonymen, Synonymen, ... Innerhalb eines Informationssystems 31.1.2006

Datenkonflikte – Entstehung Lokal konsistent aber global inkonsistent Duplikate Unterschiedliche Datentypen Lokale Schreibweisen/Konventionen Integration von Informationssystemen 31.1.2006

Datenkonflikte – Behebung Präferenzordnung über Datenquellen Aktualität Trust (Vertrauen) Öffnungszeiten usw. Informationsqualität Konfliktlösungsfunktionen Integration von Informationssystemen 31.1.2006

Datenkonflikte – Implementierung Prozedural Programm Im DB Kern Deklarativ Anfragesprache  Schnell Gut in materialisierten IS Schlecht wiederverwendbar    Funktioniert gut in föderierten IS Wiederverwendbar Langsamer   31.1.2006

Relationale Objektintegration Union (Vereinigung), z.B.[GUW02] Eliminierung exakter Duplikate Minimum Union, [GL94] Eliminierung subsumierter Tupel Jedoch Duplikatintegration Konfliktlösung Auch: Join, Merge, Group, …     31.1.2006

Relationale Algebra – Vereinigung Mitarbeiter m p_id vorname nachname alter 1 Peter Müller 32 2 Stefanie Meier 34 Frage: Wie sieht m  e aus? m  e p_id vorname nachname alter 1 Peter Müller 32 2 Stefanie Meier 34 5 Petra Weger 28 7 Andreas Zwickel 44 Employees e p_id vorname nachname alter 5 Petra Weger 28 7 Andreas Zwickel 44 31.1.2006

Union zur Informationsintegration? Verschiedene Schemata? Null-Werte? Datenkonflikte? Was bedeutet UNION compatible? Nur gleiche Spaltenzahl oder auch gleiche Spaltennamen? GUW02 nachsehen…     Gleiche Spaltenzahl Gleiche Datentypen 31.1.2006

Relationale Algebra – Vereinigung Mitarbeiter m Anderes Schema: m  e nicht definiert! p_id vorname nachname alter 1 Peter Müller 32 2 Stefanie Meier 34 Employees e Problemlösung: SchemaSQL Schema Mapping p_id vorname nachname geboren 5 Petra Weger 21.3.76 7 Andreas Zwickel 12.3.60 31.1.2006

Relationale Algebra – Vereinigung Mitarbeiter m Null-Werte p_id vorname nachname alter 5 Petra Weger 28 7 Andreas Zwickel 34 m  e p_id vorname nachname alter 7 Andreas Zwickel 34 5 Petra Weger 28  Employees e p_id vorname nachname alter 5 Petra Weger 28 7 Andreas Zwickel  „ “ vs. „34“ ist auch ein Konflikt! 31.1.2006

Relationale Algebra – Vereinigung Mitarbeiter m p_id vorname nachname alter 1 Peter Müller 32 7 Andreas Zwickel 34 m  e p_id vorname nachname alter 1 Peter Müller 32 7 Andreas Zwickel 34 5 Petra Weger 28 44 Employees e p_id vorname nachname alter 5 Petra Weger 28 7 Andreas Zwickel 44 „44“ vs. „34“ ist erst recht ein Konflikt! 31.1.2006

Konfliktbehebung mit Union? Exakte Duplikate! Quelle 1  Quelle 2  a, b => a, b a, b a, c => a, b a, - => a, -, d a, c, - => 31.1.2006

Konfliktbehebung mit Union? Ungeeignet Es werden nur „echte“ Duplikate entfernt. In SQL nur mit DISTINCT (Aufwand!) Außerdem Es können leicht strukturelle Konflikte auftreten: Primärschlüssel Es muss Schemagleichheit herrschen 31.1.2006

Minimum Union Outer Union, [Cod79] R S A B C P 1 2 Q B D 2 U 3 V Seien R1 und R2 Relationen mit Schemata S1 bzw. S2. Outer Union füllt R1 und R2 zunächst mit NULL-Werten auf, so dass beide dem Schema S1S2 entsprechen. Dann wird die Vereinigung der beiden aufgefüllten Relationen gebildet. Frage: Wie sieht aus? A B C D P 1 2  Q U 3 V Beispiel aus [Cod79] 31.1.2006

Minimum Union Subsumption, [Ull89] R p_id vorname nachname alter 1 Peter Müller 32  42 2 Wiebke Meyer Subsumption, [Ull89] Ein Tupel t1 subsumiert ein Tupel t2, wenn es über die gleichen Attribute definiert ist, t2 hat mehr NULL Werte als t1, t1 = t2 für alle nicht-NULL Werte von t2. Schreibweise: R ergibt die Tupel aus R, die nicht subsumiert sind. Frage: Wieviele Tupel hat R? R Subsumption bei XML Daten? p_id vorname nachname alter 1 Peter Müller 32  42 2 Wiebke Meyer 31.1.2006

Minimum Union – NULL-Werte Semantik der NULL? [GUW02] Wert unbekannt ("unknown") Es gibt einen Wert, ich kenne ihn aber nicht Bsp.: Unbekannter Geburtstag Wert nicht anwendbar ("inapplicable") Es gibt keinen Wert, der hier Sinn macht Bsp.: Ehemann/-frau für Ledige Wert zurückbehalten ("withheld") Wir dürfen den Wert nicht erfahren Bsp.: Geheime Telefonnummer 31.1.2006

Minimum Union – NULL-Werte "Value not supplied" "Value does not exist" "Value undefined" C.J. Date: "Into the Unknown" "Much Ado About Nothing" "NOT Is Not Not!" "Oh No Not Nulls Again" … „Distinguished" NULL "Total ignorance" NULL Im weiteren: "Unknown" 31.1.2006

Minimum Union – Beispiel Minimum Union, [GL94] 56  3 Schmidt 2 32 Müller 1 55 alter Meyer Wiebke Franz Peter nachname vorname p_id Kunde K p_id vorname nachname alter 1 Peter Müller 32 2 Franz Schmidt 55 3 Wiebke Meyer  Customer C 56  3 55 32 alter Meyer Wiebke Schmidt Franz 2 Müller Peter 1 nachname vorname p_id p_id nachname alter 1 Müller 32 2 Schmidt  3 56 31.1.2006

Konfliktbehebung mit Minimum Union? Nicht in Standard-DBMS implementiert! Quelle 1  Quelle 2  a, b => a, b a, c => a, b a, - => a, -, d a, c, - => Subsumption! 31.1.2006

Und was ist mit Join? Kunde K Customer C p_id vorname nachname alter 1 Peter Müller 32 2 Franz Schmidt 55 3 Wiebke Meyer  4 Klaus Lehmann 28 p_id nachname alter 1  32 2 Schmidt 3 Meier 56 5 Weger 47 Frage: Ist Join zur Konfliktbehebung geeignet? K ⋈p_id C p_id K.vorname K.nachname C.nachname K.alter C.alter 1 Peter Müller  32 2 Franz Schmidt 55 3 Wiebke Meyer Meier 56 31.1.2006

Merge und Prioritized Merge Merge (⊠), [GPZ01] Vermischt Join und Union zu einem Operator COALESCE beseitigt NULLs Priorisierung möglich (⊳) Lässt sich mit Hilfe von SQL ausdrücken ( SELECT K.p_id, K.vorname, Coalesce(K.nachname, C.nachname), Coalesce(K.alter, C.alter) FROM K LEFT OUTER JOIN C ON K.p_id = C.p_id ) UNION ( SELECT C.p_id, K.vorname, Coalesce(C.nachname, K.nachname), Coalesce(C.alter, K.alter) FROM K RIGHT OUTER JOIN C ON K.p_id = C.p_id ) 31.1.2006

Merge – Beispiel Kunde K Customer C p_id vorname nachname alter 1 Peter Müller 32 2 Franz Schmidt 55 3 Wiebke Meyer  4 Klaus Lehmann 28 p_id nachname alter 1  32 2 Schmidt 3 Meier 56 5 Weger 47 Fragen: Wie sieht das Schema aus? Wie das Ergebnis? C ⊠ K p_id vorname nachname alter 1 Peter Müller 32 2 Franz Schmidt 55 3 Wiebke Meier 56 Meyer 4 Klaus Lehmann 28 5  Weger 47 31.1.2006

Konfliktbehebung mit Merge? Quelle 1  Quelle 2  a, b => a, b a, b a, c a, b a, c a, b a, - => => Keine Subsumption! a, -, d a, c, - => a, c, d 31.1.2006

Und was gibt es sonst noch? Match Join [YaÖz99] Komplexer Operator ConQuer [FuFM05] „Consistent Query Answering“ Rewriting einer SQL Anfrage Burdick et. al. [BDJR05] Uncertainty in Data Warehouses „Possible Worlds“ Probabilistische Modelle [Mich89] Erweitern das Schema um Wahrscheinlichkeiten 31.1.2006

Was sollte Duplikatintegration können? Quelle 1  Quelle 2  a, b => a, b a, b a, c => a, cr(b,c) a, b a, - => a, -, d a, c, - => a, c, d Konfliktbehandlung 31.1.2006

Konfliktbehandlung Benutzer Lösungsidee (Strategie) Ausführung (Funktion) Strategie und funktion trennen Eigene folie zu den funktionen Katalog der funktionen System 31.1.2006

Strategien, um Konflikte zu… …ignorieren Trust your friends Pass it on …vermeiden Nothing is older than the news from yesterday Take the information No Gossiping …lösen Cry with the wolves Roll the dice Meet in the middle 31.1.2006

Konfliktlösungsfunktionen Min, Max, Sum, Count, Avg, StdDev Standard Aggregationsfunktionen Random Zufallswahl First, Last Nimmt ersten/letzten Wert, reihenfolgeabhängig Longest, Shortest Nimmt längsten/kürzesten Wert Choose(source) Quellenauswahl ChooseDepending(col, val) Wahl abhängig von val in col Vote Mehrheitsentscheid Coalesce Nimmt ersten nicht-null Wert Group, Concat Gruppiert, fügt zusammen MostRecent Nimmt aktuellsten Wert MostAbstract, MostSpecific Benutzt eine Taxonomie …. Strategie und funktion trennen Eigene folie zu den funktionen Katalog der funktionen 31.1.2006

Ausführung von Konfliktlösung Mit SQL Bordmitteln? Union, Join und Co. Gruppierung (nach ID) 31.1.2006

Gruppierung – Beispiel Bestellungen b name datum wert Peter 10.11.03 20 23.4.02 30 12.7.03 12 Franz 3.3.01 11 Martina 5.4.02 2 Jochen 6.6.99 200 1.1.95 name wert Peter 62 Franz 11 Martina 4 Jochen 200 SELECT name, SUM(wert) FROM Bestellungen GROUP BY name 31.1.2006

Gruppierung und Aggregation Gruppierung weist jedem Attribut zu: Gruppierung oder Aggregation Tupel werden gruppiert nach gleichen Gruppierungswerten, alle anderen Attribute werden innerhalb der Gruppen aggregiert. NULL-Werte bilden eigene Gruppe SELECT name, SUM(wert) FROM Bestellungen GROUP BY name 31.1.2006

Gruppierung zur Integration Outer-Union auf alle Quellen Mit SQL GROUP BY umschließen Gruppierung nach ID Attribut Aggregat-Funktionen als Konfliktlösungsfunktion für alle anderen Attribute. 31.1.2006

Gruppierung zur Integration 56 Meier  3 Schmidt 2 32 Müller 1 55 alter Meyer Wiebke Franz Peter nachname vorname p_id p_id vorname nachname alter 1 Peter Müller 32 2 Franz Schmidt 55 3 Wiebke Meyer SELECT p_id, RESOLVE(vorname), RESOLVE(nachname), RESOLVE(alter) FROM K ] C GROUP BY p_id 31.1.2006

Gruppierung zur Integration 56 Meier  3 Schmidt 2 32 Müller 1 55 alter Meyer Wiebke Franz Peter nachname vorname p_id p_id vorname nachname alter 1 Peter Müller 32 2 Franz Schmidt 55 3 Wiebke Meier 56 SELECT p_id, MAXLEN(vorname), CHOOSE(nachname,C), MAX(alter) FROM K ] C GROUP BY p_id Längster String C ist bevorzugte Quelle größter Wert 31.1.2006

Gruppierung – Beispiel GROUP + aggregates SELECT books.isbn, MAXLEN(books.title), MIN(books.price) FROM ( SELECT * FROM books1 UNION SELECT * FROM books2 ) AS books GROUP BY books.isbn  books1 books2 31.1.2006

Gruppierung – Vor-/Nachteile  Vorteile Effizient Implementierung durch Sortierung Behandelt Duplikate innerhalb einer Quelle und zwischen Quellen gleich. Simpel / kurz  Nachteile Beschränkt auf eingebaute Standard Aggregat-Funktionen: MAX, MIN, AVG, VAR, STDDEV, SUM, COUNT Gruppierung nur nach Gleichheit ID Attribut ist notwendig Outer Union nicht immer implementiert. 31.1.2006

Gruppierung – Vor-/Nachteile  Nachteile genauer: Standard Aggregate MAX, MIN, AVG, VAR, STDDEV, SUM, COUNT Erweiterung um „user-defined aggregates“ Optimierung Assoziativität und Kommutativität nicht sichergestellt. Einzig Informix bot dies an. Außerdem zwei Forschungsprojekte Standard Gruppierung Implizit ist Gleichheit gefordert. Besser wäre: GROUP BY similar(id,name,birthdate) Wird nirgends angeboten Effizienz ist schwer für den Optimierer abzuschätzen. Transitivität kann nicht gewährleistet werden. 31.1.2006

Dies sollten Sie gelernt haben Gruppierung/Aggregation Join, Merge, … Lösungen SQL (Minimum) Union Semantische Heterogenität Ursachen Probleme Namenskonflikte Identität Datenkonflikte 31.1.2006

Ausblick Zusammenfassung Fragen? Thema Donnerstag: Datenintegration Relationale Datenfusion Umsetzung Fragen? Thema Donnerstag: ETL und Data Lineage Anderes Bild? 31.1.2006

Literatur [GL94] Outerjoins as Disjunctions, Cesar A. Galindo-Legaria, SIGMOD 1994 conference [Cod79] E. F. Codd: Extending the Database Relational Model to Capture More Meaning. TODS 4(4): 397-434 (1979) [Ull89] Jeffrey D. Ullman: Principles of Database and Knowledge-Base Systems, Volume II. Computer Science Press 1989 [GUW02] Hector Garcia-Molina, Jeffrey D. Ullman and Jennifer Widom, Database Systems, Prentice Hall, 2002 [GPZ01] S. Greco, L. Pontieri, E. Zumpano, Integrating and Managing Conflicting Data, Springer, 2001 [YaÖz99] L. L. Yan, T. Özsu, Conflict tolerant queries in AURORA, CoopIS 1999 conference [FuFM05] A. Fuxman, E. Fazli, R. Miller, Conquer: Efficient Management of inconsistent databases, SIGMOD 2005 conference [BDJR05] D. Burdick, P. Deshpande, T. Jayram, R. Ramakrishnan, S. Vaithyanathan, OLAP Over Uncertain and Imprecise Dat, VLDB 2005 conference [Mich89] L. DeMichiel, Resolving Database Incompatibility: An Approach to Performing Relational Operations over Mismatched Domains, IEEE Trans. Knowl. Data Eng., 1989(1), p. 485-493 31.1.2006