DATA-WAREHOUSE-TECHNOLOGIEN

Größe: px
Ab Seite anzeigen:

Download "DATA-WAREHOUSE-TECHNOLOGIEN"

Transkript

1 Vorlesung DATA-WAREHOUSE-TECHNOLOGIEN Wintersemester 2007/2008 Vorlesender: Eike Schallehn Vorlesung und Skript von: Prof. Dr.-Ing. habil. Kai-Uwe Sattler TU Ilmenau, FG Datenbanken und Informationssysteme Prof. Dr. habil. Gunter Saake Universität Magdeburg, Institut für Technische Informationssysteme

2 2 Uni Magdeburg, WS 2007/08

3 1 1 Einführung 1.1 Motivation 1.2 Anwendungen 1.3 Abgrenzung 1.4 Begriff Data Warehouse 1.5 DW-Architektur 1.6 Benchmarks 3

4 1 Einführung Einführung Einführung 1 Motivation 2 Anwendungen 3 Abgrenzung 4 Begriff Data Warehouse 5 DW-Architektur 6 Benchmarks Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einführung Szenario: Getränkemarkt Motivation Umsatz, Portfolio Werbung Schallehn Data-Warehouse-Technologien Wintersemester 07/ DB-Schema Einführung Motivation Produkt (0,*) geliefert von Lieferant kauft (0,*) Menge Kunde Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

5 1 Einführung 1 DB-Nutzung Einführung Motivation Anfragen: Wie viele Flaschen Cola wurden letzten Monat verkauft? Wie hat sich der Verkauf von Rotwein im letzten Jahr entwickelt? Wer sind unsere Top-Kunden? Von welchem Lieferanten beziehen wir die meisten Kisten? Probleme Nutzung externer Quellen (Kundendatenbank, Lieferantendatenbank,... ) Daten mit zeitlichem Bezug Schallehn Data-Warehouse-Technologien Wintersemester 07/ Erweitertes Szenario Einführung Motivation Schallehn Data-Warehouse-Technologien Wintersemester 07/ DB-Nutzung /2 Einführung Motivation Anfragen Verkaufen wir in Ilmenau mehr Bier als in Erfurt? Wie viel Cola wurde im Sommer in ganz Thüringen verkauft? Mehr als Wasser? Problem Anfragen über mehrere Datenbanken Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 5

6 1 Einführung Lösungen Einführung Motivation Variante 1: Verteilte DB Globale Anfrage über mehrere DBs Sicht mit Union Nachteil: aufwändige verteilte Anfrageausführung Variante 2: Zentrale DB Änderungen über einer zentralen DB Nachteil: lange Antwortzeiten im operativen Betrieb Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einführung Data Warehouse-Lösung Motivation DB Jena DB Ilmenau DB Erfurt Umsatz, Portfolio Asynchrone Aktualisierung Redundante Datenhaltung Werbung Transformierte, vorberechnete Daten Data Warehouse Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einführung Gegenstand der Vorlesung Motivation Data Warehouse: Sammlung von Technologien zur Unterstützung von Entscheidungsprozessen Herausforderung an Datenbanktechnologien Datenvolumen (effiziente Speicherung und Verwaltung, Anfragebearbeitung) Datenmodellierung (Zeitbezug, mehrere Dimensionen) Integration heterogener Datenbestände Schwerpunkt Datenbanktechniken von Data Warehouses Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

7 1 Einführung 1 Einführung Motivation Überblick Monitoring & Metadaten- Administration Repositry OLAP-Server Externe Quellen Data Warehouse Analyse ETL Query/ Reporting Data Mining Operative Datenbanken Data Marts Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einführung Anwendungen Betriebswirtschaftliche Anwendungen Informationsbereitstellung Daten und Informationen als Grundlage einer erfolgreichen Abwicklung von Geschäftsprozessen (z.b. Kennzahlen) Anwender: Manager, Abteilungsleiter, Fachkräfte Formen der Bereitstellung Query-Ansätze: frei definierbare Anfragen und Berichte Reporting: Zugriff auf vordefinierte Berichte Redaktionell aufbereitete, personalisierte Informationen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einführung Anwendungen Betriebswirtschaftliche Anwendungen /2 Analyse (Business Intelligence) Detaillierte Analyse der Daten zur Untersuchung von Abweichungen oder Auffälligkeiten Anwender: Spezialisten (z.b. Controlling, Marketing) Planung Unterstützung durch explorative Datenanalyse Aggregierung von Einzelplänen Kampagnenmanagement Unterstützung strategischer Kampagnen Kundenanalyse, Risikoanalyse Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 7

8 1 Einführung Einführung Anwendungen Wissenschaftliche und Technische Anwendungen Wissenschaftliche Anwendungen Statistical und Scientific Databases technische Wurzeln des DW Beispiel: Projekt Earth Observing System (Klima- und Umweltforschung) täglich ca. 1,9 TB meteorologischer Daten Aufbereitung und Analyse (statistisch, Data Mining) Technische Anwendungen Öffentlicher Bereich: DW mit Umwelt- oder geographischen Daten (z.b. Wasseranalysen) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einsatzbeispiel Einführung Anwendungen Wal-Mart ( Marktführer im amerikanischen Einzelhandel Unternehmensweites Data Warehouse Größe: ca. 300 TB (2003), heute: geschätzt 0,5 PB Täglich bis zu DW-Anfragen Hoher Detaillierungsgrad (tägliche Auswertung von Artikelumsätzen, Lagerbestand, Kundenverhalten) Basis für Warenkorbanalyse, Kundenklassifizierung,... Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einführung Anwendungen Fragestellungen und Aufgaben (Bsp.) Überprüfung des Warensortiments zur Erkennung von Ladenhütern oder Verkaufsschlagern Standortanalyse zur Einschätzung der Rentabilität von Niederlassungen Untersuchung der Wirksamkeit von Marketing-Aktionen Auswertung von Kundenbefragungen, Reklamationen bzgl. bestimmter Produkte etc. Analyse des Lagerbestandes Warenkorbanalyse mit Hilfe der Kassenbons Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

9 1 Einführung 1 Beispiel einer Anfrage Einführung Anwendungen Welche Umsätze sind in den Jahren 2005 und 2006 in den Warensegmenten Bier und Rotwein in den Bundesländern Hessen und Thüringen angefallen? Schallehn Data-Warehouse-Technologien Wintersemester 07/ Ergebnis (Würfel) Einführung Anwendungen Summe Rotwein Bier Produkt Kennzahl Umsatz Summe Zeitraum Hessen Thüringen Summe Region Schallehn Data-Warehouse-Technologien Wintersemester 07/ Ergebnis (Bericht) Einführung Anwendungen Umsatz Bier Rotwein Summe 2005 Hessen Thüringen Summe Hessen Thüringen Summe Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 9

10 1 Einführung Einführung Abgrenzung Aspekte von Data Warehouses Integration Vereinigung von Daten aus verschiedenen, meist heterogenen Quellen Überwindung der Heterogenität auf verschiedenen Ebenen (System, Schema, Daten) Analyse Bereitstellung der Daten in einer vom Anwender gewünschten Form (bezogen auf Entscheidungsgebiet) erfordert Vorauswahl, Zeitbezug, Aggregation Schallehn Data-Warehouse-Technologien Wintersemester 07/ Abgrenzung zu OLTP Einführung Abgrenzung Klassische operative Informationssysteme Online Transactional Processing (OLTP) Erfassung und Verwaltung von Daten Verarbeitung unter Verantwortung der jeweiligen Abteilung Transaktionale Verarbeitung: kurze Lese-/ Schreibzugriffe auf wenige Datensätze Data Warehouse Analyse im Mittelpunkt lange Lesetransaktionen auf vielen Datensätzen Integration, Konsolidierung und Aggregation der Daten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einführung Abgrenzung Abgrenzung zu OLTP: Anfragen Anfrage transaktional analytisch Fokus Lesen, Schreiben, Modifizieren, Lesen, periodisches Löschen Hinzufügen Transaktionsdauer und -typ kurze Lese- / Schreibtransaktionen lange Lesetransaktionen Anfragestruktur einfach strukturiert komplex Datenvolumen einer wenige Datensätze viele Datensätze Anfrage Datenmodell anfrageflexibel analysebezogen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

11 1 Einführung 1 Einführung Abgrenzung zu OLTP: Daten Abgrenzung Anfrage transaktional analytisch Datenquellen meist eine mehrere Eigenschaften nicht abgeleitet, abgeleitet / konsolidiert, zeitaktuell, autonom, nicht zeitaktuell, dynamisch integriert, stabil Datenvolumen MByte... GByte GByte... TByte Zugriffe Einzeltupelzugriff Tabellenzugriff Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einführung Abgrenzung Abgrenzung zu OLTP: Anwender Anwender transaktional analytisch Anwendertyp Ein-/Ausgabe durch Manager, Controller, Angestellte oder Analyst Applikationssoftware Anwenderzahl sehr viele wenige (bis einige hundert) Antwortzeit msecs... secs secs... min Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einführung Abgrenzung Abgrenzung: DBMS-Techniken Parallele Datenbanken Technik zur Realisierung eines DWH Verteilte Datenbanken I.d.R. keine redundante Datenhaltung Verteilung als Mittel zur Lastverteilung Keine inhaltliche Integration/Verdichtung der Daten Föderierte Datenbanken Höhere Autonomie und Heterogenität Kein spezifischer Analysezweck Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 11

12 1 Einführung Einführung Data Warehouse: Begriff Begriff Data Warehouse A Data Warehouse is a subject-oriented, integrated, non-volatile, and time variant collection of data in support of managements decisions. (W.H. Inmon 1996) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einführung Data Warehouse: Charakteristika Begriff Data Warehouse Fachorientierung (subject-oriented): Zweck des Systems ist nicht Erfüllung einer Aufgabe (z.b. Personaldatenverwaltung), sondern Modellierung eines spezifischen Anwendungsziels Integrierte Datenbasis (integrated): Verarbeitung von Daten aus mehreren verschiedenen Datenquellen (intern und extern) Nicht-flüchtige Datenbasis (non-volatile): stabile, persistente Datenbasis Daten im DW werden nicht mehr entfernt oder geändert Zeitbezogene Daten (time-variant): Vergleich der Daten über Zeit möglich (Zeitreihenanalyse) Speicherung über längeren Zeitraum Schallehn Data-Warehouse-Technologien Wintersemester 07/ Weitere Begriffe Einführung Begriff Data Warehouse Data Warehousing Data-Warehouse-Prozess, d.h. alle Schritte der Datenbeschaffung (Extraktion, Transformation, Laden), des Speicherns und der Analyse Data Mart externe (Teil-)Sicht auf das Data Warehouse durch Kopieren anwendungsbereichsspezifisch OLAP (Online Analytical Processing) explorative, interaktive Analyse auf Basis des konzeptuellen Datenmodells Business Intelligence... Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

13 1 Einführung 1 Einführung Begriff Data Warehouse Trennung operativer und analytischer Systeme: Gründe Antwortzeitverhalten: Analyse auf operativen Quelldatensystemen schlechte Performance Langfristige Speicherung der Daten Zeitreihenanalyse Zugriff auf Daten unabhängig von operativen Datenquellen (Verfügbarkeit, Integrationsproblematik) Vereinheitlichung des Datenformats im DW Gewährleistung der Datenqualität im DW Schallehn Data-Warehouse-Technologien Wintersemester 07/ Historie: Wurzeln Einführung Begriff Data Warehouse 60er Jahre: Executive Information Systems (EIS) qualitative Informationsversorgung von Entscheidern kleine, verdichtete Extrakte der operativen Datenbestände Aufbereitung in Form statischer Berichte Mainframe 80er Jahre: Management Information Systems (MIS) meist statische Berichtsgeneratoren Einführung von Hierarchieebenen für Auswertung von Kennzahlen (Roll-Up, Drill-Down) Client-Server-Architekturen, GUI (Windows, Apple) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Historie Einführung Begriff Data Warehouse 1992: Einführung des Data-Warehouse-Konzeptes durch W.H. Inmon redundante Haltung von Daten, losgelöst von Quellsystemen Beschränkung der Daten auf Analysezweck 1993: Definition des Begriffs OLAP durch E.F. Codd Dynamische, multidimensionale Analyse Weitere Einflussgebiete Verbreitung geschäftsprozessorientierter Transaktionssysteme (SAP R/3) Bereitstellung von entscheidungsrelevanten Informationen Data Mining WWW (Web-enabled Data Warehouse etc.) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 13

14 1 Einführung Einführung Vorlesung: Zielstellungen Begriff Data Warehouse Vermittlung von Kenntnissen zu Datenbanktechniken für Aufbau und Implementierung von Data Warehouses Anwendung bekannter DB-Techniken (siehe Vorlesung Datenbanksysteme ) Datenmodellierung Anfragesprachen und -verarbeitung DW-spezifische Techniken multidimensionale Datenmodellierung spezielle Anfragetechniken Indexstrukturen materialisierte Sichten Schallehn Data-Warehouse-Technologien Wintersemester 07/ DW-Architektur Einführung DW-Architektur Komponenten von DW und deren Aufgaben Datenbanken Datenquellen: Herkunftsort der Daten Arbeitsbereich: temporäre Datenbank für Transformation Data Warehouse: physische Datenbank für Analyse Repository: Datenbank mit Metadaten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einführung DW-Architektur: Komponenten DW-Architektur Data-Warehouse-Manager: zentrale Kontrolle und Steuerung Monitore: Überwachung der Quellen auf Veränderungen Extraktoren: Selektion und Transport der Daten aus Quellen in Arbeitsbereich Transformatoren: Vereinheitlichung und Bereinigung der Daten Ladekomponenten: Laden der transformierten Daten in das DW Analysekomponenten: Analyse und Präsentation der Daten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

15 1 Einführung 1 Einführung DW-Architektur Multidimensionales Datenmodell Datenmodell zur Unterstützung der Analyse Fakten und Dimensionen Klassifikationsschema Würfel Operationen: Pivotierung, Roll-Up, Drill-Down, Drill-Across, Slice und Dice Notationen zur konzeptuellen Modellierung Relationale Umsetzung Star-Schema, Snowflake-Schema Schallehn Data-Warehouse-Technologien Wintersemester 07/ ETL-Prozess Einführung DW-Architektur Prozess von Extraktion, Transformation und Laden Extraktion von Daten aus Quellen Laden von Daten in das DWH Aspekte der Datenqualität Begriff Probleme Data Cleaning Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einführung DW-Architektur Index- und Speicherungsstrukturen Klassifikation Wiederholung B-Baum und B+-Baum Mehrdimensionale Indexstrukturen R-Baum UB-Baum Bitmap-Index Vergleich Weitere Formen Multidimensionale Speicherung Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 15

16 1 Einführung Einführung DW-Architektur Anfragen an Data Warehouses Gruppierung und Aggregation Supergroups, CUBE OLAP-Funktionen aus SQL:2003 Mehrdimensionale Erweiterungen von Anfragesprachen: MDX Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einführung DW-Architektur Anfrageverarbeitung und -optimierung Berechnung von Gruppierung und Cubes Star-Joins Weitere Optimierungsaspekte Schallehn Data-Warehouse-Technologien Wintersemester 07/ Materialisierte Sichten Einführung DW-Architektur Materialisierte Sicht (engl. materialized view): vorab berechneter Ausschnitt aus einer Faktentabelle Verwendung: Anfrageersetzung Auswahl: Bestimmung der redundant gehaltenen Daten statische vs. dynamische Auswahlverfahren semantisches Caching Wartung und Aktualisierung Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

17 1 Einführung 1 TPC-Benchmarks Einführung Benchmarks Vergleich der Leistungsfähigkeit von Datenbanken ( TPC-C: OLTP Benchmark TPC-H: Ad-hoc Decision Support (variable Anteile) TPC-R: Reporting Decision Support (feste Anfragen) TPC-W: ecommerce Transaktionsprocessing Vorgegebene Schemata (Lieferwesen) Schema-, Query- und Datengeneratoren Unterschiedliche DB-Größen TPC-H: 100 GB GB - 1 TB - 3 TB Schallehn Data-Warehouse-Technologien Wintersemester 07/ TPC-H: Schema Einführung Benchmarks REGION NATION CUSTOMER SUPPLIER ORDERS PART PARTSUPP LINEITEM Schallehn Data-Warehouse-Technologien Wintersemester 07/ TPC-H: Anfragen Einführung Benchmarks SELECT c_name, c_custkey, o_orderkey, o_orderdate, o_totalprice, SUM (l_quantity) FROM customer, orders, lineitem WHERE o_orderkey IN (SELECT l_orderkey FROM lineitem GROUP BY l_orderkey HAVING SUM (l_quantity) > :1) AND c_custkey = o_custkey AND o_orderkey = l_orderkey GROUP BY c_name, c_custkey, o_orderkey, o_orderdate, o_totalprice ORDER BY o_totalprice desc, o_orderdate Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 17

18 1 Einführung Einführung TPC-H: Zahlen (100 GB) Benchmarks Schallehn Data-Warehouse-Technologien Wintersemester 07/ Einführung TPC-H: Zahlen (3.000 GB) Benchmarks Schallehn Data-Warehouse-Technologien Wintersemester 07/ Produkte Einführung Benchmarks OLAP-Tools/Server MS Analysis Services, Hyperion, Cognos DW-Erweiterungen für RDBMS Oracle10g, IBM DB2, MS SQL Server: SQL-Erweiterungen, Indexstrukturen, mat. Sichten, Bulk-Load/Insert,... ETL-Tools MS Integration Services, Oracle Warehouse Builder,... Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

19 1 Einführung 1 Teil III Data-Warehouse-Architektur Uni Magdeburg, WS 2007/08 19

20 1 Einführung 20 Uni Magdeburg, WS 2007/08

21 2 2 Data-Warehouse-Architektur 2.1 Anforderungen 2.2 Referenzarchitektur 2.3 Phasen des Data Warehousing 2.4 Komponenten 21

22 2 Data-Warehouse-Architektur Data-Warehouse-Architektur Data-Warehouse-Architektur 1 Anforderungen 2 Referenzarchitektur 3 Phasen des Data Warehousing 4 Komponenten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Anforderungen Anforderungen des Data Warehousing Unabhängigkeit zwischen Datenquellen und Analysesystemen (bzgl. Verfügbarkeit, Belastung, laufender Änderungen) Dauerhafte Bereitstellung integrierter und abgeleiteter Daten (Persistenz) Mehrfachverwendbarkeit der bereitgestellten Daten Möglichkeit der Durchführung prinzipiell beliebiger Auswertungen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Anforderungen Anforderungen des Data Warehousing Unterstützung individueller Sichten (z.b. bzgl. Zeithorizont, Struktur) Erweiterbarkeit (z.b. Integration neuer Quelle) Automatisierung der Abläufe Eindeutigkeit über Datenstrukturen, Zugriffsberechtigungen und Prozesse Ausrichtung am Zweck: Analyse der Daten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

23 2 2 Data-Warehouse-Architektur Referenzarchitektur Data-Warehouse-Architektur Referenzarchitektur Datenbeschaffungsbereich Extraktion Laden Datenquelle Arbeitsbereich Basisdatenbank Laden Data Warehouse Analyse Monitor Transformation Data- Warehouse- Manager Metadaten- Manager Datenfluss Kontrollfluss Repository Data-Warehouse-System Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Phasen des Data Warehousing Phasen des Data Warehousing 1 Überwachung der Quellen auf Änderungen durch Monitore 2 Kopieren der relevanten Daten mittels Extraktion in temporären Arbeitsbereich 3 Transformation der Daten im Arbeitsbereich (Bereinigung, Integration) 4 Kopieren der Daten in integrierte Basisdatenbank als Grundlage für verschiedene Analysen 5 Laden der Daten in das Data Warehouse (Datenbank für Analysezwecke) 6 Analyse: Operationen auf Daten des DW Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Data-Warehouse-Manager Komponenten Zentrale Komponente eines DW-Systems Initiierung, Steuerung und Überwachung der einzelnen Prozesse (Ablaufsteuerung) Initiierung des Datenbeschaffungsprozesses in regelmäßigen Zeitabständen (jede Nacht, am Wochenende etc.): Starten der Extraktion von Daten aus Quellen und Übertragung in Arbeitsbereich bei Änderung einer Quelle: Start der entsprechenden Extraktionskomponente auf explizites Verlangen des Administrators Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 23

24 2 Data-Warehouse-Architektur Data-Warehouse-Architektur Data-Warehouse-Manager Komponenten Nach Auslösen des Ladeprozesses: Überwachung der weiteren Schritte (Bereinigung, Integration etc.) Koordination der Reihenfolge der Verarbeitung Fehlerfall Dokumentation von Fehlern Wiederanlaufmechanismen Zugriff auf Metadaten aus dem Repository Steuerung des Ablaufs Parameter der Komponenten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenquellen Data-Warehouse-Architektur Komponenten Lieferanten der Daten für das Data Warehouse gehören nicht direkt zum DW können intern (Unternehmen) oder extern (z.b. Internet) sein heterogen bzgl. Struktur, Inhalt und Schnittstellen (Datenbanken, Dateien) Auswahl der Quellen und Qualität der Daten von besonderer Bedeutung Faktoren für Auswahl Zweck des DW Qualität der Quelldaten Verfügbarkeit (rechtlich, sozial, technisch) Preis für Erwerb der Daten (speziell bei externen Quellen) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Komponenten Datenquellen: Klassifikation Herkunft: intern, extern Zeit: aktuell, historisch Nutzungsebene: Primärdaten, Metadaten Inhalt: Zahl, Zeichenkette, Grafik, Referenz, Dokument Darstellung: numerisch, alphanumerisch, BLOB Sprache und Zeichensatz Vertraulichkeitsgrad Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

25 2 2 Data-Warehouse-Architektur Data-Warehouse-Architektur Komponenten Datenquellen: Qualitätsforderungen Konsistenz (Widerspruchsfreiheit) Korrektheit (Übereinstimmung mit Realität), Vollständigkeit (z.b. Abwesenheit von fehlenden Werten oder Attributen) Genauigkeit (z.b. Anzahl der Nachkommastellen) und Granularität (z.b. tagesgenaue Daten) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Komponenten Datenquellen: Qualitätsforderungen Zuverlässigkeit und Glaubwürdigkeit (Nachvollziehbarkeit der Entstehung, Vertrauenswürdigkeit des Lieferanten) Verständlichkeit (inhaltlich und technisch / strukturell für jeweilige Zielgruppe) Verwendbarkeit und Relevanz (geeignetes Format, Zweckdienlichkeit) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Monitore Data-Warehouse-Architektur Komponenten Aufgabe: Entdeckung von Datenmanipulationen in einer Datenquelle Strategien: Trigger-basiert aktive Datenbankmechanismen Auslösen von Triggern bei Datenänderungen Kopieren der geänderten Tupel in anderen Bereich replikationsbasiert Nutzung von Replikationsmechanismen zur Übertragung geänderter Daten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 25

26 2 Data-Warehouse-Architektur Monitore Data-Warehouse-Architektur Komponenten Strategien (fortg.): Log-basiert Analyse von Transaktions-Log-Dateien der DBMS zur Erkennung von Änderungen zeitstempelbasiert Zuordnung eines Zeitstempel zu Tupeln Aktualisierung bei Änderungen Identifizierung von Änderungen seit der letzten Extraktion durch Zeitvergleich Snapshot-basiert Periodisches Kopieren des Datenbestandes in Datei (Snapshot) Vergleich von Snapshots zur Identifizierung von Änderungen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Arbeitsbereich Data-Warehouse-Architektur Komponenten Aufgabe: Zentrale Datenhaltungskomponente des Datenbeschaffungsbereichs (engl. staging area) Temporärer Zwischenspeicher zur Integration Nutzung: Ausführung der Transformationen (Bereinigung, Integration etc.) direkt auf Zwischenspeicher Laden der transformierten Daten in DW bzw. Basisdatenbank erst nach erfolgreichem Abschluss der Transformation Vorteile: Keine Beeinflussung der Quellen oder des DW Keine Übernahme fehlerbehafteter Daten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Extraktionskomponente Komponenten Aufgabe: Übertragung von Daten aus Quellen in Arbeitsbereich Funktion: abhängig von Monitoring-Strategie periodisch auf Anfrage Ereignisgesteuert (z.b. bei Erreichen einer definierten Anzahl von Änderungen) sofortige Extraktion Realisierung: Nutzung von Standardschnittstellen (z.b. ODBC) Ausnahmebehandlung zur Fortsetzung im Fehlerfall Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

27 2 2 Data-Warehouse-Architektur Data-Warehouse-Architektur Komponenten Transformationskomponente Vorbereitung und Anpassung der Daten für das Laden Inhaltlich: Daten-/Instanzintegration und Bereinigung Strukturell: Schemaintegration Überführung aller Daten in ein einheitliches Format Datentypen, Datumsangaben, Maßeinheiten, Kodierungen etc. Beseitigung von Verunreinigungen (engl. Data Cleaning bzw. Data Cleansing) Fehlerhafte oder fehlende Werte, Redundanzen, veraltete Werte Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Komponenten Transformationskomponente Data Scrubbing: Ausnutzung von domänenspezifischen Wissen (z.b. Geschäftsregeln) zum Erkennen von Verunreinigungen Beispiel: Erkennen von Redundanzen Data Auditing: Anwendung von Data-Mining-Verfahren zum Aufdecken von Regeln Aufspüren von Abweichungen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Ladekomponente Data-Warehouse-Architektur Komponenten Aufgabe: Übertragung der bereinigten und aufbereiteten (z.b. aggregierten) Daten in die Basisdatenbank bzw. das DW Besonderheiten: Nutzung spezieller Ladewerkzeuge (z.b. SQL*Loader von Oracle) Bulk-Laden Historisierung: Änderung in Quellen dürfen DW-Daten nicht überschreiben, stattdessen zusätzliches Abspeichern Ladevorgang: Online: Basisdatenbank bzw. DW steht weiterhin zur Verfügung Offline: stehen nicht zur Verfügung (Zeitfenster: nachts, Wochenende) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 27

28 2 Data-Warehouse-Architektur Basisdatenbank Data-Warehouse-Architektur Komponenten Aufgabe: Integrierte Datenbasis für verschiedene Analysen unabhängig von konkreten Analysen, d.h. noch keine Aggregationen Versorgung des DW mit bereinigten Daten (u.u. durch Verdichtung) Anmerkungen: wird in der Praxis oft weggelassen entspricht Operational Data Store (ODS) nach Inmon Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data Warehouse Data-Warehouse-Architektur Komponenten Aufgabe: Datenbank für Analysezwecke; orientiert sich in Struktur an Analysebedürfnissen Basis: DBMS Besonderheiten: Unterstützung des Ladeprozesses Schnelles Laden großer Datenmengen Massenlader (engl. bulk loader) unter Umgehung von Mehrbenutzerkoordination und Konsistenzprüfung Unterstützung des Analyseprozesses Effiziente Anfrageverarbeitung (Indexstrukturen, Caching) Multidimensionales Datenmodell (z.b. über OLE DB for OLAP) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data Marts Data-Warehouse-Architektur Komponenten Aufgabe: Bereitstellung einer inhaltlich beschränkten Sicht auf das DW (z.b. für Abteilung) Gründe: Eigenständigkeit, Datenschutz, Lastverteilung, Datenvolumen, etc. Realisierung: Verteilung der DW-Daten Formen: Abhängige Data Marts Unabhängige Data Marts Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

29 2 2 Data-Warehouse-Architektur Data-Warehouse-Architektur Abhängige Data Marts Komponenten Verteilung des Datenbestandes nach Integration und Bereinigung (Basisdatenbank) und Organisation entsprechend der Analysebedürfnisse (Data Warehouse) Nabe- und Speiche -Architektur (engl. hub and spoke) Data Mart: nur Extrakt (inkl. Aggregation) des Data Warehouse Keine Bereinigung oder Normierung Analysen auf Data Mart konsistent zu Analysen auf DW Einfache Realisierung: Replikations- oder Sichtmechanismen von DBMS Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Komponenten Nabe- und Speiche -Architektur Analyse Analyse Analyse Analyse Data Marts Data Warehouse Laden Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Komponenten Abhängige Data Marts: Extraktbildung Strukturelle Extrakte Beschränkung auf Teile des Schemas Bsp.: nur bestimmte Kennzahlen oder Dimensionen Inhaltliche Extrakte inhaltliche Beschränkung Bsp.: nur bestimmte Filialen oder das letzte Jahresergebnis Aggregierte Extrakte Verringerung der Granularität Bsp.: Beschränkung auf Monatsergebnisse Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 29

30 2 Data-Warehouse-Architektur Data-Warehouse-Architektur Unabhängige Data Marts Komponenten unabhängig voneinander entstandene kleine Data Warehouses (z.b. von einzelnen Organisationen) nachträgliche Integration und Transformation Probleme: unterschiedliche Analysesichten (Data Mart, globales Data Warehouse) Konsistenz der Analysen aufgrund zusätzlicher Transformation Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Unabhängige Data Marts Komponenten Analyse Analyse Analyse Analyse Data Warehouse Transformation Data Marts Laden Laden Laden Laden Schallehn Data-Warehouse-Technologien Wintersemester 07/ Analysewerkzeuge Data-Warehouse-Architektur Komponenten engl. Business Intelligence Tools Aufgabe: Präsentation der gesammelten Daten mit interaktiven Navigationsund Analysemöglichkeiten Analyse: einfache arithm. Operationen (z.b. Aggregation)... komplexe statistische Untersuchungen (z.b. Data Mining) Aufbereitung der Ergebnisse für Weiterverarbeitung bzw. Weitergabe Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

31 2 2 Data-Warehouse-Architektur Data-Warehouse-Architektur Komponenten Analysewerkzeuge: Darstellung Tabellen Pivot-Tabellen := Kreuztabellen Analyse durch Vertauschen von Zeilen und Spalten Veränderung von Tabellendimensionen Schachtelung von Tabellendimensionen Umsatz Bier Rotwein Summe 2005 Hessen Thüringen Summe Hessen Thüringen Summe Graphiken Bildliche Darstellung großer Datenmengen Netz-, Punkt-, Oberflächengraphen Text und Multimedia-Elemente Ergänzung um Audio- oder Videodaten Einbeziehung von Dokumentenmanagementsystemen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Komponenten Analysewerkzeuge: Funktionalität Data Access Reporting Werkzeuge Lesen von Daten, Veränderung/Anreichung durch einfache arithmetische Operationen Präsentation in Berichten Ampelfunktionen : regelgebundene Formatierung Basis: SQL Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Komponenten Analysewerkzeuge: Beispiel [Cognos, 2006] Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 31

32 2 Data-Warehouse-Architektur Data-Warehouse-Architektur Komponenten Analysewerkzeuge: Funktionalität OLAP Interaktive Datenanalyse, Klassifikationsnavigation Berichte mit verdichteten Werten (Kennzahlen) Navigationsoperationen (Drill Down, Roll Up, Drill Across) Gruppierungs- und Berechnungsfunktionen (statistisch, betriebswirtschaftlich) Validierung von Hypothesen, Plausibilitätsprüfung Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Komponenten Analysewerkzeuge: Beispiel [Cognos, 2006] Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Komponenten Analysewerkzeuge: Funktionalität Data Mining Aufdeckung bisher unbekannter Zusammenhänge (Muster, Regeln) Verfahren (u.a.): Klassifikation: Zuordnung der Daten zu vorgegebenen Klassen Assoziationsregeln Clusterbildung: Segmentierung, d.h. Daten bzgl. Ihrer Merkmalsausprägungen zu Gruppen zusammenfassen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

33 Data-Warehouse-Architektur Data Mining: Beispiele 2 2 Data-Warehouse-Architektur Komponenten All Kreditwürdigkeit (Gut/Schlecht): 3/4 Einkommen Schulden=Niedrig Kreditwürdigkeit: 3/1 Schulden=Hoch Kreditwürdigkeit: 0/3 Alter Ang.verhältnis= Selbständig Kreditwürdigkeit: 0/1 Ang.verhältnis= Angestellt Kreditwürdigkeit: 3/0 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Arten von Analysen Data-Warehouse-Architektur Komponenten Komplexität Datenvisualisierung Data Mining CRM- Analysen Forecasting/ Budgeting Analytical- Reporting OLAP Standard- Reporting Ad-hoc- Reporting Charting Flexibilität Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Komponenten Analysewerkzeuge: Realisierung Standard Reporting: Reporting-Werkzeuge des klassischen Berichtswesens Berichtshefte: Graphische Entwicklungsumgebungen zur Erstellung von Präsentationen von Tabellen, Graphiken, etc. Ad-hoc Query & Reporting: Werkzeuge zur Erstellung und Präsentation von Berichten Verbergen von Datenbankanbindung und Anfragesprachen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 33

34 2 Data-Warehouse-Architektur Data-Warehouse-Architektur Komponenten Analysewerkzeuge: Realisierung Analyse-Clients: Werkzeuge zur mehrdimensionalen Analyse beinhalten Navigation, Manipulation (Berechnung), erweiterte Analysefunktionen und Präsentation Spreadsheet Add-Ins: Erweiterung von Tabellenkalkulationen für Datenanbindung und Navigation Entwicklungsumgebungen: Unterstützung der Entwicklung eigener Analyseanwendungen Bereitstellung von Operationen auf multidimensionalen Daten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Repository Data-Warehouse-Architektur Komponenten Aufgabe: Speicherung der Metadaten des DW-Systems Metadaten: Informationen, die Aufbau, Wartung und Administration des DW-Systems vereinfachen und Informationsgewinnung ermöglichen Beispiele: Datenbankschemata, Zugriffsrechte, Prozessinformationen (Verarbeitungsschritte und Parameter), etc. Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data-Warehouse-Architektur Metadaten-Manager Komponenten Aufgaben: Steuerung der Metadatenverwaltung Zugriff, Anfrage, Navigation Versions- und Konfigurationsverwaltung Formen: allgemein einsetzbar: erweiterbares Basisschema werkzeugspezifisch: fester Teil von Werkzeugen häufig Integration von bzw. Austausch zwischen dezentralen Metadaten-Managementsystemen notwendig Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

35 2 Data-Warehouse-Architektur 2 Data-Warehouse-Architektur Komponenten Zusammenfassung Referenzarchitektur für Data-Warehouse-Systeme Prozess des Data Warehousing Rolle der Komponenten Data Marts als Extrakte des DW Analysewerkzeuge: Klassifikation und Beispiele Schallehn Data-Warehouse-Technologien Wintersemester 07/ Teil IV Multidimensionales Datenmodell Uni Magdeburg, WS 2007/08 35

36 2 Data-Warehouse-Architektur 36 Uni Magdeburg, WS 2007/08

37 3 3 Multidimensionales Datenmodell 3.1 Grundbegriffe 3.2 Der Würfel 3.3 Operationen zur Datenanalyse 37

38 3 Multidimensionales Datenmodell Multidimensionales Datenmodell Multidimensionales Datenmodell 1 Grundbegriffe 2 Der Würfel 3 Operationen zur Datenanalyse Schallehn Data-Warehouse-Technologien Wintersemester 07/ Grundbegriffe Multidimensionales Datenmodell Grundbegriffe Dimensionen Fakten / Kennzahlen Zeitraum Produkt Kategorie Artikel Kennzahl Umsatz Jahr Quartal Monat Filiale Region Stadt Bundesland Schallehn Data-Warehouse-Technologien Wintersemester 07/ Motivation Multidimensionales Datenmodell Grundbegriffe Datenmodell ausgerichtet auf Unterstützung der Analyse Datenanalyse im Entscheidungsprozess Betriebswirtschaftliche Kennzahlen (Erlöse, Gewinne, Verluste, etc.) stehen im Mittelpunkt Betrachtung der Kennzahlen aus unterschiedlichen Perspektiven (zeitlich, regional, produktbezogen) Dimensionen Unterteilung der Auswertedimensionen möglich (Jahr, Quartal, Monat) Hierarchien oder Konsolidierungsebenen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

39 3 Multidimensionales Datenmodell Multidimensionales Datenmodell Verfügbare Informationen Grundbegriffe 3 Qualifizierend Repräsentiert durch Kategorienattribute Daten zur Nutzung als Navigationsraster ( Drill-Pfade ) Modelliert als Begriffshierarchien im Rahmen von Dimensionen Quantifizierend Bilden Gegenstand der Auswertung ( Summenattribute ) Zellen eines Würfels, mit Dimensionen als Kanten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Dimensionen Multidimensionales Datenmodell Grundbegriffe Dimension: beschreibt mögliche Sicht auf die assoziierte Kennzahl endliche Menge von n (n 2) Dimensionselementen (Hierarchieobjekten), die eine semantische Beziehung aufweisen dienen der orthogonalen Strukturierung des Datenraums Beispiele: Produkt, Geographie, Zeit Schallehn Data-Warehouse-Technologien Wintersemester 07/ Multidimensionales Datenmodell Hierarchien in Dimensionen Grundbegriffe Dimensionselemente: Knoten einer Klassifikationshierarchie Klassifikationsstufe beschreibt Verdichtungsgrad Darstellung von Dimensionen über Klassifikationsschema (Schema von Klassifikationshierarchien) Formen: einfache Hierarchien parallele Hierarchien Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 39

40 3 Multidimensionales Datenmodell Multidimensionales Datenmodell Einfache Hierarchien Grundbegriffe Höhere Hierarchieebene enthält die aggregierten Werte genau einer niedrigeren Hierarchiestufe Oberster Knoten: Top enthält Verdichtung auf einen einzelnen Wert der Dimension Top Top Produktkategorie Land Produktfamilie Stadt Produktgruppe Filiale Artikel Schallehn Data-Warehouse-Technologien Wintersemester 07/ Multidimensionales Datenmodell Parallele Hierarchien Grundbegriffe Innerhalb einer Dimension sind mehrere unabhängige Arten der Gruppierung möglich Keine hierarchische Beziehung zwischen parallelen Zweigen Parallelhierarchie Pfad im Klassifikationsschema Konsolidierungspfad Top Jahr Quartal Woche Monat Tag Schallehn Data-Warehouse-Technologien Wintersemester 07/ Multidimensionales Datenmodell Grundbegriffe Schema einer Dimension D Partiell geordnete Menge von Kategorienattributen ({D 1,..., D n, Top D }; ) Generisches maximales Element Top D Funktionale Abhängigkeit Top D wird von allen Attributen funktional bestimmt: i, 1 i n : D i Top D Es gibt genau ein D i, das alle anderen Kategorieattribute bestimmt Gibt feinste Granularität einer Dimension vor i, 1 i n, j, 1 j n, i j : D i D j Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

41 3 Multidimensionales Datenmodell Kategorienattribute Multidimensionales Datenmodell Grundbegriffe 3 Inhaltliche Verfeinerung durch unterschiedliche Rollen: Primärattribut Kategorienattribut, das alle anderen Attribute einer Dimension bestimmt Definiert maximale Feinheit Beispiel: Auftrag Klassifikationsattribut Element der Menge, die mehrstufige Kategorisierung (Klassifikationshierarchie) bilden Beispiel: Kunde, Nation, Region Dimensionales Attribut Element der Menge der Attribute, die vom Primärattribut oder einem Klassifikationsattribut bestimmt werden und nur Top D bestimmen Beispiel: Adresse, Telefon Schallehn Data-Warehouse-Technologien Wintersemester 07/ Multidimensionales Datenmodell Grundbegriffe Struktur einer Dimension: Beispiel Klassifikationsattribute Top Region Dimensionale Attribute Nation Kunde Adresse Telefon Status Bestellpreis Auftrag Primärattribut Schallehn Data-Warehouse-Technologien Wintersemester 07/ Kennzahlen Multidimensionales Datenmodell Grundbegriffe Kennzahlen / Fakten (engl. facts): (verdichtete) numerische Messgrößen Beschreiben betriebswirtschaftliche Sachverhalte Fakt: Basiskennzahl Kennzahl: aus Fakten konstruiert (abgeleitete Kennzahl) Durch Anwendung arithmetischer Operationen Beispiele: Umsatz, Gewinn, Verlust, Deckungsbeitrag Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 41

42 3 Multidimensionales Datenmodell Fakt: Schema Multidimensionales Datenmodell Grundbegriffe Schema wird durch mehrere Bestandteile spezifiziert Granularität G = {G 1,..., G k } G ist Teilmenge aller Kategorienattribute aller im Schema existierenden Dimensionsschemata DS 1,..., DS n i, 1 i k, j, 1 j n : G i DS j i, 1 i k, j, 1 j k, i j : G i G j (keine funktionalen Abhängigkeit zwischen Kategorienattributen einer Granularität) Detailliertheitsgrad der Fakten Summationstyp SumTyp Schallehn Data-Warehouse-Technologien Wintersemester 07/ Kennzahl Multidimensionales Datenmodell Grundbegriffe Kennzahl M ist definiert durch Granularität G Berechnungsvorschrift f () über Fakten Summationstyp SumTyp Berechnung über nichtleerer Teilmenge der im Schema existierenden Fakten M = (G, f (F 1,..., F k ), SumTyp) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Multidimensionales Datenmodell Kennzahl: Bildung von f() Grundbegriffe Skalarfunktionen +,,, /, mod Beispiel: Umsatzsteueranteil = Menge Preis Steuersatz Aggregatfunktionen Funktion H() zur Verdichtung eines Datenbestandes, indem aus n Einzelwerten ein Aggregatwert ermittelt wird H : 2 dom(x1) dom(xn) dom(y) SUM(), AVG(), MIN(), MAX(), COUNT() Ordnungsbasierte Funktionen Definition von Kennzahlen auf Basis zuvor definierter Ordnungen Bsp.: Kumulation, TOP(n) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

43 3 Multidimensionales Datenmodell Summationstyps Multidimensionales Datenmodell Grundbegriffe 3 Zuweisung eines Summationstyps charakterisiert erlaubte Aggregationsoperationen FLOW Beliebig aggregierbar Beispiel: Bestellmenge eines Artikels pro Tag STOCK Beliebig aggregierbar mit Ausnahme temporaler Dimension Beispiele: Lagerbestand, Einwohnerzahl pro Stadt VALUE PER UNIT(VPU) Aktuelle Zustände, die nicht summierbar sind Zulässig nur: MIN(), MAX(), AVG() Beispiele: Wechselkurs, Steuersatz Schallehn Data-Warehouse-Technologien Wintersemester 07/ Summierbarkeit Multidimensionales Datenmodell Grundbegriffe FLOW STOCK VPU Aggregation über temporale Dimension? nein ja MIN/MAX SUM + + AVG COUNT Schallehn Data-Warehouse-Technologien Wintersemester 07/ Multidimensionales Datenmodell Weitere Eigenschaften Grundbegriffe Disjunktheit Konkreter Wert einer Kennzahl geht exakt einmal in Ergebnis ein Bsp.: Studierende im Grundstudium Studierende Gesamt Informatik BWL Gesamt Anzahl der Informatik-Studenten (bei 2-jährigem Grundstudium)? Anzahl der Studierenden insgesamt (bei Doppelstudium)? Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 43

44 3 Multidimensionales Datenmodell Multidimensionales Datenmodell Weitere Eigenschaften /2 Grundbegriffe Vollständigkeit Kennzahlen auf höherer Aggregationsebene lassen sich komplett aus Werten tieferer Stufen berechnen Restaurants Halle Magdeburg Sonstige Gesamt Sonstige = Landgasthöfe im Umland Schallehn Data-Warehouse-Technologien Wintersemester 07/ Der Würfel Multidimensionales Datenmodell Der Würfel Würfel (engl. cube, eigentlich Quader): Grundlage der multidimensionalen Analyse Kanten Dimensionen Zellen ein oder mehrere Kennzahlen (als Funktion der Dimensionen) Anzahl der Dimensionen Dimensionalität Visualisierung 2 Dimensionen: Tabelle 3 Dimensionen: Würfel > 3 Dimensionen: Multidimensionale Domänenstruktur Schema C eines Würfels Menge der Dimensionen(-schemata) DS Menge der Kennzahlen M C = (DS, M) = ({D 1,..., D n }, {M 1,..., M m }) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Orthogonalität Multidimensionales Datenmodell Der Würfel In multidimensionalen Schemata gilt Orthogonalität, d.h. Keine funktionalen Abhängigkeiten zwischen Attributen unterschiedlicher Dimensionen i, 1 i n, j, 1 j n, i j k, l : D i.d k D j.d l Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

45 3 Multidimensionales Datenmodell Multidimensionales Datenmodell Der Würfel Multidimensionaler Datenwürfel 3 Zeitraum Produkt Kategorie Artikel Kennzahl Umsatz Jahr Quartal Monat Filiale Region Stadt Bundesland Schallehn Data-Warehouse-Technologien Wintersemester 07/ Multidimensionales Datenmodell Operationen zur Datenanalyse Operationen zur Datenanalyse OLAP-Operationen auf multidimensionalen Datenstrukturen Standardoperationen Pivotierung Roll-Up, Drill-Down Drill-Across Slice, Dice Schallehn Data-Warehouse-Technologien Wintersemester 07/ Multidimensionales Datenmodell Pivotierung / Rotation Operationen zur Datenanalyse Drehen des Würfels durch Vertauschen der Dimensionen Analyse der Daten aus verschiedenen Perspektiven Produkt Summe Rotwein Bier 2005 Zeitraum Summe Bier 2006 Summe Rotwein Summe Zeitraum Hessen Thüringen Summe Region Produkt Hessen Thüringen Summe Region Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 45

46 3 Multidimensionales Datenmodell Multidimensionales Datenmodell Roll-Up, Drill-Down, Drill-Across Operationen zur Datenanalyse Roll-Up: Erzeugen neuer Informationen durch Aggregierung der Daten entlang des Konsolidierungspfades Dimensionalität bleibt erhalten Beispiel: Tag Monat Quartal Jahr Drill-Down: komplementär zu Roll-Up Navigation von aggregierten Daten zu Detail-Daten entlang der Klassifikationshierarchie Drill-Across: Wechsel von einem Würfel zu einem anderen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Multidimensionales Datenmodell Roll-Up und Drill-Down Operationen zur Datenanalyse Produkt Drill Down Produkt Summe Rotwein Bier 2005 Roll Up Summe Rotwein Bier Q Summe 2005 Q2 Q3 Zeitraum Hessen Thüringen Summe Region 2006 Q4... Summe Zeitraum Hessen Thüringen Summe Region Schallehn Data-Warehouse-Technologien Wintersemester 07/ Slice und Dice Multidimensionales Datenmodell Operationen zur Datenanalyse Erzeugen individueller Sichten Slice: Herausschneiden von Scheiben aus dem Würfel Verringerung der Dimensionalität Beispiel: alle Werte des aktuellen Jahres entspricht der relationalen Projektion Dice: Herausschneiden einen Teilwürfels Erhaltung der Dimensionalität, Veränderung der Hierarchieobjekte Beispiel: die Werte bestimmter Produkte oder Regionen entspricht der relationalen Selektion Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

47 3 Multidimensionales Datenmodell Multidimensionales Datenmodell Operationen zur Datenanalyse 3 Slice Produkt Produkt Summe Summe Rotwein Rotwein Bier Bier Summe Summe Zeitraum Hessen Thüringen Summe Region Zeitraum Hessen Thüringen Summe Region Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 47

48 3 Multidimensionales Datenmodell 48 Uni Magdeburg, WS 2007/08

49 4 Modellierungsansätze Konzeptuelle Modellierung 4.2 ME/R 4.3 ADAPT 4.4 Graphbasier te Modellierungsansätze 4.5 Umsetzung des multidimensionalen Datenmodells 4.6 Relationale Speicherung 4.7 Darstellung von Klassifikationshierarchien 49

50 4 Modellierungsansätze Teil V Modellierungsansätze Modellierungsansätze Modellierungsansätze 1 Konzeptuelle Modellierung 2 ME/R 3 ADAPT 4 Graphbasierte Modellierungsansätze 5 Umsetzung des multidimensionalen Datenmodells 6 Relationale Speicherung 7 Darstellung von Klassifikationshierarchien Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze Konzeptuelle Modellierung Konzeptuelle Modellierung Konzeptuelle Modellierung: formale Beschreibung des Fachproblems und der im Anwendungsbereich benötigten Informationsstrukturen Probleme konventioneller Entwurfstechniken (ER, UML): Unzureichende Semantik für multidimensionales Datenmodell hier: Verzicht auf universelle Anwendbarkeit, stattdessen Konzentration auf Analyse Beispiel: Klassifikationsstufe, Fakt Entity? Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

51 4 Modellierungsansätze ME/R-Modell Modellierungsansätze ME/R Multidimensional Entity/Relationship [Sapia et. al. (LNCS 1552)] Erweiterung des klassischen ER-Modells Entity-Menge Dimension Level (Klassifikationsstufe) keine explizite Modellierung von Dimensionen n-äre Beziehungsmenge Fact Kennzahlen als Attribute der Beziehung Binäre Beziehungsmenge Classification bzw. Roll-Up (Verbindung von Klassifikationsstufen) definiert gerichteten, nicht-zyklischen Graphen 4 Schallehn Data-Warehouse-Technologien Wintersemester 07/ ME/R: Notationen Modellierungsansätze ME/R Ebene Faktenbeziehung Klassifikationsstufe Faktenname Klassifikationsbeziehung Schallehn Data-Warehouse-Technologien Wintersemester 07/ ME/R: Beispiel Modellierungsansätze ME/R Verkäufe Umsatz Produktgruppe Artikel Verkauf Filiale Stadt Tag Produktkategorie Bundesland Woche Monat Quartal Jahr Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 51

52 4 Modellierungsansätze ADAPT Modellierungsansätze ADAPT Application Design for Analytical Processing Technologies (Bulos) neue Entwicklung für multidimensionale Datenmodellierung Beschreibung sämtlicher Metadaten-Objekte Unterstützung von Berechnungsvorschriften teilweise Werkzeugunterstützung (CASE, Visio, etc.) keine formale Grundlage Schallehn Data-Warehouse-Technologien Wintersemester 07/ ADAPT: Elemente Modellierungsansätze ADAPT Hypercube: multidimensionale Datenstruktur enthält nur eine Kennzahl Assoziationen zu beliebig vielen Dimensionen Dimension: beschreibt Dimension bestehend aus Hierarchiestufen, Dimensionselementen, Attributen Hierarchie: Eindeutiger Konsolidierungspfad Schallehn Data-Warehouse-Technologien Wintersemester 07/ ADAPT Modellierungsansätze ADAPT Verkäufe Zeit Geographie Produkt Zeit Geographie Produkt { } Jahr { } Jahr { } Bundesland Standardhierarchie Wochenhierarchie Standardhierarchie Standardhierarchie { } Produktkategorie { } Quartal { } Woche { } Stadt { } Produktgruppe { } Monat { } Filiale { } Artikel { } Tag Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

53 4 Modellierungsansätze ADAPT Modellierungsansätze ADAPT 4 Hypercube ƒ() Berechnungsformel Dimension 1 Dimension 2 Hierarchie Dimension { } Hierarchiestufe Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze Graphbasierte Modellierungsansätze Graphbasierte Modellierungsansätze Idee: Beschreibung konzeptioneller Schemata in Form von Graphen Ausgangspunkt: statistische Tabelle mit Kopfzeile und seitlicher Gliederung, teilweise Summenbildung über Zeilen und Spalten Repräsentation der kategorisierenden Daten sowie der Attributbeziehungen durch gerichteten, azyklischen Graphen Navigationshilfe für Benutzer Schallehn Data-Warehouse-Technologien Wintersemester 07/ Graphstruktur Modellierungsansätze Graphbasierte Modellierungsansätze Kanten: Beziehungen der Attribute Knoten: unterschiedliche Semantik (in Abhängigkeit von konkreter Notation) Basistypen: Kategorien- (Cluster) Knoten (C) Repräsentiert Gruppierung einzelner Elemente gemäß Kategorienhierarchie Kreuzprodukt-Knoten (X) Aufspannen eines mehrdimensionalen Adressierungsraumes mit Hilfe der Kategorienattribute über C-Knoten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 53

54 4 Modellierungsansätze Modellierungsansätze Graphbasierte Modellierungsansätze Beispiel für Graphbasierte Modellierung männl weibl Lehrer Sekr. Ing. Grund- Real- Chef- Sekr. Bauschule schule Sekr. Ing. X X C Berufsgruppe Geschlecht Jahr Lehrer Sekr. Ing. C C C C C männl. weibl Schallehn Data-Warehouse-Technologien Wintersemester 07/ Zuordnungsregeln Modellierungsansätze Graphbasierte Modellierungsansätze Funktionale Abhängigkeit Wird direkt durch Kante zwischen beiden C-Knoten repräsentiert C Berufsgruppe Berufsgruppe [0,*] [0,1] Beruf C Beruf N:M-Beziehung Wird indirekt durch Einführung eines X-Knotens repräsentiert X Geschlecht [0,*] [0,*] Jahr C Geschlecht C Jahr Schallehn Data-Warehouse-Technologien Wintersemester 07/ Weitere Knotentypen Modellierungsansätze Graphbasierte Modellierungsansätze Terminale Knoten (t n -Knoten) Repräsentation eines der möglichen Werte aus dem Wertebereich des übergeordneten Kategorieattributes Beispiel: männlich, weiblich für Geschlecht Summenknoten (S-Knoten) Explizite Spezifikation des quantitativen Teils eines Objektgraphen (Mehrfachverwendung von Graphen) Beispiel: mittleres Einkommen, Anteil am Gesamteinkommen zu X-Knoten Topic-Knoten (T-Knoten) Repräsentation einer Menge statistischer Objekte in gemeinsamen Auswertungskontext Dekomposition statistischer Sachverhalte Logische Verbindung von S-Knoten logische Sichten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

55 4 Modellierungsansätze Modellierungsansätze Modellierung der Abstraktion Graphbasierte Modellierungsansätze Aggregation (A-Knoten) Zusammenfassung logisch zusammengehöriger Einzelfakten Beispiel: (Straße, Stadt, Land) zu Wohnort, (PersNr, Name, Wohnort, Beruf) zu Erwerbstätige Generalisierung (G-Knoten) Definition einer übergeordneten Klasse abstrakter Objekte Beispiel: Erwerbstätige, Erwerbslose zu Erwerbsperson 4 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze Graphbasierte Modellierungsansätze Zusammenfassung konzeptuelle Modellierung Weitere Notationen: Erweiterungen von ER: Dimensional Fact Modeling Erweiterungen von UML: muml (multidimensional UML) Graphbasiert: SUBJECT, GRASS, STORM, ADaS,... Zur Zeit kein Standard verfügbar Graphbasierte Ansätze zwar mächtig + flexibel, aber kaum verbreitet Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze Umsetzung des multidimensionalen Datenmodells Umsetzung des multidimensionalen Datenmodells Multidimensionale Sicht Modellierung der Daten Anfrageformulierung Interne Verwaltung der Daten erfordert Umsetzung auf relationale Strukturen (Tabellen) ROLAP (relationales OLAP) Verfügbarkeit, Reife der Systeme multidimensionale Strukturen (direkte Speicherung) MOLAP (multidimensionales OLAP) Wegfall der Transformation Aspekte Speicherung Anfrageformulierung bzw. -ausführung Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 55

56 4 Modellierungsansätze Modellierungsansätze Relationale Speicherung Relationale Speicherung Vermeidung des Verlustes anwendungs-bezogener Semantik (aus dem multidimensionalen Modell, z.b. Klassifikationshierarchien) effiziente Übersetzung multidimensionaler Anfragen effiziente Verarbeitung der übersetzten Anfragen Einfache Pflege der entstandenen Relationen (z.b. Laden neuer Daten) Berücksichtigung der Anfragecharakteristik und des Datenvolumens von Analyseanwendungen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze Relationale Speicherung Relationale Umsetzung: Faktentabelle Ausgangspunkt: Umsetzung des Datenwürfels ohne Klassifikationshierarchien Dimensionen, Kennzahlen Spalten der Relation Zelle Tupel Zeitraum Produkt Rotwein Produkt Filiale Tag Verk. Rotwein Magdeburg Weißbier Magdeburg Rotwein Ilmenau Magdeburg Ilmenau Region Schallehn Data-Warehouse-Technologien Wintersemester 07/ Snowflake-Schema Modellierungsansätze Relationale Speicherung Abbildung von Klassifikationen: eigene Tabelle für jede Klassifikationsstufe (z.b. Artikel, Produktgruppe, etc.) Tabelle enthält ID für Klassifikationsknoten beschreibendes Attribut (z.b. Marke, Hersteller, Bezeichnung) Fremdschlüssel der direkt übergeordneten Klassifikationsstufe Faktentabelle enthält (neben Kenngrößen): Fremdschlüssel der jeweils niedrigsten Klassifikationsstufe Fremdschlüssel bilden zusammengesetzte Primärschlüssel für Faktentabelle Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

57 4 Modellierungsansätze Snowflake: Beispiel Modellierungsansätze Relationale Speicherung 4 Produktkategorie Jahr 1 Jahr_ID Bezeichnung Monat * Monat_ID Bezeichnung 1 Tag Zeit_ID 1 * Datum Monat_ID * Woche_ID 1 Woche Woche_ID Bezeichnung Verkauf Produkt_ID * Zeit_ID Geo_ID Verkäufe Umsatz Kategorie_ID Bezeichnung 1 Produktgruppe Gruppe_ID 1 Bezeichnung Produkt Kategorie_ID 1 Produkt_ID * Bezeichnung Gruppe_ID * Filiale * Geo_ID * 1 Bezeichnung Stadt_ID Stadt 1 Stadt_ID * Bezeichnung Land_ID * Bundesland Land_ID Bezeichnung 1 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Star-Schema Modellierungsansätze Relationale Speicherung Snowflake-Schema ist normalisiert: Vermeidung von Update-Anomalien aber: erfordert Join über mehrere Tabellen! Star-Schema: Denormalisierung der zu einer Dimension gehörenden Tabellen für jede Dimension genau eine Dimensionstabelle Redundanzen in der Dimensionstabelle für schnellere Anfragebearbeitung Beispiel: Artikel, Produkt, Produktgruppe etc. als Spalten in einer Tabelle Produkt Schallehn Data-Warehouse-Technologien Wintersemester 07/ Star-Schema: Muster Modellierungsansätze Relationale Speicherung 1. Dimensionstabelle Dim1_Schlüssel Dim1_Attribute 3. Dimensionstabelle Dim3_Schlüssel Dim3_Attribute Faktentabelle Dim1_Schlüssel Dim2_Schlüssel Dim3_Schlüssel Dim4_Schlüssel... Fakt1 Fakt2 Fakt Dimensionstabelle Dim2_Schlüssel Dim2_Attribute 4. Dimensionstabelle Dim4_Schlüssel Dim4_Attribute Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 57

58 4 Modellierungsansätze Modellierungsansätze Star-Schema: Beispiel Relationale Speicherung Zeit Zeit_ID Tag Woche Monat Quartal Jahr 1 * * Verkauf Produkt_ID Zeit_ID Geo_ID Verkäufe Umsatz * 1 Produkt Produkt_ID Artikel Produktgruppe Pruduktkategorie Geographie Geo_ID Filiale Stadt Bundesland 1 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Star-Schema formal Modellierungsansätze Relationale Speicherung Multidimensionales Schema mit n Dimensionen Dimensionstabellen D 1,..., D n der Form D i (PA i, A i,1,..., A i,ki ) Faktentabelle F(PA 1,..., PA n, f 1,..., f m ) Jeder Teil des kompositen Primärschlüssels der Faktentabelle ist Fremdschlüssel zum Primärschlüsselattribut der korrespondierenden Dimension Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze CREATE DIMENSION in Oracle Relationale Speicherung Fremdschlüsselbedingungen in SQL ausdrückbar Aber: funktionale Beziehungen zwischen Attributen innerhalb einer Dimension nicht spezifizierbar Oracle-Erweiterung: CREATE DIMENSION informative Zusicherung Korrektheit wird vom DBS nicht überprüft Nutzung beim Query Rewriting über materialisierten Sichten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

59 4 Modellierungsansätze Modellierungsansätze Beispiel CREATE DIMENSION Relationale Speicherung 4 CREATE DIMENSION ORDER_DIM LEVEL ORDER IS ORDERS.ORDERKEY LEVEL CUSTOMER IS ORDERS.CUSTOMERKEY LEVEL NATION IS ORDERS.NATIONKEY LEVEL REGION IS ORDERS.REGIONKEY HIERARCHY ORDER_HIERARCHY ( ORDER CHILD OF CUSTOMER CHILD OF NATION CHILD OF REGION ) ATTRIBUTE ORDER DETERMINES (O_STATUS, O_DATE,...) ATTRIBUTE CUSTOMER DETERMINES (C_NAME, C_ADDRESS,...); Schallehn Data-Warehouse-Technologien Wintersemester 07/ Schlüsselworte Modellierungsansätze Relationale Speicherung LEVEL definiert Klassifikationsstufen HIERARCHY Festlegung der Abhängigkeiten der Klassifikationsstufen ATTRIBUTE... DETERMINES Definiert Abhängigkeit zwischen Klassifikationsattribut und dimensionalen Attributen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze Relationale Speicherung Snowflake mit CREATE DIMENSION Produktgruppe Gruppe_ID Bezeichnung Verkauf Artikel_ID Tag_ID Filial_ID Verkäufe Umsatz Produkt Artikel_ID Bezeichnung Gruppe_ID CREATE DIMENSION s_pg LEVEL Produkt IS (Produkt.Artikel_ID) LEVEL Produktgruppe IS (Produktgruppe.Gruppe_ID) HIERARCHY pg_rollup ( Produkt CHILD OF Produktgruppe) JOIN KEY (Produkt.Gruppe_ID) REFERENCES Produktgruppe.Gruppe_ID Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 59

60 4 Modellierungsansätze Modellierungsansätze Star mit CREATE DIMENSION Relationale Speicherung Zeit Tag_ID Tag Monat_ID Monat Jahr_ID Jahr Verkauf Artikel_ID Tag_ID Filial_ID Verkäufe Umsatz CREATE DIMENSION s_time LEVEL Tag IS (Zeit.Tag_ID) LEVEL Monat IS (Zeit.Monat_ID) LEVEL Jahr IS (Zeit.Jahr_ID) HIERARCHY pg_rollup ( Tag CHILD OF Monat CHILD OF Jahr) ATTRIBUTE Tag_ID DETERMINES (Tag) ATTRIBUTE Monat_ID DETERMINES (Monat) ATTRIBUTE Jahr_ID DETERMINES (Jahr) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze Star versus Snowflake Relationale Speicherung Charakteristika von DW-Anwendungen typischerweise Einschränkungen in Anfragen auf höherer Granularitätsstufe (Join-Operationen) geringes Datenvolumen der Dimensionstabellen im Vergleich zu Faktentabellen seltene Änderungen an Klassifikationen (Gefahr von Update-Anomalien) Vorteile des Star-Schemas einfache Struktur (vereinfachte Anfrageformulierung) einfache und flexible Darstellung von Klassifikationshierarchien (Spalten in Dimensionstabellen) effiziente Anfrageverarbeitung innerhalb einer Dimension (keine Join-Operation notwendig) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze Relationale Speicherung Annahmen für Kostenbetrachtungen D Dimensionen, je K Klassifikationsstufen plus Top Jeder Klassifikationsknoten hat 3 Kinder Level i = K: 1 = 3 0 Knoten (Top) Level i = K 1: 3 = 3 1 Knoten Level i = K 2: 9 = 3 2 Knoten... Level i = 0: Höchste Granularität, 3 K Knoten N D = i=0...k Knoten pro Dimension N D = 3 i Knoten pro Dimension i=0...k 2: Top 1: ProdGruppe 0: Produkt Schallehn Data-Warehouse-Technologien Wintersemester 07/ M Fakten, gleichverteilt in Dimensionen Attribut: b Bytes; Knoten haben nur ID; f Faktattribute 60 Uni Magdeburg, WS 2007/08

61 4 Modellierungsansätze Modellierungsansätze Relationale Speicherung Volle Klassifikationshierarchie Zu jedem Knoten gibt es (gleich viele) Fakten 4 Level 2 Top Level 1 K1 K2 K3 Level 0 K1.1 K1.2 K1.3 K2.1 K2.2 K2.3 K3.1 K3.2 K3.3 Fakten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze Kosten Star vs. Snowflake Speicherplatz Snowflake: Relationale Speicherung ((D + f ) M) + D N D ) b D Anzahl Fremdschlüssel in Faktentabelle f Anzahl Faktenattribute D N D Ein Tupel pro Klassifikationsknoten Speicherplatz Star: ((D + f ) M) + D 3 K K) b D 3 K Ein Tupel pro Klassifikationsknoten Level 0 K Ein Attribut pro Klassifikationsstufe Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze Code Star vs Snowflake I Relationale Speicherung Anfrage: Verkäufe der Produktgruppe Soft-Drink pro Filiale und Jahr Snowflake-Schema: SELECT F.Bezeichnung, J.Jahr, SUM(Verkäufe) FROM Verkauf V, Filiale F, Artikel A, Produktgruppe PG, Tag T, Monat M, Jahr J WHERE V.Artikel_ID = A.Artikel_ID AND A.Gruppe_ID = PG.Gruppe_ID AND PG.Bezeichnung = Soft-Drink AND V.Tag_ID = T.Tag_ID AND T.Monat_ID = M.Monat_ID AND M.Jahr_ID = J.Jahr_ID AND V.Filial_ID = F.Filial_ID GROUP BY F.Bezeichnung, J.Jahr Anzahl der Joins: 6 (steigt linear mit Anzahl der Aggregationspfade) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 61

62 4 Modellierungsansätze Modellierungsansätze Code Star vs Snowflake II Anfrage für Star-Schema: Relationale Speicherung SELECT G.Filiale, Z.Jahr, SUM(Verkäufe) FROM Verkauf V, Geographie G, Produkt P, Zeit Z WHERE V.Produkt_ID = P.Produkt_ID AND V.Zeit_ID = Z.Zeit_ID AND V.Geographie_ID = G.Geographie_ID AND P.Produktgruppe = Soft-Drink GROUP BY G.Filiale, Z.Jahr Anzahl der Joins: 3 (unabhängig von der Länge der Aggregationspfade) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Mischformen Modellierungsansätze Relationale Speicherung Abbildung einzelner Dimensionen analog Snowflake-Schema oder Star-Schema Entscheidungskriterien: Änderungshäufigkeit der Dimensionen: Reduzierung des Pflegeaufwandes durch Normalisierung (Snowflake) Anzahl der Klassifikationsstufen einer Dimension: mehr Klassifikationsstufen größere Redundanz im Star-Schema Anzahl der Dimensionselemente: Einsparung durch Normalisierung bei vielen Elementen einer Dimension auf niedrigster Klassifikationsstufe Materialisierung von Aggregaten: Performance-Verbesserung durch Normalisierung bei materialisierten Aggregaten für eine Klassifikationsstufe Schallehn Data-Warehouse-Technologien Wintersemester 07/ Galaxie Modellierungsansätze Relationale Speicherung Star-Schema eine Faktentabelle mehrere Kennzahlen nur möglich bei gleichen Dimensionen Galaxie mehrere Faktentabellen teilweise mit gleichen Dimensionstabellen verknüpft auch: Multi-Faktentabellen-Schema, Multi-Cube, Hyper-Cube Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

63 4 Modellierungsansätze Fact Constellation Modellierungsansätze Relationale Speicherung Speicherung vorberechneter Aggregate in Faktentabelle Beispiel: Umsatz für Region Unterscheidung in Dimensionstabelle über spezielle Attribute (Bsp.: Stufe ) Alternative: Auslagerung in eigene Faktentabelle Fact-Constellation-Schema (Spezialfall eines Galaxie-Schemas) 4 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze Darstellung von Klassifikationshierarchien Darstellung von Klassifikationshierarchien Horizontal: Modellierung der Stufen der Klassifikationshierarchie als Spalten der denormalisierten Dimensionstabelle Vorteil: Einschränkungen auf höherer Granularität ohne Join Nachteile: Duplikateliminierung beim Anfragen bestimmter Stufen (Bsp.: Produktgruppe innerhalb einer Kategorie) Schemaänderung beim Hinzufügen neuer Stufen Produkt_ID Artikel Produktgruppe Produktkategorie 1234 Immer Ultra Hygiene Kosmetik 1235 Putzi Hygiene Kosmetik 2345 Rohrfrei Reiniger Haushalt Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze Darstellung von Klassifikationshierarchien Darstellung von Klassifikationshierarchien Vertikal (rekursiv): normalisierte Dimensionstabelle mit Attributen Dimensions_ID: Schlüssel für Faktentabelle Eltern_ID: Attributwert der Dimensions-ID der nächsthöheren Stufe Vorteile: Einfache Änderung am Klassifikationsschema Einfache Behandlung vorberechneter Aggregate Nachteil: Self-Join für Anfragen einzelner Stufen (Bsp.: Produktgruppe innerhalb einer Kategorie) Dimensions_ID Immer Ultra Hygiene Putzi Eltern_ID Hygiene Kosmetik Hygiene Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 63

64 4 Modellierungsansätze Modellierungsansätze Darstellung von Klassifikationshierarchien Darstellung von Klassifikationshierarchien Kombiniert: Verbindung beider Strategien Repräsentation der Klassifikationsstufen als Spalten (jedoch generische Bezeichnung) Speicherung der Knoten aller höheren Stufen als Tupel Zusätzliches Attribut Stufe Angabe der bezeichneten Klassifikationsstufe Dimensions_ID Stufe1_ID Stufe2_ID Stufe Immer Ultra Hygiene Kosmetik 0 Putzi Hygiene Kosmetik 0 Hygiene Kosmetik NULL 1 Kosmetik NULL NULL 2 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze Darstellung von Klassifikationshierarchien Vermeidung von Semantikverlusten Semantikverlust bei relationaler Abbildung: Unterscheidung zwischen Kennzahl und Dimension (Attribute der Faktentabelle) Attribute von Dimensionstabellen (beschreibend, Aufbau der Hierarchie) Aufbau der Dimensionen (Drill-Pfade) Ausweg: Erweiterung des Systemkatalogs um Metadaten für multidimensionale Anwendungen Beispiel: CREATE DIMENSION, HIERARCHY in Oracle Schallehn Data-Warehouse-Technologien Wintersemester 07/ Modellierungsansätze Darstellung von Klassifikationshierarchien Probleme der relationalen Umsetzung Transformation multidimensionaler Anfragen in relationale Repräsentation notwendig komplexe Anfragen Einsatz komplexer Anfragewerkzeuge notwendig (OLAP-Werkzeuge) Semantikverlust daher: direkte multidimensionale Speicherung? Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

65 5 5 Extraktion, Transformation, Laden 5.1 ETL-Prozess 5.2 Extraktion von Daten aus Quellen 5.3 Differentielle Snapshots 5.4 Laden von Daten 5.5 Transformationsaufgaben 65

66 5 Extraktion, Transformation, Laden Teil VI Extraktion, Transformation, Laden Extraktion, Transformation, Laden Extraktion, Transformation, Laden 1 ETL-Prozess 2 Extraktion von Daten aus Quellen 3 Differentielle Snapshots 4 Laden von Daten 5 Transformationsaufgaben Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

67 5 Extraktion, Transformation, Laden ETL-Prozess Extraktion, Transformation, Laden ETL-Prozess Häufig aufwändigster 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 5 Schallehn Data-Warehouse-Technologien Wintersemester 07/ ETL-Prozess Extraktion, Transformation, Laden 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 Arbeitsbereich (staging area) in das Data Warehouse (einschl. eventuell notwendiger Aggregationen) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden ETL-Prozess Definitionsphase des ETL-Prozesses OLTP Analysebedarf Datenmodell und Konventionen Legacy Quelldatenanalyse Auswahl der Objekte Erstellen der Transformation Erstellen der ETL-Routinen Abbildung Schlüsseltransf. Normalisierung ETL-Jobs Externe Quellen Dokumentation, operativer Datenkatalog Regelwerk für Datenqualität Metadaten- Management Repository Transformationsregeln Erfolgskriterien für Laderoutinen DWH Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 67

68 5 Extraktion, Transformation, Laden Extraktion Extraktion, Transformation, Laden Extraktion von Daten aus Quellen Aufgabe Regelmäßige Extraktion von Änderungsdaten aus Quellen Datenversorgung des DWH Unterscheidung Zeitpunkt der Extraktion Art der extrahierten Daten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Zeitpunkt Extraktion, Transformation, Laden Extraktion von Daten aus Quellen 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Art der Daten Extraktion, Transformation, Laden Extraktion von Daten aus Quellen 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

69 5 Extraktion, Transformation, Laden Extraktion, Transformation, Laden Zeitpunkt der Datenversorgung Extraktion von Daten aus Quellen Quelle... Technik Aktualität DWH erstellt periodisch Files propagiert jede Änderung erstellt vor Extrakte auf zung Benut- Anfrage anwendungsgesteuert Belastung DWH Belastung Quellen Batchläufe, Viele Systeme (Mainframe) Je nach Frequenz nichtniedrig online zugreifbar Niedrig Snapshots Trigger, Widerspricht Repli-DWH-Ideekation MaximalMehrbelastung Hoch der Quellen Sehr hoch Sehr schwierig Maximal Medium Medium Technisch bisher nicht effizient durchführbar anwendungsgesteuert je nach Frequenz je nach Frequenz je nach Frequenz 5 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden Extraktion aus Legacy-Systemen Extraktion von Daten aus Quellen 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden Differentielle Snapshots Differential Snapshot Problem [LGM96] 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 69

70 5 Extraktion, Transformation, Laden Szenario Extraktion, Transformation, Laden Differentielle Snapshots Quellen liefern Snapshots als File F Ungeordnete Menge von Records (K, A 1,..., 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Szenario Extraktion, Transformation, Laden Differentielle Snapshots 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 UPD K202:... UPD K38:... DWH Schallehn Data-Warehouse-Technologien Wintersemester 07/ Annahmen Extraktion, Transformation, Laden Differentielle Snapshots 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. wesentlich größer als Hauptspeicher Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

71 5 Extraktion, Transformation, Laden Extraktion, Transformation, Laden DS naive Nested Loop Differentielle Snapshots Berechnung von O Record R aus F 1 lesen F 2 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 F 2 (on-the-fly generieren) R jeweils markieren, abschließender Lauf für INS Anzahl IO: f 1 f 2 + δ Verbesserungen? Suche in F 2 abbrechen, wenn R gefunden jeweils Partition mit Größe M von F 1 laden: f1 M f 2 5 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden DS small kleine Files Differentielle Snapshots Annahme: Hauptspeicher M > f 1 (oder f 2 ) Berechnung von O F 1 komplett lesen F 2 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 F 1 ohne Markierung: O := O (DEL(R)) Anzahl IO: f 1 + f 2 + δ Verbesserungen F 1 im Hauptspeicher sortieren schnellerer Lookup Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden DS sort Sort-Merge Differentielle Snapshots Allgemeiner Fall: M f 1 und M f 2 Sortieren auf Sekundärspeicher F in Partitionen P i mit P i = M lesen P i im Hauptspeicher sortieren und schreiben in F i ( Runs ) Alle F i mischen Sortiertes F 2 aufheben für nächstes DS Pro DS muss nur F 2 sortiert werden Berechnung von O Sortierte F 1 und F 2 öffnen Mischen (paralleles Lesen mit Skipping) Anzahl IO: f f 2 + δ Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 71

72 5 Extraktion, Transformation, Laden Extraktion, Transformation, Laden DS sort2 Verschränkung Differentielle Snapshots Sortiertes F 1 vorhanden Berechnung von O F 2 in Partitionen P i mit P i = M lesen P i im Hauptspeicher sortieren und schreiben in F2 i Alle F2 i mischen und gleichzeitig mit F 1 vergleichen Anzahl IO: f f 2 + δ Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden Differentielle Snapshots DS hash Partitioned Hash Berechnung von O F 2 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 F 1 und F 2 wurden mit derselben Hashfunktion partitioniert jeweils P 1,i und P 2,i parallel lesen und mischen Anzahl IO: f f 2 + δ Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden Differentielle Snapshots 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 K1.W <> F2.W UNION SELECT INS,...FROM F2 WHERE NOT EXISTS (...) UNION SELECT DEL,...FROM F1 WHERE NOT EXISTS (...) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

73 5 Extraktion, Transformation, Laden Extraktion, Transformation, Laden Vergleich Eigenschaften Differentielle Snapshots 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) 5 Erweiterung von DS hash für schlechtere Hashfunktionen bekannt Schallehn Data-Warehouse-Technologien Wintersemester 07/ Weitere DS Verfahren Extraktion, Transformation, Laden Differentielle Snapshots 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 Windows Algorithmus Annahme: Files haben eine unscharfe Ordnung Mischen mit Sliding Window über beide Files Liefert u.u. redundante INS-DEL Paare Anzahl IO: f 1 + f 2 Schallehn Data-Warehouse-Technologien Wintersemester 07/ DS mit Zeitstempel Extraktion, Transformation, Laden Differentielle Snapshots Annahme: Records sind (K, A 1,..., A n, T) T: Zeitstempel der letzten Änderung Erstellen von O Festhalten von T 0 : Letztes Update F 2 sequenziell lesen Entries mit T > T 0 interessant Aber: INS oder UPD? Weiteres Problem: DEL wird nicht gefunden Zeitstempel erspart nur Attributvergleich Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 73

74 5 Extraktion, Transformation, Laden Laden Extraktion, Transformation, Laden Laden von Daten Aufgabe Effizientes Einbringen von externen Daten in DWH Kritischer Punkt Ladevorgänge blockieren unter Umständen die komplette DB (Schreibsperre auf Faktentabelle) Aspekte Trigger Integritätsbedingungen Indexaktualisierung Update oder Insert? Schallehn Data-Warehouse-Technologien Wintersemester 07/ Satzbasiert Extraktion, Transformation, Laden Laden von Daten 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ BULK Load Extraktion, Transformation, Laden Laden von Daten DB-spezifische Erweiterungen zum Laden großer Datenmengen Läuft (meist) in speziellem Context Oracle: DIRECTPATH option 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

75 5 5 Extraktion, Transformation, Laden Extraktion, Transformation, Laden Beispiel: ORACLE sqlldr Laden von Daten [Quelle: Oracle 9.2 Dokumentation] Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden Beispiel: ORACLE sqlldr /2 Laden von Daten Control-File LOAD DATA INFILE book.dat REPLACE INTO TABLE book ( book_title POSITION(1) CHAR(35), book_price POSITION(37) ZONED(4,2), book_pages POSITION(42) INTEGER, book_id "book_seq.nextval" ) Datenfile Oracle Essentials SQL*Plus: The Definitive Guide Oracle PL/SQL Programming Oracle8 Design Tips Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden BULK Load Beispiel Laden von Daten 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... Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 75

76 5 Extraktion, Transformation, Laden Direct Path Load Extraktion, Transformation, Laden Laden von Daten [Quelle: Oracle 9.2 Dokumentation] Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden Multi-Table-Insert in Oracle Laden von Daten 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... Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden Multi-Table-Insert in Oracle /2 bedingtes Einfügen Laden von Daten 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... Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

77 5 Extraktion, Transformation, Laden Merge in Oracle Extraktion, Transformation, Laden Laden von Daten 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.NextValue, N.Name, N.Vorname, N.GebDatum) 5 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden Laden von Daten Technik: Quelle Arbeitsbereich BasisDB Quelle 1: RDBMS Quelle 2: IMS Rel. Schema Q1 Rel. Schema Q2 Cube, Intgriertes Schema BULK Load nur für ersten Schritt Zweiter Schritt INSERT INTO...SELECT... Logging ausschaltbar Parallelisierbar Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden Laden von Daten Aufgabe: Quelle Arbeitsbereich BasisDB Was macht man wo und wann? Keine definierte Aufgabenteilung vorhanden Art des Zugriffs verfügbare Datenbasen verfügbare Datensätze Programmiersprache Quelle Arbeitsbereich Satzorientiert Eine Quelle (Updatefile) Quellabhängig: Alle, alle Änderungen, Deltas Skripte: Perl, AWK,... oder 3GL Arbeitsbereich Basis-DB Mengenorientiert Viele Quellen Zusätzlich Basis-DB verfügbar SQL, PL/SQL Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 77

78 5 Extraktion, Transformation, Laden Transformation Extraktion, Transformation, Laden Transformationsaufgaben 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden Daten- und Schemaheterogenität Transformationsaufgaben 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 Lösungen im nächsten Kapitel Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden Aspekte der Heterogenität Transformationsaufgaben 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... Kunde Name PLZ Vorname Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

79 5 Extraktion, Transformation, Laden Extraktion, Transformation, Laden Aspekte der Heterogenität /2 Transformationsaufgaben 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 5 Kunde Name Vorname Geschlecht... Kunde Name Vorname... Mann Frau Schallehn Data-Warehouse-Technologien Wintersemester 07/ Extraktion, Transformation, Laden Aspekte der Heterogenität /3 Transformationsaufgaben 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ ETL vs. ELT Extraktion, Transformation, Laden Transformationsaufgaben 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 79

80 5 Extraktion, Transformation, Laden Teil VII Datenaufbereitung und -bereinigung 80 Uni Magdeburg, WS 2007/08

81 6 Datenaufbereitung und -bereinigung 6.1 Schematische Heterogenität 6.2 Datenfehler Datenaufbereitung als Prozess 6.4 Profiling 6.5 Datenbereinigung 6.6 Duplikaterkennung 81

82 6 Datenaufbereitung und -bereinigung Datenaufbereitung und -bereinigung Datenaufbereitung und -bereinigung 1 Schematische Heterogenität 2 Datenfehler 3 Datenaufbereitung als Prozess 4 Profiling 5 Datenbereinigung 6 Duplikaterkennung Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Konflikt-Klassifikation Schematische Heterogenität Qualitätsprobleme Single-Source-Probleme Multi-Source-Probleme Schemaebene Instanzebene Schemaebene Instanzebene Fehlen von Integritätsbedingungen, schlechter Entwurf,... - Eindeutigkeit - Ref. Integrität -... Eingabefehler - Schreibfehler - Redundanzen / Duplikate - Widersprüchliche Werte -... Heterogenität von Datenmodell, Schema - Strukturelle Konflikte - Namenskonflikte -... Überlappung, Widersprüche, Inkonsistenzen - Repräsentation - Aggregationskonflikte - Zeitkonflikte -... [Rahm Do 2000] Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

83 6 Datenaufbereitung und -bereinigung Schema Mapping Datenaufbereitung und -bereinigung Schematische Heterogenität 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 6 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Schematische Heterogenität Schema Mapping: Normalisiert vs. Denormalisiert 1:1-Assoziationen werden unterschiedlich dargestellt durch Vorkommen im gleichen Tupel durch Fremdschlüsselbeziehung Article artpk title pages Author artfk name Publication pubid title date author SELECT artpk AS pubid, 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 83

84 6 Datenaufbereitung und -bereinigung Datenaufbereitung und -bereinigung Schematische Heterogenität Schema Mapping: Normalisiert vs. Denormalisiert /2 Article artpk title pages Author artfk name Publication pubid title date author SELECT artpk AS pubid, title, NULL AS date, name AS author FROM Article, Author WHERE artpk = artfk Nur eine von vier möglichen Interpretationen! Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Schematische Heterogenität Schema Mapping: Normalisiert vs. Denormalisiert /3 Publication title date author Article artpk title pages Author artpk name erfordert Generierung von Schlüsseln: Skolemfunktion SK, die einen bzgl. der Eingabe eindeutigen Wert liefert (z.b. Konkatenation aller Werte) Article := SELECT SK(title) AS artpk, title, NULL AS pages FROM Publication Author := SELECT SK(title) AS artfk, author AS name FROM Publication Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Schematische Heterogenität Schema Mapping: Geschachtelt vs. Flach 1:1-Assoziationen werden unterschiedlich dargestellt also geschachtelte Elemente durch Fremdschlüsselbeziehung Article artpk title pages Author name Publication pubid title author Publication title date author Article title Author name Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

85 6 Datenaufbereitung und -bereinigung Schwierigkeiten Datenaufbereitung und -bereinigung Schematische Heterogenität 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... 6 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Schwierigkeiten /2 Datenaufbereitung und -bereinigung Schematische Heterogenität 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, weibl. )... SELECT... FROM P31 INSERT INTO P1(id, name, männl. )... SELECT... FROM P32 Anzahl Werte muss feststehen; Neues Geschlecht Alle Anfragen ändern Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenfehler Datenaufbereitung und -bereinigung Datenfehler Repräsentation Eindeutigkeit Widersprüche Ref. Integrität KUNDE KNr Name Geb.datum Alter Geschl. Telefon PLZ 123 Pren, Leo m Ann Joy f Leo Pren m ADRESSE PLZ Schreibfehler Ort Ilmenau Fehlende Werte Illmenau BRD Falsche Werte Duplikate Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 85

86 6 Datenaufbereitung und -bereinigung Datenaufbereitung und -bereinigung Datenfehler Vermeidung von Datenfehlern Vermeidung von durch falschen Datentypen Datentypdefinition, domain-constraints falschen Werte check fehlenden Werten not null ungültigen Referenzen foreign key Duplikaten unique, primary key Inkonsistenzen Transaktionen veralteten Daten Replikation, materialisierte Sichten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Datenfehler Warum dennoch Datenfehler? Fehlen von Metadaten, Integritätsbedingungen,... fremde Daten Daten aus Nicht-DB -Quellen Eingabefehler, Unkenntnis,... Multi-Source-Probleme, Heterogenitäten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Phasen der Datenaufbereitung Datenaufbereitung als Prozess 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

87 6 Datenaufbereitung und -bereinigung Aufgaben Datenaufbereitung und -bereinigung Datenaufbereitung als Prozess Profiling Homogenisierung und Normalisierung Fehlende Daten / Werte Ausreißererkennung Record Linkage / Matching, Konfliktbehandlung Datenaufbereitung: Diskretisierung, Sampling,... 6 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Profiling Datenaufbereitung und -bereinigung 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Profiling /2 Datenaufbereitung und -bereinigung Profiling 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 Ähnlichkeitstest Duplikate Tupelanzahl vs. Attributkardinalität Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 87

88 6 Datenaufbereitung und -bereinigung Profiling mit SQL Datenaufbereitung und -bereinigung Profiling 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Data Cleaning Datenaufbereitung und -bereinigung Datenbereinigung 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Datenbereinigung Normalisierung und Standardisierung Datentypkonvertierung: varchar int Kodierungen: 1: Adr. unbekannt, 2: alte Adresse, 3: gültige Adresse, 4: Adr. bei Ehepartner,... Normalisierung: Abbildung in einheitliches Format Datum: 03/01/05 1. März 2005 Währung: $ e Zeichenketten in Großbuchstaben Zerlegung in Token: Date, Chris Date, Chris Diskretisierung numerischer Werte Domänenspezifische Transformationen Codd, Edgar Frank Edgar Frank Codd Str. Straße Adressen über Adressdatenbanken Branchenspezifische Produktbezeichnungen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

89 6 6 Datenaufbereitung und -bereinigung Datentransformation Datenaufbereitung und -bereinigung Datenbereinigung In SQL gut unterstützt Vielfältige Funktionen im Sprachstandard Stringfunktionen, Decodierung, Datumsumwandlung, Formeln, Systemvariable,... Funktionen in PL/SQL erstellen - in SQL verwenden Schallehn Data-Warehouse-Technologien Wintersemester 07/ Beispiele Datenaufbereitung und -bereinigung Datenbereinigung 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; Schallehn Data-Warehouse-Technologien Wintersemester 07/ Beispiele /2 Datenaufbereitung und -bereinigung Datenbereinigung Daten "Arved", 11/22/2002 "Arved", "Bennett", 2/18/1999 "Bennett", SQL INSERT INTO kunden( name, geburtsdatum) SELECT name, to_date (birthday, MM/DD/YYYY ) FROM rawdata; Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 89

90 6 Datenaufbereitung und -bereinigung Beispiele /3 Datenaufbereitung und -bereinigung Datenbereinigung Daten "Müller", M, "sehr gut" "Müller" 0 1 "Meier", w, "gut" "Meier" 1 2 SQL INSERT INTO schueler(name, geschlecht, klasse) SELECT name, decode (upper(sex), M, 0, 1), decode (grade, sehr gut, 1, gut, 2,...) FROM rawdata; Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Datenbereinigung Normalisierung numerischer Daten Skalierung der Werte v eines Attributs A mit [min A, max A ] in vorgegebenen Bereich [min new, max new ], z.b. [0, 1] Min-Max-Normalisierung v = v min A max A min A (max new min new ) + min new Z-Score-Normalisierung: basierend auf Mittelwert und Standardabweichung v = v µ σ speziell wenn min A, max A nicht bekannt sind oder bei dominierenden Ausreißern Dezimalskalierung: Verschieben des Dezimalpunktes v = v 10 i mit i ist kleinster ganzzahliger Wert, sodass max( v ) < 1 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Fehlende Werte Datenaufbereitung und -bereinigung Datenbereinigung Fehlen von Daten auf unterschiedlichen Ebenen Instanzebene: Werte, Datensätze, Teilrelationen,... Schemaebene: Attribute,... Problem speziell auf Instanzebene: Behandlung von Nullwerten: Unterscheidung fehlender Wert oder Defaultwert? Abschneiden von Werten Verzerrungen ( bias ) im Ergebnis, Fehler durch Nullwerte Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

91 6 Datenaufbereitung und -bereinigung Datenaufbereitung und -bereinigung Fehlende Werte: Erkennung Datenbereinigung Einfache Analysen: Anzahl der Nullwerte, Duplikate, Mittelwerte, Häufigkeiten Vergleich mit Erwartungswerten Für DW-Daten auch auf verschiedenen Aggregationsebenen Analyse der Ordnung der Datensätze Keine Verkaufszahlen vom ? Keine Produkt im Preissegment > 20 e? Verstümmelte Daten, z.b. durch Abschneiden von Werten Einkäufe unter 1 e nicht berücksichtigt Einkäufe über 100 e als 100 e behandelt Erkennung Hinweise durch Analyse der Datenverteilung Meist jedoch Domänenwissen notwendig 6 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Fehlende Werte: Behandlung Datenbereinigung unbiased estimators Wertschätzung ohne Änderung der Charakteristika der existierenden Daten (Mittelwert, Standardabweichung,... ) Beispiel: 1, 2, 3, _, 5 Mittelwert: 2.75 Standardabweichung: Ausnutzung von Attributbeziehungen Bsp.: Hausgröße Einkommen Statistik-Techniken Lineare Regression: Einkommen = c Hausgröße Techniken für nichtlineare Zusammenhänge: Neuronale Netze,... Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Ausreißererkennung Datenbereinigung Ausreißer: Wert der nicht in eine erwartete Messreihe passt Aspekte: Erkennung: Verteilung, Geometrie, Zeitreihe Interpretation: Mess- bzw. Datenfehler oder echtes Ereignis Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 91

92 6 Datenaufbereitung und -bereinigung Erkennung Datenaufbereitung und -bereinigung Datenbereinigung Modellbasiert: Ableitung einer Beziehung von Attributen lineare Regression Regeln: WENN Alter < 16 DANN Führerschein IS NULL Verteilungs- bzw. statistikbasiert: Annahme einer Verteilungsfunktion Geometrisch und distanzbasiert Peeling: Schichten im Datenraum mit wachsender Tiefe äußere Schichten enthalten Ausreißer Nicht praktikabel für höhere Dimensionsanzahl Distanzbasiert: Abstand zwischen Datenpunkten (metrische Distanzfunktion) Für Anwendungen ohne Standardverteilung Bei größerer Dimensionsanzahl Ausreißer in Zeitreihen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Erkennung: Regression Datenbereinigung y = αx + β SELECT * FROM Data WHERE abs(:alpha * X + :beta - Y) < :threshold SELECT X, Y, abs(...) AS dist FROM Data ORDER BY dist LIMIT FIRST 95 PERCENT Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Distanzbasierte Ausreißer Datenbereinigung Objekt o aus Datenmenge T ist Ausreißer DB(p, D), wenn mindestens ein Anteil p von T weiter als D von o entfernt ist [Knorr Ng 1998] Ausreißer: Objekte, die nicht genug Nachbarn besitzen p als Parameter zur Anpassung, falls Cluster von Ausreißern o D mind. p% Objekte Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

93 6 Datenaufbereitung und -bereinigung Datenaufbereitung und -bereinigung Datenbereinigung Distanzbasierte Ausreißer: Verfahren Indexbasierte Auswertung (R-Baum, kd(b)-baum) multidimensionaler Index zur Suche nach Nachbarn in Distanz D bei M erlaubten Nachbarn für Ausreißer: falls M + 1 Objekte in D kein Ausreißer Nested Loops ähnlich wie indexbasierte Auswertung, jedoch durch geschicktes Blocklesen 6 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Datenbereinigung Distanzbasierte Ausreißer: Verfahren /2 Zellbasierte Technik: (k: Dimensionalität) Partitionierung des Datenraums in Zellen mit Kantenlänge D 2 mit k zwei umgebenden Schichten; zellenweiser Test Schicht 1: 1 Zelle dick, Schicht 2: k 1 Zellen dick pro Zelle: cell_count = Anzahl der Objekte cell+1layer_count = Anzahl der Objekte in Zelle und der 1 Schicht cell+2layer_count= Anzahl der Objekte in Zelle und Schicht 1 und 2 Ausreißer: Objekt o einer Zelle ist Ausreißer gdw. cell+1layer_count M; anderenfalls können alle Objekte der Zelle ignoriert werden (keine Ausreißer) cell+2layer_count M alle Objekte dieser Zelle sind Ausreißer cell+2layer_count > M einzelne Objekte können Ausreißer sein objektweiser Test Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Duplikaterkennung Duplikaterkennung Begriff mit vielen Duplikaten Duplicate detection / de-duplication Record linkage Object identification / object consolidation Entity resolution / entity clustering Reference reconciliation / reference matching Householding / household matching Match / Fuzzy match / approximate match Merge/purge Hardening soft databases Identity uncertainty mixed and split citation problem Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 93

94 6 Datenaufbereitung und -bereinigung Record Linkage Datenaufbereitung und -bereinigung Duplikaterkennung Identifikation von semantisch äquivalenten Datensätzen, d.h. die das gleiche Realwelt-Objekt repräsentieren auch: 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Record Linkage: Vergleiche Typische Vergleichsregeln Duplikaterkennung 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Record Linkage: Prinzip Duplikaterkennung Partitionierung des Suchraums R r, r, r, Matches (M) r,s 1 1 r,s 2 2 r 3,s 3 R x S S s 1, s 2, s 3, Vergleichsfunktion Non Matches (U) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

95 6 Datenaufbereitung und -bereinigung Partitionierung Datenaufbereitung und -bereinigung Duplikaterkennung Blockung 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 6 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Sortierte Nachbarschaft Duplikaterkennung 1 Berechne einen Schlüssel pro Record 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 Windows 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Duplikaterkennung 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 95

96 6 Datenaufbereitung und -bereinigung Datenaufbereitung und -bereinigung Multi-Pass-Technik Duplikaterkennung 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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Vergleichsfunktionen Duplikaterkennung 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: Berücksichtigung von gemeinsamen Zeichen (innerhalb der halben Stringlänge) und transponierten Zeichen (an anderer Position) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Duplikaterkennung Vergleichsfunktionen: Editierdistanz Editierdistanz (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 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

97 6 Datenaufbereitung und -bereinigung Datenaufbereitung und -bereinigung Vergleichsfunktionen: q-grams Duplikaterkennung q-grams: Menge aller Substrings der Länge q Qualität := { Q, _Qu, Qua, ual, ali, lit, itä, tät, ät_, t } Beobachtung: Strings mit kleiner Editierdistanz haben viele gemeinsame q-grams, d.h. für Editierdistanz = k mind. max( A, B ) 1 (k 1) q 6 gemeinsame q-grams Positionale q-grams: Ergänzung um Position im String Qualität := { (-1, Q), (0, _Qu), (1, Qua),... } Filterung für effizienten Vergleich: COUNT: Anzahl der gemeinsamen q-grams POSITION: Positionsunterschied zwischen korrespondierenden q-grams k LENGTH: Differenz der Stringlängen k Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Duplikaterkennung Domänenspezifische Vergleichsfunktionen Vergleiche in Feldern mit spezieller Bedeutung (Namen, Codes, Adressen) Soundex: phonetische Kodierung, speziell für ähnlich klingende Namen ( Hilbert = Heilbpr ) Ausnutzung von Codes (TXL = Berlin-Tegel) Namenskonventionen Hawking, Stephen = Stephen Hawking Hauptstr. = Hauptstraße Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Vergleich von Records Duplikaterkennung Basierend auf Ähnlichkeit der Felder Problem: Auswahl relevanter Felder Wichtung der Felder Ansätze Probabilistische Verfahren Nicht-Probabilistische Verfahren Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 97

98 6 Datenaufbereitung und -bereinigung Datenaufbereitung und -bereinigung Probabilistische Verfahren Duplikaterkennung Häufigkeit Non Match (U) Review Match (M) Cut off Gewicht Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Probabilistische Verfahren /2 Vergleichsfunktion für Records Duplikaterkennung γ = (γ 1 (t R.A 1, t S.A 1 ), γ 2 (t R.A 2, t S.A 2 ),..., γ k (t R.A k, t S.A k )) Wahrscheinlichkeiten m(γ) = P(γ (t R, t S ) M) für Match u(γ) = P(γ (t R, t S ) U) für Non-Match Ableitung von m(γ) und u(γ) z.b. durch Voruntersuchung (z.b. EM-Algorithmus) Ablauf 1 Bestimmung der Einzelgewichte für Attribute 2 Berechnung des Gesamt-Scores 3 Entscheidung über Match (M) bzw. Non-Match (U) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Duplikaterkennung Nicht-Probabilistische Verfahren Wissensbasierte Verfahren Funktionale Abhängigkeiten auf Instanzebene Matching-Regeln Data-Mining-Verfahren Clustering Entscheidungsbaumverfahren Distanzbasierte Verfahren Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

99 6 Datenaufbereitung und -bereinigung Datenaufbereitung und -bereinigung Regelbasiertes Matching Duplikaterkennung IntelliClean [Lee et al. 2000] Nutzung von Domänenwissen durch deklarative Regeln if A.Name = B.Name and field_similarity (A.Adresse, B.Adresse) then... 6 Regeltypen Duplicate identification rules: Bedingungen für Übereinstimmung mit Sicherheitsfaktor Merge/purge rules: Aktionen zum Verschmelzen Update rules: Manipulation von Feldern (z.b. bei leeren Feldern) Alert rules: Benachrichtigung bei notwendigem Review Regelauswertung durch Inferenz-Engine Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Matching mit Hierarchien Duplikaterkennung Delphi [Ananthakrishna et al. 2002] Nutzung von Hierarchien in Dimensionstabellen Beispiel: Filiale Stadt Bundesland Land Filiale F1 Gewerbepark S1 F2 Markt S1 F3 Am Markt S3 F4 Anger S2 F5 Kaiserplatz S4 F6 Kaisercenter S3 Stadt S1 Ilmenau B1 S2 Erfurt B2 S3 Ilmenau B3 S4 Bregenz B4 S5 Bregenz B5 Bundesland B1 Thüringen L1 B2 Türingen L2 B3 Thüringen L1 B4 Voralberg L3 B5 Voralpberg L3 Land L1 L2 L3 BR Deutschland Deutschland Österreich Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Matching mit Hierarchien /2 Duplikaterkennung Prinzip: Top-Down-Traversierung Vergleichsfunktionen: Textähnlichkeit, Co-occurence (Überlappung der Kindmengen, z.b. Städte im Bundesland) Oberste Hierarchieebene vergleichen Jeweils Kindrelation gruppieren in Gruppen G Vergleich der Tupel innerhalb einer Gruppe Filterfunktion für G: G G mit allen potenziellen Duplikaten Vergleich jedes Tupel aus G mit Tupeln aus G Dynamische Anpassung der Schwellwerte für Vergleichsfunktionen Beobachtung: kleiner Anteil an Duplikaten in Gruppe größerer Schwellwert Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 99

100 6 Datenaufbereitung und -bereinigung Datenaufbereitung und -bereinigung Duplikaterkennung Record Linkage vs. Differential Snapshots Differential-Snapshot-Problem Eindeutige Schlüssel vorhanden Vergleich zweier Records trivial Eindeutige Lösung möglich und verlangt Zahl IO-Zugriffe minimieren Record-Linkage-Problem Keine Schlüssel vorhanden Vergleich der Records verursacht dominierende Kosten Keine eindeutige Lösung möglich Zahl der Vergleiche minimieren bei hoher Trefferquote Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenkonflikte Datenaufbereitung und -bereinigung Duplikaterkennung 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) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Datenkonflikte: Entstehung Duplikaterkennung Mangels Integritätsbedingungen oder Konsistenz-Checks Bei redundanten Schemata Bei Entstehung von Duplikaten Nicht korrekte Einträge Tippfehler, Übertragungsfehler Falsche Rechenergebnisse obsolete Einträge div. Aktualisierungszeitpunkte ausreichende Aktualität einer Quelle verzögerte Aktualisierung vergessene Aktualisierung Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

101 6 Datenaufbereitung und -bereinigung Datenaufbereitung und -bereinigung Datenkonflikte: Behebung Duplikaterkennung 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) bzgl. 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 6 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Datenaufbereitung und -bereinigung Zusammenfassung Duplikaterkennung Themen der Datenqualität machen typischerweise 80% des Aufwands von DWH Projekten aus! Langsame Anfragen sind ärgerlich Falsche Ergebnisse machen der DWH nutzlos Teil des Transformationsschrittes Schemaebene: Schema Mapping bzw. Schematransformation Instanzebene: Datenbereinigung Wichtig: Nachvollziehbarkeit von Cleaning Ad-hoc -Cleaning kann Qualität weiter verschlechtern reine Daten kaum erreichbar: Quantifizierung der Verbesserung notwendig Schallehn Data-Warehouse-Technologien Wintersemester 07/ Teil VIII Speicherstrukturen für Data Warehouse Uni Magdeburg, WS 2007/08 101

102 6 Datenaufbereitung und -bereinigung 102 Uni Magdeburg, WS 2007/08

103 7 Speicherstrukturen für Data Warehouse 7.1 Relationale Speicherung 7.2 Multidimensionale Speicherung 7.3 Speicherungsvarianten 7 103

104 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse 1 Relationale Speicherung 2 Multidimensionale Speicherung 3 Speicherungsvarianten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Relationale Speicherung Relationale Speicherung Umsetzung von Star- bzw. Snowflake-Schema auf Relationen verbreitetste Form der Speicherung von DW-Tabellen (Details: siehe VL Datenbank-Implementierungstechniken ) Besonderheiten sehr große Faktentabellen Beschleunigung der Zugriffe durch Partitionierung multidimensionale Zugriffe spezielle Cluster- und Indexstrukturen Update-Charakteristik (Anhängen von Daten) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Partitionierung Speicherstrukturen für Data Warehouse Relationale Speicherung unabhängig von und ergänzend zu Indexverfahren: Aufteilung umfangreicher Relationen in kleinere Teilrelationen (sogenannte Partitionen oder Fragmente) Größe und Inhalt der Partitionen richtet sich nach der Anfrageund Aktualisierungscharakteristik ursprünglich für verteilte Datenbanken um Lastverteilung auf mehrere Knoten zu unterstützen Partitionierung umfasst eigentlich nur die logische Aufteilung von Relationen, die physische Verteilung ist dann Aufgabe der Allokation Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

105 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse Horizontale Partitionierung Relationale Speicherung Masterrelation R wird vollständig in mehrere paarweise disjunkte Teilrelationen R 1,..., R n aufgeteilt: R = R 1... R n ; R i R j = für i j verschiedene Formen der Aufteilung: Range-Partitionierung: jede Partition wird durch ein Selektionskriterium definiert, also R i := σ ϕ(r) mit ϕ Selektionsbedingung (range restriction) Hash-Partitionierung: Hashfunktion (angewendet auf das ganze Tupel oder einzelne Attribute) bestimmt, zu welcher Partition ein Tupel gehört Tupel mit gleichem Hashwert (oder Hashwerten in einem vorgegebenem Bereich) befinden sich in einer Partition 7 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Horizontale Partitionierung /2 Relationale Speicherung Masterrelation Partitionen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Vertikale Partitionierung Relationale Speicherung Verteilung der einzelnen Attribute (Spalten) auf Partitionen verteilt Partition entspricht einer Projektion auf die Masterrelation: R i := π attrlist (R) für Rekonstruierbarkeit der Masterrelation muss gemeinsames Attribut in jeweils zwei Partitionen existieren i.d.r. ist Primärschlüssel in allen Partitionen enthalten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 105

106 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse Vertikale Partitionierung /2 Relationale Speicherung K A B C D Projektion K K A C B D Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Partitionierung in Oracle Relationale Speicherung Bereichspartitionierung CREATE TABLE Verkauf ( Datum DATE NOT NULL,... PARTITION BY RANGE(Datum) ( PARTITION Verkauf2002 VALUES LESS THAN to_date( ), PARTITION Verkauf2003 VALUES LESS THAN to_date( ), PARTITION Verkauf2004 VALUES LESS THAN to_date( )); Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Partitionierung in Oracle /2 Relationale Speicherung Hash-Partitionierung CREATE TABLE Verkauf ( ArtikelID INT NOT NULL, FilialID INT NOT NULL,... PARTITION BY HASH(ArtikelID, FilialID) PARTITIONS 5); Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

107 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse Relationale Speicherung Partitionierung in Data Warehouses die horizontale Partitionierung (insb. Range-Partitionierung) erlaubt z.b. große Faktentabellen in handlichere Teile zu zerlegen die Selektionsbedingungen für die einzelnen Partitionen sollten sinnvollerweise die in Anfragen häufig vorkommenden Bereichseinschränkungen berücksichtigen eine vertikale Partitionierung erfordert i.d.r. teure Join-Operation zum Wiederzusammensetzen der Tupel; kann aber zum Abspalten selten angefragter Attribute eingesetzt werden Verkleinerung von Fakten- oder Dimensionstabellen, auf die häufig zugegriffen wird 7 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Relationale Speicherung Partitionierung in Data Warehouses /2 Spezialfall vertikaler Partitionierung: Mini-Dimensionen gelegentlich werden Dimensionstabellen riesig groß: z.b. Kundentabelle mit mehreren Millionen Datensätzen viele Attribute werden nie oder nur selten angefragt, da sie für Auswertungen uninteressant sind oder es gibt disjunkte Attributgruppen, die immer nur für verschiedene Anwendungen bzw. verschiedene Arten von Auswertungen benötigt werden Abtrennung von Attributen durch vertikale Partitionierung erlaubt dann eine deutliche Verkleinerung der einzelnen Dimensionstabellen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Mini-Dimensionen Relationale Speicherung Verkauf Produkt_ID Zeit_ID Geo_ID Kunden_ID Demogr_ID Verkäufe Umsatz Kunden Kunden_ID Name Vorname Straße Ort Demogr_ID Demographie Demogr_ID Altersklasse Einkommensklasse Geschlecht Familienstand Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 107

108 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse Spezielle Tabellentypen in DB2 Relationale Speicherung Append-Mode-Tabellen optimiert für insert-operationen Tupel werden am Ende angefügt, ohne Freispeicher auf Seiten zu berücksichtigen bereichsgeclusterte Tabellen (range-clustered tables RCT) für Sequenzdaten multidimensional-geclusterte Tabellen (multidimensional clustering tables MDC) geclusterte Speicherung in mehreren Dimensionen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Bereichsgeclusterte Tabellen Relationale Speicherung Nutzung ein Sequenznummer (frei wählbares Attribut) als logisch Rowid zur Ermittlung der physischen Speicheradresse Vorab-Allokation des gesamten Speicherplatzes der Tabelle Einsortierung des Tupels über Sequenznummer Zugriff über Sequenznummer kein zusätzlicher Index notwendig create table Bestellung ( BestellNr int primary key,... ) organize by key sequence (BestellNr starting from 1 ending at 10000) Schallehn Data-Warehouse-Technologien Wintersemester 07/ MDC-Tabellen Speicherstrukturen für Data Warehouse Relationale Speicherung Tabellen üblicherweise max. nach einem Index geclustered Scan über anderen Index im Worst Case: 1 Seitenzugriff pro Tupel MDC: Tupel mit gleichen Werten bzgl. mehrerer Attribute (Dimensionen) auf gleicher Seite bzw. im gleichen Extent speichern Indexierung über Block-Indexe (dünn besetzte Indexe) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

109 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse MDC-Tabellen und Block-Indexe Relationale Speicherung Index "Stadt" Block Ilmenau 2003 Ilmenau 2004 Magdeburg 2003 Magdeburg 2004 Rostock Tupel 7 Index "Jahr" Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Anlegen einer MDC-Tabelle Relationale Speicherung create table Verkauf ( Umsatz number, Jahr int, Stadt varchar(20),... ) organize by dimensions (Stadt, Jahr) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Multidimensionale Speicherung Multidimensionale Speicherung Verwendung unterschiedlicher Datenstrukturen für Datenwürfel und Dimension Speicherung des Würfels als Array Ordnung der Dimension für Adressierung der Würfelzellen notwendig häufig proprietäre Strukturen (und Systeme) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 109

110 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse Datenstrukturen für Dimensionen Multidimensionale Speicherung endliche, geordnete Liste von Dimensionswerten Dimensionswerte: einfache unstrukturierte Datentypen (String, Integer, Date) Ordnung der Dimensionswerte (interne ganze Ordnungszahl 2 oder 4 Byte) Endlichkeit der Werteliste Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Datenstruktur für Würfel Multidimensionale Speicherung Für n Dimensionen: n-dimensionaler Raum m Dimensionswerte einer Dimension: Aufteilung des Würfels in m parallele Ebenen durch Endlichkeit der Dimensionswerteliste: endliche, gleichgroße Liste von Ebenen je Dimension Zelle eines n-dimensionalen Würfels wird eindeutig über n-tupel von Dimensionswerten identifiziert Zelle kann ein oder mehrere Kennzahlen eines zuvor definierten Datentyps aufnehmen Bei mehreren Kennzahlen: Alternative mehrere Datenwürfel Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Klassifikationshierarchien Multidimensionale Speicherung Dimensionswerte umfassen alle Ausprägungen der Dimension: Elemente (Blätter) und Knoten der höheren Klassifikationsstufen Knoten der höheren Stufen bilden weitere Ebenen Magdeburg Halle Sachsen-Anhalt Erfurt Thüringen Januar Februar März 1. Quartal Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

111 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse Berechnung von Aggregationen Multidimensionale Speicherung Echtzeit: bei Anfrage von Zellen, die Werte einer höheren, aggregierten Klassifikationsstufe repräsentieren Berechnung aus Detaildaten hohe Aktualität, jedoch hoher Aufwand eventuell Caching Vorberechnung: nach Übernahme der Detaildaten Berechnung und Eintragen der Aggregationswerte in entsprechende Zellen Neuberechnung nach jeder Datenübernahme notwendig hohe Anfragegeschwindigkeit, jedoch Zunahme der Würfelgröße und Laufzeitaufwand Ausweg: inkrementelle Vorberechnung 7 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Weitere Datenstrukturen Multidimensionale Speicherung Attribute klassifizierende Merkmale einer Dimension Identifizierung von Untermengen von Dimensionswerten (z.b. Produktfarbe ) nicht zur Vorberechnung vorgesehen Virtueller Würfel umfasst abgeleitete Daten ( Gewinn, prozentualer Umsatz ) Ableitung aus anderen Würfel durch Anwendung von Berechnungsfunktionen Sichten im relationalen Modell Teilwürfel Kombination mehrerer Ebenen eines Würfels virtuell Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Array-Speicherung Multidimensionale Speicherung Speicherung des Würfels: n-dimensionales Array Linearisierung in eine eindimensionale Liste Indizes des Arrays Koordinaten der Würfelzellen (Dimensionen D i ) Indexberechnung für Zelle z mit Koordinaten x 1...x n Index(z) = x 1 + (x 2 1) D 1 + (x 3 1) D 1 D (x n 1) D 1 D n 1 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 111

112 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse Linearisierungsreihenfolge Multidimensionale Speicherung D 3 D 1 D 2 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Array-Speicherung: Probleme Multidimensionale Speicherung Zahl der Plattenzugriffe bei ungünstigen Linearisierungsreihenfolgen Reihenfolge der Dimensionen ist bei Definition des Würfels zu beachten Caching zur Reduzierung notwendig Speicherung dünn besetzter Würfel Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Speicherverbrauch Multidimensionale Speicherung Array Relational (Star-Schema) Speicherung Implizit Explizit Koordinaten (Linearisierung) (redundant) Leere Zellen Belegen Platz Belegen keinen Platz Neue Klassif. Komplette Neue Zeile Knoten Reorganisation in Dimensionstabelle Starkes Wachstum im Kaum Wachstum im Speicherverbrauch Speicherverbrauch Speicher b n i=1 d i b M (n + 1) -verbrauch mit M ist Anzahl Fakten, also M = n i=1 d i δ (Füllgrad δ) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

113 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse Vergleich Speicherplatz Multidimensionale Speicherung Faktoren Füllgrad k: Anzahl Knoten n: Anzahl Dimensionen Schon bei geringen Füllgraden ist Array Speicherplatz-effizienter Performance hängt von vielen Faktoren ab Indexierung Sequential reads... 7 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Vergleich Speicherplatz /2 Multidimensionale Speicherung Speicherplatz nach Füllgrad, b=8, k=100, n=5 Speicherplatz nach Füllgrad, b=8, k=20, n= Array Relational Array Relational Füllgrad in % Füllgrad in % Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Multidimensionale Speicherung Grenzen der multidimensionalen Speicherung Skalierbarkeitsprobleme aufgrund dünn besetzter Datenräume teilweise einseitige Optimierung bezüglich Leseoperationen Ordnung der Dimensionswerte notwendig (durch Array-Speicherung) erschwert Änderungen an den Dimensionen keine Standard für multidimensionale DBMS Spezialwissen notwendig Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 113

114 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse Hybride Speicherung Multidimensionale Speicherung HOLAP: Verbindung der Vorteile beider Welten Relational (Skalierbarkeit, Standard) Multidimensional (analytische Mächtigkeit, direkte OLAP-Unterstützung) Speicherung: Relationale Datenbank: Detaildaten Multidimensionale Datenbank: aggregierte Daten Multidimensionale Speicherstrukturen als intelligenter Cache für häufig angeforderte Datenwürfel transparenter Zugriff über multidimensionales Anfragesystem Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Speicherungsvarianten Speicherungsvarianten Ziel: Optimierung für Leseoperationen, spez. OLAP-Anfragen (Aggregationen) schnelles Laden der tatsächlich benötigten Daten in Hauptspeicher für Berechnung Aspekte: Partitionierung: leere Bereiche entfernen Komprimierung: Speicherung von Nullwerten und redundanten Daten vermeiden Indexierung (nächstes Kapitel): Von Datenblöcken (Grid-Files, R+-Bäume, Zwei-Ebenen) In einem Datenblock (Array-/relationale Speicherung der Zellen, RLE, Bitmap) Insgesamt: Erhaltung der räumlichen Nachbarschaftsbeziehung der Zellen im Sekundärspeicher (multidimensionales Clustering) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Partitionierung von Datenwürfeln Speicherungsvarianten Ziel: Entfernen leerer Bereiche aus Würfel Optimierte Speicherung für Zugriffsmuster: häufig zugegriffene Bereiche in einigen wenigen Blöcken Kriterien: Art der Partitionierung Steuerung: Optimierung der Partitionierung für Anwendung Werkzeugunterstützung: für Steuerung der Partitionierung Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

115 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse Art der Partitionierung Speicherungsvarianten Aufteilung eines Würfels in nicht überlappende Bereiche (multidimensionale Intervalle) Allgemeine Form: multidimensionale Kachelung Geg.: n-dimensionales Array mit Dimensionswerten D = [1 : d 1,..., 1 : d n ] Kachelung: Menge von Sub-Arrays, die Bereichen b 1,..., b m der Dimensionswerte entsprechen b 1 = [l 1,1 : u 1,1,..., l 1,n : u 1,n ],..., b m = [l m,1 : u m,1,..., l m,n : u m,n ], 7 so dass b i b j = für i j und b i D, i, j = 1,..., m und jede besetzte Zelle einem Sub-Array angehört Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Multidimensionale Kachelung Speicherungsvarianten 1 d 1 d 2 u i,2 l i,2 b i 1 l i,1 u i,1 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Kachelung nach Ausrichtung Speicherungsvarianten ausgerichtet, regulär ausgerichtet, irregulär unausgerichtet Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 115

116 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse Speicherungsvarianten Kachelung nach Besetzung des Raumes dünnbesetzt dichtbesetzt Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Steuerung der Partitionierung Speicherungsvarianten Automatische Partitionierung: automatisches Finden der Partitionierung für optimale Ausführung der Operationen Nutzung des Füllgrades der Bereiche Nutzung von Zugriffsstatistiken Bedeutung bestimmter Dimensionen/ Dimensionskombinationen Besondere Behandlung der Zeitdimension Partitionierung nach Zeitreihen (spezielle Formate für Reihen von Werten, z.b. täglich, wöchentlich, etc.) Zwei-Ebenen-Speicherung Nur Speicherung von verwendeten Kombinationen dünn besetzter Dimensionen Partitionenspezifikation des Anwenders Direkte Spezifikation jedes Bereiches Dimensionspartitionen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Speicherung der Zellen Speicherungsvarianten Verwendung eines bestimmten Speicherformats für jeden Datenblock Unterstützung verschiedener Speicherformate (in Abhängigkeit vom Füllgrad) Ab bestimmten Füllgrad: Array-Speicherung effizienter als relationale Speicherung Grund: Speicherung der Koordinaten als Schlüssel bei relationaler Speicherung notwendig Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

117 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse Speicherungsvarianten Minimaler Füllgrad für optimale Speicherung ab einem berechenbaren minimalen Füllgrad ist Array-Speicherung besser als relationale Speicherung Minimaler Füllgrad δ ist maximales δ so dass gilt: n n Ix rel + δ L i s c + n < Ix arr + L i s c i=1 j=1 s j i=1 L i : Länge des Sub-Array in Dimension i s c : Speichergröße der Zellen (Platzverbrauch aller Kenngrößen einer Zelle) s j : Speichergröße der Dimensionsattribute j Ix rel : Speichergröße der Indizierung (relationale Speicherung) Ix arr : Speichergröße der Indizierung (Array-Speicherung) 7 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Speicherungsvarianten Minimaler Füllgrad: Beispiel Annahme: Ix rel und Ix arr gleich, s j = s c = 8 2 Dimensionen: 2 2 δ L i 24 < L i 8 j=1 j=1 Array-Speicherung effizienter ab Füllgrad 0.33 Für drei Dimensionen: 0.25 Füllgrad sinkt mit steigender Anzahl von Dimensionen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Zwei-Ebenen-Datenstruktur Speicherungsvarianten Obere Ebene indiziert Datenblöcke, die auf unterer Ebene gespeichert werden Obere Ebene: Array mit allen möglichen Kombinationen von Dimensionswerten Zellen des Array: Zeiger auf Datenblock, der Datenwerte für entsprechenden Dimensionswert der dicht besetzten Dimensionen enthält NULL für leeren Bereich Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 117

118 7 Speicherstrukturen für Data Warehouse Speicherstrukturen für Data Warehouse Zwei-Ebenen-Datenstruktur Speicherungsvarianten Werbeaktion dünn besetzt Kunde Geographie Zeit dicht besetzt Produkt Schallehn Data-Warehouse-Technologien Wintersemester 07/ Speicherstrukturen für Data Warehouse Zusammenfassung Speicherungsvarianten relationale vs. multidimensionale Speicherung relationale Erweiterungen Partitionierung spezielle Tabellentypen Spezialitäten der multidimensionalen Speicherung Array-Speicherung Kachelung Umgang mit dünn besetzten Würfeln hybride Formen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Teil IX Indexstrukturen für Data Warehouse 118 Uni Magdeburg, WS 2007/08

119 8 Indexstrukturen für Data Warehouse 8.1 Klassifikation von Indexstrukturen 8.2 B-Bäume 8.3 Bitmap-Indexe 8.4 Mehrdimensionale Indexstrukturen 8 119

120 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse 1 Klassifikation von Indexstrukturen 2 B-Bäume 3 Bitmap-Indexe 4 Mehrdimensionale Indexstrukturen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Motivation Indexstrukturen für Data Warehouse Faktentabellen in Data Warehouses sind so groß, dass ein Full-Table-Scan nicht sinnvoll ist Beispiel: Scan über 10 GB-Tabelle bei 10 MB/s = ca. 17 Minuten Anfragen betreffen typischerweise nur einen verhältnismäßig kleinen Anteil der vorhandenen Daten: Je nach Beschränkung der einzelnen Dimensionen umfasst die Antwort nur wenige Prozent oder Promille (oder noch weniger) aller Daten Verwendung von Indexstrukturen ist sinnvoll, um die Anzahl der zu lesenden Datenseiten zu minimieren Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Klassifikation von Indexstrukturen Klassifikation von Indexstrukturen Clustering: Daten, die voraussichtlich oft zusammen verarbeitet werden, werden auch physisch nahe beieinander abgelegt Tupel-Clustering: Ablegen von Tupeln auf der gleichen physischen Seite Seiten-Clustering: Hintereinanderablegen zusammengehöriger Seiten im Sekundärspeicher (erlaubt Prefetching) Dimensionalität: Angabe, wieviele Attribute (Dimensionen) der zugrundeliegenden Relation für Berechnung des Indexschlüssels verwendet werden Symmetrie: Wenn die Performance unabhängig von der Reihenfolge der Indexattribute ist, handelt es sich um eine symmetrische Indexstruktur, ansonsten um eine asymmetrische Tupelverweise: Art der Verweise innerhalb der Indexstruktur auf die Tupel Dynamisches Verhalten: Aufwand zur Aktualisierung der Indexstruktur bei Einfügen, Ändern und Löschen; (sowie ggf. Problem der Entartung ) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

121 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse Vergleich von Indexstrukturen Klassifikation von Indexstrukturen Full Table Scan Clusternder Primärindex Produkt (Artikel) Produkt (Artikel) Zeit (Tage) Zeit (Tage) Produkt (Artikel) Produkt (Artikel) 8 Zeit (Tage) Mehrere Sekundärindexe, Bitmap-Indexe Zeit (Tage) Multidimensionaler Index Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse B-Bäume Eindimensionale Baumstrukturen B-Baum [Bayer/McCreight 1972] Schallehn Data-Warehouse-Technologien Wintersemester 07/ B-Baum Indexstrukturen für Data Warehouse B-Bäume Ordnung eines B-Baumes: min. Anzahl der Einträge auf den Indexseiten (außer Wurzelseite) Definition: Indexbaum ist B-Baum der Ordnung m, wenn Jede Seite enthält höchstens 2m Elemente Jede Seite außer Wurzelseite enthält mind. m Elemente Jede Seite ist entweder Blattseite ohne Nachfolger oder hat i + 1 Nachfolger (i: Anzahl ihrer Elemente) Alle Blattseiten liegen auf der gleichen Stufe Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 121

122 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse B-Baum: Eigenschaften B-Bäume n Datensätze in Hauptdatei log m (n) Seitenzugriffe von der Wurzel zum Blatt Balancierungskriterium führt zu Eigenschaft nahe vollständiger Ausgeglichenheit Einfügen, Löschen, Suchen mit O(log m (n)) Speicherplatzausnutzung: mindestens 50% (ausser Wurzel) Schallehn Data-Warehouse-Technologien Wintersemester 07/ B + -Baum Indexstrukturen für Data Warehouse B-Bäume B + -Baum (Variante des B-Baums): Tupel/TIDs nur in den Blättern; Blätter untereinander verkettet für sequenziellen (Bereichs-) Durchlauf Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse B-Bäume Eigenschaften von B- und B + -Bäumen eindimensionale Struktur (Index über ein Attribut) als Primärindex können Tupel auch direkt im Baum gespeichert werden (ermöglicht einfaches Clustering; insb. beim B + -Baum) als Sekundärindex werden nur TIDs im Baum gespeichert balancierte Bäume (Weg von Wurzel zu Blatt überall gleich lang); Balancierung erfordert etwas aufwendiger Reorganisation bei Änderung der Daten für Data Warehouses von untergeordneter Bedeutung B + -Baum besonders geeignet für Bereichsanfragen (durch Verkettung auf Blattebene) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

123 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse Anwendung von B-/B + -Baum B-Bäume B- und B + -Baum: eindimensionale Strukturen: nur unzureichende Unterstützung mehrdimensionaler Anfragen mögliche Anwendung bei mehrdimensionalen Anfragen: für jedes beteiligte Attribut gibt es einen B- oder B + -Baum als Sekundärindex dann kann für jedes Attribut entsprechend der Anfragerestriktion die Menge der TIDs der Tupel bestimmt werden, die die jeweilige Restriktion erfüllen nun wird der Schnitt dieser unabhängig voneinander bestimmten TID-Mengen berechnet; die zugehörigen Tupel bilden das Anfrageergebnis 8 Schallehn Data-Warehouse-Technologien Wintersemester 07/ B + -Baum: Fazit Indexstrukturen für Data Warehouse B-Bäume Robuste, generische Datenstruktur Unabhängig vom Datentyp (nur Ordnung erforderlich) Effiziente Aktualisierungsalgorithmen Kompakt Arbeitspferd aller RDBMS Probleme Attribute mit geringer Kardinalität degenerierte Bäume Zusammengesetzte Indexe ordnungssensitiv Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Degenerierte B-Bäume B-Bäume Beispiel: Tabelle customer Attribute: u.a. gender (m, w) Index CREATE INDEX s_idx ON customer(gender) m w 0x100, 0x101, 0x105, 0x110,... 0x102, 0x103, 0x104, 0x106,... Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 123

124 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse Ordnungsabhängigkeit B-Bäume Zusammengesetzter Index Indexierung konkatenierter Attributwerte Problem: Ordnung der Anfrageprädikate anpassen Beispiel: Tabelle customer Attribute: gender, profession, cclass Index: CREATE INDEX csp_idx ON customer(cclass, gender, profession) Anfragen: SELECT... FROM... WHERE gender= m AND profession= lecturer AND cclass=1 SELECT... FROM... WHERE cclass=1 AND gender= m AND profession= lecturer Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse B-Bäume B + -Baum-Tricks: Oversized Index Anfrage: SELECT AVG(age) FROM customer WHERE cclass=1 AND gender= m AND profession= lecturer Indexnutzung Suchen des Wertes 1 m lecturer Zugriff auf Block der Relation customer über TID für Wert von age Besser: CREATE INDEX csp_idx ON customer(cclass, gender, profession, age) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse B-Bäume B + -Baum-Tricks: Berechnete Indexe Berechnung von indexierten Werten durch Angabe einer Funktion Beispiel: Index über customer(name) Anfrage: SELECT * FROM customer WHERE name="müller" OR name="müller" OR name="mueller"... Besser Indexnutzung nicht möglich CREATE INDEX n_idx ON customer(upper(name)) CREATE INDEX n_idx ON customer(soundex(name)) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

125 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse Oracle9i: Spezielle Features B-Bäume Index Skip Scan: nutzt zusammengesetzte Indexe auch, wenn erstes Attribut nicht in Bedingung enthalten ist Beispiel: Tabelle customer, Index auf (state, registration#) Index nutzbar für Anfrage mit... WHERE registration# = 4245 Durchsuchung des sekundären Index für alle DISTINCT Werte des ersten Attributs Meist nur bei niedriger Kardinalität des ersten Attributes sinnvoll Infos: 8 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse B-Bäume Oracle9i: Spezielle Features /2 Index-organized Tables Tupel werden im B + -Baum mitgespeichert Keine Indirektion über TID notwendig User-defined Indexes Implementierung eigener Indexstrukturen für benutzerdefinierte Datentypen Transparente Nutzung Angabe eigener Kostenabschätzungen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Bitmap-Indexe Indexstrukturen für Data Warehouse Bitmap-Indexe Idee: Bit-Array zur Kodierung der Tupel-Attributwert-Zuordnung Vergleich mit baumbasierten Indexstrukturen: vermeidet degenerierte B-Bäume unempfindlicher gegenüber höherer Zahl von Dimensionen einfachere Unterstützung von Anfragen, in denen nur einige (der indexierten) Dimensionen beschränkt werden dafür aber i.allg. höhere Aktualisierungskosten in Data Warehouses wegen des überwiegend lesenden Zugriffs unproblematisch Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 125

126 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse Bitmap-Index: Realisierung Bitmap-Indexe Prinzip: Ersetzung der TIDs (rowid) für einen Schlüsselwert im B + -Baum durch Bitliste Knotenaufbau: Bestellstatus F : O : P : Vorteil: geringerer Speicherbedarf Beispiel: Tupel, 3 verschiedene Schlüsselwerte, 4 Byte für TID B + -Baum: 600 KB Bitmap: Byte = 56KB Nachteil: Aktualisierungsaufwand Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Bitmap-Index: Realisierung /2 Definition in Oracle Bitmap-Indexe CREATE BITMAP INDEX bestellstatus_idx ON bestellung(status); Nutzung speziell zur Star-Query-Transformation (Verbund zwischen Dimensions- und Faktentabelle) Speicherung in komprimierter Form Weiterhin: Verbund-Indexe auf Bitmap-Basis Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Standard-Bitmap-Index Bitmap-Indexe jede Dimension wird getrennt abgespeichert für jede Ausprägung eines Attributs wird ein Bitmap-Vektor angelegt: für jedes Tupel steht ein Bit, dieses wird auf 1 gesetzt, wenn das indexierte Attribut in dem Tupel den Referenzwert dieses Bitmap-Vektors enthält die Anzahl der entstehenden Bitmap-Vektoren pro Dimension entspricht der Anzahl der unterschiedlichen Werte, die für das Attribut vorkommen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

127 8 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse Standard-Bitmap-Index /2 Bitmap-Indexe Beispiel: Attribut Geschlecht 2 Wertausprägungen (m/w) 2 Bitmap-Vektoren PersId Name Geschlecht Bitmap-w Bitmap-m 007 James Bond M Amelie Lux W Harald Schmidt M Heike Drechsler W 1 0 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Standard-Bitmap-Index /3 Bitmap-Indexe Selektion von Tupeln kann nun durch entsprechende Verknüpfung von Bitmap-Vektoren erfolgen Beispiel: Bitmap-Index über Attribute Geschlecht und Geburtsmonat (d.h. 2 Bitmap-Vektoren B-w und B-m für Geschlecht und 12 Bitmap-Vektoren B-1,..., B-12 für die Monate, wenn alle Monate vorkommen) Anfrage: alle im März geborenen Frauen Berechnung: B-w B-3 (bitweise konjunktiv verknüpft) Ergebnis: alle Tupel, an deren Position im Bitmap-Vektor des Ergebnis eine 1 steht Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Bitmap-Indexe Mehrkomponenten-Bitmap-Index bei Standard-Bitmap-Indexe entstehen für Attribute mit vielen Ausprägungen sehr viele Bitmap-Vektoren < n, m >-Mehrkomponenten-Bitmap-Indexe erlauben es n m mögliche Ausprägungen durch n + m Bitmap-Vektoren zu indexieren jeder Wert x(0 x n m 1) kann durch zwei Werte y und z repräsentiert werden: x = n y + z mit 0 y m 1 und 0 z n 1 dann nur noch maximal m Bitmap-Vektoren für y und n Bitmap-Vektoren für z Speicheraufwand reduziert sich von n m auf n + m Vektoren dafür müssen für eine Punktanfrage aber 2 Bitmap-Vektoren gelesen werden Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 127

128 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse Bitmap-Indexe Mehrkomponenten-Bitmap-Index Beispiel: Zweikomponenten-Bitmap-Index Für M = etwa x = 4 y + z y-werte: B-2-1, B-1-1, B-0-1 z-werte: B-3-0, B-2-0, B-1-0, B-0-0 x y z M B-2-1 B-1-1 B-0-1 B-3-0 B-2-0 B-1-0 B Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Beispiel: Postleitzahlen Bitmap-Indexe Kodierung von Postleitzahlen Werte bis direkte Umsetzung: Spalten Zweikomponenten-Bitmap-Index (erste 2 Ziffern + 3 letzte Ziffern): Spalten Fünf Komponenten: 50 Spalten geeignet für Bereichsanfragen PLZ 39*** Binärkodiert (bis 2 17 ): 34 Spalten nur für Punktanfragen! Bemerkung: Kodierung zur Basis 3 ergibt sogar nur 33 Spalten... Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Bitmap-Indexe Bereichskodierter Bitmap-Index Standard- und Mehrkomponenten-Bitmap-Indexe für Punktanfragen sehr gut geeignet für große Bereiche ineffizient, da viele Bitmap-Vektoren verknüpft werden müssen Idee der bereichskodierten Bitmap-Indexe: Im Bitmap-Vektor wird ein Bit auf 1 gesetzt, wenn der Wert des Attributs des zu dieser Position gehörigen Tupels kleiner oder gleich dem gegebenen Wert ist. Bereichsanfrage 2 attr 7 benötigt zur Beantwortung nur 2 Bitmap-Vektoren: B-1 und B-7. Ergebnis-Bitmap-Vektor ist (( B-1) B-7). für Bereichsanfragen müssen max. 2 Bitmap-Vektoren gelesen werden (nur einer bei nur einseitig begrenzten Bereichen) für Punktabfragen müssen genau 2 Bitmap-Vektoren gelesen werden Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

129 8 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse Bitmap-Indexe Bereichskodierter Bitmap-Index Monat Dez Nov Okt Sep Aug Jul Jun Mai Apr Mär Feb Jan M B-11 B-10 B-9 B-8 B-7 B-6 B-5 B-4 B-3 B-2 B-1 B-0 Juni April Jan Feb April Dez Aug Sept Bereichsanfrage Februar Datum August benötigt B-0 und B-7. Ergebnis-Bitmap-Vektor ist (( B-0) B-7) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Bitmap-Indexe Mehrkomponenten-bereichskodierter Bitmap-Index Kombination der beiden Techniken zunächst wird ein Mehrkomponenten-Bitmap-Index angelegt auf jede entstehende Gruppe von Bitmap-Vektoren wird die Bereichskodierung angewendet aufgrund der Mehrkomponenten-Technik geringer Speicherbedarf (da geringe Anzahl von Bitmap-Vektoren) die Bereichskodierung erlaubt zudem effiziente Unterstützung für Bereichsanfragen durch die Bereichskodierung wird zudem in jeder Gruppe von Bitmap-Vektoren (Komponenten) ein Vektor überflüssig (der den Wert n 1 bzw. m 1 repräsentiert, da dort immer alle Bits auf 1 gesetzt sein müssen); also nur n + m 2 Bitmap-Vektoren benötigt Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Beispiel MKBKBMI Bitmap-Indexe Beispiel Mehrkomponenten-bereichskodierter Bitmap-Index B-0-1 = B-0-1 B-1-1 = B-1-1 B-0-1 B-2-1 = B-2-1 B-1-1 = B-2-1 B-1-1 B-0-1 = 1 M B-1-1 B-0-1 B-2-0 B-1-0 B Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 129

130 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse Intervallkodierte Indexierung Bitmap-Indexe Prinzip: jeder Bitmap-Vektor repräsentiert definiertes Intervall Beispiel: Intervalle I-0 = [0, 5], I-1 = [1, 6], I-2 = [2, 7], I-3 = [3, 8], I-4 = [4, 9], I-5 = [5, 10] M I-5 I-4 I-3 I-2 I-1 I Anfrage: (2 M 8) Auswertung von I-2 I-3 Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Auswahl von Indexstrukturen Bitmap-Indexe in Data Warehouses i.d.r. multidimensionale Bereichsanfragen Auswahl der Indexstruktur abhängig vom Anfrageprofil Wird ein bestimmtes Attribut bevorzugt eingeschränkt? bei asymmetrischen Indexstrukturen Reihenfolge der Indexattribute nach ihrer Vorkommenshäufigkeit im Anfrageprofil wählen Wenn kein Attribut als besonders wichtig ausgezeichnet werden kann bzw. sehr viele Ad-hoc-Anfragen auftreten, sind symmetrische Strukturen (Sekundärindexe, multidimensionale Indexe) sinnvoll Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Bitmap-Indexe Auswahl von Indexstrukturen /2 Standard-Bitmap-Index Schnelle, effiziente Implementierung großer Speicherplatzbedarf bei großer Anzahl von Ausprägungen Mehrkomponenten-Bitmap-Index Für Punktanfragen wenigste Anzahl von Leseoperationen Bereichskodierter Bitmap-Index Einseitig beschränkte Bereichsanfragen Intervallkodierter Bitmap-Index Zweiseitig beschränkte Bereichsanfragen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

131 8 8 Indexstrukturen für Data Warehouse Verbundindex Indexstrukturen für Data Warehouse Bitmap-Indexe Beschleunigung von Verbundberechnungen durch Indexierung von Attributen fremder Relationen Vorberechnung des Verbundes und Speichern als Indexstruktur Verbund/Gruppierung teilweise ohne Zugriff auf fremde Relation (z.b. Dimensionstabelle) möglich Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Verbundindex: Beispiel Bitmap-Indexe Verkauf V_ROWID GeoID ZeitID Verkäufe... 0x x x x x x Geographie G_ROWID GeoID Filiale Stadt... 0x Allee-Center Magdeburg 0x Bördepark Magdeburg 0x Anger Erfurt 0x Erfurter Str. Ilmenau CREATE INDEX joinidx ON Verkauf(Geographie.GeoID) USING Verkauf.GeoID = Geographie.GeoID 0x100: { 0x001, 0x002,... } 0x101: { 0x003, 0x004,... } 0x103: {... } Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Bitmap-Verbundindex Bitmap-Indexe Bisher: Prädikate für Bitmap-Indexe nicht auf Fremdschlüssel angewendet Verbund muss weiterhin ausgeführt werden Bitmap-Indexe nur für Star-Join-Optimierung hilfreich Kombination von Bitmap-Index und Verbund-Index Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 131

132 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse Bitmap-Indexe Bitmap-Verbundindex mit Oracle Definition CREATE BITMAP INDEX sr_idx ON sales(region.region_name) FROM sales, region WHERE sales.region_id = region.id Macht Joins überflüssig (kein Zugriff auf region notwendig) Verknüpfung mit anderen Bitmap-Indexen auf Tabelle sales möglich SELECT SUM(sales.amount) FROM sales, region WHERE sales.region_id = region.id AND region.region_name = Thüringen Infos: Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexierte Sichten Indexstrukturen für Data Warehouse Bitmap-Indexe SQL Server 2000: Indexierung von Sichten Materialisierung der betroffenen Daten Automatische Aktualisierung bei Änderung der Basisdaten materialisierte Sichten CREATE VIEW Verkäufe2002 AS SELECT Stadt, Verkäufe, V.ZeitID, V.GeographieID FROM Verkauf V, Zeit Z, Geographie G WHERE V.ZeitID = Z.ZeitID AND Z.Jahr = 2002 AND V.GeographieID = G.GeographieID; CREATE UNIQUE CLUSTERED INDEX V2000_IDX ON Verkäufe2002(ZeitID, GeographieID); Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Mehrdimensionale Indexstrukturen Mehrdimensionale Indexstrukturen Hash-basierte Strukturen Grid-Files Mehrdimensionales dynamisches Hashen Baum-basierte Strukturen KdB-Baum R-Baum [Gutman 1984] UB-Baum [Bayer 1996] Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

133 8 8 Indexstrukturen für Data Warehouse Grid-File Indexstrukturen für Data Warehouse Mehrdimensionale Indexstrukturen Mehrdimensionale Dateiorganisationsform Kombination von Elementen der Schlüsseltransformation (Hash-Verfahren) und Indexdateien (Baumverfahren) Idee Dimensionsverfeinerung: gleichmäßige Aufteilung des mehrdimensionalen Raumes in der ausgewählten Dimension durch vollständigen Schnitt (Einziehen einer Hyperebene) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Grid-File: Prinzipien Mehrdimensionale Indexstrukturen Zerlegung des Datenraums in Quader (Suchregion: k-dimensionale Quader) Nachbarschaftserhaltung: Speicherung ähnlicher Objekte auf gleicher Seite Symmetrische Behandlung aller Raum-Dimensionen: partial-match-anfragen Dynamische Anpassung der Struktur beim Einfügen und Löschen Prinzip der 2 Plattenzugriffe bei exact-match-anfragen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Grid-File: Aufbau Indexstrukturen für Data Warehouse Mehrdimensionale Indexstrukturen Grid: k eindimensionale Felder (Skalen), jede Skala repräsentiert Attribut Skalen: bestehen aus Partition der zugeordneten Wertebereiche in Intervalle Grid-Directory: besteht aus Grid-Zellen, die Datenraum in Quader zerlegen Grid-Zellen: bilden eine Grid-Region, der genau eine Datensatz-Seite zugeordnet ist Grid-Region: k-dimensionales, konvexes Gebilde (paarweise disjunkt) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 133

134 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse Grid-File: Aufbau /2 Mehrdimensionale Indexstrukturen Skalen (Intervalle) Grid-Directory (Zellen) Regionen Seiten Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Grid-File: Operationen Mehrdimensionale Indexstrukturen Ausgangszustand: Zelle = Region = eine Datensatz-Seite Seitenüberlauf Teilen von Seiten Falls zur Seite gehörende Grid-Region nur eine Zelle: Unterteilung des Intervalls auf einer Skala Falls Region aus mehreren Zellen: Zerlegung dieser Zellen in einzelne Regionen Seitenunterlauf Zusammenfassen von zwei Regionen falls Ergebnis eine konvexe Region Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse Mehrdimensionales Hashen MDH Idee: Bit Interleaving Mehrdimensionale Indexstrukturen abwechselnd von verschiedenen Zugriffsattributwerten die Bits der Adresse berechnen Beispiel: zwei Dimensionen *0*0 *0*1 *1*0 *1*1 0*0* *1* *0* *1* Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

135 8 Indexstrukturen für Data Warehouse Idee MDH Indexstrukturen für Data Warehouse Mehrdimensionale Indexstrukturen MDH baut auf linearem Hashen auf dynamisches Hash-Verfahren Bitsequenz-Prefixe addressieren Speicherblöcke Hash-Werte sind Bit-Folgen, von denen jeweils ein Anfangsstück als aktueller Hash-Wert dient bei binären Zahlen: oft Invertierung der Bit-Darstellung vor Prefix-Bildung je ein Bit-String pro beteiligtem Attribut berechnen Anfangsstücke nun nach dem Prinzip des Bit-Interleaving zyklisch abarbeiten Hash-Wert reihum aus den Bits der Einzelwerte zusammensetzen Familie von Hash-Funktionen h i für Bitfolgen der Länge i dynamisches Wachstum: gehe von i auf i Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse MDH Veranschaulichung Mehrdimensionale Indexstrukturen verdeutlicht Komposition der Hash-Funktion h i für drei Dimensionen und den Wert i = 7 beim Schritt auf i = 8 würde ein weiteres Bit von x 2 verwendet MDH Komplexität Exact-Match-Anfragen: O(1) Partial-Match-Anfragen, bei t von k Attributen festgelegt, Aufwand O(n 1 t k ) ergibt sich aus der Zahl der Seiten, wenn bestimmte Bits unknown Spezialfälle: O(1) für t = k, O(n) für t = 0 Schallehn Data-Warehouse-Technologien Wintersemester 07/ KdB-Baum Indexstrukturen für Data Warehouse Mehrdimensionale Indexstrukturen k-dimensionale Indexbäume kd-baum: binärer Baum für mehrdimensionale Grundstruktur; Hauptspeicheralgorithmen KDB-Baum: Kombination aus kd-baum und B-Baum (höherer Verzweigungsgrad) KdB-Baum: Verbesserung des KDB-Baums Idee des KdB-Baums Auf jeder Indexseite einen Teilbaum darstellen, der nach mehreren Attributen hintereinander verzweigt Aufwand: exact-match O(log n), partial match besser als O(n) Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 135

136 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse KdB-Baum: Struktur KdB-Baum vom Typ (b, t) Mehrdimensionale Indexstrukturen Bereichsseiten (innere Knoten): enthalten kd-baum mit max. b internen Knoten kd-baum mit Schnittelementen und zwei Zeigern Schnittelement: Zugriffsattribut und -wert linker Zeiger: kleinere Zugriffsattributwerte rechter Zeiger: größere Zugriffsattributwerte Satzseiten (Blätter): enthalten bis zu t Tupel der gespeicherten Relation Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse KdB-Baum: Beispiel Mehrdimensionale Indexstrukturen I J F C x:40 y A H y:51 y:60 E B D G x:26 x:80 x {E} {A,B} {I,J} {D} {H,G} {F,C} Schallehn Data-Warehouse-Technologien Wintersemester 07/ Indexstrukturen für Data Warehouse KdB-Baum: Trennattribute Mehrdimensionale Indexstrukturen Reihenfolge Zyklisch festgelegt Einbeziehung der Selektivität: Zugriffsattribut mit hoher Selektivität möglichst früh und häufiger als Schnittelement einsetzen Trennattributwert Ermittlung einer geeigneten Mitte des Wertebereichs aufgrund von Verteilungsinformationen Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

137 8 8 Indexstrukturen für Data Warehouse Indexstrukturen für Data Warehouse K[dD](B)-Baum: Fazit Mehrdimensionale Indexstrukturen Speichert auch schlecht verteilte Daten Schwer handhabbar für mehr als 3 Dimensionen Schallehn Data-Warehouse-Technologien Wintersemester 07/ R-Baum Indexstrukturen für Data Warehouse Mehrdimensionale Indexstrukturen jeder Knoten des R-Baums speichert max. m Indexeinträge (m = 2d + 1) jeder Knoten (außer der Wurzel) enthält mindestens n Einträge (n = d + 1) d-dimensionaler R-Baum verwendet d-dimensionale Intervalle (Rechtecke, Quader) zur Indexierung des Datenraums Eintrag auf Blattebene: (I, tid) mit I ein d-dimensionales Intervall und tid Tupelidentifikator, der den entsprechenden Datensatz referenziert Eintrag in inneren Knoten: (I, cp) mit I dem d-dimensionalen Intervall, das alle Intervalle der Einträge des Kindknotens umfasst (minimum bounding box) und cp Zeiger auf diesen Kindknoten (child pointer) Schallehn Data-Warehouse-Technologien Wintersemester 07/ R-Baum /2 Indexstrukturen für Data Warehouse Mehrdimensionale Indexstrukturen Besonderheiten (im Vergleich zum B -Baum) Suchen: falls verschiedene Regionen von Knoten gleicher Ebene sich überlappen, müssen selbst bei Punktanfragen evtl. mehrere Nachfolger traversiert werden Einfügen: es wird versucht, ein Intervall zu finden, das nicht erweitert werden muss; ansonsten das, das am wenigsten erweitert werden muss Löschen von Daten spielt für Data Warehouses i.d.r. keine Rolle; Einfügen nur in größeren Abständen (dann aber oft mit vielen neuen Tupeln) effiziente Möglichkeit des bottom-up-aufbaus der R-Baum-Struktur wichtig Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08 137

138 8 Indexstrukturen für Data Warehouse R-Baum Beispiel Indexstrukturen für Data Warehouse Mehrdimensionale Indexstrukturen A F G K D E H J B I N M L A B C C D E F G L M N H I J K Schallehn Data-Warehouse-Technologien Wintersemester 07/ R-Baum Fazit Indexstrukturen für Data Warehouse Mehrdimensionale Indexstrukturen Bessere Anpassung der Bereiche an Daten Schallehn Data-Warehouse-Technologien Wintersemester 07/ UB-Baum Indexstrukturen für Data Warehouse Mehrdimensionale Indexstrukturen Datenraum wird mittels einer raumfüllenden Kurve in disjunkte Teilräume aufgeteilt (meist die sogenannte Z-Kurve) jeder Punkt des von den zu indizierenden Attributen aufgespannten mehrdimensionalen Raums wird auf einen skalaren Wert, den Z-Wert, abgebildet Z-Werte werden als Schlüssel in einem herkömmlichen B + -Baum verwendet Schallehn Data-Warehouse-Technologien Wintersemester 07/ Uni Magdeburg, WS 2007/08

Anforderungen des Data Warehousing. 2. Data-Warehouse-Architektur. Anforderungen des Data Warehousing. Referenzarchitektur. Data-Warehouse-Manager

Anforderungen des Data Warehousing. 2. Data-Warehouse-Architektur. Anforderungen des Data Warehousing. Referenzarchitektur. Data-Warehouse-Manager 2. Data-Warehouse-Architektur Anforderungen Referenzarchitektur Phasen des Data Warehousing Komponenten Anforderungen des Data Warehousing Unabhängigkeit zwischen Datenquellen und Analysesystemen (bzgl.

Mehr

Data-Warehouse-Architektur

Data-Warehouse-Architektur Data-Warehouse-Architektur Anforderungen Referenzarchitektur Phasen des Data Warehousing Komponenten VL Data Warehouses, WS 2000/2001 2-1 Anforderungen des Data Warehousing Unabhängigkeit zwischen Datenquellen

Mehr

Data-Warehouse-Architektur

Data-Warehouse-Architektur Data-Warehouse-Architektur ƒ Anforderungen ƒ Referenzarchitektur ƒ Phasen des Data Warehousing ƒ Komponenten Vorlesung Data-Warehouse-Technologien 2-1 Anforderungen des Data Warehousing ƒ Unabhängigkeit

Mehr

Teil II Data-Warehouse-Architektur

Teil II Data-Warehouse-Architektur Teil II Data-Warehouse-Architektur Data-Warehouse-Architektur 1 Anforderungen 2 Referenzarchitektur 3 Phasen des Data Warehousing 4 c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

Mehr

OLAP und Data Warehouses

OLAP und Data Warehouses OLP und Data Warehouses Überblick Monitoring & dministration Externe Quellen Operative Datenbanken Extraktion Transformation Laden Metadaten- Repository Data Warehouse OLP-Server nalyse Query/Reporting

Mehr

1. Einführung. Szenario: Getränkemarkt. DB-Schema. Motivation Überblick Anwendungen Abgrenzung Begriff Data Warehouse DW-Architektur Benchmarks

1. Einführung. Szenario: Getränkemarkt. DB-Schema. Motivation Überblick Anwendungen Abgrenzung Begriff Data Warehouse DW-Architektur Benchmarks . Einführung Motivation Überblick Anwendungen Abgrenzung Begriff Data Warehouse DW-Architektur Benchmarks Sattler / Saake Data-Warehouse-Technologien Szenario: Getränkemarkt Umsatz, Portfolio SSaufland

Mehr

fi Data Warehouse: Sammlung von Technologien zur Unterstützung von Entscheidungsprozessen fi Herausforderung an Datenbanktechnologien

fi Data Warehouse: Sammlung von Technologien zur Unterstützung von Entscheidungsprozessen fi Herausforderung an Datenbanktechnologien Einführung Gegenstand der Vorlesung fi Data Warehouse: Sammlung von Technologien zur Unterstützung von Entscheidungsprozessen fi Herausforderung an Datenbanktechnologien Datenvolumen (effiziente Speicherung

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

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

Einführungsveranstaltung: Data Warehouse

Einführungsveranstaltung: Data Warehouse Einführungsveranstaltung: 1 Anwendungsbeispiele Berichtswesen Analyse Planung Forecasting/Prognose Darstellung/Analyse von Zeitreihen Performancevergleiche (z.b. zwischen Organisationseinheiten) Monitoring

Mehr

Data-Warehouse-Architektur. Anforderungen des Data Warehousing. Anforderungen Referenzarchitektur Phasen des Data Warehousing Komponenten

Data-Warehouse-Architektur. Anforderungen des Data Warehousing. Anforderungen Referenzarchitektur Phasen des Data Warehousing Komponenten Data-Warehouse-Architektur Anforderungen Referenzarchitektur Phasen des Data Warehousing Komponenten Vorlesung Data-Warehouse-Technologien 2-1 Anforderungen des Data Warehousing Unabhängigkeit zwischen

Mehr

Data-Warehouse-Technologien

Data-Warehouse-Technologien 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

Mehr

Das Multidimensionale Datenmodell

Das Multidimensionale Datenmodell Das Multidimensionale Datenmodell Konzeptuelle Modellierung Umsetzung des Modells Beispiel ER-Modell 2 / 36 Probleme ER-Modellierung Keine Unterscheidung Klassifikation, Attribute, Kenngrößen Dimension

Mehr

Einführung. Überblick. Data-Warehouse-Technologien. Vorlesung

Einführung. Überblick. Data-Warehouse-Technologien. Vorlesung Vorlesung Data-Warehouse-Technologien Wintersemester 2002/2003 kus@iti.cs.uni-magdeburg.de http://wwwiti.cs.uni-magdeburg.de/~sattler/hal/dw.html Einführung Gegenstand der Vorlesung Data Warehouse: Sammlung

Mehr

Kapitel 6. Vorlesung: PD Dr. Peer Kröger

Kapitel 6. Vorlesung: PD Dr. Peer Kröger Kapitel 6 Einführung in Data Warehouses Vorlesung: PD Dr. Peer Kröger Dieses Skript basiert auf den Skripten zur Vorlesung Datenbanksysteme II an der LMU München Dieses Skript basiert auf den Skripten

Mehr

Kapitel 6 Einführung in Data Warehouses

Kapitel 6 Einführung in Data Warehouses Kapitel 6 Einführung in Data Warehouses Skript zur Vorlesung: Datenbanksysteme II Sommersemester 2008, LMU München 2008 Dr. Peer Kröger Dieses Skript basiert zu einem Teil auf dem Skript zur Vorlesung

Mehr

Data Warehouse Technologien

Data Warehouse Technologien mitp Professional Data Warehouse Technologien von Veit Köppen, Gunter Saake, Kai-Uwe Sattler 2. Auflage 2014 Data Warehouse Technologien Köppen / Saake / Sattler schnell und portofrei erhältlich bei beck-shop.de

Mehr

Multidimensionales Datenmodell

Multidimensionales Datenmodell Multidimensionales Datenmodell Grundbegriffe fi Fakten, Dimensionen, Würfel Analyseoperationen fi Drill-Down, Roll-Up, Slice und Dice Notationen zur konzeptuellen Modellierung fi ME/R, ADAPT Relationale

Mehr

Data Warehousing. Kapitel 1: Data-Warehousing-Architektur. Folien teilweise übernommen von Matthias Gimbel

Data Warehousing. Kapitel 1: Data-Warehousing-Architektur. Folien teilweise übernommen von Matthias Gimbel Data Warehousing Kapitel 1: Data-Warehousing-Architektur Folien teilweise übernommen von Matthias Gimbel 2 Analyse von Geschäftsprozessen Mögliche Fragestellungen Wie entwickelt sich unser Umsatz im Vergleich

Mehr

Multidimensionales Datenmodell. Motivation. Motivation /2. Grundbegriffe. Analyseoperationen. Notationen zur konzeptuellen Modellierung

Multidimensionales Datenmodell. Motivation. Motivation /2. Grundbegriffe. Analyseoperationen. Notationen zur konzeptuellen Modellierung Multidimensionales Datenmodell Grundbegriffe Dimensionen, Fakten/Kennzahlen, Würfel Analyseoperationen Drill-Down, Roll-Up, Slice und Dice Notationen zur konzeptuellen Modellierung ME/R,ADAPT,graphbasierteAnsätze

Mehr

Data Warehousing und Data Mining

Data Warehousing und Data Mining 2 Data Warehousing und Data Mining Kapitel 1: Data-Warehousing-Architektur von Geschäftsprozessen Mögliche Fragestellungen Wie entwickelt sich unser Umsatz im Vergleich zum letzten Jahr? In welchen Regionen

Mehr

Seminar im Sommersemester 2004 an der Universität Karlsruhe (TH)

Seminar im Sommersemester 2004 an der Universität Karlsruhe (TH) Seminar im Sommersemester 2004 an der Universität Karlsruhe (TH) Verteilung und Integration von Informationen im Verkehrsbereich Thema: OLAP in verteilten Data-Warehouse- Umgebungen Vortrag: Christian

Mehr

Architektur eines Data Warehouse Systems. Mario Jandeck

Architektur eines Data Warehouse Systems. Mario Jandeck Architektur eines Data Warehouse Systems Mario Jandeck Agenda Folie 2 von 24 1. Die Referenzarchitektur 2. Komponenten des Data Warehouse Systems 3. Datenbeschaffung und Qualität 4. Analyse im Data Warehouse

Mehr

Data Warehouse ??? Ein Data Warehouse ist keine von der Stange zu kaufende Standardsoftware, sondern immer eine unternehmensindividuelle

Data Warehouse ??? Ein Data Warehouse ist keine von der Stange zu kaufende Standardsoftware, sondern immer eine unternehmensindividuelle ??? Zusammenfassung, Ergänzung, Querverbindungen, Beispiele A.Kaiser; WU-Wien MIS 188 Data Warehouse Ein Data Warehouse ist keine von der Stange zu kaufende Standardsoftware, sondern immer eine unternehmensindividuelle

Mehr

Datenbanktechnologie für Data-Warehouse-Systeme

Datenbanktechnologie für Data-Warehouse-Systeme Wolfgang Lehner Datenbanktechnologie für Data-Warehouse-Systeme Konzepte und Methoden dpunkt.verlag 1 1.1 1.2 1.3 1.4 1. 5 2 2.1 2.2 2.3 Einleitung 1 Betriebswirtschaftlicher Ursprung des Data Warehousing...

Mehr

Informationssysteme: Neuere Konzepte Teil II

Informationssysteme: Neuere Konzepte Teil II Informationssysteme: Neuere Konzepte Kapitel 1: Data-Warehousing-Architektur Folien teilweise übernommen von Matthias Gimbel 2 von Geschäftsprozessen Mögliche Fragestellungen Wie entwickelt sich unser

Mehr

Business Intelligence Data Warehouse. Jan Weinschenker

Business Intelligence Data Warehouse. Jan Weinschenker Business Intelligence Data Warehouse Jan Weinschenker 28.06.2005 Inhaltsverzeichnis Einleitung eines Data Warehouse Data Warehouse im Zusammenfassung Fragen 3 Einleitung Definition: Data Warehouse A data

Mehr

Data Cube. Aggregation in SQL. Beispiel: Autoverkäufe. On-line Analytical Processing (OLAP) 1. Einführung. 2. Aggregation in SQL, GROUP BY

Data Cube. Aggregation in SQL. Beispiel: Autoverkäufe. On-line Analytical Processing (OLAP) 1. Einführung. 2. Aggregation in SQL, GROUP BY Data Cube On-line Analytical Processing (OLAP). Einführung Ziel: Auffinden interessanter Muster in großen Datenmengen 2. Aggregation in SQL, GROUP BY 3. Probleme mit GROUP BY 4. Der Cube-Operator! Formulierung

Mehr

Data Warehouse Theorie und Praxis. Ali Khabbazian T-Systems

Data Warehouse Theorie und Praxis. Ali Khabbazian T-Systems Data Warehouse Theorie und Praxis Ali Khabbazian T-Systems Agenda Was ist Data Warehouse? Warum Data Warehouse? Architektur und Komponenten Wie realisiere ich mein Data-Warehouse- System? (Tools und Technik)

Mehr

Data Warehousing: Anwendungsbeispiel

Data Warehousing: Anwendungsbeispiel Frühjahrsemester 2012 cs242 Data Warehousing / cs243 Datenbanken Kapitel 1: Einführung H. Schuldt Data Warehousing: Anwendungsbeispiel Tresgros Tresgros Tresgros Filiale Muttenz Filiale Allschwil Filiale

Mehr

Data-Warehouse-Systeme

Data-Warehouse-Systeme Vorlesung im Wintersemester 2008/09 Data-Warehouse-Systeme Dr. Stefanie Rinderle-Ma Institut für Datenbanken und Informationssysteme Universität Ulm stefanie.rinderle@uni-ulm.de Übersicht 1) Einführung

Mehr

Christian Kurze BI-Praktikum IBM WS 2008/09

Christian Kurze BI-Praktikum IBM WS 2008/09 Einführung in die multidimensionale Datenmodellierung e mit ADAPT BI-Praktikum IBM WS 2008/09 1 Gliederung Einführung multidimensionale Datenmodellierung 1. Multidimensionales Modell BI-Praktikum IBM WS

Mehr

Data Warehouse Definition (1) http://de.wikipedia.org/wiki/data-warehouse

Data Warehouse Definition (1) http://de.wikipedia.org/wiki/data-warehouse Data Warehouse Definition (1) http://de.wikipedia.org/wiki/data-warehouse Ein Data-Warehouse bzw. Datenlager ist eine zentrale Datensammlung (meist eine Datenbank), deren Inhalt sich aus Daten unterschiedlicher

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

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

Kapitel 7 Grundlagen von Data

Kapitel 7 Grundlagen von Data LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE Skript zur Vorlesung: Datenbanksysteme II Sommersemester 2014 Kapitel 7 Grundlagen von Data Warehouses Vorlesung: PD

Mehr

Einführung & Grundbegriffe

Einführung & Grundbegriffe Teil I Einführung Einführung & Grundbegriffe 1 Motivation 2 Anwendungen 3 Abgrenzung 4 Begriff Data Warehouse 5 Themen 6 Benchmarks c Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung:

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse & Einführung Online Analytical Processing (OLAP) (auf Basis von Oracle) Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse M. Lange, S.

Mehr

Motivation. Motivation /2. Dimensionen. Einfache Hierarchien. Hierarchien in Dimensionen. 3. Multidimensionales Datenmodell

Motivation. Motivation /2. Dimensionen. Einfache Hierarchien. Hierarchien in Dimensionen. 3. Multidimensionales Datenmodell 3. Multidimensionales Datenmodell Grundbegriffe Dimensionen, Fakten/Kennzahlen, Würfel Analyseoperationen Drill-Down, Roll-Up, Slice und Dice Notationen zur konzeptuellen Modellierung ME/R, ADAPT, graphbasierte

Mehr

Data Warehouses. Alexander Fehr. 23. Dezember 2002

Data Warehouses. Alexander Fehr. 23. Dezember 2002 Data Warehouses Alexander Fehr 23. Dezember 2002 Inhaltsverzeichnis 1 Einführung 1 1.1 Motivation.............................. 1 1.2 Definitionen.............................. 1 1.3 Abgrenzung von operativen

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

Motivation. Dimensionen. Motivation /2. 3. Multidimensionales Datenmodell

Motivation. Dimensionen. Motivation /2. 3. Multidimensionales Datenmodell 3. Multidimensionales Datenmodell Grundbegriffe Dimensionen, Fakten/Kennzahlen, Würfel Analyseoperationen Drill-Down, Roll-Up, Slice und Dice Notationen zur konzeptuellen Modellierung ME/R, ADAPT, graphbasierte

Mehr

Einführung relationale Datenbanken. Themenblock: Erstellung eines Cube. Schlüssel. Relationenmodell Relationenname Attribut. Problem.

Einführung relationale Datenbanken. Themenblock: Erstellung eines Cube. Schlüssel. Relationenmodell Relationenname Attribut. Problem. Themenblock: Erstellung eines Cube Einführung relationale Datenbanken Problem Verwaltung großer Mengen von Daten Praktikum: Data Warehousing und Data Mining Idee Speicherung der Daten in Form von Tabellen

Mehr

BI Konsolidierung: Anspruch & Wirklichkeit. Jacqueline Bloemen. in Kooperation mit

BI Konsolidierung: Anspruch & Wirklichkeit. Jacqueline Bloemen. in Kooperation mit BI Konsolidierung: Anspruch & Wirklichkeit Jacqueline Bloemen in Kooperation mit Agenda: Anspruch BI Konsolidierung Treiber Was sind die aktuellen Treiber für ein Konsolidierungsvorhaben? Kimball vs. Inmon

Mehr

Themenblock: Erstellung eines Cube

Themenblock: Erstellung eines Cube Themenblock: Erstellung eines Cube Praktikum: Data Warehousing und Data Mining Einführung relationale Datenbanken Problem Verwaltung großer Mengen von Daten Idee Speicherung der Daten in Form von Tabellen

Mehr

Umsetzung der Anforderungen - analytisch

Umsetzung der Anforderungen - analytisch Umsetzung der Anforderungen - analytisch Titel des Lernmoduls: Umsetzung der Anforderungen - analytisch Themengebiet: New Economy Gliederungspunkt im Curriculum: 4.2.5.5 Zum Inhalt: In diesem Modul wird

Mehr

Aufgabe 1: [Logische Modellierung]

Aufgabe 1: [Logische Modellierung] Aufgabe 1: [Logische Modellierung] a) Entwerfen Sie für das von Ihnen entworfene Modell aus Aufgabe 2 des 1. Übungsblattes ein Star-Schema. b) Entwerfen Sie für das vorangegangene Modell einen Teil eines

Mehr

Inhaltsverzeichnis. vii.

Inhaltsverzeichnis. vii. vii 1 Einführung in Data-Warehouse-Systeme 1 1.1 Anwendungsszenario Getränkemarkt 2 1.2 OLTP versus OLAP 4 1.2.1 OLAP-versus OLTP-Transaktionen 5 1.2.2 Vergleich von OLTP und OLAP 6 1.2.3 Abgrenzung: DBMS-Techniken

Mehr

Seminar Business Intelligence Teil II. Data Mining & Knowledge Discovery

Seminar Business Intelligence Teil II. Data Mining & Knowledge Discovery Seminar Business Intelligence Teil II Data Mining & Knowledge Discovery Was ist Data Mining? Sabine Queckbörner Was ist Data Mining? Data Mining Was ist Data Mining? Nach welchen Mustern wird gesucht?

Mehr

eevolution Business Intelligence Oliver Rzeniecki COMPRA GmbH Programmierer & Datenbankadministrator

eevolution Business Intelligence Oliver Rzeniecki COMPRA GmbH Programmierer & Datenbankadministrator eevolution Business Intelligence Oliver Rzeniecki COMPRA GmbH Programmierer & Datenbankadministrator Agenda Was ist Business Intelligence? Was ist OLAP? Unterschied zwischen OLAP und OLTP? Bestandteile

Mehr

Definition Informationssystem

Definition Informationssystem Definition Informationssystem Informationssysteme (IS) sind soziotechnische Systeme, die menschliche und maschinelle Komponenten umfassen. Sie unterstützen die Sammlung, Verarbeitung, Bereitstellung, Kommunikation

Mehr

Agenda. Themenblock: Data Warehousing (I) Referenzarchitektur. Eigenschaften eines Data Warehouse. Einführung Data Warehouse Data Access mit SQL

Agenda. Themenblock: Data Warehousing (I) Referenzarchitektur. Eigenschaften eines Data Warehouse. Einführung Data Warehouse Data Access mit SQL Themenblock: Data Warehousing (I) Praktikum: Data Warehousing und Data Mining 2 Eigenschaften eines Data Warehouse Referenzarchitektur Integrierte Sicht auf beliebige Daten aus verschieden Datenbanken

Mehr

Einführung in OLAP und Business Analysis. Gunther Popp dc soft GmbH

Einführung in OLAP und Business Analysis. Gunther Popp dc soft GmbH Einführung in OLAP und Business Analysis Gunther Popp dc soft GmbH Überblick Wozu Business Analysis mit OLAP? OLAP Grundlagen Endlich... Technischer Background Microsoft SQL 7 & OLAP Services Folie 2 -

Mehr

Business Intelligence Praktikum 1

Business Intelligence Praktikum 1 Hochschule Darmstadt Business Intelligence WS 2013-14 Fachbereich Informatik Praktikumsversuch 1 Prof. Dr. C. Wentzel Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 14.10.2013 Business Intelligence Praktikum

Mehr

Data Warehouse Grundlagen

Data Warehouse Grundlagen Seminarunterlage Version: 2.10 Version 2.10 vom 24. Juli 2015 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen

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

Multidimensionale Modellierung

Multidimensionale Modellierung Multidimensionale Modellierung Vorlesung: Übung: Patrick Schäfer Berlin, 27. November 2017 patrick.schaefer@hu-berlin.de https://hu.berlin/vl_dwhdm17 https://hu.berlin/ue_dwhdm17 Grundlagen Fakten (Kennzahlen/Messgrößen):

Mehr

Kapitel 2 Terminologie und Definition

Kapitel 2 Terminologie und Definition Kapitel 2 Terminologie und Definition In zahlreichen Publikationen und Fachzeitschriften tauchen die Begriffe Data Warehouse, Data Warehousing, Data-Warehouse-System, Metadaten, Dimension, multidimensionale

Mehr

1Ralph Schock RM NEO REPORTING

1Ralph Schock RM NEO REPORTING 1Ralph Schock RM NEO REPORTING Bereit für den Erfolg Business Intelligence Lösungen Bessere Entscheidungen Wir wollen alle Mitarbeiter in die Lage versetzen, bessere Entscheidungen schneller zu treffen

Mehr

Datenmanagement. Simone Unfried, Passau Vitaly Aleev, Passau Claus Schönleber, Passau. Strategisches Informationsmanagement 1 (01/2006)

Datenmanagement. Simone Unfried, Passau Vitaly Aleev, Passau Claus Schönleber, Passau. Strategisches Informationsmanagement 1 (01/2006) Simone Unfried, Passau Vitaly Aleev, Passau Claus Schönleber, Passau (01/2006) Strategisches Informationsmanagement 1 Definition Notwendige Vermaischung der Daten in der Vorstufe zur Destillation von hochprozentiger

Mehr

Data Warehousing. Sommersemester 2005. Ulf Leser Wissensmanagement in der Bioinformatik

Data Warehousing. Sommersemester 2005. Ulf Leser Wissensmanagement in der Bioinformatik Data Warehousing Sommersemester 2005 Ulf Leser Wissensmanagement in der Bioinformatik ... Der typische Walmart Kaufagent verwendet täglich mächtige Data Mining Werkzeuge, um die Daten der 300 Terabyte

Mehr

Logische Modelle für OLAP. Burkhard Schäfer

Logische Modelle für OLAP. Burkhard Schäfer Logische Modelle für OLAP Burkhard Schäfer Übersicht Einführung in OLAP Multidimensionale Daten: Hypercubes Operationen Formale Grundlagen Zusammenfassung Einführung in OLAP Verfahren zur Analyse großer

Mehr

Modellierung von OLAP- und Data- Warehouse-Systemen

Modellierung von OLAP- und Data- Warehouse-Systemen Andreas Totok Modellierung von OLAP- und Data- Warehouse-Systemen Mit einem Geleitwort von Prof. Dr. Burkhard Huch Deutscher Universitäts-Verlag Inhaltsverzeichnis Abbildungsverzeichnis Tabellenverzeichnis

Mehr

Themenblock: Data Warehousing (I)

Themenblock: Data Warehousing (I) Themenblock: Data Warehousing (I) Praktikum: Data Warehousing und Data Mining Agenda Einführung Data Warehouses Online Transactional Processing (OLTP) Datenmanipulation mit SQL Anfragen mit SQL Online

Mehr

Online Analytical Processing

Online Analytical Processing Online Analytical Processing Online Analytical Processing Online Analytical Processing (OLAP) ermöglicht die multidimensionale Betrachtung von Daten zwecks E rmittlung eines entscheidungsunterstützenden

Mehr

C09: Einsatz SAP BW im Vergleich zur Best-of-Breed-Produktauswahl

C09: Einsatz SAP BW im Vergleich zur Best-of-Breed-Produktauswahl C09: Einsatz SAP BW im Vergleich zur Best-of-Breed-Produktauswahl Ein Seminar der DWH academy Seminar C09 Einsatz SAP BW im Vergleich zur Best-of-Breed- Produktauswahl Befasst man sich im DWH mit der Auswahl

Mehr

Summarization-based Aggregation

Summarization-based Aggregation Summarization-based Aggregation Daten Generalisierung: Prozess, der Anwendungsdaten schrittweise von niedrigen auf höhere konzeptuelle Level aggregiert Conceptual levels 2 3 4 5 example: all federal states

Mehr

MIS by Franziska Täschler, Winformation GmbH ftaeschler@winformation-gmbh.ch Ausgabe 01/2001

MIS by Franziska Täschler, Winformation GmbH ftaeschler@winformation-gmbh.ch Ausgabe 01/2001 MIS Glossar by Franziska Täschler, Winformation GmbH ftaeschler@winformation-gmbh.ch Ausgabe 01/2001 Aggregat Data Cube Data Marts Data Mining Data Warehouse (DWH) Daten Decision Support Systeme (DSS)

Mehr

Einführung. Informationssystem als Abbild der realen Welt

Einführung. Informationssystem als Abbild der realen Welt Was ist ein Datenbanksystem? Anwendungsgrundsätze Betrieb von Datenbanksystemen Entwicklung von Datenbanksystemen Seite 1 Informationssystem als Abbild der realen Welt Modellierung (Abstraktion) Sachverhalte

Mehr

Kampagnenmanagement mit Siebel Marketing/Oracle BI ein Praxisbericht

Kampagnenmanagement mit Siebel Marketing/Oracle BI ein Praxisbericht Kampagnenmanagement mit Siebel Marketing/Oracle BI ein Praxisbericht Thomas Kreuzer ec4u expert consulting ag Karlsruhe Schlüsselworte: Kampagnenmanagement Praxisbericht Siebel Marketing Oracle BI - ec4u

Mehr

Profilbezogene informatische Bildung in den Klassenstufen 9 und 10. Schwerpunktthema Daten und Datenbanken

Profilbezogene informatische Bildung in den Klassenstufen 9 und 10. Schwerpunktthema Daten und Datenbanken Profilbezogene informatische Bildung in den Klassenstufen 9 und 10 Schwerpunktthema Robby Buttke Fachberater für Informatik RSA Chemnitz Fachliche Einordnung Phasen relationaler Modellierung Fachlichkeit

Mehr

3. Das Relationale Datenmodell

3. Das Relationale Datenmodell 3. Das Relationale Datenmodell Das Relationale Datenmodell geht zurück auf Codd (1970): E. F. Codd: A Relational Model of Data for Large Shared Data Banks. Comm. of the ACM 13(6): 377-387(1970) DBMS wie

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

Seminar C16 - Datenmodellierung für SAP BW

Seminar C16 - Datenmodellierung für SAP BW C16: Datenmodellierung für SAP BW Ein Seminar der DWH academy Seminar C16 - Datenmodellierung für SAP BW Dieses Seminar soll einen umfassenden Einblick in die Datenmodellierung beim Einsatz von SAP BW

Mehr

OLAP mit dem SQL-Server

OLAP mit dem SQL-Server Hartmut Messerschmidt Kai Schweinsberg OLAP mit dem SQL-Server Eine Einführung in Theorie und Praxis IIIBibliothek V dpunkt.verlag Teil OLAP undder Microsoft SQL-Server 1 1 Theoretische Grundlagen 3 1.1

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

Komponenten und Architekturen von Analytischen Informationssystemen (AIS)

Komponenten und Architekturen von Analytischen Informationssystemen (AIS) Komponenten und Architekturen von Analytischen Informationssystemen (AIS) Melanie Pfoh Konsultation 27. Juni 2013 Hinweis Diese Folien ersetzen keinesfalls den Übungsstoff des zugehörigen e-learning-kurses.

Mehr

Ein Beispiel. Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse?

Ein Beispiel. Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse? Ein Beispiel Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse? Dipl.-Kfm. Claus Häberle WS 2015 /16 # 42 XML (vereinfacht) visa

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

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

Business Intelligence und Geovisualisierung in der Gesundheitswirtschaft

Business Intelligence und Geovisualisierung in der Gesundheitswirtschaft Business Intelligence und Geovisualisierung in der Gesundheitswirtschaft Prof. Dr. Anett Mehler-Bicher Fachhochschule Mainz, Fachbereich Wirtschaft Prof. Dr. Klaus Böhm health&media GmbH 2011 health&media

Mehr

Business Intelligence. Data Warehouse / Analyse Sven Elvers 2005-07-06

Business Intelligence. Data Warehouse / Analyse Sven Elvers 2005-07-06 Business Intelligence Data Warehouse / Analyse Sven Elvers 2005-07-06 Einleitung Dieses Dokument beschreibt einen für das Verständnis relevanten Teil der Präsentation. Business Intelligence Motivation

Mehr

ENTERBRAIN Reporting & Business Intelligence

ENTERBRAIN Reporting & Business Intelligence Überblick Vorhandene Listen/Analysen in ENTERBRAIN Die Daten in ENTERBRAIN Das Fundament des BI - Hauses Details zur ENTERBRAIN Staging Area Reports und Cubes auf Basis der Staging Area Data Mining mit

Mehr

Business Intelligence Praktikum 1

Business Intelligence Praktikum 1 Hochschule Darmstadt Business Intelligence SS 2014 Fachbereich Informatik Praktikumsversuch 1 Prof. Dr. C. Wentzel Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 07.05.2014 Business Intelligence Praktikum

Mehr

Seminar C02 - Praxisvergleich OLAP Tools

Seminar C02 - Praxisvergleich OLAP Tools C02: Praxisvergleich OLAP Tools Ein Seminar der DWH academy Seminar C02 - Praxisvergleich OLAP Tools Das Seminar "Praxisvergleich OLAP-Tools" bietet den Teilnehmern eine neutrale Einführung in die Technologien

Mehr

Survival Guide für Ihr Business Intelligence-Projekt

Survival Guide für Ihr Business Intelligence-Projekt Survival Guide für Ihr Business Intelligence-Projekt Sven Bosinger Solution Architect BI Survival Guide für Ihr BI-Projekt 1 Agenda Was ist Business Intelligence? Leistungsumfang Prozesse Erfolgsfaktoren

Mehr

Von der spezialisierten Eigenentwicklung zum universellen Analysetool. Das Controlling-Informationssystem der WestLB Systems

Von der spezialisierten Eigenentwicklung zum universellen Analysetool. Das Controlling-Informationssystem der WestLB Systems Von der spezialisierten Eigenentwicklung zum universellen Analysetool Das Controlling-Informationssystem der WestLB Systems Begriffe und Definitionen Data Warehouse - Datensammlung oder Konzept?! Data

Mehr

Marketing Intelligence Vorstellung der Softwarekomponenten. Josef Kolbitsch Manuela Reinisch

Marketing Intelligence Vorstellung der Softwarekomponenten. Josef Kolbitsch Manuela Reinisch Marketing Intelligence Vorstellung der Softwarekomponenten Josef Kolbitsch Manuela Reinisch Übersicht Übersicht über die Systemlandschaft Übersicht über die Werkzeuge Workshop Systemlandschaft 1/8 Klassische

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

Objektorientierte Datenbanken

Objektorientierte Datenbanken OODB 11 Slide 1 Objektorientierte Datenbanken Vorlesung 11 vom 01.07.2004 Dr. Sebastian Iwanowski FH Wedel OODB 11 Slide 2 Inhalt heute: Datenbanken in betriebswirtschaftlichen Anwendungen OTLP (SAP) Data

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

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

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

Data Mining-Projekte

Data Mining-Projekte Data Mining-Projekte Data Mining-Projekte Data Mining stellt normalerweise kein ei nmaliges Projekt dar, welches Erkenntnisse liefert, die dann nur einmal verwendet werden, sondern es soll gewöhnlich ein

Mehr

Business Intelligence

Business Intelligence Business Intelligence Anwendungssysteme (BIAS) Lösung Aufgabe 1 Übung WS 2012/13 Business Intelligence Erläutern Sie den Begriff Business Intelligence. Gehen Sie bei der Definition von Business Intelligence

Mehr

Datenbankmodelle 1. Das Entity-Relationship-Modell

Datenbankmodelle 1. Das Entity-Relationship-Modell Datenbankmodelle 1 Das Entity-Relationship-Modell Datenbankmodelle ER-Modell hierarchisches Modell Netzwerkmodell relationales Modell objektorientierte Modelle ER Modell - 2 Was kann modelliert werden?

Mehr

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL XAMPP-Systeme Teil 3: My SQL Daten Eine Wesenseigenschaft von Menschen ist es, Informationen, in welcher Form sie auch immer auftreten, zu ordnen, zu klassifizieren und in strukturierter Form abzulegen.

Mehr

Marketing Intelligence Schwierigkeiten bei der Umsetzung. Josef Kolbitsch Manuela Reinisch

Marketing Intelligence Schwierigkeiten bei der Umsetzung. Josef Kolbitsch Manuela Reinisch Marketing Intelligence Schwierigkeiten bei der Umsetzung Josef Kolbitsch Manuela Reinisch Übersicht Schwierigkeiten bei der Umsetzung eines BI-Systems Schwierigkeiten der Umsetzung 1/13 Strategische Ziele

Mehr