Anfragen an multidimensonale daten
Download
1 / 46

Anfragen an multidimensonale Daten - PowerPoint PPT Presentation


  • 72 Views
  • Uploaded on

Anfragen an multidimensonale Daten. Alexander Heidrich - BID8 09.06.2005. Inhaltsübersicht. Motivation OLAP-Operationen Umsetzung in Standards SQL MDX Anfragetypen und -verarbeitung Fragen? / Diskussion!. Motivation.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Anfragen an multidimensonale Daten' - berget


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Anfragen an multidimensonale daten

Anfragen an multidimensonale Daten

Alexander Heidrich - BID8

09.06.2005


Inhalts bersicht
Inhaltsübersicht

  • Motivation

  • OLAP-Operationen

  • Umsetzung in Standards

    • SQL

    • MDX

  • Anfragetypen und -verarbeitung

  • Fragen? / Diskussion!

Anfragen an multidimensionale Daten


Motivation
Motivation

  • Daten sind im Data Warehouse  Wie kommt man nun an seine Informationen?

  • Theoretische Grundlagen

  • Welche Erweiterungen der vorhandenen (Datenbank-)mittel gibt es? Wie werden sie benutzt?

Anfragen an multidimensionale Daten


Inhalts bersicht1
Inhaltsübersicht

  • Motivation

  • OLAP-Operationen

  • Umsetzung in Standards

    • SQL

    • MDX

  • Anfragetypen und -verarbeitung

  • Fragen? / Diskussion!

Anfragen an multidimensionale Daten


Olap operationen
OLAP-Operationen

  • Online Analytic Processing

  • Werkzeuge und Technologien, mit denen ein zugrundeliegendes DW benutzerfreundlich analysiert und abgefragt werden kann

  • eingesetzt zur Unterstützung von Managemententscheidungen (decision support)

Anfragen an multidimensionale Daten


Olap operationen ausgangssituation
OLAP-Operationen: Ausgangssituation

Anfragen an multidimensionale Daten


Olap operationen1
OLAP-Operationen

  • Roll-Up – Wechsel auf eine übergeordnete Betrachtungsebene

  • Drill-Down – Wechsel auf eine untergeordnete Betrachtungsbene

Anfragen an multidimensionale Daten


Olap operationen2
OLAP-Operationen

  • Drill-Across – Wechseln des betrachteten Fakts unter Beibehaltung der Betrachtungsebene

Anfragen an multidimensionale Daten


Olap operationen3
OLAP-Operationen

  • Slice – Zugriff auf Daten einer extrahierten Schicht

Anfragen an multidimensionale Daten


Olap operationen4
OLAP-Operationen

  • Dice – Zugriff auf Teilwürfel

Anfragen an multidimensionale Daten


Olap operationen5
OLAP-Operationen

  • Pivotierung – Drehen des Würfels durch Vertauschen der Dimensionen

Anfragen an multidimensionale Daten


Inhalts bersicht2
Inhaltsübersicht

  • Motivation

  • OLAP-Operationen

  • Umsetzung in Standards

    • SQL

    • MDX

  • Anfragetypen und -verarbeitung

  • Fragen? / Diskussion!

Anfragen an multidimensionale Daten


Umsetzung in standards sql
Umsetzung in Standards - SQL

  • SQL-OLAP-Erweiterungen (seit SQL:1999)

    • (erweiterte) Gruppierungsfunktionalität

      • GROUP BY

      • GROUPINGSETS

      • GROUPING()

      • ROLLUP

      • CUBE

    • SQL-OLAP-Funktionen

      • Aggregate, Partitioning, Windows, Ranking

  • IBM und Oracle an Standardisierung beteiligt  integriert in DB2 und Oracle (DBMS)

Anfragen an multidimensionale Daten


Sql beispieldaten
SQL: Beispieldaten

Anfragen an multidimensionale Daten


Sql aggregate
SQL: Aggregate

  • Aggregatfunktionen COUNT(), SUM(), MIN(), MAX(), AVG()

  • Funktionen liefern in dieser Anwendung nur einen einzelnen Wert

  • Verwendung von GROUP BY

Anfragen an multidimensionale Daten


Sql group by beispiel
SQL: GROUP BY – Beispiel

Anfragen an multidimensionale Daten


Sql grouping sets
SQL: GROUPING SETS

  • GROUP BY immer noch umständlich bei der Erzeugung von verschiedenen Gruppierungen (z.B. (Jahr, Land), (Jahr), (Jahr, Land, Verkäufe), etc.)

  • Lösung: GROUPING SETS  Gruppierungskombinationen

Anfragen an multidimensionale Daten


Sql grouping sets beispiel
SQL: GROUPING SETS – Beispiel

Anfragen an multidimensionale Daten


Sql rollup operator
SQL: ROLLUP-Operator

  • Erweiterung der GROUP-BY-Syntax um ROLLUP-Operator

  • erzeugt hierarchisch multidimensionale Gruppierung

  • GROUPING()-Funktion zur Indentifizierung von NULL-Werten

Anfragen an multidimensionale Daten


Sql cube operator
SQL: CUBE-Operator

  • Vorschlag von Microsoft und IBM

  • Erweiterung der GROUP-BY-Syntax um den CUBE-Operator

  • N-Dimensionale Generalisierung der einfachen Aggregatfunktionen

Anfragen an multidimensionale Daten


Anfragen an multidimensonale daten

CUBE

entsprechend GROUPING SETS( (),(Jahr),(Land),(Kategorie),

(Jahr,Land),(Jahr, Kategorie),(Land,Kategorie),

(Jahr,Land, Kategorie))

Anfragen an multidimensionale Daten


Sql cube
SQL: Cube

Anfragen an multidimensionale Daten


Sql olap funktionen
SQL: OLAP-Funktionen

  • mit SQL:1999 eingeführt

  • umfassen:

    • Aggregate

    • Partionierung

    • Window (Bildung dynamischer Fenster)

    • Ranking

  • Kernkonstrukt: Over-Klausel

Anfragen an multidimensionale Daten


Sql over klausel
SQL: Over-Klausel

Anfragen an multidimensionale Daten


Sql over beispiel
SQL: Over() – Beispiel

  • Over()  Aggregation über alle Tupel

  • Aggregatbildung, keine weitere Verdichtung

Anfragen an multidimensionale Daten


Sql over mit partionierung beispiel

Partitionierung ähnlich Gruppierung

SQL: Over() mit Partionierung - Beispiel

PARTITON BY <attribute list>

Anfragen an multidimensionale Daten


Sql over bildung dynamischer fenster
SQL: Over() Bildung dynamischer Fenster

OVER(ORDER BY <attribute list> [<window-spec>])

Anfragen an multidimensionale Daten


Sql over bildung dynamischer fenster beispiel
SQL: Over() Bildung dynamischer Fenster - Beispiel

Anfragen an multidimensionale Daten


Sql ranking
SQL: Ranking

  • Bestimmung der Postion eines Tupels in der Ergebnismenge

  • Duplikate erhalten den gleichen Rang

  • RANK() (mit Lücken) DENSE_RANK() (ohne Lücken)

Anfragen an multidimensionale Daten


Sql ranking beispiel
SQL: Ranking - Beispiel

Anfragen an multidimensionale Daten


Sql umsetzung in db2 und oracle
SQL: Umsetzung in DB2 und Oracle

  • Behauptung: DB2 und Oracle hinsichtlich den in SQL:1999 definierten OLAP-Erweiterungen/-funktionen gleich

  • SQL:2003 bringt weitere analytische Funktionen  bislang nur von/in Oracle implementiert

Anfragen an multidimensionale Daten


Anfragen an multidimensonale daten
MDX

  • MDX = MultiDimensional eXpressions

  • orientiert sich stark an SQL-Syntax und MDDM

  • Entwicklung/Vorschlag von Microsoft

Anfragen an multidimensionale Daten


Anfragen an multidimensonale daten
MDX

  • Dimensions (Select)

    • max. 64

    • on COLUMNS, ROWS, …

  • Cube (From)

  • Slicer (Where)

    • Auswahl der darzustellenden Werte

Anfragen an multidimensionale Daten


Mdx elemente
MDX: Elemente

  • Measures  Fakten

    • als Dimension modelliert

  • Dimensions  Dimensionen

    • Level: Klassifikationsstufe (Jahr)

    • Member: Klassifikationsknoten (2003)

  • Syntax

    • {} Sets

    • [] Einschluß von Strings

Anfragen an multidimensionale Daten


Mdx navigationsfunktionen
MDX: Navigationsfunktionen

  • Navigationsfunktionen

    • Members: Knoten einer Klassifikationsstufe

    • Children: Kinderknoten eines Klassifikationsknotens

    • Parent: Elternknoten eines Klassifikationsknotens

      SELECT {[Kategorie].MEMBERS}  Autos, Computer

      SELECT {[ATHLONXP].PARENT}  CPU

      SELECT {[CPU].CHILDREN}  ATHLON64, ATHLONXP, PENTIUM4

Anfragen an multidimensionale Daten


Mdx beispiele
MDX: Beispiele

  • Drill-Down

  • Roll-Up

  • Crossjoin

Anfragen an multidimensionale Daten


Mdx beispiel
MDX: Beispiel

CROSSJOIN

Drill-Down

Roll-Up

Anfragen an multidimensionale Daten


Mdx weitere funktionen
MDX: weitere Funktionen

  • TOPCOUNT  Ergebnisbereich einer Dimension einschränken

  • FILTER  Einschränkung über beliebige Bedingungen

  • + viele weitere Funktionen  sehr mächtige Sprache mit hoher Komplexität

Anfragen an multidimensionale Daten


Inhalts bersicht3
Inhaltsübersicht

  • Motivation

  • OLAP-Operationen

  • Umsetzung in Standards

    • SQL

    • MDX

  • Anfragetypen und -verarbeitung

  • Fragen? / Diskussion!

Anfragen an multidimensionale Daten


Anfragetypen
Anfragetypen

Anfragen an multidimensionale Daten


Methoden der abfrageverarbeitung star join
Methoden der Abfrageverarbeitung – Star Join

  • Star Schema als Grundlage

    • sehr große Faktentabelle

    • kleine, voneinander unabhängige Dimensionstabellen

  • Verbund zwischen n Dimensionstabellen und der Faktentabelle, Restriktionen über Dimensionstabellen

  • typisches Muster für DW-Anfragen

Anfragen an multidimensionale Daten


Star join aufbau
Star Join: Aufbau

  • SELECT-Klausel

    • Kenngrößen

    • Granularitäten

  • FROM-Klausel

    • Fakten- und Dimensionstabellen

  • WHERE-Klausel

    • Verbundbedingungen

    • Restriktionen

Anfragen an multidimensionale Daten


Star join beispiel
Star Join: Beispiel

SELECT

Geographie.Region, Zeit.Monat, SUM(Verkaeufe)

FROM

Verkauf, Zeit, Produkte, Geographie

WHERE

Verkauf.Produkt_ID = Produkt.ProduktID AND

Verkauf.Zeit_ID = Zeit.ZeitID AND

Verkauf.Geographie_ID = Geographie.GeographieID AND

Produkt.Produktkategorie = 'Waschgeräte' AND

Geographie.Land = 'Deutschland' AND Zeit.Jahr = 2000

Anfragen an multidimensionale Daten


Star join beispiel1
Star Join: Beispiel

Anfragen an multidimensionale Daten


Inhalts bersicht4
Inhaltsübersicht

  • Motivation

  • OLAP-Operationen

  • Umsetzung in Standards

    • SQL

    • MDX

  • Anfragetypen und -verarbeitung

  • Fragen? / Diskussion!

Anfragen an multidimensionale Daten