Datenbanksysteme 2009

Ähnliche Dokumente
Kapitel 17: Date Warehouse

Betriebliche Anwendungen

Data Warehousing. Beispiel: : Amazon. Aufbau eines DWH OLAP <-> OLTP Datacube. FU-Berlin, DBS I 2006, Hinze / Scholz

Betriebliche Anwendungen

Data Warehouses und Moderne Betriebliche Anwendungen von Datenbanksystemen

OLTP: Online Transaction Processing

Data Warehouses und Data Mining

Data Warehouse. Kapitel 17. Abbildung 17.1: Zusammenspiel zwischen OLTP und OLAP. Man unterscheidet zwei Arten von Datenbankanwendungen:

Data Warehousing. Fragen des Marketingleiters. Beispiel: : Amazon. Technisch... Amazon weltweit... Datenbank. Aufbau eines DWH OLAP <-> OLTP Datacube

Betriebliche Anwendungen

Data Warehouse. Kapitel 17. Abbildung 17.1: Zusammenspiel zwischen OLTP und OLAP. Man unterscheidet zwei Arten von Datenbankanwendungen:

Betriebliche Anwendungen

Data Warehouse. Kapitel 16. Abbildung 16.1: Zusammenspiel zwischen OLTP und OLAP. Man unterscheidet zwei Arten von Datenbankanwendungen:

5 Data Warehouses und Data Mining

Moderne Betriebliche Anwendungen von Datenbanksystemen

Datenbanken Unit 9: OLAP, OLTP und objektrelationale Datenbanken

Datenbanksysteme 2 Frühjahr-/Sommersemester Mai 2014

8.1 Überblick. 8 Data Warehousing. klassischen Datenbankanwendungen werden Datenbanken im wesentlichen zur Abwicklung des (

Operative vs. Informationelle Systeme. Informationelle Systeme. Informationelle Systeme. Moderne Betriebliche Anwendungen von Datenbanksystemen

Vorlesung Wissensentdeckung in Datenbanken

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann

Data Warehousing Kapitel 3: Mehrdimensionale Datenmodellierung

Anfragen an multidimensionale Daten

Data Warehousing. Weitere Buzzwörter: OLAP, Decision Support, Data Mining

6.6 Vorlesung: Von OLAP zu Mining

Datenbanken Unit 10: Ranking und Data Mining Erstellen und Ändern von Datenbanken

5. Übungsblatt. Für die Übung am Donnerstag, 27. N ovember 2008 von 15:30 bis 17:00 Uhr in 13/222.

Unterstützung der Unternehmenssteuerung durch Data Warehouses mit ganzheitlicher Sicht auf Daten aus operativen Systemen

Data Cubes PG Wissensmangement Seminarphase

Kap. 6 Data Warehouse

3.17 Zugriffskontrolle

Datenbanksysteme 2013

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

Mining über RDBMSe. von. Christian Widmer. Wie gut lässt sich Mining mit SQL realisieren?

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

Themenblock: Erstellung eines Cube

SQL - Datenbankdesign - Aufbau

Datenbanken Grundlagen und Design

Kapitel 7 Grundlagen von Data

Oracle 10g Einführung

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

Datenbank Grundlagen. Performanceuntersuchungen

Fortgeschrittene Computerintensive Methoden: Assoziationsregeln Steffen Unkel Manuel Eugster, Bettina Grün, Friedrich Leisch, Matthias Schmid

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

SQL structured query language

Vertrautmachen mit Daten

Kapitel 6 Einführung in Data Warehouses

23. Daten-Analyse. Datenwarenhäuser. Grundlagen des OLAP (On-Line Analytical Processing)

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

Vorlesung Wissensentdeckung in Datenbanken

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten

Die Anweisung create table

OLAP und Data Warehouses

Data Warehousing. und Operationen. Dr. Andreas Thor Wintersemester 2009/10. Universität Leipzig Institut für Informatik.

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1)

Lösungen der Übungsaufgaben von Kapitel 10

Datenbanken zur Entscheidungsunterstützung - Data Warehousing. Prof. Dr. T. Kudraß 1

6. Sichten, Integrität und Zugriffskontrolle. Vorlesung "Informa=onssysteme" Sommersemester 2015

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

Datenabstraktion / Kapselung in (O)RDBMS

Kapitel 8: Data Warehouse 1

1. Data Warehouses - Einführung

Verbunde (Joins) und mengentheoretische Operationen in SQL

Datenmanagement I SoSe 2006 Aufgabenblatt 4

Verbunde (Joins) und mengentheoretische Operationen in SQL

Garten - Daten Bank. - survival pack -

Wiederholung VU Datenmodellierung

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

DBS5 Kap. 4. Data Mining

Übersicht der wichtigsten MySQL-Befehle

1. Data Warehouses - Einführung

Rückblick. SQL bietet viele Möglichkeiten zur Anfrageformulierung

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

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski.

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

Anwendungsentwicklung Datenbanken SQL. Stefan Goebel

Konzeptbeschreibung Ziel: Methode: Vorgehen: Entfernen von Attributen Verallgemeinerung von Attributen Relevanzanalyse der restlichen Attribute

Modul Datenbanksysteme 2 Prüfung skizzenhaft SS Aug Name: Note:

SQL Fortsetzung: Joins, Subselects, Aggregatfunktionen, Derived Tables, Views

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

Relationentheorie grundlegende Elemente

Oracle: Abstrakte Datentypen:

Objektrelationale und erweiterbare Datenbanksysteme

Seminar Business Intelligence Teil II. Data Mining & Knowledge Discovery

Unterabfragen (Subqueries)

Wissensentdeckung in Datenbanken

Themenblock: Data Warehousing (I)

Inhalt. 4.1 Motivation. 4.2 Datenintegration. 4.3 Konzeptuelle Modellierung. 4.4 Anfragen an Data Warehouses. 4.5 Implementierungsaspekte

Abbildung 1: Das ERM. Nun zu den Tabellen: Zunächst wird aus jeder Entity eine Tabelle, d.h. wir erhalten:

DBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt

Abfragen (Queries, Subqueries)

Vorwort zur 5. Auflage Über den Autor... 16

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language)

Fortgeschrittene OLAP Analysemodelle

Datenbanken (Übung 12)

Übung zur Einführung in die Wirtschaftsinformatik Cognos Powerplay als Beispiel für ein DSS

7. XML-Datenbanksysteme und SQL/XML

Garten -Daten Bank. Was ist das? Dr. Karsten Tolle PRG2 SS 2013

Transkript:

Datenbanksysteme 2009 Kapitel 17: Data Warehouse Oliver Vornberger Institut für Informatik Universität Osnabrück 1

OLTP versus OLAP OLTP (Online Transaction Processing) z.b. Flugreservierung, Handelsunternehmen kleine, kurze Transaktionen jeweils auf jüngstem Zustand OLAP (Online Analytical Processing) z.b. Auslastung der Transatlantikflüge z.b. Umsatzrückgang im 3. Quartal große Datenmengen historische Daten Grundlage für Decision Support Systeme 2

Zusammenspiel OLTP/OLAP OLTP Operationale DB OLAP Operationale DB Operationale DB Periodisch auffrischen Decision Support Anfragen Data Mining Operationale DB 3

Sternschema Verkäufer Ärzte Produkte Kunden Krankheiten Patienten Verkäufe Behandlungen Filialen Zeit Krankenhäuser Zeit Handelsunternehmen Krankenkasse 4

Aus prä gung Verkäufe VerkDatum Filiale Produkt Anzahl Kunde Verkäufer 30-Jul-96 Passau 1347 1 4711 825 Filialen Filialenkennung Land Bezirk Passau D Bayern Kunden KundenNr Name wiealt 4711 Kemper 38 Verkäufer VerkäuferNr Name Fachgebiet Manager wiealt 825 Handyman Elektronik 119 23 Zeit Datum Tag Monat Jahr Quartal KW Wochentag Saison 30-Jul-96 23-Dec-97 30 27 Juli Dezember 1996 1997 3 4 31 52 Dienstag Dienstag Hochsommer Weihnachten Produkte ProduktNr Produkttyp Produktgruppe Produkthauptgruppe Hersteller 1347 Handy Mobiltelekom Telekom Siemens 5

Star Join Welche Handys (d.h. von welchen Herstellern) haben junge Kunden in den bayrischen Filialen zu Weihnachten 1996 gekauft? select p.hersteller, sum(v.anzahl) as Anzahl from Verkäufe v, Filialen f, Produkte p, Zeit z, Kunden k where z.saison = 'Weihnachten' and z.jahr = 1996 and k.wiealt < 30 and p.produkttyp = 'Handy' and f.bezirk = 'Bayern' and v.verkdatum = z.datum and v.produkt = p.produktnr and v.filiale = f.filialenkennung and v.kunde = k.kundennr group by Hersteller; 6

Verdichtungsgrad Drill down: mehr Attribute in group-by-klausel geringere Verdichtung Roll up: weniger Attribute in group-by-klausel stärkere Verdichtung 7

Handyverkäufe nach Herstellern select p.hersteller, sum(v.anzahl) as Anzahl from Verkäufe v, Produkte p where v.produkt = p.produktnr and p.produkttyp = 'Handy' group by p.hersteller; 8

Drill down längs Zeitachse select p.hersteller, z.jahr, sum(v.anzahl) as Anzahl from Verkäufe v, Produkte p where v.produkt = p.produktnr and p.produkttyp = 'Handy' group by p.hersteller, z.jahr; 9

Roll up längs Hersteller select from where and group by z.jahr, sum(v.anzahl) as Anzahl Verkäufe v, Produkte p v.produkt = p.produktnr p.produkttyp = 'Handy' z.jahr; 10

Analyse nach Dimensionen Handyverkäufe nach Hersteller und Jahr Hersteller Jahr Anzahl Siemens 1994 2.000 Siemens 1995 3.000 Siemens 1996 3.500 Motorola 1994 1.000 Motorola 1995 1.000 Motorola 1996 1.500 Bosch 1994 500 Bosch 1995 1.000 Bosch 1996 1.500 Nokia 1994 1.000 Nokia 1995 1.500 Nokia 1996 2.000 Handyverkäufe nach Jahr Jahr Anzahl 1994 4.500 1995 6.500 1996 8.500 Handyverkäufe nach Hersteller Hersteller Anzahl Siemens 8.500 Motorola 3.500 Bosch 3.000 Nokia 4.500 Drilldown längs Jahr Roll-Up längs Hersteller / Jahr 11

Ultimative Verdichtung select from where and sum(v.anzahl) as Anzahl Verkäufe v, Produkte p v.produkt = p.produktnr p.produkttyp = 'Handy' Handyverkäufe Anzahl 19.500 12

Materialisierung gewünscht: Handy-Verkäufe nach Jahr und Hersteller Hersteller \ Jahr 1994 1995 1996 Σ Siemens 2.000 3.000 3.500 8.500 Motorola 1.000 1.000 1.500 3.500 Bosch 500 1.000 1.500 3.000 Nokia 1.000 1.500 2.000 4.500 Σ 4.500 6.500 8.500 19.500 13

Handy2Cube Wunsch: verschieden aggregierte Teilergebnise vorberechnen: create table Handy2DCube( Hersteller varchar(20), Jahr integer, Anzahl integer ); 14

Berechnung Hersteller + Jahr insert into Handy2DCube (select p.hersteller, z.jahr, sum(v.anzahl) from Verkäufe v, Produkte p, Zeit z where v.produkt = p.produktnr and p.produkttyp = 'Handy' and v.verkdatum = z.datum group by z.jahr, p.hersteller) union (select null, z.jahr, sum(v.anzahl) from Verkäufe v, Produkte p, Zeit z where v.produkt = p.produktnr and p.produkttyp = 'Handy' and v.verkdatum = z.datum group by z.jahr) union (select p.hersteller, null, sum(v.anzahl) from Verkäufe v, Produkte p where v.produkt = p.produktnr and p.produkttyp = 'Handy' group by p.hersteller) union (select null, null, sum(v.anzahl) from Verkäufe v, Produkte p where v.produkt = p.produktnr and p.produkttyp = 'Handy'); 15

Cube-Operator select p.hersteller, z.jahr, f.land, sum(anzahl) as Anzahl from Verkäufe v, Produkte p, Zeit z, Filialen f where v.produkt = p.produktnr and p.produkttpy = 'Handy' and v.verkdatum = z.datum and v.filiale = f.filialenkennung group by z.jahr, p.hersteller, f.land with cube; Erzeugt bei k Attributen in group-by-klausel 2 k Teilmengen (inkl. Null-Werte) und vereinigt sie. 16

Ergebnis des Cube Operators Handy3DCube Hersteller Jahr Land Anzahl Siemens 1994 D 800 Siemens 1994 A 600 Siemens 1994 CH 600 Siemens 1995 D 1.200 Siemens 1995 A 800 Siemens 1995 CH 1.000 Siemens 1996 D 1.400 Motorola 1994 D 400 Motorola 1994 A 300 Motorola 1994 CH 300 Bosch null 1994 D null 1995 D Siemens null null 8.500 null null null 19.500 17

MySQL: WITH ROLLUP select Hersteller, Jahr, sum(umsatz) as Umsatz from Handys group by Hersteller, Jahr with Rollup Aqua Data Studio 18

Data Mining Datenbestand durchsuchen nach (bisher unbekannten) Zusammenhängen (Knowledge Discovery) Klassifikation von Objekten: z.b. Risikoabschätzung bei Versicherungspolicen männlich + alt + Coupé hohes Risiko Assoziationsregeln: z.b. Analyse des Kaufverhaltens "Wer PC kauft, kauft auch Drucker" 19

20 Beispiel für Klassifikation gering Van m 40 hoch Coupé m 40 Gering Van m 24 gering Coupé w 38 hoch Coupé m 19 gering Van w 22 gering Coupé w 18 gering Van w 45 Schaden Autotyp Ge sch lecht Alter Geschlecht Alter Autotyp Geringes Risiko hohes Risiko Geringes Risiko hohes Risiko männlich weiblich Coupé Van > 35 <=35

Beispiel für Assoziationsregeln Suche in Warenkörben nach gängigen Kombinationen. Leite daraus Schlussfolgerungen ab 21

Frequent Itemset in k Einkäufen TransID 111 111 111 111 222 222 333 333 333 444 444 555 555 555 555 555 Produkt Drucker Papier PC Toner PC Scanner Drucker Papier Toner Drucker PC Drucker Papier PC Scanner Toner Frequent Itemset-Kandidat {Drucker} {Papier} {PC} {Scanner} {Toner} {Drucker, Papier} {Drucker, PC} {Drucker, Scanner} {Drucker, Toner} {Papier, PC} {Papier, Scanner} {Papier, Toner} {PC, Scanner} {PC, Toner} {Scanner, Toner} {Drucker, Papier, PC} {Drucker, Papier, Toner} {Drucker, PC, Toner} {Papier, PC, Toner} Anzahl 4 3 4 2 3 3 3 3 2 3 2 3 22

Berechnung der Confidence Sei F ein frequent itemset support(f) := Anzahl des Vorkommens / Gesamtzahl Betrachte alle disjunkten Zerlegungen in L und R Die Regel L R hat confidence (L R) = support(f) / support(l) Beispiel: {Drucker} {Papier, Toner} confidence = support({drucker, Papier, Toner}) support({drucker}) 3/5 = = 0.75 4/5 75 % der Kunden, die einen Drucker gekauft haben, haben auch Papier und Toner gekauft 23