OLAP. © T. Kudraß, HTWK Leipzig Warum? Daten einer Firma verfügbar machen für Entscheidungsprozesse – Umsetzung schwierig neue Konzepte notwendig zur.

Slides:



Advertisements
Ähnliche Präsentationen
ER-Datenmodell und Abfragen in SQL
Advertisements

Heterogene Informationssysteme
XSQL - Beispiel. © Prof. T. Kudraß, HTWK Leipzig Nested Cursor erzeugen in SQL-Anfragen die XML-typische Baumstruktur (anstelle von Tabellen) Beispiel:
Data Cubes PG Wissensmangement Seminarphase Hanna Köpcke Lehrstuhl für Künstliche Intelligenz Universität Dortmund.
Datenbanken Einführung.
Folien 2-5, 7-8 © Prof. Dr. Manfred Rössle (FH Aalen)
Objekt – Relationales – Modell Tomasz Makowski IN
Prof. Dr. Hans-Jürgen Scheruhn
Moderne Betriebliche Anwendungen von Datenbanksystemen
Systemüberblick Beispiele: Microsoft Access Oracle Ingres Informix
Datenbanken I (0,*) Produkt 3 Karczewski Datenbanken I.
Java: Objektorientierte Programmierung
Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/7 Datenbanken werden als Anhäufung von Werten eines Wertebereiches aufgefasst und Datenbankabfragen.
Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/9 Data Mining Ist die Wissensgewinnung aus Datensammlungen (Knowledge Discovery in Database).
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
Oracle PL/SQL Server Pages (PSP). © Prof. T. Kudraß, HTWK Leipzig Grundidee: PSP – Internet-Seiten mit dynamischer Präsentation von Inhalten durch Einsatz.
Data Warehousing Oberseminarvortrag zum Thema: von Daniel Schulte
Management-Informationssysteme (MIS) Data Warehouses.
SQL/XML. © Prof. T. Kudraß, HTWK Leipzig 2 2 Motivation Speicherung von XML in allen großen kommerziellen DBMS vorhanden proprietäre Lösungen für die.
Prof. Dr. T. Kudraß1 Datenbanken zur Entscheidungsunterstützung - Data Warehousing.
Text-Retrieval mit Oracle Vortrag von Andreas Mück & David Diestel.
Otto-von-Guericke-Universität MagdeburgGamal Kassem Übung 7 Reports mit Datenbankzugriff.
Übung Datenbanksysteme SQL-Anfragen (2)
Datenbanken Einführung Merkmale dateiorientierte Datenverwaltung
Einführung Dateisystem <-> Datenbanksystem
Beispielrelation Buchbestellungen H = Menge der bedeutenden Ziele = {a, d} Schwelle T = 4 Stichprobe S = {a, b, a, a, a, a} mit s = |S| = 6 N = Anzahl.
SQL in Visual FoxPro. © 1999 TMN-Systemberatung GmbH SQL Historie n SQL - Structured Query Language n In den 70er Jahren von IBM entwickelt n 1986 zum.
SQL - Ausführungspläne Matthias Jauernig (03INB), Michael Lahl (03IND)
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
SQL PHP und MySQL Referat von Katharina Stracke und Carina Berning
Business Intelligence
© DVS System Software GmbH & Co. KG
Data Warehouse mit Visual FoxPro
Sistema GeoDAT, S.L. GeoBIS, GeoEIS, GIS-Komponente … 2005.
© Sistema GeoDAT, S.L. Business Intelligence... Verkauf, Einkauf, Finanzen … Steuerung, Planung und Simulation von Vertriebsgebieten. Controlling Finanzcontrolling,
EXCEL PROFESSIONAL KURS
Eine Einführung in OLAP (Online Analytical Processing)
Erstellen einer Webseitenstatistik mithilfe eines OLAP-Servers
Erstellen einer Webseitenstatistik mithilfe eines OLAP-Servers
Betrieb von Datenbanken Marco Skulschus & Marcus Wiederstein Datenmanipulation Lehrbuch, Kapitel 4.
Problemstellung Heterogene DV-Strukturen Mangelnde Kapazität in der EDV-Abteilung Historische Daten nicht verfügbar Analysen belasten die vorhandene Infrastruktur.
Data und Web Mining KFK Semantic Web: Knowledge Management
Überblick über die Datenbankproblematik
WS 2011/12 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #9 Physische Datenorganisation.
WS 2007/08 Datenbanksysteme Mi 17:00 – 18:30 R Vorlesung #5 SQL (Teil 2)
Datenbanksysteme für hörer anderer Fachrichtungen
Speichern und Lesen von Daten im Data Warehouse
Einführung in Datenbankmodellierung und SQL
WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R Vorlesung #5 SQL (Teil 2)
Vorlesung #10 Physische Datenorganisation
00:13 Matthias Ansorg FH Gießen-Friedberg1 / 24 Multidimensionale Datenstrukturen - semantische und logische Modellierung Teilvortrag: logische Modellierung.
Betriebliche Anwendung von Datenbanksystemen: Data Warehouse
XML und Datenbanken © 2006 Markus Röder
SQL - Structured Query Language AIFB SS (1/9) Join-Operationen in SQL-92(1/9) Syntax einer Join-Operation: join-op := CROSS JOIN | [NATURAL]
Verdichten von Daten mit Gruppenfunktionen
Structured Query Language
Einführung Dateisystem <-> Datenbanksystem
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 Vorlesung #10 RDBMS Erweiterungen.
WS 2014/15 Datenbanksysteme D0 15:15 – 16:45 R Vorlesung #6 SQL (Teil 3)
Datenbanken im Web 1.
Anfragen an multidimensonale Daten
Seminar Data Warehousing - SS 2005
Datenbank für Skriptenverkauf
Multidimensionale Datenbanken
Nachtrag Abgrenzung OLAP / OLTP
Data Warehousing für TPC-D Daten
Indexierung Oracle: indexes Indexierung.
Methoden der Datengewinnung
(Structured Query Language)
 Präsentation transkript:

OLAP

© T. Kudraß, HTWK Leipzig Warum? Daten einer Firma verfügbar machen für Entscheidungsprozesse – Umsetzung schwierig neue Konzepte notwendig zur analytischen Informationsverarbeitung – OLAP – Data Warehousing – Data Mining

© T. Kudraß, HTWK Leipzig OLAP Einleitung DSS: Decision Support System

© T. Kudraß, HTWK Leipzig Einführungsbeispiel Umsatz pro Zeit und Produkt

© T. Kudraß, HTWK Leipzig Einführungsbeispiel Umsatz pro Zeit, Produkt und Region

© T. Kudraß, HTWK Leipzig Einführungsbeispiel

© T. Kudraß, HTWK Leipzig OLAP OLAP erleichtert die Analyse von Kennzahlen unter verschiedenen Gesichtspunkten (Dimensionen) – z.B. Produktmanager, Bereichsleiterin – Kennzahlen – graphische Darstellung (Diagramme) Dynamische, multidimensionale Geschäftsanalyse mit Simulationskomponente

© T. Kudraß, HTWK Leipzig Was ist OLAP? OLAP ist ein Überbegriff für Technologien, Methoden und Tools zur Ad-hoc-Analyse multidimensionaler Informationen... bietet verschiedene Sichtweisen... eine Komponente der entscheidungsorientierten Informationsverarbeitung

© T. Kudraß, HTWK Leipzig Analyse-Datenmodelle kategorisches (beschreibendes) Modell – statisches Analysemodell zur Beschreibung des gegenwärtigen Zustands – Vergleich von historischen mit aktuellen Daten exegetisches (erklärendes) Modell – zur Erklärung der Ursachen für Zustand durch Nach- vollziehen der Schritte, die ihn hervorgebracht haben (durch einfache Anfragen) kontemplatives (bedenkendes) Modell – Simulation von What IfSzenarios für vorgegebene Werte oder Abweichungen innerhalb einer Dimension oder über mehrere Dimensionen hinweg formelbasiertes Modell – gibt Lösungswege vor: ermittelt für vorgegebene Anfangs- und Endzustände, welche Veränderung für welche Kenngröße bzgl. welcher Kenngröße für ange- strebtes Ergebnis notwendig Komplexität

OLAP Charakteristika

© T. Kudraß, HTWK Leipzig OLAP Charakteristika* Multidimensionale konzeptionelle Sichten funktionale Transparenz unbeschränkter Zugriff auf operative und/oder externe Datenquellen konsistente Berichtsgenerierung Client-/Server Architektur gleichgestellte Dimensionen dynamische Behandlung dünn besetzter Datenwürfel mehrere Anwender unbeschränkte, dimensionsübergreifende Operationen Evaluierungsregeln nach E. F. Codd

© T. Kudraß, HTWK Leipzig OLAP Charakteristika - FASMI FASMI = Fast Analysis of Shared Multidimensional Information Fast: 1-2 Sekunden als Antwortzeit bei einfachen Anfragen bis maximal 20 Sekunden für komplexe Datenanalysen Analysis: Verfahren und Techniken zu einfachen mathematischen Berechnungen und Strukturuntersuchungen Shared: Schutzmechanismen für den Zugriff im Mehrbenutzerbetrieb Multidimensional: Multidimensionale konzeptionelle Sicht auf Informationsobjekte, d.h. freier Zugriff auf einen Datenwürfel und multiple Berichtshierarchien über die Dimensionen

© T. Kudraß, HTWK Leipzig OLAP Charakteristika Daten werden über Dimensionen beschrieben. Begriffe: Multidimensionalität, Hypercubes, Ausprägungen (Members), Zellen Zeit Regionen Produkte Jan FebMrzAprMaiJunJulAugSepOktNovDez CD DVD Fernseher Video Kühlschrank Sachsen-Anhalt Thüringen Sachsen

© T. Kudraß, HTWK Leipzig Dimensionen können Hierarchien haben. Produkte Zeit Sachsen-A. Sachsen Thüringen Lippenstift Deo Haarzeugs DVD CD JanFebMrzAprMai Jun JulAugSepOktNovDez Elektro Kosmetik Alle Produkte Alle Regionen Q1Q2Q3Q42000 Region OLAP Charakteristika

© T. Kudraß, HTWK Leipzig Zu Hierarchien Hierarchie – Hierarchische Aufteilung der Dimension DVD Kosmetik Lipp. DeoCD Elektro Produkte Haar... Dimension Produkte

Architekturkonzepte

© T. Kudraß, HTWK Leipzig OLAP Grobarchitektur

© T. Kudraß, HTWK Leipzig OLAP Architekturkonzepte ROLAP = Relational OLAP – bei Abbildung in Relationen: möglichst wenig Verlust von Semantik, die im multidimensionalen Modell enthalten – Effiziente Übersetzung und Abarbeitung von multidimensionalen Anfragen – Einfache Wartung (z.B. Laden neuer Daten) MOLAP = Multidimensional OLAP – direkte Speicherung multidimensionaler Daten in multidimensionalen DBMS HOLAP = Hybrid OLAP – Kombiniert Vorteile von relationaler und multidimensionaler Realisierung

© T. Kudraß, HTWK Leipzig Architekturkonzept ROLAP SQL zur Datentransformation Multidimensionale Datenmodelle werden in 2- dimensionalen Tabellen gespeichert Star-, Snowflake, Starflake-Schema Facts Dim1ID Dim2ID Dim3ID Dim4ID Dim1 Star-Schema Dim2 Dim3 Dim4 Beispiel

© T. Kudraß, HTWK Leipzig ROLAP - Star-Schema erstellen von Fakten- und Dimensionstabellen Faktentabelle mit Schlüsseln für Dimensionstabellen in Dimensionstabellen stehen relevante Daten Redundanz – Alternative wäre Snowflake-Schema – Dimensionsdaten relativ stabil

© T. Kudraß, HTWK Leipzig Architekturkonzept MOLAP Speicherung erfolgt in multidimensionalen Speicherarrays Multidimensionale Speicherstrukturen werden komplett übernommen Hypercube – Datenbestand in einem Würfel Multicube – kleinere Würfel

© T. Kudraß, HTWK Leipzig Architekturkonzepte Query and Calculation Engine OLAP- Fronten d MOLAP Multidimen- sionales OLAP Daten werden multidimensional gespeichert ROLAP Relationales OLAP Daten werden relational gespeichert HOLAP Hybrides OLAP Komplexe Anfragen können hohe Antwortzeiten verursachen Grosse Datenmengen verarbeitbar Schnelle Antwortzeiten auch auf komplexe Anfragen Verarbeitbare Datenmenge beschränkt

© T. Kudraß, HTWK Leipzig Unterschiede OLTP/OLAP Transaktionsorientierte Systeme Operative Systeme Auswertungsorientierte Systeme Weniger häufige, komplexe Anfragen Grosse Datenmengen je Anfrage Häufige, einfache Anfragen Kleine Datenmengen je Anfrage Schnelle Kalkulation wichtigSchneller Update wichtig Paralleles Ausführung von OLAP-Anfragen auf operationalen Datenbe- ständen könnte Leistungsfähigkeit der OLTP-Anwendungen beeinträchtigen Operieren auf aktuellen und historischen Daten Operieren hauptsächlich auf aktuellen Daten Datenbanksystem kann nicht gleichzeitig für OLTP- und für OLAP- Anwendungen optimiert werden OLTP (Online Transaction Processing) OLAP (Online Analytical Processing)

OLAP Funktionalität

© T. Kudraß, HTWK Leipzig OLAP Funktionen Die multidimensionalen Daten können am Bildschirm flexibel präsentiert werden. Drill- down Roll- up

© T. Kudraß, HTWK Leipzig OLAP Funktionalität Die multidimensionalen Daten können am Bildschirm flexibel präsentiert werden. Slice Kennzahlen Umsatz Gewinn Produkte Regionen Zeit Kennzahlen Umsatz Gewinn Produkte Regionen Zeit Eine beliebige Kombination von Dimensionen und Aus- prägungen kann angezeigt werden.

© T. Kudraß, HTWK Leipzig OLAP Funktionalität Die multidimensionalen Daten können am Bildschirm flexibel präsentiert werden. Dice Die Achsen können beliebig ausgetauscht werden.

© T. Kudraß, HTWK Leipzig OLAP Funktionalität Drill Down – erhöhen des Detaillierungsgrades Roll Up – invers zu Drill Down Pivot – betrachten aus unterschiedlichen Perspektiven – rotate Slice & Dice – ändern des Analyseblickwinkels

OLAP in SQL

© T. Kudraß, HTWK Leipzig Themen Materialized Views Merge von Tabellen SQL für Drill down und Roll up (ROLAP) CUBE-Operator

© T. Kudraß, HTWK Leipzig Tabellen für Beispiel (Star Schema)

© T. Kudraß, HTWK Leipzig OLAP Anfragebeispiel CREATE MATERIALIZED VIEW Region_Marke_Quartal AS SELECT O.Region, P.Marke, Z.Quartal, SUM(V.Anz) AS Anzahl FROM (((Verkaufszahl V JOIN Ort O ON (V.Filiale=O.Filiale)) JOIN Zeit Z ON (V.Tag=Z.Tag)) JOIN Produkt P ON (V.Produkt=P.Produkt)) GROUP BY O.Region, P.Marke, Z.Quartal; Erzeugen einer materialisierten Sicht: CREATE MATERIALIZE VIEW Verdichtung mittels GROUP BY Beispiel: Ermittle die quartalsweises Verkaufszahlen pro Pizza-Marke und Region Materialisierte Sichten vielbenutzte Aggregate (Analysen) materialisieren schnellerer Zugriff auf Daten Ablegen der Daten in eigene Relationen

© T. Kudraß, HTWK Leipzig OLAP-Anfragebeispiel SELECT O.Region, SUM(V.Anz) AS Anzahl FROM (((Verkaufszahl V JOIN Ort O ON (V.Filiale=O.Filiale)) JOIN Zeit Z ON (V.Tag=Z.Tag)) JOIN Produkt P ON (V.Produkt=P.Produkt)) GROUP BY O.Region Verdichtung erhöhen durch Entfernung von Attributen aus der GROUP BY-Klausel. Beispiel: Ermittle die Gesamt-Verkaufszahlen für alle Regionen weitere Verdichtungen möglich automatisches Umschreiben der Anfrage durch Datenbank-Optimierer (query rewrite): Verwenden der materialisierten Sicht zur weiteren Verdichtung

© T. Kudraß, HTWK Leipzig SQL-Erweiterungen zum Einfügen Kombination von Aktualisieren und Einfügen Beispiel: Liste neuer Produkte mit bestehender Tabelle Produkt mischen MERGE INTO Produkt P1 USING (SELECT ID, Name FROM Produkt_Neu) P2 ON (P1.ID = P2.ID) WHEN MATCHED THEN UPDATE SET P1.Name = P2.Name WHEN NOT MATCHED THEN INSERT (P1.ID, P1.Name) VALUES (P2.ID, P2.Name)

© T. Kudraß, HTWK Leipzig Komplexes Gruppieren Beispieldaten für Gruppierungsanfragen SELECTMonat, Produkt, SUM(Anz) AS Anz FROMOrt_Produkt_Monat_Verkauf GROUP BY Monat, Produkt;

© T. Kudraß, HTWK Leipzig Komplexes Gruppieren SELECT DECODE (GROUPING (Monat),1,Alle Monate, Monat) AS Monat, DECODE (GROUPING(Produkt),1,Alle Produkte, Produkt) AS Produkt, SUM(Anz) AS Anz FROMOrt_Produkt_Monat_Verkauf GROUP BY ROLLUP (Monat, Produkt); SELECT DECODE (GROUPING (Monat),1,Alle Monate, Monat) AS Monat, DECODE (GROUPING(Produkt),1,Alle Produkte, Produkt) AS Produkt, SUM(Anz) AS Anz FROMOrt_Produkt_Monat_Verkauf GROUP BY CUBE (Monat, Produkt);

© T. Kudraß, HTWK Leipzig Hinweise zum Beispiel ROLLUP – berücksichtigt auch Zwischen- und Endsummen – Funktion GROUPING liefert 1 bei Summe – DECODE kann Standard-Rückgabewert mit Text füllen DECODE vergleichbar mit bedingter Anweisung DECODE (ausdruck, if 1, then 1, if 2, then 2, …, else) – ohne GROUPING/DECODE erscheinen Nullwerte CUBE-Operator – GROUP BY CUBE (Spalte 1,Spalte 2,Spalte 3,…) – k Dimensionen: 2 k mögliche GROUP BY-Klauseln – bietet Ansatz zur Optimierung

© T. Kudraß, HTWK Leipzig Zukünftige Entwicklung Web OLAP mit Front End über Web Verknüpfung von OLAP mit anderen Werkzeugen (z.B. Reporting) Konzepte weiterentwickeln Anwendungen auf horizontalen oder vertikalen Markt zuschneiden (bestimmte Branche oder bestimmte Unternehmensfunktion)