Informationsintegration Schema Mapping Felix Naumann

Größe: px
Ab Seite anzeigen:

Download "Informationsintegration Schema Mapping Felix Naumann"

Transkript

1 Informationsintegration Schema Mapping Felix Naumann

2 Erste Hälfte 2 Problemstellung Einführung in die Informationsintegration Szenarien der Informationsintegration Verteilung und Autonomie Heterogenität Architekturen Materialisierte und virtuelle Integration 5-Schichten Architektur Mediator/Wrapper-Architektur / PDMS Mapping Schema Mapping Schema Matching Modellierung Global-as-View und Lokal-as-View Modellierung Global-as-View Anfragebearbeitung

3 Zweite Hälfte 3 Anfragen Containment & Local-as-View Anfragebearbeitung Bucket Algorithmus Verteilte Anfragebearbeitung Datenintegration Duplikaterkennung Datenfusion - Union & Co. DWH, ETL & Data Lineage Informationsqualität

4 Überblick 4 Motivation Schema Mapping Schema Matching Mapping Interpretation Mapping Werkzeuge

5 Wdh: Virtuelle Integration 5 Anwendung 1 Anwendung 2 Mediator Datenfluss Anfragebearbeitung Entwicklung Top-down Schema Wrapper 1 Wrapper 2 Wrapper 3 Quelle 1 Quelle 2 Quelle 3

6 Wdh: Bottom-up oder Top-down Entwurf 6 Beim Entwurf des integrierten Systems Bottom-up Ausgelöst durch den Bedarf, mehrere (alle) Quellen integriert anzufragen Schemaintegration ist nötig. Änderungen schwierig, da neu integriert werden muss. Typisches Szenario: Data Warehouse Top-down Ausgelöst durch globalen Informationsbedarf Vorteilhaft bei labilen Quellen Schemaintegration nicht nötig, bzw. leichter

7 Schemaintegration vs. Schema Mapping 7 Beide Probleme müssen strukturelle und semantische Heterogenität überwinden. Aber: Schemaintegration liefert Schema Mapping frei Haus. Zielschema hat keine eigene Semantik. Schemaintegration ist unflexibel. Deshalb nun: Schema Mapping

8 Verwendung von Schema Mappings 8 Datentransformation View Transformationsanfrage Quellschema Mapping Zielschema Mapping Quellschema Quelldaten Transformationsanfrage Zieldaten Quelldaten Folie: Frank Legler

9 Verwendung von Schema Mappings 9 Schemaintegration integriertes Schema Mapping Mapping Schema 1 Mapping Schema 2 Daten Daten Folie: Frank Legler

10 Verwendung von Schema Mappings 10 Schemaevolution Schema Mapping verändertes Schema Schemaevolution Daten Query (Insert/Update/Delete) Folie: Frank Legler

11 Verwendung von Schema Mappings 11 Im weiteren: Datentransformation Materialisierte Integration Virtuelle Integration Quellschema Mapping Zielschema Quelldaten Transformationsanfrage Zieldaten

12 Überblick 12 Motivation Schema Mapping Schema Matching Mapping Interpretation Mapping Werkzeuge

13 Schema Mapping - Definitionen 13 (Inter-Schema) Korrespondenz Eine Zuordnung eines oder mehrerer Elemente eines (Quell-) Schemas zu einem oder mehreren Elementen eines anderen (Ziel-) Schemas Auch: Value-correspondence (High-level) Mapping Eine Menge von Korrespondenzen zwischen zwei Schemas. (Low-Level) Logisches Mapping Logische Übersetzung eines oder mehrerer Mappings, die den Integritätsbedingungen beider Schemas gehorcht und die Intention des Nutzers wiederspiegelt. Interpretation Übersetzung eines Mappings in ein oder mehrere logische Mappings Übersetzung eines logischen Mappings in eine Transformationsanfrage Transformationsanfrage Anfrage in einer Anfragesprache (z.b. SQL), die Daten des Quellschemas in die Struktur des Zielschemas überführt

14 Wdh: Schematische Heterogenität 14 Struktur Modellierung Relation vs. Attribut Attribut vs. Wert Relation vs. Wert Benennung Relationen Attribute Normalisiert vs. Denormalisiert Geschachtelt vs. Fremdschlüssel High-order Mappings hier

15 Motivation 15 Datentransformation zwischen heterogenen Schemas Altes aber immer wiederkehrendes Problem Üblicherweise schreiben Experten komplexe Anfragen oder Programme Zeitintensiv Experte für die Domäne, für Schemata und für Anfrage XML macht alles noch schwieriger XML Schema, XQuery Idee: Automatisierung Gegeben: Zwei Schemata und ein high-level Mapping dazwischen. Gesucht: Anfrage zur Datentransformation

16 Motivation Probleme 16 Generierung der richtigen Anfrage unter Berücksichtigung der Schemata und des Mappings Garantie, dass die transformierten Daten dem Zielschema entsprechen Effiziente Datentransformation Für Materialisierung (Ausführung, inkrementell) Für virtuelle Integration (query-unfolding) Hier: Nur Effektivität, nicht Effizienz

17 Motivation Weitere Probleme 17 Geschachtelte Strukturen unterstützen Geschachteltes, relationales Modell XML Geschachtelte Integritätsbedingungen Korrespondenzen Nutzerfreundlich Automatische Entdeckung (Schema Matching) Intention des Nutzers erkennen und repräsentieren Semantik der Daten erhalten Assoziationen entdecken & erhalten Schemata und deren Integritätsbedingungen nutzen Neue Datenwerte erzeugen Korrekte Gruppierungen erzeugen

18 Schema Mapping im Kontext 18 Möchte Daten aus S Versteht/Kennt T Versteht nicht immer S Quellschema S (High-level) Mapping Zielschema T entspricht Mapping Compiler entspricht Daten (Low-level) Logisches Mapping (Transformationsprogramm oder Anfrage) Quelle: [FHP+02]

19 Schema Mapping im Kontext 19 filmdb regisseure regisseur personid name studio filme film regieid filmid produzent titel Wertkorrespondenzen moviedb studios studio studio directors director dirid dirname producers producer prodid name Interpretation Quellschema Logisches Mapping Zielschema Anfragegenerierung Quelldaten Transformationsanfrage Virtuelle Zieldaten (Sichtdefinition) Materialisierte Zieldaten

20 Schema Mapping im Kontext 20 Schema Matching & Korrespondenzen Schema Mapping Mapping Interpretation Daten-transformation

21 Wdh: Schematische Heterogenität Beispiel 21 Normalisiert vs. Denormalisiert 1:n Assoziationen zwischen Werten wird unterschiedlich dargestellt Durch Vorkommen im gleichen Tupel Durch Schlüssel-Fremdschlüssel Beziehung Lösung: Schema Mapping

22 Schema Mapping Beispiel 22 ARTICLE artpk title pages AUTHOR artfk name PUBLICATION pubid title date author SELECT artpk AS pubid title AS title null AS date null AS author FROM ARTICLE UNION SELECT null AS pubid null AS title null AS date name AS author FROM AUTHOR

23 Schematische Heterogenität Lösungen 23 ARTICLE artpk title pages AUTHOR artfk name SELECT FROM WHERE PUBLICATION pubid title date author Weitere Interpretationen? artpk AS pubid title AS title null AS date name AS author ARTICLE, AUTHOR ARTICLE.artPK = AUTHOR.artFK

24 Schematische Heterogenität Lösungen 24 ARTICLE artpk title pages AUTHOR artfk name SELECT FROM ON PUBLICATION pubid title date author Gilt Schlüsseleigenschaft? artpk AS pubid title AS title null AS date name AS author ARTICLE LEFT OUTER JOIN AUTHOR ARTICLE.artPK = AUTHOR.artFK

25 Wdh: Schematische Heterogenität Lösungen 25 PUBLICATION title date author DISTINCT SELECT SK(title) AS artpk title AS title null AS pages FROM PUBLICATION ARTICLE artpk title pages AUTHOR artfk name SELECT SK(title) AS artfk author AS name FROM PUBLICATION

26 Wdh: Schematische Heterogenität Beispiel 26 Geschachtelt vs. Flach 1:n Assoziationen werden unterschiedlich dargestellt Als geschachtelte Elemente Als Schlüssel-Fremdschlüssel Beziehung Lösung: Schema Mapping

27 Wdh: Schematische Heterogenität Lösungen 27 ARTICLE artpk title pages AUTHOR name PUBLICATION pubid title author LET $doc0 := document( articles.xml") RETURN <root> { distinct-values ( FOR $x0 IN $doc0/authordb/article, $x1 IN $x0/author RETURN <publication> <pubid> { $x0/artpk/text() } </pubid> <title> { $x0/title/text() } </title> <author> { $x1/name/text() } </author> </publication> ) } </root>

28 Wdh: Schematische Heterogenität Lösungen 28 PUBLICATION title date author ARTICLE title AUTHOR name LET $doc0 := document( publication.xml") RETURN <articles> { distinct-values ( FOR $x0 IN $doc0/dblp/publication RETURN <ARTICLE> <title> { $x0/title/text() } </title> { distinct-values ( FOR $x0l1 IN $doc0/dblp/publication WHERE $x0/title/text() = $x0l1/title/text() RETURN <AUTHOR> <name> { $x0l1/author/text() } </name> </AUTHOR> )} </ARTICLE> ) } </articles>

29 Überblick 29 Motivation Schema Mapping Schema Matching Klassifikation von Schema Matching Methoden Erweiterungen Globales Matching Mapping Interpretation Mapping Werkzeuge

30 Schema Matching im Kontext 30 filmdb regisseure regisseur personid name studio filme film regieid filmid produzent titel Wertkorrespondenzen moviedb studios studio studio directors director dirid dirname producers producer prodid name Interpretation Quellschema Logisches Mapping Zielschema Anfragegenerierung Quelldaten Transformationsanfrage Virtuelle Zieldaten (Sichtdefinition) Materialisierte Zieldaten

31 Schema Matching Motivation 31 Große Schemas > 100 Tabellen, viele Attribute Bildschirm nicht lang genug Unübersichtliche Schemas Tiefe Schachtelungen Fremdschlüssel Bildschirm nicht breit genug XML Schema Fremde Schemas Unbekannte Synonyme Irreführende Schemas Unbekannte Homonyme Fremdsprachliche Schemas Kryptische Schemas Attributnamen 8 Zeichen Tabellennamen 8 Zeichen

32 32 Man beachte die Scrollbar! Man beachte die Schachtelungstiefe!

33 Schema Matching Motivation 33 Die Folgen Falsche Korrespondenzen (false positives) Fehlende Korrespondenzen (false negatives) Frustration User verlieren sich im Schema User verstehen Semantik der Schemas nicht

34 Schema Matching Classification [RB01] 34 Schema Matching Approaches Individual Approaches Combined Approaches Schema-based Instance-based Hybrid Combined Linguistic Linguistic Constraintbased Duplicatebased Manual Automatic Constraint-based

35 Schema Matching Klassifikation 35 Schema Matching basierend auf Namen der Schemaelemente (label-based) Darunterliegende Daten (instance-based) Struktur des Schemas (structure-based) Andere Matcher (composite)

36 Schema Matching Label-based 36 Gegeben zwei Schemata mit Attributmengen A und B Kernidee: Bilde Kreuzprodukt aller Attribute aus A und B. Für jedes Paar vergleiche Ähnlichkeit bezgl. Attributnamen (Label). Z.B. Edit-distance Ähnlichste Paare sind Matches Probleme: Effizienz Auswahl der besten Matches (globales Matching) Iterativ? Stable Marriage? Synonyme und Homonyme werden nicht erkannt

37 Schema Matching Label-based 37 Stand der Technik in kommerziellen Produkten Label-based Namensgleichheit Kein globales Matching Keine Ähnlichkeitsmaße Kein Instanz-basiertes Matching

38 Schema Matching Instance-based 38 Gegeben zwei Schemata mit Attributmengen A und B, jeweils mit darunterliegenden Daten. Kernidee Für jedes Attribut extrahiere interessante Eigenschaften der Daten Buchstabenverteilung, Länge, etc. Bilde Kreuzprodukt aller Attribute aus A und B. Für jedes Paar vergleiche Ähnlichkeit bzgl. der Eigenschaften Probleme Auswahl der Eigenschaften Datenmenge: Sampling Vergleichsmethode, z.b. Naive Bayes Gewichtung (Maschinelles Lernen)

39 Schema Matching Structure-based 39 Gegeben zwei Schemata mit Elementmengen A und B. Kernidee Nutze (komplexe) Struktur des Schemas aus. Hierarchieebene Elementtyp (Attribut, Relation,...) Nachbarschaftsbeziehungen

40 Schema Matching Structure-based 40 Beispiel: Similarity Flooding nach [MGMR02] Gegeben initiale Ähnlichkeit zwischen Schemaelementen (z.b. durch edit-distance oder durch Analyse der darunterliegenden Daten) Lasse Ähnlichkeiten abfärben auf die Nachbarn Nachbarn sind durch Struktur definiert Sind alle Nachbarn von x und y ähnlich zueinander, sind (vielleicht) auch x und y ein match. Analogie: Man flutet das Netzwerk der Ähnlichkeiten bis ein Gleichgewicht erreicht ist.

41 Schema Matching Mischformen 41 Schema Schema Schema Schema Basis- Matcher Basis- Matcher Basis- Matcher Hybrid Gleichzeitige Anwendung mehrerer Techniken Bsp: Instance-based + Datentypvergleich Composite Repertoire bekannter Techniken (inkl. hybrider Techniken) Kombination dieser unabhängigen Verfahren Bsp: Durch Gewichtung Bsp: Durch automatisches Lernen Des besten Verfahrens Einer guten Gewichtung Match- Kombination Match- Auswahl Matching

42 Schema Matching in Clio 42

43 Überblick 43 Motivation Schema Mapping Schema Matching Klassifikation von Schema Matching Methoden Erweiterungen Globales Matching Mapping Interpretation Mapping Werkzeuge

44 44 Schema Matching Erweiterungen n:1 und 1:n Matches Viele Kombinationsmöglichkeiten Viele Funktionen denkbar Mathematische Operatoren, Konkatenation, etc. Parsingregeln n:m Matching? Matching in komplexen Title Schemata Ziel: Finde logisches Mapping, nicht nurkorrespondenzen n:1 Matching Vorname Nachname 1:n Matching Name m:n matching Name extract() extract() concat() extract() extract() concat() Name Vorname Nachname First name Last name Sigmund Freud Prof. Dr. Prof. Dr. Sigmund Freud

45 Schema Matching Erweiterungen 45 Global matching (gleich) Matche nicht nur einzelne Attribute (oder Attributmengen) Sondern komplette Tabellen oder komplette Schemata Stable Marriage Problem A B C D

46 Schema Matching Weitere Anwendungen 46 Herkömmlich: Korrespondenzen finden Schlüssel Fremdschlüssel finden Ähnliche Attribute innerhalb eines Schemas sind gute Kandidaten Höher-stufige Korrespondenzen finden Ähnlichkeiten von Tabellen durch Aggregation der Matches ihrer Attribute

47 Phil Bernstein and Sergey Melnik SIGMOD 2007 keynote 47 Past goal: Improved precision and recall Big productivity gains are unlikely Better goals Return top-k, not best overall match Avoid the tedium. Manage work. Help with scrolling HCI handle large schemas User studies what would improve productivity?

48 Überblick 48 Motivation Schema Mapping Schema Matching Klassifikation von Schema Matching Methoden Erweiterungen Globales Matching Mapping Interpretation Mapping Werkzeuge

49 Schema Matching Stable Marriage 49 Gegeben n Frauen (Attribute in Schema A) und m Männer (Attribute in Schema B) Monogamie Je eine Frau kann nur mit je einem Mann verheiratet sein (nur 1:1 matches) Jede Frau hat eine Rangliste der Männer und umgekehrt Bei Schema Matching Attribut-Ähnlichkeit gemäß eines der vorigen Verfahren Rangliste ist (normalerweise) symmetrisch Gesucht: Paarung (globales Matching), so dass niemals gilt f 1 heiratet m 1, f 2 heiratet m 2, aber f 1 bevorzugt m 2 und m 2 bevorzugt f 1 (Instabil!)

50 Stable Marriage Beispiel 50 Männer (1-4) Frauen (A-D) 1: B, D, A, C A: 2, 1, 4, 3 2: C, A, D, B B: 4, 3, 1, 2 3: B, C, A, D C: 1, 4, 3, 2 4: D, A, C, B D: 2, 1, 4, 3 Beispiel aus: David Toth, "The Stable Marriage Problem: More Marital Happiness than Reality TV" April 25, 2003, Connecticut College, New London, CT, USA,

51 Stable Marriage Beispiel 51 Männer (1-4) Frauen (A-D) 1: B, D, A, C A: 2, 1, 4, 3 2: C, A, D, B B: 4, 3, 1, 2 3: B, C, A, D C: 1, 4, 3, 2 4: D, A, C, B D: 2, 1, 4, 3 1 stellt Antrag an B, sie willigt ein: (1, B)

52 Stable Marriage Beispiel 52 Männer (1-4) Frauen (A-D) 1: B, D, A, C A: 2, 1, 4, 3 2: C, A, D, B B: 4, 3, 1, 2 3: B, C, A, D C: 1, 4, 3, 2 4: D, A, C, B D: 2, 1, 4, 3 1 stellt Antrag an B, sie willigt ein: (1, B) 2 stellt Antrag an C, sie willigt ein: (1, B) (2, C)

53 Stable Marriage Beispiel 53 Männer (1-4) Frauen (A-D) 1: B, D, A, C A: 2, 1, 4, 3 2: C, A, D, B B: 4, 3, 1, 2 3: B, C, A, D C: 1, 4, 3, 2 4: D, A, C, B D: 2, 1, 4, 3 1 stellt Antrag an B, sie willigt ein: (1, B) 2 stellt Antrag an C, sie willigt ein: (1, B) (2, C) 3 stellt Antrag an B, sie willigt ein & verlässt 1: (2, C) (3, B)

54 Stable Marriage Beispiel 54 Männer (1-4) Frauen (A-D) 1: B, D, A, C A: 2, 1, 4, 3 2: C, A, D, B B: 4, 3, 1, 2 3: B, C, A, D C: 1, 4, 3, 2 4: D, A, C, B D: 2, 1, 4, 3 1 stellt Antrag an B, sie willigt ein : (1, B) 2 stellt Antrag an C, sie willigt ein : (1, B) (2, C) 3 stellt Antrag an B, sie willigt ein & verlässt 1: (2, C) (3, B) 1 stellt Antrag an D, sie willigt ein : (1, D) (2, C) (3, B)

55 Stable Marriage Beispiel 55 Männer (1-4) Frauen (A-D) 1: B, D, A, C A: 2, 1, 4, 3 2: C, A, D, B B: 4, 3, 1, 2 3: B, C, A, D C: 1, 4, 3, 2 4: D, A, C, B D: 2, 1, 4, 3 1 stellt Antrag an B, sie willigt ein : (1, B) 2 stellt Antrag an C, sie willigt ein : (1, B) (2, C) 3 stellt Antrag an B, sie willigt ein & verlässt 1: (2, C) (3, B) 1 stellt Antrag an D, sie willigt ein : (1, D) (2, C) (3, B) 4 stellt Antrag an D, sie lehnt ab : (1, D) (2, C) (3, B)

56 Stable Marriage Beispiel 56 Männer (1-4) Frauen (A-D) 1: B, D, A, C A: 2, 1, 4, 3 2: C, A, D, B B: 4, 3, 1, 2 3: B, C, A, D C: 1, 4, 3, 2 4: D, A, C, B D: 2, 1, 4, 3 1 stellt Antrag an B, sie willigt ein : (1, B) 2 stellt Antrag an C, sie willigt ein : (1, B) (2, C) 3 stellt Antrag an B, sie willigt ein & verlässt 1: (2, C) (3, B) 1 stellt Antrag an D, sie willigt ein : (1, D) (2, C) (3, B) 4 stellt Antrag an D, sie lehnt ab: (1, D) (2, C) (3, B) 4 stellt Antrag an A, sie willigt ein : (1, D) (2, C) (3, B) (4, A)

57 Maximum Weighted Matching 57 Alternative zu Stable Marriage Suche Matching mit maximalem Gewicht in bipartiten Graphen Bipartit: Knoten in zwei Klassen (Quelle & Ziel) Kanten nur zwischen Knoten verschiedener Klassen (Korrespondenzen) Maximiere Summe der einzelnen Gewichte/Ähnlichkeiten O(n³) ( Ungarische Methode )

58 Zusammenfassung Schema Matching 58 Schema Matching basierend auf Namen der Schemaelemente (label-based) Darunterliegende Daten (instance-based) Struktur des Schemas (structure-based) Mischformen, Meta-Matcher High-order Matching n:m Matching Globales Matching

59 Überblick 59 Motivation Schema Mapping Schema Matching Mapping Interpretation Aus [FHP+02] und VLDB 2002 Vortragsfolien Mapping Werkzeuge

60 Mapping Das Problem 60 Gegeben: Zwei Schemata Unabhängig voneinander erzeugt Relational Geschachtelt Mit Integritätsbedingungen (Schlüssel/Fremdschlüssel) Stellen teilweise unterschiedliche Daten dar Gegeben: Eine Menge von Korrespondenzen zwischen den Schemata Gesucht: Anfrage, die Daten des einen in Daten des anderen Schemas transformiert, wobei Semantik des Quellschemas erhalten bleibt, Integritätsbedingungen des Zielschemas berücksichtigt werden, und möglichst alle Korrespondenzen berücksichtigt werden.

61 Relationale vs. XML Schemata 61 Relationale Schemata Flach XML Schemata Flach oder geschachtelt NF2

62 Mapping Beispiel 62 spendendb firmen firma firmaid: integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string spender: string haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal Quelle für Beispiel: [FHP+02]

63 Mapping Beispiel 63 spendendb firmen firma firmaid: integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string spender: string Interpretation: - Erzeuge für jede firma in spendendb. eine org in haushaltdb. - orgid muss erfunden werden - stadt muss erfunden werden haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

64 Mapping Beispiel 64 spendendb firmen firma firmaid: integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string spender: string Interpretation: - Erzeuge für jede firma in spendendb. eine org in haushaltdb. - stadt muss erfunden werden haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

65 Erfinden von Werten 65 Zwei Gründe zum Erfinden: non-null und Identität non-null Werte Erfundener Wert egal Z.B. unbekannt oder null (oder Berlin ) ID Werte Skolemfunktion: Input: n Werte (beliebige Domäne) Output: bezgl. Input eindeutiger Wert (beliebiger Domäne) Beispiel: Konkatenation aller Inputwerte als String Wert für org.orgid nicht egal, sondern je nach firma.name eindeutig!

66 Mapping Beispiel 66 spendendb firmen firma firmaid: integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string spender: string Interpretation: - Erzeuge für jede spendendb.firma.stadt ein haushaltdb.stadthaushalt mit gleichem Namen. - Gruppiere jede firma unter den entsprechenden stadthaushalt. haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

67 Mapping Beispiel 67 spendendb firmen firma firmaid: integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string Interpretation: spender: string - Erzeuge für jede firma in spendendb. eine org in haushaltdb. - Erzeuge für jede spende in spendendb eine einnahme in haushaltdb - Erzeuge für jede spende in spendendb eine buchung in haushaltdb - Gruppiere korrekt: Schachtelung & Fremdschlüssel! haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

68 Mapping Beispiel 68 spendendb firmen firma firmaid: integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string spender: string Weitere Interpretation: & haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

69 Mapping Algorithmus 69 Drei Schritte 1. Entdeckung von intra- Schema Assoziationen 2. Entdeckung von inter- Schema logischen Mappings 3. Anfrage-erzeugung spendendb firmen firma firmaid: integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string spender: string haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

70 Entdeckung von Assoziationen 70 Schritt 1 Intra-schema Assoziationen zwischen Schemaelementen Relationale Sichten enthalten maximale Gruppen assoziierter Elemente Jede Sicht repräsentiert eine eigene Kategorie an Daten der Datenquelle Unabhängig vom Mapping (aber beschränkt auf gemappte Elemente) Quellschema S Ziel- schema T Assoziationen des Quellschemas Assoziationen des Zielschemas Quelle: [FHP+02]

71 Entdeckung von Assoziationen 71 Start: Alle primären Pfade (primary paths) Assoziationen im Schema ohne Integritätsbedingungen Relationale Schemas Jede Relation entspricht einem primären Pfad Geschachtelte Schemas Attribute einer Ebene Attribute geschachtelter Ebenen haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

72 Entdeckung von Assoziationen 72 Betrachte nun Schlüssel / Fremdschlüssel (ICs) Logische Relation Erweitere jeden primären Pfad durch Verfolgen der ICs (chase) haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

73 Entdeckung von Assoziationen 73 spendendb firmen firma firmaid: integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string spender: string Spielen noch keine Rolle. haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

74 Entdeckung von logischen Mappings 74 Schritt 2 Entdecke logische Mappings zwischen Quell- und Zielschema Betrachte alle Kombinationen aus Assoziationen des Quellschemas und Assoziationen des Zielschemas Unter Berücksichtigung aller Korrespondenzen (sofern Korrespondenzen zwischen ihnen überhaupt existieren) Quellschema S Element - Element Korrespondenzen Ziel- schema T Logische Mappings Assoziationen des Quellschemas Assoziationen des Zielschemas

75 Entdeckung von logischen Mappings 75 spendendb firmen firma firmaid: integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string spender: string & & & & & & & & haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal Ausgehende Korrespondenzen: Finden alle ein Ziel in der Kombination?

76 Entdeckung von logischen Mappings 76 spendendb firmen firma firmaid: integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string spender: string & & & haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal Eingehende Korrespondenzen: Stammen sie alle aus Assoziationen der Kombination?

77 Entdeckung von logischen Mappings 77 spendendb firmen firma firmaid: integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string spender: string & & haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

78 Input des Nutzers bzw. Domänenexperten 78 spendendb firmen firma firmaid: aus integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string spender: string 2. Nutzer wählt logische Mappings (Interpretationen) & & haushaltdb stadthaushalt stadt: string 1. Nutzer malt Korrespondenzen organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

79 Erzeugung der Anfragen 79 Schritt 3 Erzeuge für jedes (ausgewählte) logische Mapping eine Anfrage Auswahl und verknüpfen der entsprechenden Quelldaten Generierung der entsprechenden Zieldaten Quellschema S Element - Element Korrespondenzen Ziel- schema T Anfrage: - entschachteln - joinen Assoziationen des Quellschemas Logisches Mapping Assoziationen des Zielschemas Anfrage (target): - schachteln - splitten - Werte erfinden

80 Erzeugung der Anfragen 80 2 Probleme Erfinden von Werten NULL-Werte nicht immer ausreichend. Schlüssel und passende Fremdschlüssel müssen erzeugt werden. Schachtelung Es soll nicht eine logische Relation (flach) materialisiert werden, sondern geschachtelte Strukturen. Es muss entsprechend gruppiert werden.

81 Erfinden neuer Werte (Wdh.) 81 Logische Relation: buchungen Wert für buchungid wird nicht gefüllt Entweder: Egal Oder: Not-null: Dann Default-Wert, z.b. null Oder ID: Dann eindeutigen Werte erzeugen Skolemfunktion, basierend auf allen Werten des Mappings dieser logischen Relation spendendb spenden spende firmaid: integer spendeid: integer projekt: string betrag: decimal spender: string buchungid = Sk(betrag) haushaltdb einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

82 Erfinden neuer Werte 82 Logische Relation: einnahmen, buchungen buchungid-attribute haben keine Korrespondenz Assoziationen gingen verloren Also neue ID erfinden Wieder: Skolemfunktion basierend auf allen Werten des Mappings dieser logischen Relation Trick wie gehabt: Gleiche Funktion für Schlüssel und Fremdschlüssel spendendb spenden spende firmaid: integer spendeid: integer projekt: string betrag: decimal spender: string buchungid = Sk(spendeID,projekt,betrag) haushaltdb einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

83 Erfinden neuer Werte 83 spendendb firmen firma firmaid: integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string spender: string buchungid = Sk(betrag, projekt) haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal Frage: Warum nicht Sk(betrag,spendeID,projekt)?

84 Erfinden neuer Werte 84 spendendb firmen firma firmaid: integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string spender: string buchungid = Sk(betrag,projekt,name) haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal Jetzt erst recht: Warum nicht Sk(betrag,projekt,name,firmaID)?

85 Erfinden neuer Werte 85 Gegenfrage: Warum nicht gleiche ALLE ungemappten Werte? Vier Antworten (von Lucian Popa) 1. Prinzipiell ginge das, aber 2. Unerklärliche Duplikate könnten entstehen 2 Spenden, mit gleichem Betrag und gleichem Projekt aber von unterschiedlichen Firmen 3. firmenid könnte für Nutzer völlig uninteressant sein. Mapping hätte dann die Rolle einer Projektion, in der Duplikate fehl am Platz wären Sie wären sogar völlig unerklärlich für den Nutzer. 4. Minimalität Beide Varianten sind in Ordnung, aber eine ist kleiner.

86 Gruppierung 86 Alle Attribute erhalten Werte Aber: Assoziationen könnten verloren gehen. Neue (falsche) Assoziationen könnten erzeugt werden. Deshalb: Gruppierung notwendig Trick: Virtuelle ID Generierung mittels Skolemfunktion basierend auf allen (gemapten) Werten hierarchisch über der aktuellen Relation. Im Beispiel: Jedes Tupel haushaltdb erhält ID Sk(land, stadt) Jedes weitere Tupel aus firmen mit gleichen Werten für stadt und land errechnet gleiche ID und wird unter gleichem Element geschachtelt. spendendb firmen firma firmaid: integer name: string stadt: string land: string haushaltdb land: string stadthaushalt stadt: string organisationen org orgid: integer orgname: string

87 Erzeugung der Anfragen 87 Implementationsspezifisch Abhängig von Datenmodell Relational Relational: SQL Relational XML: SQL/XML Schachtelung und tagging des Ergebnisses XML Relational: XQuery oder XSLT Tags weglassen XML XML: XQuery oder XSLT In Clio Erzeugung proprietärer Regeln Dann: Übersetzung der Regeln in jeweilige Anfragesprache

88 Erzeugung der Anfragen 88 Erzeugung proprietärer Regeln in Clio for x in spenden let a = x.spende.spendeid, b = x.spende.projekt return <einnahme = <spendeid = a, proj = b, buchungid = null>> in einnahmen spendendb spenden spende firmaid: integer spendeid: integer projekt: string betrag: decimal spender: string haushaltdb einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

89 Erzeugung der Anfragen 89 Erzeugung proprietärer Regeln in Clio for x in spenden let a = x.spende.spendeid, b = x.spende.projekt, c = x.spende.betrag return <einnahme = <spendeid = a, proj = b, buchungid = Sk(a,b,c)>> in einnahmen, <buchung = <buchingid = Sk(a,b,c), datum = null, menge = c>> in buchungen spendendb spenden spende firmaid: integer spendeid: integer projekt: string betrag: decimal spender: string haushaltdb einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

90 Erzeugung der Anfragen XQuery 90 for x in spenden let a = x.spende.spendeid, b = x.spende.projekt, c = x.spende.betrag return <einnahme = <spendeid = a, proj = b, buchungid = Sk(a,b,c)>> in einnahmen, <buchung = <buchingid = Sk(a,b,c), datum = null, menge = c>> in buchungen LET $doc0 := document("input XML file goes here") RETURN <haushaltdb> { distinct-values ( FOR $x0 IN $doc0/spendendb/spende RETURN <einnahme> <spendeid> { $x0/spendeid/text() } </spendeid> <proj> { $x0/projekt/text() } </proj> <buchungid> { "Sk32(", $x0/betrag/text(), ", ", $x0/spendeid/text(), ", ", $x0/projekt/text(), ")" } </buchungid> </einnahme> ) } { distinct-values ( FOR $x0 IN $doc0/spendendb/spende RETURN <buchung> <buchungid> { "Sk32(", $x0/betrag/text(), ", ", $x0/spendeid/text(), ", ", $x0/projekt/text(), ")" } </buchungid> <menge> { $x0/betrag/text() } </menge> </buchung> ) } </haushaltdb>

91 Erzeugung der Anfragen SQL 91 for x in spenden let a = x.spende.spendeid, b = x.spende.projekt, c = x.spende.betrag return <einnahme = <spendeid = a, proj = b, buchungid = Sk(a,b,c)>> in einnahmen, <buchung = <buchingid = Sk(a,b,c), datum = null, menge = c>> in buchungen -- CREATE VIEW einnahme AS SELECT x0.spendeid AS spendeid, x0.projekt AS proj, RTRIM('Sk32(` CHAR(x0.betrag) ',' (CHAR(x0.spendeID) ',' CHAR(x0.projekt) ')') AS buchungid FROM spendendb.spende x CREATE VIEW buchung AS SELECT RTRIM('Sk32(' CHAR(x0.betrag) ',' CHAR(x0.spendeID) ',' CHAR(x0.projekt) ')') AS buchungid, x0.betrag AS menge FROM spendendb.spende x0

92 92

93 Vorschau: Global as View / Local as View 93 Global as View (GaV) Relationen des globalen Schemas werden als Sichten auf die lokalen Schemas der Quellen ausgedrückt. Local as View (LaV) Relationen der Schemas der Quellen werden als Sichten auf das globale Schema ausgedrückt.

94 Einschub: Sichten im relationalen Modell 94 Relationen aus CREATE TABLE Ausdrücken existieren tatsächlich (materialisiert, physisch) in der Datenbank. Die Daten aus Sichten (views) existieren nur virtuell. Sichten entsprechen Anfragen, denen man einen Namen gibt. Sie wirken wie physische Relationen. CREATE VIEW ParamountFilme AS SELECT Titel, Jahr FROM Filme WHERE StudioName = Paramount ; Semantik Bei jeder Anfrage an die Sicht wird die SQL Anfrage der Sicht ausgeführt. Die ursprüngliche Anfrage verwendet das Ergebnis als Relation.

95 Anfrageplanung mit Sichten 95 Baumdarstellung von Anfragen Blätter repräsentieren Relationen Basisrelationen Sichten Ersetzung der Sichten durch die Sichtdefinition Als Subanfrage V Q W Q Def. V Def. W

96 Anfragen an Sichten 96 CREATE VIEW ParamountFilme AS SELECT Titel, Jahr FROM Filme WHERE StudioName = Paramount ; SELECT Titel FROM ParamountFilme WHERE Jahr = 1979; Umwandlung der ursprünglichen Anfrage in eine Anfrage an Basisrelationen SELECT Titel FROM Filme WHERE StudioName = Paramount AND Jahr = 1979; Übersetzung durch DBMS Anfrage zugleich an Sichten und Basisrelationen möglich SELECT DISTINCT Schauspieler FROM ParamountFilme, spielt_in WHERE Titel = FilmTitel AND Jahr = FilmJahr;

97 Anfragen an Sichten 97 Filme(Titel, Jahr, Länge, infarbe, StudioName, ProduzentID) Manager(Name, Adresse, ManagerID, Gehalt) CREATE VIEW FilmeProduzenten AS SELECT Titel, Name FROM Filme, Manager WHERE ProduzentID = ManagerID; Anfrage SELECT Name FROM FilmeProduzenten WHERE Titel = Gone with the Wind Übersetzung SELECT Name FROM Filme, Manager WHERE ProduzentID = ManagerID AND Titel = Gone with the Wind ;

98 Einbettung in GaV/LaV 98 Ergebnis des Schema Mapping Prozess sind Anfragen Eine oder mehrere Anfragen pro Assoziation Relationales Modell: Jede Ziel-Relation entspricht einem primären Pfad Verwerfe Fremdschlüssel Jede Ziel-Relation entspricht einer Assoziation Jede Anfrage (oder Vereinigung von Anfrage) liefert Daten für eine Relation, also wie GaV. Schema Mapping leistet aber mehr! Erzeugung von Daten für mehrere Zielrelationen zugleich Unter Berücksichtigung von Integritätsbedingungen in Quell- und Zielschema Kombination von LaV und GaV : GLaV

99 Schematische Heterogenität 99 Struktur Modellierung Relation vs. Attribut Attribut vs. Wert Relation vs. Wert Benennung Relationen Attribute Normalisiert vs. Denormalisiert Geschachtelt vs. Fremdschlüssel Geschachtelt vs. Flach Higher-order Mappings bisher

100 High-order Mappings 100 Männer( Id, Vorname, Nachname) Frauen( Id, Vorname, Nachname) Relation vs. Attribut Relation vs. Wert Person( Id, Vorname, Nachname,männlich, weiblich) Person( Id, Vorname, Nachname, Geschlecht) Attribut vs. Wert

101 High-order Mappings 101 Männer Vorname Nachname Frauen Vorname Nachname `m `w Person Vorname Nachname Geschlecht

102 High-order Mappings 102 Person Vorname Nachname Geschlecht = `m = `w Männer Vorname Nachname Frauen Vorname Nachname

103 Zusammenfassung 103 Drei Schritte 1. Entdeckung von intra- Schema Assoziationen 2. Entdeckung von inter- Schema logischen Mappings 3. Anfrage-erzeugung spendendb firmen firma firmaid: integer name: string stadt: string spenden spende firmaid: integer spendeid: integer betrag: decimal projekt: string spender: string haushaltdb stadthaushalt stadt: string organisationen org orgid: integer orgname: string einnahmen einnahme spendeid: integer proj: string buchungid: integer buchungen buchung buchungid: integer datum: date menge: decimal

104 Literatur Schema Mapping 104 [FHP+02] Ron Fagin, Mauricio Hernandez, Lucian Popa, Renee Miller, and Yannis Velegrakis, Translating Web Data, VLDB 2002, Hong Kong, China. Zu der Problematik, ob Duplikate Teil des Outputs sein sollten: Clio: Ronald Fagin, Phokion G. Kolaitis, Renée J. Miller, Lucian Popa: Data Exchange: Semantics and Query Answering. ICDT 2003: oder

105 Literatur Schema Matching 105 Artikel mit der Klassifikation: [RB01] Erhard Rahm and Philip Bernstein, A survey of approaches to automatic schema matching, VLDB Journal 10(4), Online: plus Buch Spezielle Algorithmen [MGMR02] Sergey Melnik, Hector Garcia-Molina, Erhard Rahm: Similarity Flooding: A Versatile Graph Matching Algorithm and Its Application to Schema Matching. ICDE 2002: [BN05] Schema Matching using Duplicates Alexander Bilke and Felix Naumann: Proceedings of the International Conference on Data Engineering (ICDE 05) Tokyo, Japan. uvam.

Datenintegration & Datenherkunft Schema Matching & Mapping

Datenintegration & Datenherkunft Schema Matching & Mapping Datenintegration & Datenherkunft Schema Matching & Mapping Wintersemester 2010/11 Melanie Herschel melanie.herschel@uni-tuebingen.de Lehrstuhl für Datenbanksysteme, Universität Tübingen 1 Ausblick auf

Mehr

Schema Mapping. Armin Roth 25.04.2013. arminroth.de. Armin Roth (arminroth.de) II Schema Mapping 25.04.2013 1 / 23

Schema Mapping. Armin Roth 25.04.2013. arminroth.de. Armin Roth (arminroth.de) II Schema Mapping 25.04.2013 1 / 23 Schema Mapping Armin Roth arminroth.de 25.04.2013 Armin Roth (arminroth.de) II Schema Mapping 25.04.2013 1 / 23 Agenda 1 Wiederholung: Schema Mapping 2 Logische Mappings 3 Erzeugung der Anfragen Armin

Mehr

Schema Mapping. Dr. Armin Roth arminroth.de. Dr. Armin Roth (arminroth.de) II Schema Mapping / 23

Schema Mapping. Dr. Armin Roth arminroth.de. Dr. Armin Roth (arminroth.de) II Schema Mapping / 23 Dr. Armin Roth arminroth.de 25.04.2013 Dr. Armin Roth (arminroth.de) II Schema Mapping 25.04.2013 1 / 23 Agenda 1 Wiederholung: Schema Matching / Integration 2 Schema Mapping Definitionen Beispiel Algorithmus

Mehr

Informationsintegration Schema Mapping Felix Naumann

Informationsintegration Schema Mapping Felix Naumann Informationsintegration Schema Mapping 2.6.2008 Felix Naumann Erste Hälfte 2 Einführung in die Informationsintegration Szenarien Problemstellung der Informationsintegration Verteilung und Autonomie Heterogenität

Mehr

Informationsintegration

Informationsintegration Informationsintegration Schema Mapping Ulf Leser Wissensmanagement in der Bioinformatik Schema Matching Anfrageplanung beruht auf Korrespondenzen Die müssen irgendwo herkommen Das Finden von Korrespondenzen

Mehr

Schema Matching und Integration

Schema Matching und Integration und Integration Dr. Armin Roth arminroth.de 25.04.2013 Dr. Armin Roth (arminroth.de) II Schema Matching und Integr. 25.04.2013 1 / 26 Agenda 1 Schema Matching 2 Schema Integration Dr. Armin Roth (arminroth.de)

Mehr

Datenintegration. Kapitel 6: Schemamanagement. Dr. Michael Hartung Sommersemester 2013

Datenintegration. Kapitel 6: Schemamanagement. Dr. Michael Hartung Sommersemester 2013 Datenintegration Datenintegration Kapitel 6: Schemamanagement Dr. Michael Hartung Sommersemester 2013 Universität Leipzig Institut für Informatik http://dbs.uni-leipzig.de 1 Inhalt Schemaintegration Erzeugung

Mehr

Schema Mappings in PDMS

Schema Mappings in PDMS Schema Mappings in PDMS Rostock, 9. Juni 2005 Prof. Felix Naumann naumann@informatik.hu-berlin.de Humboldt-Universität zu Berlin Humboldt-Universität zu Berlin 9. Juni 2005 Felix Naumann, Humboldt-Universität

Mehr

Informationsintegration Beispiel

Informationsintegration Beispiel Informationsintegration Beispiel 17.4.2007 Felix Naumann Informationsintegration 2 Web Service A Web Service B Federated Database Systems Amit Sheth

Mehr

Datenintegration. Kapitel 6: Schemamanagement. Andreas Thor Sommersemester 2008. Inhalt

Datenintegration. Kapitel 6: Schemamanagement. Andreas Thor Sommersemester 2008. Inhalt Datenintegration Datenintegration Kapitel 6: Schemamanagement Andreas Thor Sommersemester 2008 Universität Leipzig Institut für Informatik http://dbs.uni-leipzig.de 1 Inhalt Schemaintegration Erzeugung

Mehr

Informationsintegration

Informationsintegration Informationsintegration Schemaintegration Ulf Leser Wissensmanagement in der Bioinformatik Richtung Schemaintegration versus Anfragebearbeitung FDBS Schema integration Data source Data source Data source

Mehr

II Heterogenität und Architekturen

II Heterogenität und Architekturen II Heterogenität und Dr. Armin Roth arminroth.de 24.04.2013 Dr. Armin Roth (arminroth.de) II Heterogenität und 24.04.2013 1 / 24 Agenda 1 Semantische Heterogenität 2 Architekturparadigmen PDMS Dr. Armin

Mehr

Informationsintegration

Informationsintegration Informationsintegration Schema Matching Ulf Leser Inhalt dieser Vorlesung Schema Matching Labelbasiert Instanzbasiert Strukturbasiert Erweiterungen Globales Matching Ulf Leser: Informationsintegration

Mehr

Duplikaterkennung und Datenfusion

Duplikaterkennung und Datenfusion Duplikaterkennung und Datenfusion Kolloquium Stuttgart, 6.7.2004 Felix Naumann Humboldt-Universität zu Berlin Humboldt-Universität zu Berlin 22.04.2004 Felix Naumann, Humboldt-Universität zu Berlin 2 Humboldt-Universität

Mehr

Informationsintegration

Informationsintegration Informationsintegration Local-as-View Anfrageplanung Ulf Leser Inhalt dieser Vorlesung Anfragekorrespondenzen Formale Definition Korrespondenztypen und -arten GaV erklärt Local as View Query Containment

Mehr

Schemamerging und -mapping

Schemamerging und -mapping Schemamerging und -mapping Seminar Informationsqualität und -integration, 30.06.2006 Überblick Schemaintegration / Einleitung Ziele Integrationskonflikte Integrationstechniken Multidatenbankanfragesprachen

Mehr

Autonomie & Heterogenität

Autonomie & Heterogenität Autonomie & Heterogenität Komplexe Informationssysteme Fabian Panse panse@informatik.uni-hamburg.de Universität Hamburg Probleme Einführung Autonomie Heterogenität Daten sind auf mehrere Quellen verteilt

Mehr

Wiederholung VU Datenmodellierung

Wiederholung VU Datenmodellierung Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester

Mehr

Überblick Felix Naumann. Zugriffsrechte Zugriffsrechte erzeugen Zugriffsrechte prüfen Zugriffsrechte vergeben Zugriffsrechte entziehen

Überblick Felix Naumann. Zugriffsrechte Zugriffsrechte erzeugen Zugriffsrechte prüfen Zugriffsrechte vergeben Zugriffsrechte entziehen Datenbanksysteme I Zugriffskontrolle (kleiner Einschub) 18.1.2007 Felix Naumann Überblick 2 Zugriffsrechte Zugriffsrechte erzeugen Zugriffsrechte prüfen Zugriffsrechte vergeben Zugriffsrechte entziehen

Mehr

Informationsintegration Global-as-View: GaV Felix Naumann

Informationsintegration Global-as-View: GaV Felix Naumann Informationsintegration Global-as-View: GaV 5.6.2012 Felix Naumann Überblick 2 Motivation Korrespondenzen Übersicht Anfrageplanung Global as View (GaV) Modellierung Anfragebearbeitung Local as View (LaV)

Mehr

Seminar Informationsintegration und Informationsqualität

Seminar Informationsintegration und Informationsqualität Seminar Informationsintegration und Informationsqualität Produkte und Prototypen Matthias Käppler Technische Universität Kaiserslautern 01. Juli 2006 1 / 50 Gliederung Grundlagen der Informationsintegration...

Mehr

Informationsintegration

Informationsintegration Informationsintegration Übersicht Anfrageplanung Global-as-View Ulf Leser Inhalt dieser Vorlesung Das Problem Anfrageplanung: Übersicht Global-as-View Modellierung GaV und Integritätsconstraints Implementierung

Mehr

Überblick. Informationsintegration Local-as-View: LaV Felix Naumann

Überblick. Informationsintegration Local-as-View: LaV Felix Naumann Informationsintegration Local-as-View: LaV 7.6.2007 Felix Naumann Überblick 2 Motivation Korrespondenzen Übersicht Anfrageplanung Global as View (GaV) Local as View (LaV) Modellierung Anwendungen Anfragebearbeitung

Mehr

Lösung - Übungsblatt 2

Lösung - Übungsblatt 2 Lösung - Übungsblatt 2 (Modellierung von Datenquellen) Fabian Panse panse@informatik.uni-hamburg.de Universität Hamburg Aufgabe 1: GaV mit Nebenbedingungen Student(MNr, Name, Sem, SG) IC: Sem > 5 S1(MNr,

Mehr

insert, update, delete Definition des Datenbankschemas select, from, where Rechteverwaltung, Transaktionskontrolle

insert, update, delete Definition des Datenbankschemas select, from, where Rechteverwaltung, Transaktionskontrolle Einführung in SQL insert, update, delete Definition des Datenbankschemas select, from, where Rechteverwaltung, Transaktionskontrolle Quelle Wikipedia, 3.9.2015 SQL zur Kommunikation mit dem DBMS SQL ist

Mehr

Wiederholung VU Datenmodellierung

Wiederholung VU Datenmodellierung Wiederholung VU Datenmodellierung VL Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester

Mehr

Konzeptueller Entwurf

Konzeptueller Entwurf Konzeptueller Entwurf UML Klassendiagrame UML Assoziationen Entspricht Beziehungen Optional: Assoziationsnamen Leserichtung ( oder ), sonst bidirektional Rollennamen Kardinalitätsrestriktionen UML Kardinalitätsrestriktionen

Mehr

Informationsintegration Global-as-View: GaV Felix Naumann

Informationsintegration Global-as-View: GaV Felix Naumann Informationsintegration Global-as-View: GaV 26.6.2008 Felix Naumann Überblick 2 Motivation Korrespondenzen Übersicht Anfrageplanung Global as View (GaV) Modellierung Anfragebearbeitung Local as View (LaV)

Mehr

Integration, Migration und Evolution

Integration, Migration und Evolution 14. Mai 2013 Programm für heute 1 2 Quelle Das Material zu diesem Kapitel stammt aus der Vorlesung Datenintegration & Datenherkunft der Universität Tübingen gehalten von Melanie Herschel im WS 2010/11.

Mehr

Duplikaterkennung. Dr. Armin Roth arminroth.de. Dr. Armin Roth (arminroth.de) II Duplikaterkennung / 17

Duplikaterkennung. Dr. Armin Roth arminroth.de. Dr. Armin Roth (arminroth.de) II Duplikaterkennung / 17 Dr. Armin Roth arminroth.de 27.04.2013 Dr. Armin Roth (arminroth.de) II Duplikaterkennung 27.04.2013 1 / 17 Agenda 1 Wiederholung: Datenwertintegration 2 Duplikaterkennung Dr. Armin Roth (arminroth.de)

Mehr

7. XML-Datenbanksysteme und SQL/XML

7. XML-Datenbanksysteme und SQL/XML 7. XML-Datenbanksysteme und SQL/XML Native XML-DBS vs. XML-Erweiterungen von ORDBS Speicherung von XML-Dokumenten Speicherung von XML-Dokumenten als Ganzes Generische Dekomposition von XML-Dokumenten Schemabasierte

Mehr

Informationsintegration Local-as-View: LaV Felix Naumann

Informationsintegration Local-as-View: LaV Felix Naumann Informationsintegration Local-as-View: LaV 10.7.2008 Felix Naumann Überblick 2 Motivation Korrespondenzen Übersicht Anfrageplanung Global as View (GaV) Local as View (LaV) Modellierung Anwendungen Anfragebearbeitung

Mehr

Vorlesung Datenbanken I Zwischenklausur

Vorlesung Datenbanken I Zwischenklausur Prof. Dr. Stefan Brass 12. Dezember 2003 Institut für Informatik MLU Halle-Wittenberg Vorlesung Datenbanken I Zwischenklausur Name: Matrikelnummer: Studiengang: Aufgabe Punkte Max. Punkte Zeit 1 (Integritätsbedingungen)

Mehr

Medizininformatik Software Engineering

Medizininformatik Software Engineering Vorlesung Software Engineering Inhaltsverzeichnis 1. Einleitung 2. Software und Medizinprodukt 3. Vorgehensmodelle 4. Strukturierter Entwurf von Echtzeitsystemen 4.1 Echzeit, was ist das? 4.2 Einführung

Mehr

Informationsintegration Einführung

Informationsintegration Einführung Informationsintegration Einführung 17.4.2007 Felix Naumann Integrierte Informationssysteme 2 Anfrage Integriertes Informationssystem Oracle, DB2 Anwendung Dateisystem Web Service HTML Form Integriertes

Mehr

Data Cubes PG Wissensmangement Seminarphase

Data Cubes PG Wissensmangement Seminarphase PG 402 - Wissensmangement Seminarphase 23.10.2001-25.10.2001 Hanna Köpcke Lehrstuhl für Künstliche Intelligenz Universität Dortmund Übersicht 1. Einführung 2. Aggregation in SQL, GROUP BY 3. Probleme mit

Mehr

Datenintegration als automatisierter Prozess

Datenintegration als automatisierter Prozess Datenintegration als automatisierter Prozess Hauptseminar Tom Schöner tom.schoener@haw-hamburg.de Department Informatik, Informatik Master 12.06.2018 1 Inhaltsübersicht Einführung Thema und Fragestellungen

Mehr

Introduction to Data and Knowledge Engineering. 6. Übung SQL

Introduction to Data and Knowledge Engineering. 6. Übung SQL Introduction to Data and Knowledge Engineering 6. Übung SQL Aufgabe 6.1 Datenbank-Schema Buch PK FK Autor PK FK ISBN Titel Preis x ID Vorname Nachname x BuchAutor ISBN ID PK x x FK Buch.ISBN Autor.ID FB

Mehr

Domänen: Grundtypen, alle vordefiniert, z.b. INTEGER ~ integer NUMERIC (p,s) p: precision, s: scale (nach,) etc.

Domänen: Grundtypen, alle vordefiniert, z.b. INTEGER ~ integer NUMERIC (p,s) p: precision, s: scale (nach,) etc. Kapitel 6 Relationale DB-Sprache SQL SEQUEL: Structured English Query Language, 70er Jahre SQL: System R, SQL/DS, TransBase, Oracle... ANSI Standards 1, 2, 3 6.1 Daten-Definitionssprache DDL Domänen: Grundtypen,

Mehr

Datenbanken. Schemaerweiterung zur Abbildung von Imperfekten Daten. Andreas Merkel

Datenbanken. Schemaerweiterung zur Abbildung von Imperfekten Daten. Andreas Merkel Seminar Impferfektion und Datenbanken Schemaerweiterung zur Abbildung von Imperfekten Daten Andreas Merkel Inhalt Einführung - Eigenschaften des relationalen Modells - Erweiterungsmöglichkeiten Zwei unterschiedliche

Mehr

Datenbanken: Relationales Modell und SQL. Dr. Matthias Uflacker, Stefan Klauck 23. April 2018

Datenbanken: Relationales Modell und SQL. Dr. Matthias Uflacker, Stefan Klauck 23. April 2018 Datenbanken: Relationales Modell und SQL Dr. Matthias Uflacker, Stefan Klauck 23. April 2018 Vorlesungsinhalte/-aufbau Phase 1 Einführung zu Unternehmensanwendungen (2 Vorlesungen) Grundlagen von spaltenorientierten

Mehr

d.h. zu Definitions-Stelle eindeutiger Funktionswert x X! y Y : (x,y) f umgekehrt: (x 1,y), (x 2,y) f ist o.k. X Y f(x) = y

d.h. zu Definitions-Stelle eindeutiger Funktionswert x X! y Y : (x,y) f umgekehrt: (x 1,y), (x 2,y) f ist o.k. X Y f(x) = y Kapitel 7 Normalformen und DB-Entwurf Kap. 7.1 Normalformen Theorie Funktionale Abhängigkeit: f X Y f als Relation, d.h. Menge von Paaren {(x,y)} x: Definitions-Stelle, y: Funktionswert f ist Funktion

Mehr

Informationsintegration

Informationsintegration Informationsintegration Korrespondenzen Local-as-View Semantik der Anfrageplanung Ulf Leser Wissensmanagement in der Bioinformatik Abstrakter Wenn das integrierte System ein globales Schema zur Verfügung

Mehr

Kapitel 3: Eigenschaften von Integrationssystemen. Einordnung von Integrationssystemen bzgl. Kriterien zur Beschreibung von Integrationssystemen

Kapitel 3: Eigenschaften von Integrationssystemen. Einordnung von Integrationssystemen bzgl. Kriterien zur Beschreibung von Integrationssystemen Datenintegration Datenintegration Kapitel 3: Eigenschaften von Integrationssystemen Andreas Thor Sommersemester 2008 Universität Leipzig Institut für Informatik http://dbs.uni-leipzig.de 1 Inhalt Einordnung

Mehr

Logischer Entwurf. Stufen der Entwicklung einer Datenbank. Inhalt. Übersicht. 1. Datenbank - Entwurf ( ER - Diagramm)

Logischer Entwurf. Stufen der Entwicklung einer Datenbank. Inhalt. Übersicht. 1. Datenbank - Entwurf ( ER - Diagramm) 10. Logischer Entwurf 10-1 10. Logischer Entwurf 10-2 Stufen der Entwicklung einer Datenbank 1. Datenbank - Entwurf ( ER - Diagramm) Logischer Entwurf 2. Umsetzen des ER - Diagramms ins relationale Modell

Mehr

XML, QPATH, XQUERY: NEUE KONZEPTE FÜR DATENBANKEN. 4. Übung SQL/XML

XML, QPATH, XQUERY: NEUE KONZEPTE FÜR DATENBANKEN. 4. Übung SQL/XML XML, QPATH, XQUERY: NEUE KONZEPTE FÜR DATENBANKEN 4. Übung SQL/XML Agenda 2 XML zum Abbilden von DB-Inhalten Motivation Abbildungsvorschriften Vollständige Abbildung mithilfe von XML-Schema Beispiel Laender

Mehr

Informationsintegration Local-as-View: LaV. 15.6.2012 Felix Naumann

Informationsintegration Local-as-View: LaV. 15.6.2012 Felix Naumann Informationsintegration Local-as-View: LaV 15.6.2012 Felix Naumann Überblick 2 Motivation Korrespondenzen Übersicht Anfrageplanung Global as View (GaV) Local as View (LaV) Modellierung Anwendungen Anfragebearbeitung

Mehr

Schema Matching. Fabian Panse. Universität Hamburg. Komplexe Informationssysteme

Schema Matching. Fabian Panse. Universität Hamburg. Komplexe Informationssysteme Komplexe Informationssysteme Fabian Panse panse@informatik.uni-hamburg.de Universität Hamburg Schema Matching Fabian Panse Schema Matching 2 Schema Matching Problemstellung Gegeben: Zwei Datenbankinstanzen

Mehr

VL Informationsintegration Verteilung, Autonomie und Heterogenität. 25.10.2004 Felix Naumann. Aufbau eines Data Warehouse

VL Informationsintegration Verteilung, Autonomie und Heterogenität. 25.10.2004 Felix Naumann. Aufbau eines Data Warehouse 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

Mehr

Die Anweisung create table

Die Anweisung create table SQL-Datendefinition Die Anweisung create table create table basisrelationenname ( spaltenname 1 wertebereich 1 [not null],... spaltenname k wertebereich k [not null]) Wirkung dieses Kommandos ist sowohl

Mehr

Vorlesung Wissensentdeckung in Datenbanken

Vorlesung Wissensentdeckung in Datenbanken Vorlesung Wissensentdeckung in Datenbanken Data Cube Katharina Morik, Uwe Ligges Informatik LS 8 22.04.2010 1 von 26 Gliederung 1 Einführung 2 Aggregation in SQL, GROUP BY 3 Probleme mit GROUP BY 4 Der

Mehr

Abbildungen zwischen Schemata unterschiedlicher Datenmodelle

Abbildungen zwischen Schemata unterschiedlicher Datenmodelle Abbildungen zwischen Schemata unterschiedlicher Datenmodelle Mastering the Information Explosion - Information Integration and Information Quality Susanne Braun 07.07.2006 1 Inhalt 1.Motivation 2.Die 5-Ebenen-Schema-Architektur

Mehr

Grundlagen von SQL. Informatik 2, FS18. Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich

Grundlagen von SQL. Informatik 2, FS18. Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich Grundlagen von SQL Informatik 2, FS18 Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich Markus Dahinden 13.05.18 1 Grundlagen von SQL (Structured Query Language)

Mehr

Datenvorverarbeitung von nominalen Daten für Data Mining

Datenvorverarbeitung von nominalen Daten für Data Mining Datenvorverarbeitung von nominalen Daten für Data Mining Entstanden 2004/2005 bei der T-Systems International GmbH unter Betreuung von Prof. Dr. J. Fürnkranz Seite 1 Gliederung Datenvorverarbeitung Prepared

Mehr

5/14/18. Grundlagen von SQL. Grundlagen von SQL. Google, Facebook und Co. setzen auf SQL. Whatsapp

5/14/18. Grundlagen von SQL. Grundlagen von SQL. Google, Facebook und Co. setzen auf SQL. Whatsapp 5/14/18 Grundlagen von SQL (Structured Query Language) Datenbanksprache Befehle Datenbanken und Tabellen erstellen/verändern Daten manipulieren (eingeben, ändern, löschen) Datenbank durchsuchen (Queries

Mehr

XML-Datenaustausch in der Praxis Projekt TOMIS bei der ThyssenKrupp Stahl AG

XML-Datenaustausch in der Praxis Projekt TOMIS bei der ThyssenKrupp Stahl AG Mittwoch, 9. November 2005 13h00, Bruno-Schmitz-Saal 18. Deutsche ORACLE-Anwenderkonferenz XML-Datenaustausch in der Praxis Projekt TOMIS bei der ThyssenKrupp Stahl AG Volker Husemann Thyssen Krupp Stahl

Mehr

Vorlesung Wissensentdeckung in Datenbanken

Vorlesung Wissensentdeckung in Datenbanken Gliederung Vorlesung Wissensentdeckung in Datenbanken Data Cube Katharina Morik, Claus Weihs 14.07.2009 1 Einführung 2 Aggregation in SQL, GROUP BY 3 Probleme mit GROUP BY 4 Der Cube-Operator 5 Implementierung

Mehr

SchemaSQL Eine Multidatenbank Sprache. Volodymyr Biryuk

SchemaSQL Eine Multidatenbank Sprache. Volodymyr Biryuk SchemaSQL Eine Multidatenbank Sprache Volodymyr Biryuk Herausforderung Aufbau eines Multi-Datenbank-Systems (MDBS) Problem Autonomie Distribution Heterogenität Integration heterogener Datenquellen Art

Mehr

Geoinformation Abbildung auf Tabellen

Geoinformation Abbildung auf Tabellen Folie 1 von 32 Geoinformation Abbildung auf Tabellen Folie 2 von 32 Abbildung auf Tabellen Übersicht Motivation des relationalen Datenmodells Von Objekten zu Tabellen Abbildung von Objekten Schlüssel Abbildung

Mehr

Schema Matching. Fabian Panse. Universität Hamburg. Komplexe Informationssysteme

Schema Matching. Fabian Panse. Universität Hamburg. Komplexe Informationssysteme Komplexe Informationssysteme Fabian Panse panse@informatik.uni-hamburg.de Universität Hamburg Schema Matching Fabian Panse Schema Matching 2 Schema Matching Problemstellung Gegeben: Zwei Datenbankinstanzen

Mehr

II Einführung Informationsintegration

II Einführung Informationsintegration II Einführung Informationsintegration Fabian Panse 01.09.2014 Fabian Panse II Einführung Informationsintegration 01.09.2014 1 / 56 Agenda 1 Einführung 2 Organisation 3 Integration von Informationssystemen

Mehr

Datenbanksysteme I Relationale Algebra. Felix Naumann

Datenbanksysteme I Relationale Algebra. Felix Naumann Datenbanksysteme I Relationale Algebra Felix Naumann 17.5.2010 Überblick 2 Einführung Basisoperatoren Operatoren auf Multimengen Erweiterte Operatoren Einführung 3 Bisher Relationenschemata mit Basisrelationen,

Mehr

Data Cube. 1. Einführung. 2. Aggregation in SQL, GROUP BY. 3. Probleme mit GROUP BY. 4. Der Cube-Operator. 5. Implementierung des Data Cube

Data Cube. 1. Einführung. 2. Aggregation in SQL, GROUP BY. 3. Probleme mit GROUP BY. 4. Der Cube-Operator. 5. Implementierung des Data Cube Data Cube 1. Einführung 2. Aggregation in SQL, GROUP BY 3. Probleme mit GROUP BY 4. Der Cube-Operator 5. Implementierung des Data Cube 6. Zusammenfassung und Ausblick Dank an Hanna Köpcke! 1 On-line Analytical

Mehr

SQL. Ziele. Grundlagen von SQL. Beziehung zur relationalen Algebra SELECT, FROM, WHERE. Joins ORDER BY. Aggregatfunktionen. dbis.

SQL. Ziele. Grundlagen von SQL. Beziehung zur relationalen Algebra SELECT, FROM, WHERE. Joins ORDER BY. Aggregatfunktionen. dbis. SQL Lehr- und Forschungseinheit Datenbanken und Informationssysteme Ziele Grundlagen von SQL Beziehung zur relationalen Algebra SELECT, FROM, WHERE Joins ORDER BY Aggregatfunktionen Lehr- und Forschungseinheit

Mehr

Integritätsbedingungen für komplexe Objekte in objektrelationalen Datenbanksystemen

Integritätsbedingungen für komplexe Objekte in objektrelationalen Datenbanksystemen 10. GI-Fachtagung Datenbanksysteme in Büro, Technik und Wissenschaft Integritätsbedingungen für komplexe Objekte in objektrelationalen Datenbanksystemen Friedrich-Schiller-Universität Jena Institut für

Mehr

1. Einführung Seite 1. Kapitel 1: Einführung

1. Einführung Seite 1. Kapitel 1: Einführung 1. Einführung Seite 1 Kapitel 1: Einführung 1. Einführung Seite 2 Willkommen! Studierenden-Datenbank Hans Eifrig hat die Matrikelnummer 1223. Seine Adresse ist Seeweg 20. Er ist im zweiten Semester. Lisa

Mehr

SQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99

SQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99 SQL Früherer Name: SEQUEL SQL: Structured Query Language Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99 SQL ist eine deklarative Anfragesprache Teile von SQL Vier große Teile:

Mehr

7. XML-Datenbanksysteme und SQL/XML

7. XML-Datenbanksysteme und SQL/XML 7. XML-Datenbanksysteme und SQL/XML DB-Speicherung von XML-Dokumenten Arten von XML-Dokumenten Native XML-DBS vs. XML-Erweiterungen von ORDBS Speicherungsoptionen: ganzheitliche Speicherung vs. Dekomposition

Mehr

Ausgangspunkt. Datenintegration. Ziel. Konflikte. Architekturen. Transparenz

Ausgangspunkt. Datenintegration. Ziel. Konflikte. Architekturen. Transparenz Ausgangspunkt Datenintegration Web Informationssysteme Wintersemester 2002/2003 Donald Kossmann Daten liegen in verschiedenen Datenquellen (Extremfall: jede URL eigene Datenquelle) Mietautos bei www.hertz.com

Mehr

Relationales Datenbanksystem Oracle

Relationales Datenbanksystem Oracle Relationales Datenbanksystem Oracle 1 Relationales Modell Im relationalen Modell wird ein relationales Datenbankschema wie folgt beschrieben: RS = R 1 X 1 SC 1... R n X n SC n SC a a : i=1...n X i B Information

Mehr

Kap. 3 Relationenmodell mit relationaler Algebra

Kap. 3 Relationenmodell mit relationaler Algebra Kap. 3 Relationenmodell mit relationaler Algebra Kap. 3.1. Trägermenge Seien D 1, D 2,..., D k Domänen: (Typen, Arten, Sorten, Wertmengen) z.b. string integer real Boolean DateTime BLOB, TIFF-image, HTML-Doc,

Mehr

Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell. Jetzt: -> Formulierung in DDL

Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell. Jetzt: -> Formulierung in DDL Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell Jetzt: -> Formulierung in DDL Daten-Definitionssprache (DDL) DDL ist Teil von SQL (Structured

Mehr

Grundlagen von Datenbanken SS 2010

Grundlagen von Datenbanken SS 2010 Grundlagen von Datenbanken SS 2010 2. Formalisierung des relationalen Datenmodells Agenda: Prof. Dr. Stefan Böttcher Universität Paderborn mit Material von Prof. Dr. Gregor Engels Das Relationenmodell

Mehr

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de 08 Datenbanken Übung SQL Einführung Eckbert Jankowski www.iit.tu-cottbus.de Datenmodell (Wiederholung, Zusammenfassung) Objekte und deren Eigenschaften definieren Beziehungen zwischen den Objekten erkennen/definieren

Mehr

30. Juni 2006 - Technische Universität Kaiserslautern. Paul R. Schilling

30. Juni 2006 - Technische Universität Kaiserslautern. Paul R. Schilling 30. Juni 2006 - Technische Universität Kaiserslautern Paul R. Schilling ! " #$% & '( ( ) *+, - '. / 0 1 2("$ DATEN SIND ALLGEGENWÄRTIG Bill Inmon, father of data warehousing Unternehmen In einer vollkommenen

Mehr

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird. Thomas Studer Relationale Datenbanken: Von den theoretischen Grundlagen zu Anwendungen mit PostgreSQL Springer, 2016 ISBN 978-3-662-46570-7 Dieser Foliensatz darf frei verwendet werden unter der Bedingung,

Mehr

Datenintegration. Kapitel 0: Organisatorisches. Dr. Anika Groß Sommersemester 2016

Datenintegration. Kapitel 0: Organisatorisches. Dr. Anika Groß Sommersemester 2016 Datenintegration Datenintegration Kapitel 0: Organisatorisches Dr. Anika Groß Sommersemester 2016 Universität Leipzig Institut für Informatik http://dbs.uni-leipzig.de 1 Organisatorisches Termin: donnerstags,

Mehr

Universität Leipzig Fakultät für Mathematik und Informatik Institut für Informatik. Übersicht über Crowdsourcing-Ansätze und Plattformen

Universität Leipzig Fakultät für Mathematik und Informatik Institut für Informatik. Übersicht über Crowdsourcing-Ansätze und Plattformen Universität Leipzig Fakultät für Mathematik und Informatik Institut für Informatik Übersicht über Crowdsourcing-Ansätze und Plattformen zur Beurteilung von Matchergebnissen Bachelorarbeit Leipzig, Nov,

Mehr

Data Lineage / Data Fusion

Data Lineage / Data Fusion Data Lineage / Data Fusion Dr. Armin Roth arminroth.de 27.04.2013 Dr. Armin Roth (arminroth.de) II Data Lineage / Data Fusion 27.04.2013 1 / 38 Agenda 1 Data Lineage Herkunft existierender Daten Herkunft

Mehr

Datenmodelle und Datenbanken 2

Datenmodelle und Datenbanken 2 Datenmodelle und Datenbanken 2 Prof. N. Fuhr Institut für Informatik und Interaktive Systeme Arbeitsgruppe Informationssysteme 24. Februar 2005 Hinweise zur Bearbeitung Die Zeit läuft erst, wenn Sie alle

Mehr

Datenbanksysteme I Integrität und Trigger Felix Naumann

Datenbanksysteme I Integrität und Trigger Felix Naumann Datenbanksysteme I Integrität und Trigger 9.5.2011 Felix Naumann Motivation Aktive Datenbanken 2 Einzufügende Daten können fehlerhaft sein Typographische Fehler, logische Fehler Lösung 1: Bessere Anwendung

Mehr

Klausur Konzeptionelle Modellierung

Klausur Konzeptionelle Modellierung Klausur Konzeptionelle Modellierung Braindump Wintersemester 2012/2013 Inhaltsverzeichnis 1 Allgemeines 2 1.1 Begriffe............................... 2 1.2 Konzeptionelles Schema..................... 2

Mehr

Datenbanksysteme I WS 17/18 HS-Übung. Universität Leipzig, Institut für Informatik Abteilung Datenbanken Prof. Dr. E. Rahm, V. Christen, M.

Datenbanksysteme I WS 17/18 HS-Übung. Universität Leipzig, Institut für Informatik Abteilung Datenbanken Prof. Dr. E. Rahm, V. Christen, M. Datenbanksysteme I WS 17/18 HS-Übung Universität Leipzig, Institut für Informatik Abteilung Datenbanken Prof. Dr. E. Rahm, V. Christen, M. Franke Kapitel 1: Definitionen Grundlegenge Begriffe IS, DB, DBMS/

Mehr

ACCESS SQL ACCESS SQL

ACCESS SQL ACCESS SQL ACCESS SQL Datenbankabfragen mit der Query-Language ACCESS SQL Datenbankpraxis mit Access 34 Was ist SQL Structured Query Language Bestehend aus Datendefinitionssprache (DDL) Datenmanipulationssprache

Mehr

Visualisierung in Informatik und Naturwissenschaften

Visualisierung in Informatik und Naturwissenschaften Visualisierung in Informatik und Naturwissenschaften Datenbankvisualisierung Sven Bernhard 12.06.1999 Datenbankvisualisierung Datenbanktheorie in 5 Minuten Visualisierung vs. Datenbanken Visualisierung

Mehr

Declarative Data Cleaning

Declarative Data Cleaning Declarative Data Cleaning Vortragsgrundlage: Helena Galhardas, Daniela Florescu, Dennis Shasha, Eric Simon, Cristian Augustin Saita: Declarative Data Cleaning: Language, Model, and Algorithms, in VLDB

Mehr

Innovationslabor Semantische Integration von Webdaten

Innovationslabor Semantische Integration von Webdaten Innovationslabor Semantische Integration von Webdaten Workflow-basierte Datenintegration und Objekt-Matching Dr. Andreas Thor http://dbs.uni-leipzig.de/format Workflow-basierte Datenintegration Ausgangspunkt

Mehr

SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)

SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) SQL DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) DML(Data Manipulation Language) SQL Abfragen Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans schmidt@cs.ro

Mehr

Semesterklausur Datenbanksysteme 1 SS 2015

Semesterklausur Datenbanksysteme 1 SS 2015 Universität Augsburg, Institut für Informatik Sommersemester 2015 Prof. Dr. W. Kießling 10. April 2015 F. Wenzel, L.Rudenko Datenbanksysteme 1 Semesterklausur Datenbanksysteme 1 SS 2015 Hinweise: Die Bearbeitungszeit

Mehr

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird. Thomas Studer Relationale Datenbanken: Von den theoretischen Grundlagen zu Anwendungen mit PostgreSQL Springer, 2016 ISBN 978-3-662-46570-7 Dieser Foliensatz darf frei verwendet werden unter der Bedingung,

Mehr

Wirtschaftsinformatik 7a: Datenbanken. Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte

Wirtschaftsinformatik 7a: Datenbanken. Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte Wirtschaftsinformatik 7a: Datenbanken Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte Drei Gäste bezahlen nach einem gemeinsamen Abendessen eine Rechnung von 30 Euro, so dass jeder 10 Euro gibt.

Mehr

Datenbanken. Zusammenfassung. Datenbanksysteme

Datenbanken. Zusammenfassung. Datenbanksysteme Zusammenfassung Datenbanksysteme Christian Moser Seite 1 vom 7 12.09.2002 Wichtige Begriffe Attribut Assoziation API Atomares Attribut Datenbasis DBMS Datenunabhängigkeit Datenbankmodell DDL DML DCL ER-Diagramm

Mehr

Structured Query Language (SQL) als standardisierte Anfragesprache für relationale Datenbanken

Structured Query Language (SQL) als standardisierte Anfragesprache für relationale Datenbanken Rückblick Structured Query Language (SQL) als standardisierte Anfragesprache für relationale Datenbanken Data Definition Language zur Schemadefinition (z.b. CREATE TABLE zum Anlegen von Tabellen) Data

Mehr

Informationsintegration

Informationsintegration Informationsintegration Grundlegende Architekturen Ulf Leser Inhalt diese Vorlesung Klassifikation verteilter, autonomer, heterogener Systeme Weitere Klassifikationskriterien Schichtenaufbau integrierter

Mehr