Data-Warehouse-Technologien

Größe: px
Ab Seite anzeigen:

Download "Data-Warehouse-Technologien"

Transkript

1 Data-Warehouse-Technologien Prof. Dr.-Ing. Kai-Uwe Sattler 1 Prof. Dr. Gunter Saake 2 Dr. Veit Köppen 2 1 TU Ilmenau FG Datenbanken & Informationssysteme 2 Universität Magdeburg Institut für Technische und Betriebliche Informationssysteme Letzte Änderung: c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

2 Teil IV Extraktion, Transformation, Laden

3 Extraktion, Transformation und Laden 1 ETL-Prozess 2 Extraktion von Daten aus Quellen 3 Laden von Daten 4 Transformationsaufgaben 5 Schematische Heterogenität 6 Datenfehler 7 ELT c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

4 ETL-Prozess ETL: Überblick Zwei Schritte Von den Quellen zur Staging Area Extraktion von Daten aus den Quellen Erstellen / Erkennen von differentiellen Updates Erstellen von LOAD Files Von der Staging Area zur Basisdatenbank Data Cleaning und Tagging Erstellung integrierter Datenbestände Kontinuierliche Datenversorgung des DWH Sicherung der DWH Konsistenz bzgl. Datenquellen Effiziente Methoden essentiell Sperrzeiten minimieren Rigorose Prüfungen essentiell Datenqualität sichern c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

5 ETL-Prozess ETL-Prozess Häufig aufwendigster Teil des Data Warehousing Vielzahl von Quellen Heterogenität Datenvolumen Komplexität der Transformation Schema- und Instanzintegration Datenbereinigung Kaum durchgängige Methoden- und Systemunterstützung, jedoch Vielzahl von Werkzeugen vorhanden c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

6 ETL-Prozess ETL-Prozess Extraktion: Selektion eines Ausschnitts der Daten aus den Quellen und Bereitstellung für Transformation Transformation: Anpassung der Daten an vorgegebene Schemaund Qualitätsanforderungen Laden: physisches Einbringen der Daten aus dem Datenbeschaffungsbereich in das Data Warehouse (einschl. eventuell notwendiger Aggregationen) c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

7 ETL-Prozess Definitionsphase des ETL-Prozesses OLTP Analysebedarf Datenmodell und Konventionen Legacy Quelldatenanalyse Auswahl der Objekte Erstellen der Transformation Erstellen der ETL-Routinen Externe Quellen Datenquellen Dokumentation, operativer Datenkatalog Regelwerk für Datenqualität Metadaten- Management Abbildung Schlüsseltransf. Normalisierung Transformationsregeln ETL-Jobs Erfolgskriterien für Laderoutinen DWH Repository c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

8 Extraktion von Daten aus Quellen Extraktion Aufgabe Regelmäßige Extraktion von Änderungsdaten aus Quellen Datenversorgung des DWH Unterscheidung Zeitpunkt der Extraktion Art der extrahierten Daten c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

9 Extraktion von Daten aus Quellen Zeitpunkt Synchrone Benachrichtigung Quelle propagiert jede Änderung Asynchrone Benachrichtigung Periodisch Quellen erzeugen regelmäßig Extrakte DWH fragt regelmäßig Datenbestand ab Ereignisgesteuert DWH erfragt Änderungen vor jedem Jahresabschluss Quelle informiert alle X Änderungen Anfragegesteuert DWH erfragt Änderungen vor jedem tatsächlichen Zugriff c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

10 Extraktion von Daten aus Quellen Art der Daten Flow: alle Änderungen im DWH integrieren Verkaufspositionen, Lieferungen Änderungen mit aufnehmen Stock: Zeitpunkt ist essentiell muss festgelegt werden Mitarbeiteranzahl zum Monatsende einer Filiale Lagerbestand zum Jahresende Value per Unit: Abhängig von Unit und anderen Dimensionen Währungskurs zu einem Zeitpunkt Goldpreis an einem Börsenplatz c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

11 Extraktion von Daten aus Quellen Art der Daten Snapshots: Quelle liefert immer kompletten Datenbestand Neuer Lieferantenkatalog, neue Preisliste, etc. Änderungen erkennen Historie korrekt abbilden Logs: Quelle liefert jede Änderung Transaktionslogs, Anwendungsgesteuertes Logging Änderungen effizient einspielen Netto-Logs: Quelle liefert Netto-Änderungen Katalogupdates, Snapshot-Deltas Keine vollständige Historie möglich Änderungen effizient einspielbar c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

12 Extraktion von Daten aus Quellen Zeitpunkt der Datenversorgung Quelle... Technik Aktualität DWH Belastung DWH Belastung Quellen erstellt periodisch Files Viele Snapshots Systeme (Mainframe) Frequenz nicht online zugreifbar Batchläufe, Je nach Niedrig Niedrig propagiert jede Änderung Trigger, Replikation Maximal Hoch Sehr hoch Widerspricht DWH-Idee: Mehrbelastung der Quellen erstellt Extrakte vor Be- Sehr schwierig Maximal Medium Medium auf nutzung Anfrage Anwen- Technisch Anwendungsgesteuert bisher nicht Jeeffizient nachdurchführbar Je nach Je nach dungsge- steuert Frequenz Frequenz Frequenz c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

13 Extraktion von Daten aus Quellen Extraktion aus Legacy-Systemen Sehr anwendungsabhängig Zugriff auf Host-Systeme ohne Online-Zugriff Zugriff über BATCH, Reportwriter, Scheduling Daten in Non-Standard-Datenbanken ohne APIs Programmierung in PL-1, COBOL, Natural, IMS,... Unklare Semantik, Doppelbelegung von Feldern, sprechende Schlüssel, fehlende Dokumentation, Herrschaftswissen bei wenigen Aber: Kommerzielle Tools vorhanden c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

14 Extraktion von Daten aus Quellen Differential Snapshot Problem Viele Quellen liefern immer den vollen Datenbestand Molekularbiologische Datenbanken Kundenlisten, Angestelltenlisten Produktkataloge Problem Ständiges Einspielen aller Daten ineffizient Duplikate müssen erkannt werden Algorithmen um Delta-Files zu berechnen Schwierig bei sehr großen Files [Labio Garcia-Molina 1996] c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

15 Extraktion von Daten aus Quellen Szenario Quellen liefern Snapshots als File F Ungeordnete Menge von Records (K, A1,..., A n ) Gegeben: F 1, F 2, mit f 1 = F 1, f 2 = F 2 Berechne kleinste Menge O = {INS, DEL, UPD} mit O(F 1 ) = F 2 O nicht eindeutig! O 1 = {(INS(X)),, (DEL(X))} O 2 = {,, } Differential Snapshot Problem c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

16 Extraktion von Daten aus Quellen Szenario F 1 F 2 K4, t, r,... K102, p, q,... K104, k, k,... K202, a, a,... K3, t, r,... K102, p, q,... K103, t, h,... K104, k, k,... K202, b, b,... Differential Snapshot Algorithmus INS K3 DEL K4 INS K103 UPD K202:... DWH c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

17 Extraktion von Daten aus Quellen Annahmen Berechnung einer konsekutiven Folge von DS Files am , , ,... Kostenmodell Alle Operationen im Hauptspeicher sind umsonst IO zählt mit Anzahl Records: sequenzielles Lesen Keine Beachtung von Blockgrößen Hauptspeichergröße: M (Records) Filegrößen F x = f x (Records) Files i.d.r. größer als Hauptspeicher c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

18 Extraktion von Daten aus Quellen DS naive Nested Loop Berechnung von O Record R aus F1 lesen F2 sequenziell lesen und mit R vergleichen R nicht in F 2 O := O (DEL(R)) R in F 2 O := O (UPD(R)) / ignorieren Problem: INS wird nicht gefunden Hilfsstruktur notwendig Array mit IDs aus F2 (on-the-fly generieren) R jeweils markieren, abschließender Lauf für INS Anzahl IO: f 1 f 2 + δ Verbesserungen? Suche in F2 abbrechen, wenn R gefunden jeweils Partition mit Größe M von F1 laden: f1 M f 2 c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

19 Extraktion von Daten aus Quellen DS small kleine Files Annahme: Hauptspeicher M > f 1 (oder f 2 ) Berechnung von O F1 komplett lesen F2 sequenziell lesen (S) S F 1: O := O (UPD(S)) / ignorieren S F 1: O := O (INS(S)) S in F 1 markieren (Bitarray) Abschließend: Records R F1 ohne Markierung: O := O (DEL(R)) Anzahl IO: f 1 + f 2 + δ Verbesserungen F 1 im Hauptspeicher sortieren schnellerer Lookup c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

20 Extraktion von Daten aus Quellen DS sort Sort-Merge Allgemeiner Fall: M f 1 und M f 2 Annahme: F 1 ist sortiert Sortieren auf Sekundärspeicher von F 2 F2 in Partitionen P i mit P i = M lesen Pi im Hauptspeicher sortieren und schreiben in F i ( Runs ) Alle F i mischen Annahme: M > F 2 IO: 4 f 2 Sortiertes F 2 aufheben für nächstes DS (wird dort F 1 ) Pro DS muss nur F2 sortiert werden Berechnung von O Sortierte F1 und F 2 öffnen Mischen (paralleles Lesen mit Skipping) Anzahl IO: f f 2 + δ c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

21 Extraktion von Daten aus Quellen DS sort2 Verschränkung Sortiertes F 1 vorhanden Berechnung von O F2 in Partitionen P i mit P i = M lesen Pi im Hauptspeicher sortieren und schreiben in F2 i Alle F2 i mischen und gleichzeitig mit F 1 vergleichen Anzahl IO: f f 2 + δ c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

22 Extraktion von Daten aus Quellen DS hash Partitioned Hash Berechnung von O F2 in Partitionen P i mit P i = M/2 hashen Hashfunktion muss garantieren: P i P j =, i j Partitionen sind Äquivalenzklassen bzgl. der Hashfunktion F 1 liegt noch partitioniert vor F1 und F 2 wurden mit derselben Hashfunktion partitioniert Jeweils P1,i und P 2,i parallel lesen und mischen Anzahl IO: f f 2 + δ c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

23 Extraktion von Daten aus Quellen Warum nicht einfach... UNIX diff? diff erwartet / beachtet Umgebung der Records Hier: Records sind völlig ungeordnet in der Datenbank mit SQL? Dreimaliges Lesen jeder Relation notwendig INSERT INTO delta SELECT UPD,...FROM F1, F2 WHERE F1.K = F2.K AND F1.W <> F2.W UNION SELECT INS,...FROM F2 WHERE NOT EXISTS (...) UNION SELECT DEL,...FROM F1 WHERE NOT EXISTS (...) c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

24 Extraktion von Daten aus Quellen Vergleich Eigenschaften IO Bemerkungen DS naiv f 1 f 2 außer Konkurrenz, extra Datenstruktur notwendig DS small f 1 + f 2 nur für kleine Dateien DS sort2 f f 2 DS hash f f 2 überlappungsfreie Hashfunktion, Partitionsgröße schwierig zu schätzen, Verteilungsannahmen (Sampling) Erweiterung von DS hash für schlechtere Hashfunktionen bekannt c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

25 Extraktion von Daten aus Quellen Weitere DS Verfahren Anzahl Partitionen / Runs größer als File-Handles des OS Hierarchische externe Sortierverfahren Kompression: Files komprimieren Größere Partitionen / Runs Größere Chance, Vergleich im Hauptspeicher durchzuführen In Realität schneller (Annahmen des Kostenmodells) Windows Algorithmus Annahme: Files haben eine unscharfe Ordnung Mischen mit Sliding Window über beide Files Liefert u.u. redundante INS-DEL Paare Anzahl IO: f1 + f 2 c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

26 Extraktion von Daten aus Quellen DS mit Zeitstempel Annahme: Records sind (K, A 1,..., A n, T) T: Zeitstempel der letzten Änderung Erstellen von O Festhalten von Talt : Letztes Update (max{t} von F 1 ) F2 sequenziell lesen Entries mit T > T alt interessant Aber: INS oder UPD? Weiteres Problem: DEL wird nicht gefunden Zeitstempel erspart nur Attributvergleich c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

27 Laden von Daten Laden Aufgabe Effizientes Einbringen von externen Daten in DWH Kritischer Punkt Ladevorgänge blockieren unter Umständen das komplette DWH (Schreibsperre auf Faktentabelle) Aspekte Trigger Integritätsbedingungen Indexaktualisierung Update oder Insert? c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

28 Laden von Daten Satzbasiert Benutzung von Standard-Schnittstellen: PRO*SQL, JDBC, ODBC,... Arbeitet im normalen Transaktionskontext Trigger, Indexe und Constraints bleiben aktiv Manuelle Deaktivierung möglich Keine großräumigen Sperren Sperren können durch COMMIT verringert werden Nicht bei Oracle: Leseoperationen werden nie gesperrt (MVCC) Benutzung von Prepared Statements Teilweise proprietäre Erweiterungen (Arrays) verfügbar c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

29 Laden von Daten BULK Load DB-spezifische Erweiterungen zum Laden großer Datenmengen Läuft (meist) in speziellem Context Oracle: DIRECTPATH option im Loader Komplette Tabellensperre Keine Beachtung von Triggern oder Constraints Indexe werden erst nach Abschluss aktualisiert Kein transaktionaler Kontext Kein Logging Checkpoints zum Wiederaufsetzen Praxis: BULK Uploads c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

30 Laden von Daten Beispiel: ORACLE sqlldr Input Input- Datafiles Dateien Loader- Kontroll- Datei Log- Datei SQL*Loader Input Schlechte Datafiles Dateien Datenbank Indexe Input Abgelehnte Datafiles Dateien Tabellen [Quelle: Oracle 11g Dokumentation] c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

31 Laden von Daten Beispiel: ORACLE sqlldr (2) Control-File LOAD DATA INFILE bier.dat REPLACE INTO TABLE getraenke ( bier_name POSITION(1) CHAR(35), bier_preis POSITION(37) ZONED(4,2), bier_bestellgroesse POSITION(42) INTEGER, getraenk_id "getraenke_seq.nextval" ) Datenfile: bier.dat Ilmenauer Pils Erfurter Bock Magdeburger Weisse Anhaltinisch Flüssig c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

32 Laden von Daten BULK Load Beispiel Vielfältige Optionen Behandlung von Ausnahmen (Badfile) Datentransformationen Checkpoints Optionale Felder Konditionales Laden in mehrere Tabellen Konditionales Laden von Records REPLACE oder APPEND Paralleles Laden... c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

33 Laden von Daten Direct Path Load SQL*Loader SQL*Loader Benutzerprozesse Schreibe Datenbank-Block Direkter Pfad Generiere SQL- Kommandos Konventioneller Pfad Generiere SQL- Generiere SQL- Kommandos Generiere SQL- Kommandos Kommandos Oracle Server SQL-Kommando Verarbeitung Speichermanagement Hole neue Ausmaße Passe Füllstand an Finde partielle Blöcke Befülle partielle Blöcke Puffer Cache Management - Manage Queues - Löse Konflikte auf Puffer-Cache Datenbank-Blöcke lesen Datenbank-Blöcke schreiben Datenbank [Quelle: Oracle 11g Dokumentation] c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

34 Laden von Daten Multi-Table-Insert in Oracle Einfügen in mehrere Tabellen bzw. mehrfach (z.b. für Pivoting) INSERT ALL INTO Quartal_Verkauf VALUES (Produkt_Nr, Jahr /Q1, Umsatz_Q1) INTO Quartal_Verkauf VALUES (Produkt_Nr, Jahr /Q2, Umsatz_Q2) INTO Quartal_Verkauf VALUES (Produkt_Nr, Jahr /Q3, Umsatz_Q3) INTO Quartal_Verkauf VALUES (Produkt_Nr, Jahr /Q4, Umsatz_Q4) SELECT... FROM... c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

35 Laden von Daten Multi-Table-Insert in Oracle (2) Bedingtes Einfügen INSERT ALL WHEN ProdNr IN (SELECT ProdNr FROM Werbe_Aktionen) INTO Aktions_Verkauf VALUES (ProdNr, Quartal, Umsatz) WHEN Umsatz > 1000 INTO Top_Produkte VALUES (ProdNr) SELECT... FROM... c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

36 Laden von Daten Merge in Oracle Merge: Versuch eines Inserts, bei Fehler (durch Verletzung einer Schlüsselbedingung) Update MERGE INTO Kunden K USING Neukunden N ON (N.Name = K.Name AND N.GebDatum = K.GebDatum) WHEN MATCHED THEN UPDATE SET K.Name = N.Name, K.Vorname=N.Vorname, K.GebDatum=N.GebDatum WHEN NOT MATCHED THEN INSERT VALUES (MySeq.NextVal, N.Name, N.Vorname, N.GebDatum) c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

37 Laden von Daten Der ETL-Prozess: Transformationsaufgaben Einsatz -fähige Quellen Extraktion, Transformation, Laden Extraktion Integration Aggregation Data- Warehouse Zwischenspeicher Data- Warehouse Instanzextraktion und Transformation Instanzabgleich und Integration Filterung, Aggregation Scheduling, Logging, Monitoring, Recovery, Backup Legende: Meta-Datenfluss Datenfluss Instanz-Charakteristika (reale Meta-Daten) Translationsregeln 4 5 Abbildungen von Quell- auf Zielschemata Filterungs- und Aggregationsregeln [Rahm Do 2000] c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

38 Laden von Daten Technik: Quelle Arbeitsbereich BasisDB Quelle 1: RDBMS Quelle 2: IMS Rel. Schema Q1 Rel. Schema Q2 Datenwürfel, Integriertes Schema BULK Load nur für ersten Schritt Zweiter Schritt INSERT INTO...SELECT... Logging ausschaltbar Parallelisierbar c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

39 Laden von Daten Transformationsaufgaben Beim Laden Einfache Konvertierungen (für LOAD - File) Satzorientierung (Tupel) Vorbereitung für BULK Loader > meist Scripte oder 3GL Im Datenbereitstellungsbereich Mengenorientierte Berechnungen Inter- und Intra-Relationenvergleich Vergleich mit Basisdatenbank Duplikate Tagging der Datensätze SQL c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

40 Laden von Daten Aufgabe: Quelle Arbeitsbereich BasisDB Was macht man wo und wann? Keine definierte Aufgabenteilung vorhanden Quelle Arbeitsbereich Arbeitsbereich Basis-DB Art des Zugriffs Satzorientiert Mengenorientiert Verfügbare Datenbasen Eine Quelle (Updatefile) Viele Quellen Verfügbare Datensätze Quellabhängig: Alle, alle Änderungen, Zusätzlich Basis-DB verfügbar Deltas Programmiersprache Skripte: Perl, AWK,... oder 3GL SQL, PL/SQL c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

41 Transformationsaufgaben Transformation Problem Daten im Arbeitsbereich nicht im Format der Basisdatenbank Struktur der Daten unterschiedlich Arbeitsbereich: Quellnahes Schema Basis-DB: Multidimensionales Schema Strukturelle Heterogenität Aspekte Datentransformation Schematransformation c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

42 Transformationsaufgaben Daten- und Schemaheterogenität Hauptdatenquelle: OLTP-Systeme Sekundärquellen: Dokumente in firmeninternen Altarchiven Dokumente im Internet via WWW, FTP Unstrukturiert: Zugriff über Suchmaschinen,... Semistrukturiert: Zugriff über Suchmaschinen, Mediatoren, Wrapper als XML-Dokumente o.ä. Grundproblem: Heterogenität der Quellen c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

43 Transformationsaufgaben Aspekte der Heterogenität Verschiedene Datenmodelle Bedingt durch autonome Entscheidung über Anschaffung von Systemen in den Unternehmensbereichen Verschiedene und verschieden mächtige Modellierungskonstrukte, D.h. Anwendungssemantik in unterschiedlichem Ausmaß erfassbar Abbildung zwischen Datenmodellen nicht eindeutig Beispiel: Relationenmodell vs. objektorientierte Modellierung vs. XML Name Vorname Kunde PLZ Kunde Name Vorname PLZ... Name Vorname Kunde PLZ c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

44 Transformationsaufgaben Aspekte der Heterogenität (2) Unterschiedliche Modellierungen für gleiche Sachverhalte der Realwelt Bedingt durch Entwurfautonomie Selbst im gleichen Datenmodell verschiedene Modellierungen möglich, z.b. durch unterschiedliche Modellierungsperspektiven der DB-Designer Kunde Name Vorname Geschlecht... Kunde Name Vorname... Mann Frau c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

45 Transformationsaufgaben Aspekte der Heterogenität (3) Unterschiedliche Repräsentation der Daten Unterschiedliche Datentypen möglich Unterschiedliche Umfang der unterstützten Datentypen Unterschiedliche interne Darstellung der Daten Auch unterschiedliche Werte eines Datentyps zur Repräsentation derselben Information c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

46 Transformationsaufgaben Datenfehler-Klassifikation Datenfehler Einzelne Datenquellen Integrierte Datenquellen Schemaebene Datenebene Schemaebene Datenebene Fehlende Integritätsbedingungen, schlechtes Schema Design Fehler in Datenträgern Heterogene Datenmodelle und -schemata Überlappende, widersprüchliche und inkonsistente Daten - Unzulässiger Wert - Attributabhängigkeit verletzt - Eindeutigkeit verletzt - Referenzielle Integrität verletzt - Fehlende Werte - Schreibfehler - Falsche Werte - Falsche Referenz - Kryptische Werte - Eingebettete Werte - Falsche Zuordnung - Widersprüchliche Werte - Transpositionen - Duplikate - Datenkonflikte - Strukturelle Heterogenität - Semantische Heterogenität - Schematische Heterogenität - Widersprüchliche Werte - Unterschiedliche Repräsentationen - Unterschiedliche Genauigkeit - Unterschiedliche Aggregationsebenen -Duplikate [Rahm Do 2000, Leser Naumann 2007] c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

47 Schematische Heterogenität Schematische Heterogenität Ursache: Entwurfsautonomie unterschiedliche Modellierung Unterschiedliche Normalisierung Was ist Relation, was Attribut, was Wert? Aufteilung von Daten in Tabellen Redundanzen aus Quellsystemen Schlüssel In SQL nicht gut unterstützt INSERT hat nur eine Zieltabelle SQL greift auf Daten zu, nicht auf Schemaelemente Erfordert meist Programmierung c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

48 Schematische Heterogenität Schema Mapping Datentransformation zwischen heterogenen Schemata 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 c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

49 Schematische Heterogenität Warum ist Schema Mapping schwierig? Generierung der richtigen Anfrage unter Berücksichtigung des Quell und Ziel-Schemas, des Mappings und der Nutzer-Intention: Semantik! Garantie, dass die transformierten Daten dem Zielschema entsprechen Flach oder geschachtelt Integritätsbedingungen Effiziente Datentransformation c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

50 Schematische Heterogenität Schema Mapping: Normalisiert vs. Denormalisiert 1:1-Assoziationen werden unterschiedlich dargestellt Durch Vorkommen im gleichen Tupel Durch Fremdschlüsselbeziehung Bier bid name alkoholgehalt Produktsorte pfk bezeichnung Produkt pid name hersteller produktsorte SELECT bid AS pid, name, NULL AS hersteller, NULL AS produktsorte FROM Bier UNION SELECT NULL AS pid, NULL AS name, NULL AS herstelle bezeichnung AS produktsorte FROM Produktsorte c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

51 Schematische Heterogenität Schema Mapping: Normalisiert vs. Denormalisiert (2) Bier bid name alkoholgehalt Produktsorte pfk bezeichnung Produkt pid name hersteller produktsorte SELECT bid AS pid, name, NULL AS hersteller, bezeichnung AS produktsorte FROM Bier, Produktsorte WHERE bid = pfk Nur eine von vier möglichen Interpretationen! c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

52 Schematische Heterogenität Schema Mapping: Normalisiert vs. Denormalisiert (3) Produkt name hersteller produktsorte Bier bid name alkoholgehalt Produktsorte pfk bezeichnung Erfordert Generierung von Schlüsseln: Skolemfunktion SK, die einen bzgl. der Eingabe eindeutigen Wert liefert (z.b. Konkatenation aller Werte) Bier := SELECT SK(name) AS bid, name, NULL AS alkoholgehalt FROM Produkt Produktsorte := SELECT SK(name) AS pfk, produktsorte AS bezeichnung FROM Produkt c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

53 Schematische Heterogenität Schema Mapping: Geschachtelt vs. Flach 1:1-Assoziationen werden unterschiedlich dargestellt D.h. geschachtelte Elemente Durch Fremdschlüsselbeziehung Bier bid name alkoholgehalt Produkt pid name produktsorte Produkt name hersteller produktsorte Bier name Produktsorte bezeichnung Produktsorte bezeichnung c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

54 Schematische Heterogenität Schwierigkeiten Beispiel: Quelle(ID, Name, Strasse, PLZ, Umsatz) Zielschema #1 Kunde(ID, Name, Umsatz) Adresse(ID, Strasse, PLZ) Erfordert 2 Durchläufe der Quelltabelle INSERT INTO Kunde... SELECT... INSERT INTO Adresse... SELECT... Zielschema #2 PremKunde(ID, Name, Umsatz) NormKunde(ID, Name, Umsatz) Erfordert 2 Durchläufe der Quelltabelle INSERT INTO PremKunde... SELECT... WHERE Umsatz>=X INSERT INTO NormKunde... SELECT... WHERE Umsatz<X c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

55 Schematische Heterogenität Schwierigkeiten (2) Schema P1(Id, Name, Geschlecht) P2(Id, Name, M, W) P31(Id, Name), P32(Id, Name) P1 P2 INSERT INTO P2 (id, name, T, F )... SELECT... INSERT INTO P2 (id, name, F, T )... SELECT... P3 P1 INSERT INTO P1(id, name, weiblich )... SELECT... FROM P31 INSERT INTO P1(id, name, männlich )... SELECT... FROM P32 Anzahl Werte muss feststehen; Neues Geschlecht Alle Anfragen ändern c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

56 Datenfehler Datenfehler Eindeutigkeit verletzt Unterschiedliche Repräsentation Widersprüchliche Werte Referentielle Integrität verletzt unvollständig Person KNr Name Geb.datum Alter Geschl. Telefon PLZ 34 Meier, Tom M Tina Möller W Tom Meier F null null t@r.de Ort PLZ Ort Magdeburg Spanien Illmenau Falsche oder unzulässige Werte Fehlende Werte (z.b. Default-Werte) Duplikate Schreib- oder Tippfehler c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

57 Datenfehler Vermeidung von Datenfehlern Vermeidung von falschen Datentypen falschen Werte fehlenden Werten ungültigen Referenzen Duplikaten Inkonsistenzen veralteten Daten Dennoch in der Praxis: durch Datentypdefinition, domain-constraints check not null foreign key unique, primary key Transaktionen Replikation, materialisierte Sichten Fehlen von Metadaten, Integritätsbedingungen,... Eingabefehler, Unkenntnis,... Heterogenität... c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

58 Datenfehler Phasen der Datenaufbereitung Diskretisierung Nutzung Transformation Dimensionsreduktion / Sampling Aggregation / Feature- Extraktion Sammlung/ Auswahl DQ-Probleme identifizieren/ quantifizieren Fehlerarten/ -ursachen erkennen Data Profiling Fehlerkorrektur Duplikaterkennung und Merging Standardisierung/ Normalisierung Data Cleaning c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

59 Datenfehler Data Profiling Analyse von Inhalt und Struktur einzelner Attribute Datentyp, Wertebereich, Verteilung und Varianz, Vorkommen von Nullwerten, Eindeutigkeit, Muster (z.b. dd/mm/yyyy) Analyse von Abhängigkeiten zwischen Attributen einer Relation unscharfe Schlüssel Funktionale Abhängigkeiten, potenzielle Primärschlüssel, unscharfe Abhängigkeiten Notwendigkeit: Keine expliziten Integritätsbedingungen spezifiziert Jedoch in Daten in den meisten Fällen erfüllt Analyse von Überlappungen zwischen Attributen verschiedener Relationen Redundanzen, Fremdschlüsselbeziehungen c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

60 Datenfehler Data Profiling (2) Fehlende bzw. falsche Werte Ermittelte vs. Erwartete Kardinalität (z.b. Anzahl von Filialen, Geschlecht von Kunden) Anzahl der Nullwerte, Minimum / Maximum, Varianz Daten- bzw. Eingabefehler Sortierung und manuelle Prüfung Ähnlichkeitstests Duplikate Tupelanzahl vs. Attributkardinalität c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

61 Datenfehler Data Profiling mit SQL SQL-Anfragen für einfache Profiling-Aufgaben Schema, Datentypen: Anfragen an Schemakatalog Wertebereich select min(a), max(a), count(distinct A) from Tabelle Datenfehler, Defaultwerte select Ort, count(*) as Anz from Kunden group by Ort order by Anz Aufsteigend: Eingabefehler, z.b. Illmenau: 1, Ilmenau: 50 Absteigend: undokumentierte Default-Werte, z.b. AAA: 80 c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

62 Datenfehler Data Cleaning Erkennen & Beseitigen von Inkonsistenzen, Widersprüchen und Fehlern in Daten mit dem Ziel der Qualitätsverbesserung Auch Cleansing oder Scrubbing Bis zu 80% des Aufwandes in DW-Projekten Cleaning im DW: Teil des ETL-Prozesses c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

63 Datenfehler Datenqualität und Datenbereinigung Regelbasierte Analyse Konsistenz mittels regelbasierter Analyse Geschäfts- und Datenregeln (Defekte) Gültigkeit mehrer Werte Abhängigkeitsanalyse Beziehungsanalyse Konsistenz Referenzielle Integrität Integritätsverletzungen, Waisen (Orphans), Kardinalitäten Datentyp-, Feldlängen- und Wertebereichskonsistenzen Schlüsseleindeutigkeit Eindeutigkeit der Primär- bzw. Kandidatenschlüssel Korrektheit mittels statistischer Kontrolle Min, Max, Mittel, Median, Standardabweichung,... Redundanzfreiheit Normalisierungsgrad (1.,2. und 3. NF), Duplikatprüfung Spaltenanalyse Eindeutigkeit Analyse der Metadaten Genauigkeit Analyse der Stelligkeiten (Gesamt- und Nachkommastellen für numerische Attribute) Vollständigkeit Füllgradanalyse der Entitäten und Attribute Einheitlichkeit Gültigkeit einzelner Werte Formatanalyse (für numerische Attribute, Zeiteinheiten und Zeichenketten) c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

64 Datenfehler Normalisierung und Standardisierung Datentypkonvertierung: varchar int Kodierungen: 1: Adresse unbekannt, 2: alte Adresse, 3: gültige Adresse, 4: Adresse bei Ehepartner,... Normalisierung: Abbildung in einheitliches Format Datum: 03/01/ März 2011 Währung: $ e Zeichenketten in Großbuchstaben Zerlegung in Token: Saake, Gunter Saake, Gunter Diskretisierung numerischer Werte Domänenspezifische Transformationen Codd, Edgar Frank Edgar Frank Codd Str. Straße Adressen über Adressdatenbanken Branchenspezifische Produktbezeichnungen c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

65 Datenfehler Datentransformation In SQL gut unterstützt Vielfältige Funktionen im Sprachstandard Stringfunktionen, Decodierung, Datumsumwandlung, Formeln, Systemvariable,... Funktionen in PL/SQL erstellen - in SQL verwenden Daten "Pause, Lilo" "Pause", "Lilo" "Prehn, Leo" "Prehn", "Leo" SQL INSERT INTO kunden (nachname, vorname) SELECT SubStr(name, 0, instr(name,, )-1), SubStr(name, instr(name,, )+1) FROM rawdata; c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

66 Datenfehler Duplikaterkennung Identifikation von semantisch äquivalenten Datensätzen, d.h. die das gleiche Realwelt-Objekt repräsentieren Auch: Record Linkage, Object Identification, Duplicate Elimination, Merge/Purge Merge: Erkennen von Duplikaten Purge: Auswahl /Berechnung des besten Vertreters pro Klasse KundenNr Name Adresse 3346 Just Vorfan Hafenstraße Justin Forfun Hafenstr Lilo Pause Kuhweg Lisa Pause Kuhweg 42 Ann Joy Domplatz 2a Anne Scheu Domplatz 28 c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

67 Datenfehler Duplikaterkennung: Vergleiche Typische Vergleichsregeln if ssn1 = ssn2 then match else if name1=name2 then if firstname1=firstname2 then if adr1=adr2 then match else unmatch else if adr1=adr2 then match_household else if adr1=adr2 then... Naiver Ansatz: Jeder-gegen-jeden O(n 2 ) Vergleiche Maximale Genauigkeit (je nach Regeln) Viel zu teuer c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

68 Datenfehler Duplikaterkennung: Prinzip Partitionierung des Suchraums R r 1, r 2, r 3,... Matches (M) r 1,s 1 r 2,s 2 r 3,s 3 R x S S s 1, s 2, s 3, Vergleichsfunktion Non Matches (U) c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

69 Datenfehler Partitionierung Blocking Aufteilung des Suchraums in disjunkte Blöcke Duplikate nur innerhalb eines Blockes Sortierte Nachbarschaft [Hernandez Stolfo 1998] Sortierung der Daten anhand eines gewählten Schlüssels Vergleiche in einem gleitenden Fenster Multi-Pass-Technik Transitive Hülle über verschiedene Sortierungen c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

70 Datenfehler Sortierte Nachbarschaft 1 Berechne einen Schlüssel pro Datensatz Bsp: SSN + ersten 3 Zeichen von Name +... Beachtung typischer Fehler: 0-O, Soundex, Nachbartasten,... 2 Sortiere nach Schlüssel 3 Laufe Liste sequenziell ab 4 Vergleiche innerhalb eines Fensters W, W = w Mit welchen Tupeln muss wirklich verglichen werden? Komplexität Schlüsselerzeugung: O(n), Sortieren: O(n log(n)); Vergleichen: O((n/w) (w 2 )) = O(n w); Gesamt: O(n log(n)) oder O(n w) w w c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

71 Datenfehler Sortierte Nachbarschaft: Probleme Genauigkeit schlecht Sortierkriterium bevorzugt immer Attribute Sind erste Buchstaben wichtiger für Identität als letzte? Ist Nachname wichtiger als Hausnummer? Window vergrößern? Keine Hilfe Dominanz eines Attributes bleibt gleich, aber Laufzeit verschlechtert sich schnell c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

72 Datenfehler Multi-Pass-Technik Sortieren nach mehreren Kriterien und Identifikation von Duplikaten Bildung der transitiven Hülle der Duplikate bis zu gegebener Länge A B C B C A 1. Lauf: A matches B 2. Lauf: B matches C Transitivität: A matches C c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

73 Datenfehler Vergleichsfunktionen Vergleichsfunktionen für Felder (String A und B), u.a.: Editierdistanz: Anzahl der Editieroperationen (Einfügen, Löschen, Ändern) für Änderung von A in B q-grams: Vergleich der Mengen aller Teilstrings von A und B der Länge q Jaro-Distanz und Jaro-Winkler-Distanz: Berücksichtigung von gemeinsamen Zeichen (innerhalb der halben Stringlänge) und transponierten Zeichen (an anderer Position) c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

74 Datenfehler Edit-Distanz Levensthein-Distanz: Anzahl der Editieroperationen (Einfügen, Löschen, Ändern) für Änderung von A in B Beispiel: edit_distance( Qualität, Quantität ) = 2 update(3, n ) insert(4, t ) Anwendung: select P1.Name, P2.Name from Produkt P1, Produkt P2 where edit_distance(p1.name, P2.Name) <= 2 c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

75 Datenfehler q-gramme Menge aller Substrings der Länge q Qualitt 3 := { Q, _Qu, Qua, ual, ali, lit, itä, tät, ät_, t } Beobachtung: Strings mit kleiner Edit-Distanz haben viele gemeinsame q-gramme, d.h. für Edit-Distanz = k mind. gemeinsame q-gramme max( A, B ) 1 (k 1) q Positionale q-gramme: Ergänzung um Position im String Qualität := { (-1, Q), (0, _Qu), (1, Qua),... } Filterung für effizienten Vergleich: COUNT: Anzahl der gemeinsamen q-gramme POSITION: Positionsunterschied zwischen korrespondierenden q-grammen k LENGTH: Differenz der Stringlängen k c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

76 Datenfehler Datenkonflikte Datenkonflikt: Zwei Duplikate haben unterschiedliche Attributwerte für semantisch gleiches Attribut Im Gegensatz zu Konflikten mit Integritätsbedingungen Datenkonflikte entstehen Innerhalb eines Informationssystems (intra-source) und Bei der Integration mehrerer Informationssysteme (inter-source) Voraussetzung: Duplikat, d.h. Identität schon festgestellt Erfordert: Konfliktauflösung (Purging, Reconciliation) c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

77 Datenfehler Datenkonflikte: Entstehung Mangels Integritätsbedingungen oder Konsistenz-Checks Bei redundanten Schemata Durch partielle Informationen Bei Entstehung von Duplikaten Nicht korrekte Einträge Tippfehler, Übertragungsfehler Falsche Rechenergebnisse Obsolete Einträge Unterschiedliche Aktualisierungszeitpunkte Ausreichende Aktualität einer Quelle Verzögerte Aktualisierung Vergessene Aktualisierung c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

78 Datenfehler Datenkonflikte: Behebung Referenztabellen für exakte Wertabbildung Z.B. Städte, Länder, Produktnamen, Codes... Ähnlichkeitsmaße Bei Tippfehlern, Sprachvarianten (Meier, Mayer,...) Standardisieren und Transformieren Nutzung von Hintergrundwissen (Metadaten) Z.B. Konventionen (landestypische Schreibweisen) Ontologien, Thesauri, Wörterbücher zur Behandlung von Homonymen, Synonymen,... Bei der Integration Präferenzordnung über Datenquellen nach Aktualität, Trust (Vertrauen), Öffnungszeiten usw. Konfliktlösungsfunktionen c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

79 ELT ETL vs. ELT ELT = Extract-Load-Transform Variante des ETL-Prozesses, bei dem die Daten erst nach dem Laden transformiert werden Ziel: Transformation mit SQL-Anweisungen in der Zieldatenbank Verzicht auf spezielle ETL-Engines E L T Quellen Data Warehouse c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

80 ELT ELT Extraktion Für Quellsystteme optimierte Abfragen (z.b. SQL) Extraktion ebenfalls mit Monitoren überwacht Automatische Extraktion schwieriger (z.b. bei Datenstrukturänderungen) Laden Parallele Verarbeitung der SQL-Statements Bulk Load (Annahme: keine Schreibzugriffe im Zielsystem) Keine satzbasierte Protokollierung Transformation Ausnutzung von Mengenoperationen der DW-Transformationskomponente Komplexe Transformationen mittels prozeduraler Sprachen (z.b. PL/SQL) Spezifische Statements (z.b. CTAS von Oracle) c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

81 ELT Zusammenfassung ETL als Prozess der Überführung von Daten aus Quellsystemen in das DWH Themen von ETL und Datenqualität machen typischerweise 80% des Aufwands von DWH-Projekten aus! Langsame Anfragen sind ärgerlich Falsche Ergebnisse machen das DWH nutzlos Teil des Transformationsschrittes Schemaebene: Schema Mapping bzw. Schematransformation Instanzebene: Datenbereinigung c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo. Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten

Mehr

Schlüssel bei temporalen Daten im relationalen Modell

Schlüssel bei temporalen Daten im relationalen Modell Schlüssel bei temporalen Daten im relationalen Modell Gesine Mühle > Präsentation > Bilder zum Inhalt zurück weiter 322 Schlüssel im relationalen Modell Schlüssel bei temporalen Daten im relationalen Modell

Mehr

Extraktion, Transformation, Laden (ETL)

Extraktion, Transformation, Laden (ETL) Extraktion, Transformation, Laden (ETL) ETL-Prozeß Integrationsschritte Integrationsprobleme fi Konflikte und deren Klassifikation fi Behebung von Konflikten Data Cleaning VL Data Warehouses, WS 2000/2001

Mehr

Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5

Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5 Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5 Aufgabe 1: Projektion Datenbanksysteme I π A1,...,A n (π B1,...,B

Mehr

7. Übung - Datenbanken

7. Übung - Datenbanken 7. Übung - Datenbanken Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: DBS a Was ist die Kernaufgabe von Datenbanksystemen? b Beschreiben Sie kurz die Abstraktionsebenen

Mehr

Extraktion, Transformation, Laden (ETL)

Extraktion, Transformation, Laden (ETL) Extraktion, Transformation, Laden (ETL) ƒ ETL-Prozeß ƒ Integrationsschritte ƒ Integrationsprobleme Konflikte und deren Klassifikation Behebung von Konflikten ƒ Data Cleaning Vorlesung Data-Warehouse-Technologien

Mehr

Informatik 12 Datenbanken SQL-Einführung

Informatik 12 Datenbanken SQL-Einführung Informatik 12 Datenbanken SQL-Einführung Gierhardt Vorbemerkungen Bisher haben wir Datenbanken nur über einzelne Tabellen kennen gelernt. Stehen mehrere Tabellen in gewissen Beziehungen zur Beschreibung

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.

Mehr

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung 6. Datenintegrität Motivation Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung nur sinnvolle Attributwerte (z.b. keine negativen Semester) Abhängigkeiten

Mehr

OPERATIONEN AUF EINER DATENBANK

OPERATIONEN AUF EINER DATENBANK Einführung 1 OPERATIONEN AUF EINER DATENBANK Ein Benutzer stellt eine Anfrage: Die Benutzer einer Datenbank können meist sowohl interaktiv als auch über Anwendungen Anfragen an eine Datenbank stellen:

Mehr

Data Warehouse Technologien

Data Warehouse Technologien Veit Köppen Gunter Saake Kai-Uwe Sattler Data Warehouse Technologien Inhaltsverzeichnis Inhaltsverzeichnis vii 1 Einführung in Data-Warehouse-Systeme 1 1.1 Anwendungsszenario Getränkemarkt...............

Mehr

Datenqualität: allgemeiner Überblick Waldemar Braun. Seminar Datenqualität OvGU Magdeburg 03.12.2009

Datenqualität: allgemeiner Überblick Waldemar Braun. Seminar Datenqualität OvGU Magdeburg 03.12.2009 Datenqualität: allgemeiner Überblick Waldemar Braun Seminar Datenqualität OvGU Magdeburg Gliederung 1. Einleitung 2. Motivation 3. Definition 4. DQ-Probleme 5. DQ-Dimensionen 6. DQ-Modelle 7. Messen der

Mehr

Veit Köppen Gunter Saake Kai-Uwe Sattler. 2. Auflage. Data Warehouse Technologien

Veit Köppen Gunter Saake Kai-Uwe Sattler. 2. Auflage. Data Warehouse Technologien Veit Köppen Gunter Saake Kai-Uwe Sattler 2. Auflage Data Warehouse Technologien Inhaltsverzeichnis Inhaltsverzeichnis ix 1 Einführung in Data-Warehouse-Systeme 1 1.1 Anwendungsszenario Getränkemarkt...

Mehr

5.3 Datenänderung/-zugriff mit SQL (DML)

5.3 Datenänderung/-zugriff mit SQL (DML) 5.3 Datenänderung/-zugriff mit SQL (DML) Hinweis: - DML-Anweisungen sind mengenorientiert - Mit einer Anweisungen kann mehr als ein Tupel eingefügt, geändert, gelöscht oder gelesen werden Benutzungs- und

Mehr

SQL structured query language

SQL structured query language Umfangreiche Datenmengen werden üblicherweise in relationalen Datenbank-Systemen (RDBMS) gespeichert Logische Struktur der Datenbank wird mittels Entity/Realtionship-Diagrammen dargestellt structured query

Mehr

Datenbanken. Prof. Dr. Bernhard Schiefer. bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer

Datenbanken. Prof. Dr. Bernhard Schiefer. bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Datenbanken Prof. Dr. Bernhard Schiefer bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Wesentliche Inhalte Begriff DBS Datenbankmodelle Datenbankentwurf konzeptionell, logisch und relational

Mehr

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software SQL Tutorial SQL - Tutorial SS 06 Hubert Baumgartner INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt des Tutorials 1 2 3 4

Mehr

Dynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München

Dynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München Kapitel 4 Dynamisches SQL Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München 2008 Thomas Bernecker, Tobias Emrich unter Verwendung der Folien des Datenbankpraktikums aus dem Wintersemester

Mehr

Hochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt.

Hochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt. Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Datenbanken und Informationssysteme II Szenario: Projektverwaltung. Es gibt Projekte, Projektleiter, Mitarbeiter und ihre Zuordnung zu Projekten.

Mehr

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I SQL SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R VII-1 Beispielrelationen Filiale ( Name Leiter Stadt Einlagen ) Konto ( KontoNr KundenNr FilialName Saldo ) Kredit

Mehr

SQL. Fortgeschrittene Konzepte Auszug

SQL. Fortgeschrittene Konzepte Auszug SQL Fortgeschrittene Konzepte Auszug Levels SQL92 Unterteilung in 3 Levels Entry Level (i.w. SQL89) wird von nahezu allen DBS Herstellern unterstützt Intermediate Level Full Level SQL DML 2-2 SQL92 behebt

Mehr

SQL: statische Integrität

SQL: statische Integrität SQL: statische Integrität.1 SQL: statische Integrität Im allgemeinen sind nur solche Instanzen einer Datenbank erlaubt, deren Relationen die der Datenbank bekannten Integritätsbedingungen erfüllen. Integritätsbedingungen

Mehr

Integritätsbedingungen / Normalformen- Beispiel: Kontoführung

Integritätsbedingungen / Normalformen- Beispiel: Kontoführung Technische Universität München WS 2003/04, Fakultät für Informatik Datenbanksysteme I Prof. R. Bayer, Ph.D. Lösungsblatt 8 Dipl.-Inform. Michael Bauer Dr. Gabi Höfling 12.01. 2004 Integritätsbedingungen

Mehr

Datenbanken: Datenintegrität. www.informatikzentrale.de

Datenbanken: Datenintegrität. www.informatikzentrale.de Datenbanken: Datenintegrität Definition "Datenkonsistenz" "in der Datenbankorganisation (...) die Korrektheit der gespeicherten Daten im Sinn einer widerspruchsfreien und vollständigen Abbildung der relevanten

Mehr

Sichten II. Definition einer Sicht. Sichten. Drei-Ebenen-Schema-Architektur. Vorteile Vereinfachung von Anfragen Strukturierung der Datenbank

Sichten II. Definition einer Sicht. Sichten. Drei-Ebenen-Schema-Architektur. Vorteile Vereinfachung von Anfragen Strukturierung der Datenbank Vorteile Vereinfachung von Anfragen Strukturierung der Datenbank Sichten II logische Datenunabhängigkeit (Sichten stabil bei Änderungen der Datenbankstruktur) Beschränkung von Zugriffen (Datenschutz) Definition

Mehr

Allgemeines zu Datenbanken

Allgemeines zu Datenbanken Allgemeines zu Datenbanken Was ist eine Datenbank? Datensatz Zusammenfassung von Datenelementen mit fester Struktur Z.B.: Kunde Alois Müller, Hegenheimerstr. 28, Basel Datenbank Sammlung von strukturierten,

Mehr

Oracle: Abstrakte Datentypen:

Oracle: Abstrakte Datentypen: Oracle: Abstrakte Datentypen: Oracle bietet zwei mögliche Arten um abstrakte Datentypen zu implementieren: Varying Array Nested Table Varying Array (kunde) kdnr kdname gekaufteart 1 Mustermann 1 4 5 8

Mehr

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze Ihre Interessentendatensätze bei inobroker Wenn Sie oder Ihre Kunden die Prozesse von inobroker nutzen, werden Interessentendatensätze erzeugt. Diese können Sie direkt über inobroker bearbeiten oder mit

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

Data Warehouse schnell gemacht Performanceaspekte im Oracle DWH

Data Warehouse schnell gemacht Performanceaspekte im Oracle DWH Data Warehouse schnell gemacht Performanceaspekte im Oracle DWH Dani Schnider Principal Consultant Business Intelligence BI Trilogie, Zürich/Basel 25./26. November 2009 Basel Baden Bern Lausanne Zürich

Mehr

IV. Datenbankmanagement

IV. Datenbankmanagement Wirtschaftsinformatik 2 (PWIN) IV. Datenbankmanagement Kapitel 2: Datenmanipulationssprache SQL Wirtschaftsinformatik 2 (PWIN) SS 2009, Professur für Mobile Business & Multilateral Security 1 Agenda 1.

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank

Mehr

Prozedurale Datenbank- Anwendungsprogrammierung

Prozedurale Datenbank- Anwendungsprogrammierung Idee: Erweiterung von SQL um Komponenten von prozeduralen Sprachen (Sequenz, bedingte Ausführung, Schleife) Bezeichnung: Prozedurale SQL-Erweiterung. In Oracle: PL/SQL, in Microsoft SQL Server: T-SQL.

Mehr

Ein Ausflug zu ACCESS

Ein Ausflug zu ACCESS Ein Ausflug zu ACCESS Die folgenden Folien zeigen beispielhaft, wie man sein DB- Wissen auf ACCESS übertragen kann betrachtet wird ACCESS 2002, da gerade im Bereich der Nutzung von SQL hier einiges nachgearbeitet

Mehr

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004)

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004) Nachtrag: Farben Farbblindheit (Light und Bartlein 2004) 1 Vorgeschlagene Farbskalen (Light and Bartlein 2004) Farbkodierung metrisch skalierter Daten Unterscheide: 1. Sequential Data (ohne Betonung der

Mehr

Datenexport aus JS - Software

Datenexport aus JS - Software Datenexport aus JS - Software Diese Programm-Option benötigen Sie um Kundendaten aus der JS-Software in andere Programme wie Word, Works oder Excel zu exportieren. Wählen Sie aus dem Programm-Menu unter

Mehr

Verwandt, logisch kohärent, zweckspezifisch, an reale Welt orientiert. Entität kann in einer oder mehreren Unterklassen sein

Verwandt, logisch kohärent, zweckspezifisch, an reale Welt orientiert. Entität kann in einer oder mehreren Unterklassen sein 1 Definitionen 1.1 Datenbank Verwandt, logisch kohärent, zweckspezifisch, an reale Welt orientiert Integriert, selbstbeschreibend, verwandt 1.2 Intension/Extension Intension: Menge der Attribute Extension:

Mehr

Referenzielle Integrität SQL

Referenzielle Integrität SQL Referenzielle Integrität in SQL aus Referential Integrity Is Important For Databases von Michael Blaha (Modelsoft Consulting Corp) VII-45 Referenzielle Integrität Definition: Referenzielle Integrität bedeutet

Mehr

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin PhpMyAdmin = grafsches Tool zur Verwaltung von MySQL-Datenbanken Datenbanken erzeugen und löschen Tabellen und Spalten einfügen,

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Dipl. Inform. Andreas Wilkens 1 Organisatorisches Freitag, 05. Mai 2006: keine Vorlesung! aber Praktikum von 08.00 11.30 Uhr (Gruppen E, F, G, H; Vortestat für Prototyp)

Mehr

SQL Server 2012 und SharePoint im Unternehmenseinsatz. Referent Daniel Caesar

SQL Server 2012 und SharePoint im Unternehmenseinsatz. Referent Daniel Caesar SQL Server 2012 und SharePoint im Unternehmenseinsatz Referent Daniel Caesar sqlxpert Daniel Caesar Publikationen Themen SQL Server Admin, Entwicklung SharePoint Admin, Entwicklung.NET Entwicklung Rechtssichere

Mehr

Datenbanksysteme 2 Frühjahr-/Sommersemester 2014 28. Mai 2014

Datenbanksysteme 2 Frühjahr-/Sommersemester 2014 28. Mai 2014 Lehrstuhl für Praktische Informatik III Prof. Dr. Guido Moerkotte Email: moer@db.informatik.uni-mannheim.de Marius Eich Email: marius.eich@uni-mannheim.de Datenbanksysteme 2 8. Übungsblatt Frühjahr-/Sommersemester

Mehr

Synchronisation von redundanten Datenbeständen

Synchronisation von redundanten Datenbeständen Synchronisation von redundanten Datenbeständen seit 1999 Themenübersicht Mobile Anwendungen Verteilte Datenbanksysteme Synchronisation Lösungsansätze Mobile Anwendungen Erwartungen der Anwender Der App-Stil

Mehr

Typisierung des Replikationsplan Wirries, Denis Datenbankspezialist

Typisierung des Replikationsplan Wirries, Denis Datenbankspezialist Typisierung des Replikationsplan Wirries, Denis Datenbankspezialist Feintypisierung - Überblick Ergebnisse Ergebnisse aus aus anderen anderen Arbeitsergebnissen Arbeitsergebnissen Replikationsplan Replikationsplan

Mehr

TimeSafe Leistungserfassung

TimeSafe Leistungserfassung Keep your time safe. TimeSafe Leistungserfassung Adressimport 1/8 Inhaltsverzeichnis Inhaltsverzeichnis... 2 1 Allgemeines... 3 1.1 Adressen in der TimeSafe Leistungserfassung... 3 1.2 Organisationen und/oder

Mehr

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009 Hochschule Darmstadt DATENBANKEN Fachbereich Informatik Praktikum 3 Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009 PL/SQL Programmierung Anwendung des Cursor Konzepts und Stored Procedures Und Trigger

Mehr

Projekt: RFC to FTP. Szenario der serviceorientierten Anwendungsintegration. Sebastian Altendorf Dirk Brillski David Gebhardt

Projekt: RFC to FTP. Szenario der serviceorientierten Anwendungsintegration. Sebastian Altendorf Dirk Brillski David Gebhardt Projekt: RFC to FTP Szenario der serviceorientierten Anwendungsintegration Sebastian Altendorf Dirk Brillski David Gebhardt 18.01.2011 Agenda Anwendungsszenarien für RFC to FTP Vorstellung des umgesetzten

Mehr

Übung Datenbanken in der Praxis. Datenmodifikation mit SQL

Übung Datenbanken in der Praxis. Datenmodifikation mit SQL Datenmodifikation mit SQL Folie 45 SQL - Datenmodifikation Einfügen INSERT INTO Relation [(Attribut, Attribut,...)] VALUES (Wert, Wert,...) INSERT INTO Relation [(Attribut, Attribut,...)] SFW-Anfrage Ändern

Mehr

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen

Mehr

SOMA Reverse Engineering

SOMA Reverse Engineering SOMA Reverse Engineering Univ.Prof. Dr. Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Inhalt Was versteht man unter Reverse Engineering? Techniken/Methoden Probleme VU Software Maintenance

Mehr

Datenmanagement in Android-Apps. 16. Mai 2013

Datenmanagement in Android-Apps. 16. Mai 2013 Datenmanagement in Android-Apps 16. Mai 2013 Überblick Strukturierung von datenorientierten Android-Apps Schichtenarchitektur Möglichkeiten der Datenhaltung: in Dateien, die auf der SDCard liegen in einer

Mehr

Index- und Zugriffsstrukturen für. Holger Brämer, 05IND-P

Index- und Zugriffsstrukturen für. Holger Brämer, 05IND-P Index- und Zugriffsstrukturen für Data Warehousing Holger Brämer, 05IND-P Index- und Zugriffstrukturen für Data Warehousing Materialisierte Sichten Bitmap-Indexe Verbundindexe Materialisierte Sichten gehören

Mehr

Terminologie zwischen normativer Referenz und deskriptiver Dokumentation. Dr. Birte Lönneker-Rodman, Across Systems GmbH

Terminologie zwischen normativer Referenz und deskriptiver Dokumentation. Dr. Birte Lönneker-Rodman, Across Systems GmbH Terminologie zwischen normativer Referenz und deskriptiver Dokumentation Dr. Birte Lönneker-Rodman, Across Systems GmbH Überblick Normative Referenzterminologie - Beispiele - Unterstützende Funktionen

Mehr

Whitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und 2005. combit GmbH Untere Laube 30 78462 Konstanz

Whitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und 2005. combit GmbH Untere Laube 30 78462 Konstanz combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager Datensatzhistorie mit dem SQL Server 2000 und 2005 Datensatzhistorie mit dem SQL Server 2000 und 2005-2 - Inhalt

Mehr

Software-Engineering Einführung

Software-Engineering Einführung Software-Engineering Einführung 7. Übung (04.12.2014) Dr. Gergely Varró, gergely.varro@es.tu-darmstadt.de Erhan Leblebici, erhan.leblebici@es.tu-darmstadt.de Tel.+49 6151 16 4388 ES Real-Time Systems Lab

Mehr

Updatehinweise für die Version forma 5.5.5

Updatehinweise für die Version forma 5.5.5 Updatehinweise für die Version forma 5.5.5 Seit der Version forma 5.5.0 aus 2012 gibt es nur noch eine Office-Version und keine StandAlone-Version mehr. Wenn Sie noch mit der alten Version forma 5.0.x

Mehr

Seminar Informationsintegration und Informationsqualität. Dragan Sunjka. 30. Juni 2006

Seminar Informationsintegration und Informationsqualität. Dragan Sunjka. 30. Juni 2006 Seminar Informationsintegration und Informationsqualität TU Kaiserslautern 30. Juni 2006 Gliederung Autonomie Verteilung führt zu Autonomie... Intra-Organisation: historisch Inter-Organisation: Internet

Mehr

Oracle-Statistiken im Data Warehouse effizient nutzen

Oracle-Statistiken im Data Warehouse effizient nutzen Oracle-Statistiken im Data Warehouse effizient nutzen Reinhard Mense ARETO Consulting Köln Schlüsselworte: DWH, Data Warehouse, Statistiken, Optimizer, Performance, Laufzeiten Einleitung Für die performante

Mehr

Gesicherte Prozeduren

Gesicherte Prozeduren Gesicherte Prozeduren Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln zurückgeliefert.

Mehr

Referentielle Integrität

Referentielle Integrität Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische

Mehr

Probeklausur im Modul Informationstechnik 1, WS 2003/04. Studiengang IWD 1. Semester Seite 1 von 5

Probeklausur im Modul Informationstechnik 1, WS 2003/04. Studiengang IWD 1. Semester Seite 1 von 5 Probeklausur im Modul Informationstechnik 1, WS 2003/04. Studiengang IWD 1. Semester Seite 1 von 5 Probeklausur im Modul Informationstechnik 1, WS 2003/04. Studiengang IWD 1. Semester Hinweise Der Aufgabensatz

Mehr

Unterabfragen (Subqueries)

Unterabfragen (Subqueries) Unterabfragen (Subqueries) Die kürzeste Formulierung ist folgende: SELECT Felderliste FROM Tabelle1 WHERE Tabelle1.Feldname Operator (SELECT Feldname FROM Tabelle2 WHERE Bedingung); wobei Tabelle1 und

Mehr

Contents. Ebenen. Data Warehouse - ETL Prozess Version: July 10, 2007. 1 Ebenen. Andreas Geyer-Schulz und Anke Thede. 2 Problemquelle Quellsysteme 4

Contents. Ebenen. Data Warehouse - ETL Prozess Version: July 10, 2007. 1 Ebenen. Andreas Geyer-Schulz und Anke Thede. 2 Problemquelle Quellsysteme 4 Contents Data Warehouse - ETL Prozess Version: July 10, 2007 Andreas Geyer-Schulz und Anke Thede Schroff-Stiftungslehrstuhl Informationsdienste und Elektronische Märkte Fakultät für Wirtschaftswissenschaften

Mehr

Data Quality Management: Abgleich großer, redundanter Datenmengen

Data Quality Management: Abgleich großer, redundanter Datenmengen Data Quality Management: Abgleich großer, redundanter Datenmengen Westendstr. 14 809 München Tel 089-5100 907 Fax 089-5100 9087 E-Mail Datras@Datras.de Redundanz und relationales Datenbankmodell Redundanz:

Mehr

Options- und Freitext-Modul Update-Anleitung

Options- und Freitext-Modul Update-Anleitung Options- und Freitext-Modul Update-Anleitung Hinweis... 2 Update für Versionen kleiner als 1.2.4 auf 1.3.x... 3 Update für Versionen ab 1.2.4 auf 1.3.x... 6 Update für Versionen ab 1.3.x auf 2.x.x... 7

Mehr

Alignment-Verfahren zum Vergleich biologischer Sequenzen

Alignment-Verfahren zum Vergleich biologischer Sequenzen zum Vergleich biologischer Sequenzen Hans-Joachim Böckenhauer Dennis Komm Volkshochschule Zürich. April Ein biologisches Problem Fragestellung Finde eine Methode zum Vergleich von DNA-Molekülen oder Proteinen

Mehr

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 6. Übung zur Vorlesung Datenbanken im Sommersemester 2007 mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 Aufgabe 1: Rekursion Betrachten Sie die folgende Tabelle

Mehr

Programmieren I. Kapitel 7. Sortieren und Suchen

Programmieren I. Kapitel 7. Sortieren und Suchen Programmieren I Kapitel 7. Sortieren und Suchen Kapitel 7: Sortieren und Suchen Ziel: Varianten der häufigsten Anwendung kennenlernen Ordnung Suchen lineares Suchen Binärsuche oder Bisektionssuche Sortieren

Mehr

Tag 4 Inhaltsverzeichnis

Tag 4 Inhaltsverzeichnis Tag 4 Inhaltsverzeichnis Normalformen Problem Formen (1-4) Weitere Formen Transaktionen Synchronisationsprobleme Überblick Autocommit Locking Savepoints Isolation levels Übungen RDB 4-1 Normalformen Problematik

Mehr

Das SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik

Das SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik Beispielaufgaben Informationssysteme erstellt von Fabian Rump zur IS Vorlesung 2009/10 1 Multiple Choice Aussage richtig falsch Eine SQL-Abfrage beginnt immer mit dem Schlüsselwort SELECT Eine Datenbank

Mehr

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Übung, Sommersemester 2013 29. April 2013 - MySQL 2 Sebastian Cuy sebastian.cuy@uni-koeln.de Aufgaben Anmerkungen Best practice: SQL Befehle

Mehr

Projektbericht Gruppe 12. Datenbanksysteme WS 05/ 06. Gruppe 12. Martin Tintel Tatjana Triebl. Seite 1 von 11

Projektbericht Gruppe 12. Datenbanksysteme WS 05/ 06. Gruppe 12. Martin Tintel Tatjana Triebl. Seite 1 von 11 Datenbanksysteme WS 05/ 06 Gruppe 12 Martin Tintel Tatjana Triebl Seite 1 von 11 Inhaltsverzeichnis Inhaltsverzeichnis... 2 1. Einleitung... 3 2. Datenbanken... 4 2.1. Oracle... 4 2.2. MySQL... 5 2.3 MS

Mehr

Avira Management Console 2.6.1 Optimierung für großes Netzwerk. Kurzanleitung

Avira Management Console 2.6.1 Optimierung für großes Netzwerk. Kurzanleitung Avira Management Console 2.6.1 Optimierung für großes Netzwerk Kurzanleitung Inhaltsverzeichnis 1. Einleitung... 3 2. Aktivieren des Pull-Modus für den AMC Agent... 3 3. Ereignisse des AMC Agent festlegen...

Mehr

Klausur Interoperabilität

Klausur Interoperabilität Klausur 21. Juni 2012 9.30 11.00 Uhr Workflow Systems and Technology Group Fakultät für Informatik Universität Wien Univ.-Prof. Dr. Stefanie Rinderle-Ma Allgemeine Hinweise: Die Bearbeitungszeit beträgt

Mehr

Datenidentifikation und -synchronisation: Grundlage zur Erfüllung der Qualitätsanforderungen beim Datenaustausch zwischen Systemen

Datenidentifikation und -synchronisation: Grundlage zur Erfüllung der Qualitätsanforderungen beim Datenaustausch zwischen Systemen Datenidentifikation und -synchronisation: Grundlage zur Erfüllung der Qualitätsanforderungen beim Datenaustausch zwischen Systemen Jürg Simonett Luzern, 26. März 2015 Datenaustausch zwischen Systemen Synchronisation

Mehr

Urs Meier (urs.meier@trivadis.com) Art der Info Technical Info (Februar 2002) Aus unserer Projekterfahrung und Forschung

Urs Meier (urs.meier@trivadis.com) Art der Info Technical Info (Februar 2002) Aus unserer Projekterfahrung und Forschung Betrifft Optimizer Autor Urs Meier (urs.meier@trivadis.com) Art der Info Technical Info (Februar 2002) Quelle Aus unserer Projekterfahrung und Forschung Einführung Mit jedem Oracle Release nimmt die Anzahl

Mehr

Verarbeitung der E-Mail-Adressen

Verarbeitung der E-Mail-Adressen Verarbeitung der E-Mail-Adressen A) Auswertung aus dem Infotyp 0105 - Kommunikation zur Feststellung, welche E-Mail-Adressen gespeichert sind Aufruf über direkte Eingabe der Transaktion (notfalls Transaktionsfenster

Mehr

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL Relationales Modell: SQLDDL SQL als Definitionssprache SQLDDL umfaßt alle Klauseln von SQL, die mit Definition von Typen Wertebereichen Relationenschemata Integritätsbedingungen zu tun haben Externe Ebene

Mehr

Referentielle Integrität

Referentielle Integrität Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische

Mehr

Data-Warehouse-Technologien

Data-Warehouse-Technologien Data-Warehouse-Technologien Prof. Dr.-Ing. Kai-Uwe Sattler 1 Prof. Dr. Gunter Saake 2 1 TU Ilmenau FG Datenbanken & Informationssysteme 2 Universität Magdeburg Institut für Technische und Betriebliche

Mehr

2. Datenbank-Programmierung

2. Datenbank-Programmierung 2. Datenbank-Programmierung SQL ist eingeschränkt bezüglich der algorithmischen Mächtigkeit, z.b. Berechnung einer transitiven Hülle ist in Standard-SQL nicht möglich. Die Einschränkung ist von Bedeutung

Mehr

ecaros2 - Accountmanager

ecaros2 - Accountmanager ecaros2 - Accountmanager procar informatik AG 1 Stand: FS 09/2012 Inhaltsverzeichnis 1 Aufruf des ecaros2-accountmanager...3 2 Bedienung Accountmanager...4 procar informatik AG 2 Stand: FS 09/2012 1 Aufruf

Mehr

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar Qt-Seminar Dienstag, 10.2.2009 SQL ist......die Abkürzung für Structured Query Language (früher sequel für Structured English Query Language )...ein ISO und ANSI Standard (aktuell SQL:2008)...eine Befehls-

Mehr

Andreas Heuer Gunter Saake Kai-Uwe Sattler. Datenbanken. kompakt

Andreas Heuer Gunter Saake Kai-Uwe Sattler. Datenbanken. kompakt Andreas Heuer Gunter Saake Kai-Uwe Sattler Datenbanken kompakt Inhaltsverzeichnis Vorwort v 1 Was sind Datenbanken 1 1.1 Warum Datenbanken 1 1.2 Datenbanksysteme 4 1.3 Anforderungen: Die Codd'schen Regeln

Mehr

Übungsblatt 8- Lösungsvorschlag

Übungsblatt 8- Lösungsvorschlag Universität Innsbruck - Institut für Informatik Prof. Günther Specht, R.Binna, N.Krismer, M. Tschuggnall 30. November 2012 Proseminar Datenbanksysteme Übungsblatt 8- Lösungsvorschlag Aufgabe 1 (Trigger)

Mehr

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Datenintegrität Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Formulierung von Integritätsbedingungen ist die wichtigste Aufgabe des DB-Administrators!

Mehr

Kapitel 7: Formaler Datenbankentwurf

Kapitel 7: Formaler Datenbankentwurf 7. Formaler Datenbankentwurf Seite 1 Kapitel 7: Formaler Datenbankentwurf Die Schwierigkeiten der konzeptuellen Modellierung sind zu einem großen Teil dadurch begründet, dass sich die relevanten Strukturen

Mehr

organice CRM 2012 Die Neuerungen für den Entscheider

organice CRM 2012 Die Neuerungen für den Entscheider organice CRM 2012 Die Neuerungen für den Entscheider organice Software GmbH Stand: 05.03.2012 Vorwort organice CRM 2012 Die Neuerungen im Überblick Auch an dieser Stelle können wir wieder sagen organice

Mehr

Abschluss Version 1.0

Abschluss Version 1.0 Beschreibung Der Abschluss wird normalerweise nur einmal jährlich durchgeführt. Dieses Tech-Note soll helfen, diesen doch seltenen aber periodisch notwendigen Vorgang problemlos durchzuführen. Abschlussvarianten

Mehr

3. Stored Procedures und PL/SQL

3. Stored Procedures und PL/SQL 3. Stored Procedures und PL/SQL Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln

Mehr

Tag 4 Inhaltsverzeichnis

Tag 4 Inhaltsverzeichnis Tag 4 Inhaltsverzeichnis Normalformen Problem Formen (1-4) Weitere Formen Transaktionen Synchronisationsprobleme Überblick Autocommit Locking Savepoints Isolation levels Übungen RDB 4-1 Normalformen Problematik

Mehr

Kurzeinführung Excel2App. Version 1.0.0

Kurzeinführung Excel2App. Version 1.0.0 Kurzeinführung Excel2App Version 1.0.0 Inhalt Einleitung Das Ausgangs-Excel Excel-Datei hochladen Excel-Datei konvertieren und importieren Ergebnis des Imports Spalten einfügen Fehleranalyse Import rückgängig

Mehr

Speicherung von XML in (objekt-)relationalen Datenbanken. Burkhard Schäfer

Speicherung von XML in (objekt-)relationalen Datenbanken. Burkhard Schäfer Speicherung von XML in (objekt-)relationalen Datenbanken Burkhard Schäfer Übersicht Motivation Anforderungen Ansätze modellorientiert strukturorientiert Zusammenfassung Motivation Warum XML in Datenbanken

Mehr

Microsoft Update Windows Update

Microsoft Update Windows Update Microsoft bietet mehrere Möglichkeit, Updates durchzuführen, dies reicht von vollkommen automatisch bis zu gar nicht. Auf Rechnern unserer Kunden stellen wir seit September 2006 grundsätzlich die Option

Mehr

SQL - Übungen Bearbeitung der Datenbank Personal (1)

SQL - Übungen Bearbeitung der Datenbank Personal (1) Bearbeitung der Datenbank Personal (1) 1. Abfragen einer einzigen Tabelle 1.1. Zeigen Sie alle Informationen an, die über die Kinder der Mitarbeiter gespeichert sind. 1.2. Zeigen Sie aus der Tabelle stelle

Mehr

Lizenzen auschecken. Was ist zu tun?

Lizenzen auschecken. Was ist zu tun? Use case Lizenzen auschecken Ihr Unternehmen hat eine Netzwerk-Commuterlizenz mit beispielsweise 4 Lizenzen. Am Freitag wollen Sie Ihren Laptop mit nach Hause nehmen, um dort am Wochenende weiter zu arbeiten.

Mehr

Datenintegrität. Arten von Integritätsbedingungen. Statische Integritätsbedingungen. Referentielle Integrität. Integritätsbedingungen in SQL.

Datenintegrität. Arten von Integritätsbedingungen. Statische Integritätsbedingungen. Referentielle Integrität. Integritätsbedingungen in SQL. Datenintegrität Arten von Integritätsbedingungen Statische Integritätsbedingungen Referentielle Integrität Integritätsbedingungen in SQL Trigger 1 Datenintegrität Einschränkung der möglichen Datenbankzustände

Mehr

Datenbankmodelle 1. Das Entity-Relationship-Modell. Prof. Dr. Bernhard Schiefer 2-1

Datenbankmodelle 1. Das Entity-Relationship-Modell. Prof. Dr. Bernhard Schiefer 2-1 Datenbankmodelle 1 Das Entity-Relationship-Modell Prof. Dr. Bernhard Schiefer 2-1 Datenbankmodelle ER-Modell hierarchisches Modell Netzwerkmodell relationales Modell objektorientierte Modelle Prof. Dr.

Mehr