Kapitel 9: Operationen auf dem Cube Multidimensional Expressions (MDX) Was ist MDX? MDX Queryinterface und API. Konzepte - Microsoft Terminologie

Größe: px
Ab Seite anzeigen:

Download "Kapitel 9: Operationen auf dem Cube Multidimensional Expressions (MDX) Was ist MDX? MDX Queryinterface und API. Konzepte - Microsoft Terminologie"

Transkript

1 Kapitel 9: Operationen auf dem Cube Multidimensional Expressions (MDX) Was ist MDX? Microsoft Terminologie im OLAP Bereich MDX Basiskonstrukte MDX weiterführende Konstrukte Fazit Was ist MDX? Ist SQL für OLAP genügend? Nicht bequem genug, unterstützt nicht die multidimensionale Sicht. Bisher hieß es, ein wichtiges Ziel seien intuitive Mechanismen für die Datenanalyse. Wieso brauchen wir jetzt eine komplexe Querysprache? Nicht jede Sicht läßt sich zusammenklicken, wie wir sehen werden. Man möchte Anwender vielleicht nicht immer mit generischem Interface belasten, sondern das Arbeiten durch Einschränkung auf spezielle anwendungsspezifische Interaktionsmöglichkeiten erleichtern. MDX ist kurz für Multidimensional Expressions, DDL und DML für multidimensionale Daten ( Definieren, Ändern und Abfragen ), MDX Microsoft-Entwicklung, Andere Hersteller von DBMSen/Data Warehouses (Oracle, SAP) bieten vergleichbare Anfragesprachen. Data Warehousing und Mining. 1 Data Warehousing und Mining. 2 MDX Queryinterface und API Konzepte - Microsoft Terminologie Query-Interface, mit dem im folgenden gearbeitet wird, illustriert nur das Querying. Query-Interface illustriert nicht den Zugriff über die Programmierschnittstelle, das Definieren von Hilfsstrukturen und das Wiederverwenden von Definitionen. Cubes Grundkonzept in OLAP multidimensionale Strukturen [maximal 64 Dimensionen] Dimensions Menge von Attributen, die Dimension sein können; sie können nicht Measures sein, Selektion über diese Attribute ist möglich, genau wie beim Microsoft OLAP-Browser, Dimension ist hierarchisch aufgebaut, private oder shared ( shared Dimension wurde für mehrere Cubes definiert) Data Warehousing und Mining. 3 Data Warehousing und Mining. 4

2 Konzepte - Microsoft Terminologie Hierarchien in einer Dimension - Erläuterung Measures Menge von Attributen, die nur Measures sein können (bis auf Spezialfälle), Measure ist eine spezielle Dimension in der MDX- Vorstellungswelt, flache Hierarchie Members Knoten der Hierarchie einer Dimension, vorgegeben vs. calculated, Beispiel: Halbjahr. Typebene: Store Store Country Store State Store City Instanzenebene: Canada USA Mexico CA WA Store Name Data Warehousing und Mining. 5 Data Warehousing und Mining. 6 Sonderrolle der Measures in MDX Illustration für unsere erste MDX-Query Im allgemeinen hat man Vektor von Measures: SALES TIME Year Month Jan Feb Jan Feb CATEGORY Part City (Cost, Sale) PC Montreal (5,6) (5,7) (4,6) (4,8) Toronto (5,7) (5,8) (4,8) (4,9) Inkjet Montreal (7,8) (7,9) (6,9) (6,8) New York (6,9) (6,9) (5,8) (5,9) Location ( Store ) Location ( Store ) MDX behandelt Gesamtheit der möglichen Measures wie eine Dimension. CATEGORY Store Type Store Type Unit Sales Product Sales Avg. Measure Cost Sale MEASURES TIME Data Warehousing und Mining. 7 Data Warehousing und Mining. 8

3 Beispiele, die Aufbau von MDX-Queries illustrieren Query, die Ausschnitt des Data Cubes mit _herkömmlichen_ Dimensionen definiert: SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, WHERE (Measures.[Sales Average]) Measures ist spezielle Dimension im MDX-Kontext. Erläuterungen zum Aufbau der Ausdrücke in der SELECT-Klausel (vor ON COLUMNS bzw. ON ROWS ): Dimensionsname, gefolgt von Hierarchiebezeichnungen auf der Typebene (von oben nach unten), Hierarchiebezeichnungen auf der Typebene können ausgelassen werden (wenn eindeutig), Wiederholung des Dimensionsnamen, wenn keine richtige Hierarchie, Mengenklammern können hier weggelassen werden; werden gebraucht, wenn Ausschnitt in einer Dimension durch mehrere Ausdrücke definiert ist, eckige Klammern werden nur gebraucht, wenn Dimensionsname oder Hierarchiebezeichnung Leerzeichen enthält. Beispiele (Fortsetzung) Beispiel-Query von eben: SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, WHERE (Measures.[Sales Average]) Erläuterungen: Query, die Ausschnitt des Data Cubes mit _herkömmlichen_ Dimensionen definiert (s. b. Abbildung links auf vorangegangener Folie), Auswahl des Measures erfolgt durch die WHERE-Klausel, mehrere Measures sind NICHT zulässig, d. h. MDX-Interpreter generiert keine integrierte Tabelle, Einschränkungen der Dimensionen sind möglich (Definitionsmöglichkeiten hierzu, die im folgenden vorgestellt werden, sind sehr mächtig), WHERE-Klausel kann weggelassen werden Default-Measure wird verwendet nicht empfehlenswert, wird im folgenden wegen Übersichtlichkeit trotzdem oft gemacht. Data Warehousing und Mining. 9 Data Warehousing und Mining. 10 Beispiele (Fortsetzung) Query, die verdeutlicht, daß Measures eine Dimension ist/ vorhin angesprochener Spezialfall : [Store].MEMBERS ON ROWS Erläuterungen: Angenommen, man würde die folgende WHERE-Klausel dazunehmen: WHERE (Measures.[Unit Sales]) Fehler, da WHERE-Klausel und Achsenspezifikation unabhängig sein müssen. Dieser Zusatz macht die Query außerdem sinnlos. Die folgende WHERE-Klausel WHERE ([Time].[Year].[1997]) ist dagegen OK. Weiterer Aspekt: Dimension ohne Hierarchie-Spezifikation führt dazu, daß alle Members angezeigt werden, unabhängig von der Position in der Hierarchie. Measures als gesonderte Dimension Von herkömmlicher Dimension kann man abstrahieren, z. B. 'über alle Stores aufsummieren'. Macht hier keinen Sinn. 'Default Measure' hat keine Entsprechung bei herkömmlichen Dimensionen. Wenn bei herkömmlicher Dimension keine Einschränkung, wird sie als Ganzes betrachtet. Data Warehousing und Mining. 11 Data Warehousing und Mining. 12

4 Slicing vs. Filtering Filtering Auswahl der Axis Members, d. h. Achse ist schon vorgegeben. Slicing definiert das Maß bzw. schränkt Ausschnitt des Raums ein. (Begriffe für Konzepte, die z. T. schon illustriert wurden.) Illustration des Begriffs Slicing anhand der folgenden Query: SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, Store ( Location ) WHERE (Product.[Drink]) Slicing Fortsetzung Slicing auch in mehreren Dimensionen möglich. Beispiele: SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, WHERE ([Product].Drink, Measures.[Unit Sales]) SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, WHERE ([Product].Drink, Measures.[Unit Sales], [Time].[Year].[1997]) Store Type Food Drink Product Data Warehousing und Mining. 13 Data Warehousing und Mining. 14 MDX Struktur der Abfragen Aufbau einer MDX-Query mit allen obligatorischen Bestandteilen: SELECT axis_specification ON COLUMNS, axis_specification ON ROWS FROM cube_name WHERE slicer_specification Erläuterungen: axis_specification = Selektieren der Dimensionen und Members für die Achse, Weitere Achsen sind möglich: ON COLUMNS ROWS PAGES CHAPTERS SECTIONS ON AXIS(0)... AXIS(63) Query-Tool gibt Fehlermeldung aus bei mehr als zwei Achsen. slicer_specification = Definition möglicher Projektionen des Data Cubes. Konstrukte für den Zugriff auf Members Beispiel-Query: {[Store].[Store State].[CA].CHILDREN, [Store].[WA].CHILDREN} ON ROWS Erläuterungen (teilweise Wiederholung): MEMBERS - alle Elemente der Dimension, mit/ohne Beschränkung auf bestimmte Ebene der Hierarchie, CHILDREN alle Elemente in der entsprechenden Position, in diesem Fall Städte in CA und WA, [Store].[Store State].[WA] ist kein fully qualified name, wie bereits zuvor erwähnt (nicht alle Stufen der Hierarchie, Store Country wird übersprungen), ist aber OK wegen Uniqueness, WHERE Slicer-Spezifizierung weglassen = Standard-Measure wird angezeigt, Mehrere Member-Spezifikationen für eine Achse der Tabelle möglich. State kann man zusätzlich ausgeben. Data Warehousing und Mining. 15 Data Warehousing und Mining. 16

5 Konstrukte für den Zugriff auf Members (2) Ziel: Mehrere Levels einer Dimension in einer Tabelle, aber im Gegensatz zu MEMBERS wird Kontrolle über die Levels gewünscht. Konstrukt DESCENDANTS löst dieses Problem - Syntax: DESCENDANTS (member, level[, flag]) Flexibilität kommt über das Flag. Beispiel-Query: {[Store].[Store State].[CA], DESCENDANTS([Store].[Store State].[CA], [Store City])} ON ROWS Online-Hilfe erläutert gut weitere Parameter, z. B. SELF, SELF_AND_AFTER. z Data Warehousing und Mining. 17 Weiterführende Konstrukte Calculated Members und Named Sets Definition neuer Members, z. B. abgeleitete Measures (Beispiel: Rendite als Funktion von eingesetztem Kapital und Profit), Hierarchisches Navigieren Verknüpfung von Zellen an unterschiedlichen Positionen der Hierarchie (Beispiel: Umsatz in CA als Anteil des U.S.A.-Umsatzes) Zeitserien Vergleich von zeitbezogenen Werten mit Werten aus Vergleichszeitraum (Beispiel: Vergleichsmonat Vorjahreszeitraum) Tuples und CROSSJOIN mehr als zwei Dimensionen pro Tabelle, Filtern und Sortieren Top und Bottom Analysen, z. B. Top-N Queries Numerische und bedingte Abfragen, z. B. COUNT, SUM bzw. frei definierte Bedingungen (COUNT z. B. Anzahl der Tupel mit einer bestimmten Eigenschaft) Data Warehousing und Mining. 18 Named Sets Calculated Members Motivation Motivation: Explizit benamte Mengen schaffen Übersichtlichkeit und erhöhen Wiederverwendbarkeit und Fehlertoleranz. Wir definieren hier Named Sets von Members. Beispiel: WITH SET bigcitystates AS '{Store.CA, Store.WA}' SET nobigcitystates AS 'EXCEPT(DESCENDANTS(Store,[Store State]), bigcitystates)' SELECT nobigcitystates ON ROWS, Time.MEMBERS ON COLUMNS Erläuterung: EXCEPT ist DIFF-Operator. Beispiel-Tabelle aus vorangegangenem Kapitel SALES TIME Year Month Jan Feb Jan Feb CATEGORY Part City (Cost, Sale) PC Montreal (5,6) (5,7) (4,6) (4,8) Toronto (5,7) (5,8) (4,8) (4,9) Inkjet Montreal (7,8) (7,9) (6,9) (6,8) New York (6,9) (6,9) (5,8) (5,9) ALL (7, 9) (8, 9) (6, 9) (6,8) Data Warehousing und Mining. 19 Data Warehousing und Mining. 20

6 Calculated Members (1) Ziel: Definition neuer Members, in Abhängigkeit bereits existierender Members, sowohl für Dimensionen als auch für Measures, Beispiele: Abgeleitete Measures, z. B. Profit, wenn Umsatz und Kosten bekannt, Profit = (Umsatz Kosten)/Kosten, Diese Definition ist unabhängig davon, welche Position des Cubes man betrachtet. Neuaufteilung der Dimensionen, z. B. Quartalseinteilung des Jahres, basierend auf Monaten. Beispiel in MDX: WITH MEMBER Measures.ProfitPercent AS '(Measures.[Store Sales] - Measures.[Store Cost]) / (Measures.[Store Cost])', FORMAT_STRING = '#.00%' SELECT {Measures.ProfitPercent} ON COLUMNS, Store.MEMBERS ON ROWS definiert Dimension und Position in Hierarchie Name des Calculated Members Aufbau des Calculated Members -Statements: WITH MEMBER parent.name AS 'expression' Calculated Members (2) Weiteres Beispiel: SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, WHERE ([Product].Drink, Measures.[Unit Sales]) WITH MEMBER MEASURES.DrinkSales AS '([Product].Drink, Measures.[Unit Sales])' SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, WHERE (Measures.[DrinkSales]) WITH MEMBER MEASURES.DrinkSales AS '([Product].Drink, Measures.[Unit Sales])' SELECT {MEASURES.DrinkSales, Measures.[Unit Sales]} ON COLUMNS, Beispiel illustriert, daß abgeleitete Measures Einschränkung entlang anderer Dimensionen vornehmen können. Data Warehousing und Mining. 21 Data Warehousing und Mining. 22 Calculated Members (3) Beispiel für Calculated Member-Definition für Dimension, die nicht Measures ist: WITH MEMBER [Time].[First Half 97] AS '[Time].[1997].[Q1] + [Time].[1997].[Q2]' MEMBER [Time].[Second Half 97] AS '[Time].[1997].[Q3] + [Time].[1997].[Q4]' Man beachte: Summe ist hartkodiert. Definition ist wiederum unabhängig von konkreten Werten anderer Dimensionen. Calculated Members müssen unter der Wurzel der Hierarchie eingehängt werden. Beispiel, das nicht funktioniert: WITH MEMBER Measures.ProfitPercent AS '(Measures.[Store Sales] - Measures.[Store Cost]) / (Measures.[Store Cost])', FORMAT_STRING = '#.00%' MEMBER [Time].[Year].[H1] AS '[Time].[Year].[Q1] + [Time].[Year].[Q2] MEMBER [Time].[Year].[H2] AS '[Time].[Year].[Q3] + [Time].[Year].[Q4] SELECT {[Time].[Year].[H1], [Time].[Year].[H2]} ON COLUMNS, {[Store].[Store Name].MEMBERS} ON ROWS WHERE (Measures.ProfitPercent) Data Warehousing und Mining. 23 Solve_order (1) Beispiel Halbjahresprofit, verwendet beide abgeleiteten Members von eben. Erster Versuch, nicht ausreichend: WITH MEMBER Measures.ProfitPercent AS '(Measures.[Store Sales] - Measures.[Store Cost]) / (Measures.[Store Cost])', FORMAT_STRING = '#.00%' MEMBER [Time].[First Half 97] AS '[Time].[1997].[Q1] + [Time].[1997].[Q2]' MEMBER [Time].[Second Half 97] AS '[Time].[1997].[Q3] + [Time].[1997].[Q4]' SELECT {[Time].[First Half 97], [Time].[Second Half 97], [Time].[1997].CHILDREN} ON COLUMNS, {[Store].[Store Name].MEMBERS} ON ROWS WHERE (Measures.ProfitPercent) Data Warehousing und Mining. 24

7 Solve_order (2) Beispiel Fortsetzung: Q1 Q2 Q3 Q4 Sales Cost WITH MEMBER Measures.ProfitPercent AS '(Measures.[Store Sales] - Measures.[Store Cost]) / (Measures.[Store Cost])' Q1 Q2 Q3 Q4 5 2 Profit WITH MEMBER [Time].[H1] AS '[Time].[1997].[Q1] + [Time].[1997].[Q2]' MEMBER [Time].[H2] AS '[Time].[1997].[Q3] + [Time].[1997].[Q4]' H1 H2 Sales Cost Profit H1 9 5 H2 4 5 Solve_order (3) Beispiel: WITH MEMBER Measures.ProfitPercent AS '(Measures.[Store Sales] - Measures.[Store Cost]) / (Measures.[Store Cost])', FORMAT_STRING = '#.00%', SOLVE_ORDER = 1 MEMBER [Time].[First Half 97] AS '[Time].[1997].[Q1] + [Time].[1997].[Q2]' MEMBER [Time].[Second Half 97] AS '[Time].[1997].[Q3] + [Time].[1997].[Q4]' SELECT {[Time].[First Half 97], [Time].[Second Half 97], [Time].[1997].CHILDREN} ON COLUMNS, {[Store].[Store Name].MEMBERS} ON ROWS WHERE (Measures.ProfitPercent) Größerer SOLVE_ORDER-Wert bedeutet, daß MDX zuerst versucht, diesen Ausdruck aufzulösen. Man muß explizit angeben, in welcher Reihenfolge Ableitungen zur Anwendung kommen sollen. Data Warehousing und Mining. 25 Data Warehousing und Mining. 26 Beziehungen zwischen Hierarchie-Elementen Motivation: Verknüpfung von Werten, die unterschiedlichen Members in der Hierarchie entsprechen, Beispiel: Anteil des Umsatzes in Kalifornien am Gesamtumsatz USA Beispiel MDX-Statement: WITH MEMBER MEASURES.PercentageSales AS '([Product].CURRENTMEMBER, Measures.[Unit Sales]) / ([Product].CURRENTMEMBER.PARENT, Measures.[Unit Sales])', FORMAT_STRING = '#.00%' SELECT {MEASURES.[Unit Sales], MEASURES.PercentageSales} ON COLUMNS, [Product].[Brand Name].MEMBERS ON ROWS Erläuterung: Tupel mit mehreren Komponenten in der Member- Definition, z. B. ([Product].CURRENTMEMBER, Measures.[Unit Sales]), ist Einschränkung über mehrere Dimensionen. Was passiert, wenn ROW-Achse nicht über Product? Data Warehousing und Mining. 27 Beziehungen zwischen Hierarchie-Elementen Fortsetzung Konstrukt ANCESTOR anstelle von PARENT.PARENT... Übersichtlicher, Einfacher zu programmieren, Änderungsfreundlicher Beispiel: WITH MEMBER MEASURES.PercentageSales AS '([Product].CURRENTMEMBER, Measures.[Unit Sales]) / (ANCESTOR([Product].CURRENTMEMBER, [Product Category]), MEASURES.[Unit Sales])' Query von eben mit Konstrukt ANCESTOR? Data Warehousing und Mining. 28

8 GENERATE Motivation: Anwendung eines Templates auf alle Elemente einer Menge, Beispiel: Wir wollen alle Store Cities in NoBigCityStates. Mit unserem jetzigen Wissen müßten wir die NoBigCityStates einzeln aufzählen, für jede Ableitung von Store Cities einzeln. Konstrukt GENERATE löst das Problem Beispiel: 'GENERATE(NoBigCityStates, Store.CURRENTMEMBER.CHILDREN) Menge Template spezieller Platzhalter Beispiel: SELECT {GENERATE([Time].[Year].MEMBERS, {[Time].CURRENTMEMBER, [Time].CURRENTMEMBER.CHILDREN})} ON COLUMNS, [Promotions].[All Promotions].CHILDREN ON ROWS WHERE (Measures.[Unit Sales]) Man braucht das CURRENTMEMBER, um sicherzustellen, daß die Jahre und genau die Quartale aus dem Jahr zusammen aufgeführt werden. SELECT {[Time].[Year].MEMBERS, [Time].[Year].CHILDREN} löst das Problem nicht. Data Warehousing und Mining. 29 Zeitserien Motivation: Vergleich von Werten mit Werten aus Vergleichszeitraum, z. B. gleicher Wert im Vorjahr. Konkrete Konstrukte: PARALLELPERIOD = Element an gleicher Stelle in vorheriger Periode (z. B. gleiches Quartal im vorherigen Jahr) Parameter: Members der Dimension Time, (Es existiert auch allgemeinere Funktion COUSIN.) OPENINGPERIOD = Element an erster Stelle in der Periode (z. B. erstes Quartal im Jahr) CLOSINGPERIOD = Element an letzter Stelle in der Periode (z. B. letztes Quartal im Jahr) PERIODSTODATE = alle Elemente bis an eine spezifizierte Stelle (z. B. alle Quartale bis heute) YTD QTD MTD WTD Abkürzungen für Ausdrücke mit PERIODSTODATE Data Warehousing und Mining. 30 Zeitserien Parameter: Member der Dimension Time, Beispiel für vollständiges MDX-Statement: WITH MEMBER Measures.[Profit Growth] AS '(Measures.[Profit]) (Measures.[Profit], PARALLELPERIOD([Time].[Quarter]))', FORMAT_STRING = '###,###.00' SELECT {Measures.[Profit], Measures.[Profit Growth]} ON COLUMNS, {DESCENDANTS([Time].[1997], [Month])} ON ROWS Default: Vorgängerperiode. Hier im Beispiel wird Monat des Vorgängerquartals genommen. Tuples und CROSSJOIN Motivation: Dimension mit mehr als einem Attribut, Tuples = Kombination von Elementen verschiedener Dimensionen (in der Demo Werte entlang der Achse) Beispiele für Tupel: (Supermarket, CA), (Supermarket, DF),... (Deli, CA),... Wie erzeugt man Tupel automatisch? CROSSJOIN = Kreuzprodukt zweier Elementmengen Beispiel: CROSSJOIN([Customers].[City].MEMBERS, [Time].[Quarter].MEMBERS) Data Warehousing und Mining. 31 Data Warehousing und Mining. 32

9 Filtern und Sortieren FILTER, ORDER, TOPCOUNT etc., die im folgenden besprochen werden, haben alle den gleichen Aufbau: Operator(Member-Expression, Bedingung/Sortierkriterium etc.) Filtering Motivation: Einschränkung der Elemente einer Achse, man will mehr können als nur die relevanten Members explizit hinzuschr. Beispiel: spezielle Filterbedingung SELECT NON EMPTY {[Store Type].[Store Type].MEMBERS} ON COLUMNS, FILTER({[Store].[Store City].MEMBERS}, Menge, auf die Filter angewendet wird (Measures.[Unit Sales], [Time].[1997])>25000) ON ROWS Bedingung WHERE (Measures.[Profit], [Time].[Year].[1997]) Erläuterung: NON EMPTY stellt sicher, daß mindestens eine Zelle der Tabelle nicht leer ist. Sortieren Aufbau des Sortier-Operators ist wie der einer Filtering Expression: angewendet auf Liste (heißt hier Menge ), liefert ORDER-Operator Liste zurück, Aufbau: ORDER(set, expression[, ASC DESC...]) Sortierkriterium Sortieren Beispiel Side Issue : Spezifikation von Ranges ist möglich: {[Store].[Store City].[Beverly Hills]:[Spokane]} ON ROWS Dieselbe Anfrage, dieses Mal mit Sortierung: ORDER({[Store].[Store City].[Beverly Hills]:[Spokane]}, [Store].CURRENTMEMBER.Name, BASC) ON ROWS Präfix B bedeutet, daß die Hierarchie für die Sortierung aufgebrochen wird. Data Warehousing und Mining. 33 Data Warehousing und Mining. 34 Aggregationsfunktionen Top-N Queries SUM, COUNT, AVG, MAX Nützlich für die Definition abgeleiteter Measures. Beispiele: SUM(BigCityStates, Measures.[Unit Sales]) WITH MEMBER Measures.[Customer Count] AS 'COUNT(CROSSJOIN({Measures.[Unit Sales]}, [Customers].[Name].MEMBERS), EXCLUDEEMPTY)' SELECT {Measures.[Unit Sales], Measures.[Customer Count]} ON COLUMNS, [Product].[Product Category].MEMBERS ON ROWS Äquivalente Query, allerdings etwas langsamer in der Ausführung: WITH MEMBER Measures.[Customer Count] AS 'COUNT(FILTER((Measures.[Unit Sales], [Customers].[Name].MEMBERS)>0)) SELECT {Measures.[Unit Sales], Measures.[Customer Count]} ON COLUMNS, [Product].[Product Category].MEMBERS ON ROWS Konstrukte: HEAD = die ersten n Elemente in einem Set TAIL = die letzten n Elemente in einem Set TOPCOUNT TOPPERCENT TOPSUM = die n besten Elemente in einem Set BOTTOMCOUNT BOTTOMPERCENT BOTTOMSUM = die n schlechtesten Elemente in einem Set Beispiel: TOPCOUNT({[Store].[Store City].MEMBERS}, 12, Measures.[Sales Count]) ON ROWS Data Warehousing und Mining. 35 Data Warehousing und Mining. 36

10 Fazit Zusammenfassung: MDX ist für IT-Entwickler ein relativ angenehmes und leistungsfähiges Werkzeug. MDX ist für IT-Anwender hingegen kompliziert und schwierig erlernbar. Zielsetzung dieser Sprache: Einbettung von MDX-Queries in Anwendungen, die dem Entscheider vordefinierte Analysen zur Verfügung stellen. Insbesondere der zweite Teil hat verdeutlicht, daß man mit MDX mehr erreichen kann als mit Slice&Dice Interaktionsmechanismen. Vertauschung von Dimensionen und Measures wie im zuvor betrachteten Modell ist hier nicht möglich, außerdem weitere Unschönheiten. Data Warehousing und Mining. 37

Model Klausel - Der Excel-Killer von Oracle?

Model Klausel - Der Excel-Killer von Oracle? Model Klausel - Der Excel-Killer von Oracle? Andrea Kennel Trivadis AG Glattbrugg, Schweiz Schlüsselworte: Model Klausel, SQL, Data Warehousing, OLAP Zusammenfassung Ein Data Mart kann als ein Würfel mit

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

Data Warehousing. Ausführung von OLAP Operationen. Ulf Leser Wissensmanagement in der Bioinformatik

Data Warehousing. Ausführung von OLAP Operationen. Ulf Leser Wissensmanagement in der Bioinformatik Data Warehousing Ausführung von OLAP Operationen Ulf Leser Wissensmanagement in der Bioinformatik Variante 1 - Snowflake Year id year Productgroup id pg_name Month Id Month year_id Day Id day month_id

Mehr

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language: SQL Structured Query Language: strukturierte Datenbankabfragesprache eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken In der SQL-Ansicht arbeiten In

Mehr

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

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

Mehr

Fortgeschrittene OLAP Analysemodelle

Fortgeschrittene OLAP Analysemodelle Fortgeschrittene OLAP Analysemodelle Jens Kübler Imperfektion und erweiterte Konzepte im Data Warehousing 2 Grundlagen - Datenanalyse Systemmodell Datenmodell Eingaben System Schätzer Datentypen Datenoperationen

Mehr

SQL Teil 2. SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Komplexer SELECT-Ausdruck

SQL Teil 2. SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Komplexer SELECT-Ausdruck SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Fahren fort mit SQL Befehlen. Bilden Relationenalgebra auf SQL ab. So Umsetzung von Anfragen an die DB (bzw. Tabellen) möglich. SELECT

Mehr

Einführung in die Informatik II

Einführung in die Informatik II Einführung in die Informatik II Die Structured Query Language SQL Prof. Dr. Nikolaus Wulff SQL Das E/R-Modell lässt sich eins zu eins auf ein Tabellenschema abbilden. Benötigt wird eine Syntax, um Tabellen

Mehr

Kap. 6 Data Warehouse

Kap. 6 Data Warehouse 1 Kap. 6 Data Warehouse 6.1 Was ist ein Data Warehouse, Motivation? 6.2 Data Cube und Cube-Operationen 6.3 Workshop: MS SQL Server, Cube Operationen 6.4 Physischer Entwurf, Implementierung von Cubes 6.5

Mehr

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

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

Mehr

27 Transact-SQL-Erweiterungen in Bezug auf Analysis Services

27 Transact-SQL-Erweiterungen in Bezug auf Analysis Services 531 27 Transact-SQL-Erweiterungen in Bezug auf Analysis Services Im zweiten Teil dieses Buches haben wir die Eigenschaften der Transact-SQL- Sprache in Bezug auf die Bearbeitung von operativen Daten gezeigt.

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2015 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

Kapitel 5: Vom relationalen zum multidimensionalen Datenmodell

Kapitel 5: Vom relationalen zum multidimensionalen Datenmodell Data Warehousing, Gliederung Kapitel 5: Vom relationalen zum multidimensionalen Datenmodell Dimensionen und Measures Schematypen für Data Warehousing Groupy und Data Cubes Operatoren für den Data Cube

Mehr

Einleitung. ROLLUP, CUBE und GROUPING. Markus Jägle (markus.jaegle@trivadis.com) Art der Info Technische Background Info (April 2002)

Einleitung. ROLLUP, CUBE und GROUPING. Markus Jägle (markus.jaegle@trivadis.com) Art der Info Technische Background Info (April 2002) Betrifft Autör: GROUPING_ID Markus Jägle (markus.jaegle@trivadis.com) Art der Info Technische Background Info (April 2002) Quelle Aus dem Oracle9i Data Warehousing Guide und den Kursen New Features Oracle9i

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

Anfragen gegen das DataWarehouse

Anfragen gegen das DataWarehouse Anfragen gegen das DataWarehouse Sebastian Kuhs Seminar Data Warehousing und analytische Datenbanken Gliederung 1. Benutzergruppen 2. interaktives OLAP 3. MDX 4. XML-Analysis 5.Produkte 1. Benutzergruppen

Mehr

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

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten Einführung in SQL Die Sprache SQL (Structured Query Language) ist eine Programmiersprache für relationale Datenbanksysteme, die auf dem ANSI-SQL-Standard beruht. SQL wird heute von fast jedem Datenbanksystem

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

Realisierung von OLAP Operatoren in einem visuellen Analysetool. Vortrag von Alexander Spachmann und Thomas Lindemeier

Realisierung von OLAP Operatoren in einem visuellen Analysetool. Vortrag von Alexander Spachmann und Thomas Lindemeier Realisierung von OLAP Operatoren in einem visuellen Analysetool Vortrag von Alexander Spachmann und Thomas Lindemeier Gliederung Ausgangssituation/Motivation Was ist OLAP? Anwendungen Was sind Operatoren?

Mehr

Dimensionale Modellierung mit Oracle BI EE und Oracle OLAP Tipps und Tricks aus der Praxis

Dimensionale Modellierung mit Oracle BI EE und Oracle OLAP Tipps und Tricks aus der Praxis Dimensionale Modellierung mit Oracle BI EE und Oracle OLAP Tipps und Tricks aus der Praxis DOAG Konferenz 2010 Claus Jordan Senior Consultant, Trivadis GmbH 16.11.2010 Basel Bern Lausanne Zürich Düsseldorf

Mehr

Cassandra Query Language (CQL)

Cassandra Query Language (CQL) Cassandra Query Language (CQL) Seminar: NoSQL Wintersemester 2013/2014 Cassandra Zwischenpräsentation 1 Gliederung Basic facts Datentypen DDL/DML ähnlich zu SQL Besonderheiten Basic facts CQL kurz für

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

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

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language) Einführung in SQL 1. Grundlagen Structured Query Language Viele Dialekte Unterteilung: i. DDL (Data Definition Language) ii. iii. DML (Data Modifing Language) DRL (Data Retrival Language) 1/12 2. DDL Data

Mehr

Sructred Query Language

Sructred Query Language Sructred Query Language Michael Dienert 11. November 2010 Inhaltsverzeichnis 1 Ein kurzer Versionsüberblick 1 2 SQL-1 mit einigen Erweiterungen aus SQL-92 2 3 Eine Sprache zur Beschreibung anderer Sprachen

Mehr

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de 08 Datenbanken Übung SQL Einführung Eckbert Jankowski www.iit.tu-cottbus.de Datenmodell (Wiederholung, Zusammenfassung) Objekte und deren Eigenschaften definieren Beziehungen zwischen den Objekten erkennen/definieren

Mehr

cs242: Data Warehousing cs243: Datenbanken für Fortgeschrittene FS 2012

cs242: Data Warehousing cs243: Datenbanken für Fortgeschrittene FS 2012 UNIVERSITÄT BASEL Prof. Dr. Heiko Schuldt Ihab Al Kabary, MSc Ilir Fetai, MSc Nenad Stojnić, MSc Ivan Giangreco, BSc cs242: Data Warehousing cs243: Datenbanken für Fortgeschrittene FS 2012 Übung DW-4 Abgabe:

Mehr

SQL. Abfragesprache Datenmanipulation - DML

SQL. Abfragesprache Datenmanipulation - DML SQL Abfragesprache Datenmanipulation - DML SQL DML-Operationen DML = Data Manipulation Language Sprache zur Veränderung der Daten Operationen Daten selektieren Daten einfügen Daten ändern Daten löschen

Mehr

Pivotieren. Themenblock: Anfragen auf dem Cube. Roll-up und Drill-down. Slicing und Dicing. Praktikum: Data Warehousing und Data Mining. Produkt.

Pivotieren. Themenblock: Anfragen auf dem Cube. Roll-up und Drill-down. Slicing und Dicing. Praktikum: Data Warehousing und Data Mining. Produkt. Zeit Pivotieren Themenblock: Anfragen auf dem Cube Praktikum: Data Warehousing und Data Mining Zeit Zeit 2 Roll-up und Drill-down Slicing und Dicing Drill-down Januar 2 3 33 1. Quartal 11 36 107 Februar

Mehr

Die bisher bereits bekannten Aggregatsfunktionen MIN, MAX, SUM, AVG, COUNT, VARIANCE und STDDEV wurden um FIRST und LAST erweitert.

Die bisher bereits bekannten Aggregatsfunktionen MIN, MAX, SUM, AVG, COUNT, VARIANCE und STDDEV wurden um FIRST und LAST erweitert. Betrifft Autor FIRST, LAST Markus Jägle (markus.jaegle@trivadis.com) Art der Info Technische Background Info (April 2002) Quelle Aus dem NF9i-Kurs, NF9i-Techno-Circle der Trivadis und Oracle9i Data Warehousing

Mehr

Aufbau des SELECT-Befehls. Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen.

Aufbau des SELECT-Befehls. Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen. Datenbankabfragen (Query) mit SQL (Structured Query Language) 1 Aufbau des SELECT-Befehls Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen. SQL-Syntax: SELECT spaltenliste FROM tabellenname

Mehr

Informatik 12 Datenbanken SQL-Einführung

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

Mehr

Data Warehousing und Data Mining

Data Warehousing und Data Mining Data Warehousing und Data Mining 2 Cognos Report Net (CRN) Ermöglicht Erstellen von Ad-hoc-Anfragen (Query Studio) Berichten (Report Studio) Backend Data Cube Relationale Daten Übung: Cognos Report Net

Mehr

SQL Intensivpraktikum SS 2008

SQL Intensivpraktikum SS 2008 SQL Intensivpraktikum SS 2008 Aggregation von Daten Arbeit mit Gruppen SQL1 basierend auf OAI-Kurs Copyright Oracle Corporation, 1998. All rights reserved. Gruppenfunktionen Gruppenfunktionen verarbeiten

Mehr

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

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

Mehr

3.17 Zugriffskontrolle

3.17 Zugriffskontrolle 3. Der SQL-Standard 3.17. Zugriffskontrolle Seite 1 3.17 Zugriffskontrolle Datenbanken enthalten häufig vertrauliche Informationen, die nicht jedem Anwender zur Verfügung stehen dürfen. Außerdem wird man

Mehr

Vielen Dank an Dennis Riehle für die Bereitstellung dieser Folien

Vielen Dank an Dennis Riehle für die Bereitstellung dieser Folien Vielen Dank an Dennis Riehle für die Bereitstellung dieser Folien 1.1 Definition Datenbank Ein Datenbanksystem (DBS) ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS

Mehr

5.8 Bibliotheken für PostgreSQL

5.8 Bibliotheken für PostgreSQL 5.8 Bibliotheken für PostgreSQL Haskell/WASH: Modul Dbconnect PHP: pqsql-funktionen Java/JSP: JDBC Perl: DBI database interface modul Vorläufige Version 80 c 2004 Peter Thiemann, Matthias Neubauer 5.9

Mehr

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R 1.008. Vorlesung #6. SQL (Teil 4)

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R 1.008. Vorlesung #6. SQL (Teil 4) Vorlesung #6 SQL (Teil 4) Fahrplan Besprechung der Übungsaufgaben Einschub: Self Joins (relevant fürs Praktikum) Dynamische Intergritätsbedingungen, das Trigger - Konzept von Oracle Prozedurale Erweiterungen,

Mehr

Analytische Funktionen erfolgreich eingesetzt

Analytische Funktionen erfolgreich eingesetzt Analytische Funktionen erfolgreich eingesetzt Dani Schnider Trivadis AG Glattbrugg, Schweiz Schlüsselworte: Analytische Funktionen, SQL, Performance Optimierung, Data Warehousing Zusammenfassung Analytische

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

SQL-Befehlsliste. Vereinbarung über die Schreibweise

SQL-Befehlsliste. Vereinbarung über die Schreibweise Vereinbarung über die Schreibweise Schlüsselwort [optionale Elemente] Beschreibung Befehlsworte in SQL-Anweisungen werden in Großbuchstaben geschrieben mögliche, aber nicht zwingend erforderliche Teile

Mehr

Eine völlig andere Form Abfragen zu erstellen ist, sie mit Hilfe der Datenbankabfragesprache SQL zu gestalten.

Eine völlig andere Form Abfragen zu erstellen ist, sie mit Hilfe der Datenbankabfragesprache SQL zu gestalten. Einführung SQL 2010 Niko Becker Mit unseren Übungen zu ACCESS können Sie Aufbau und Struktur einer relationalen Datenbank kennenlernen. Wir zeigen Ihnen wie Sie Tabellen, Formulare und Berichte erstellen

Mehr

ACCESS SQL ACCESS SQL

ACCESS SQL ACCESS SQL ACCESS SQL Datenbankabfragen mit der Query-Language ACCESS SQL Datenbankpraxis mit Access 34 Was ist SQL Structured Query Language Bestehend aus Datendefinitionssprache (DDL) Datenmanipulationssprache

Mehr

Datenbanken zur Entscheidungsunterstützung - Data Warehousing

Datenbanken zur Entscheidungsunterstützung - Data Warehousing Datenbanken zur Entscheidungsunterstützung - Data Warehousing Prof. Dr. T. Kudraß 1 Einführung Zunehmender Bedarf nach Analyse aktueller und historischer Daten Identifizierung interessanter Patterns Entscheidungsfindung

Mehr

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

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

Mehr

Oracle OLAP 11g: Performance für das Oracle Data Warehouse

Oracle OLAP 11g: Performance für das Oracle Data Warehouse Oracle OLAP 11g: Performance für das Oracle Data Warehouse Marc Bastien Oracle BI Presales Agenda Performanceprobleme in Oracle DWH: gibt s das überhaupt? Mögliche Gründe und Lösungen

Mehr

Data Warehousing und Data Mining

Data Warehousing und Data Mining Data Warehousing und Data Mining Sprachen für OLAP Operationen Ulf Leser Wissensmanagement in der Bioinformatik Inhalt dieser Vorlesung OLAP Operationen MDX: Multidimensional Expressions SQL Erweiterungen

Mehr

Views in SQL. 2 Anlegen und Verwenden von Views 2

Views in SQL. 2 Anlegen und Verwenden von Views 2 Views in SQL Holger Jakobs bibjah@bg.bib.de, holger@jakobs.com 2010-07-15 Inhaltsverzeichnis 1 Wozu dienen Views? 1 2 Anlegen und Verwenden von Views 2 3 Schreibfähigkeit von Views 3 3.1 Views schreibfähig

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

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

bersicht Datenbanken und Datawarehouses Datenbank Datenbanksysteme Niels Schršter

bersicht Datenbanken und Datawarehouses Datenbank Datenbanksysteme Niels Schršter bersicht Niels Schršter EinfŸhrung GROUP BY Roll UpÔs Kreuztabellen Cubes Datenbank Ansammlung von Tabellen, die einen ãausschnitt der WeltÒ fÿr eine Benutzergruppe beschreiben. Sie beschreiben die funktionalen

Mehr

Universität Duisburg-Essen Informationssysteme Prof. Dr.-Ing. N. Fuhr. Praktikum Datenbanken / DB2 Woche 8: Trigger, SQL-PL

Universität Duisburg-Essen Informationssysteme Prof. Dr.-Ing. N. Fuhr. Praktikum Datenbanken / DB2 Woche 8: Trigger, SQL-PL Betreuer: Sascha Kriewel, Tobias Tuttas Raum: LF 230 Bearbeitung: 26., 27. und 29. Juni 2006 Datum Team (Account) Vorbereitung Präsenz Aktuelle Informationen, Ansprechpartner und Material unter: http://www.is.inf.uni-due.de/courses/dbp_ss07/index.html

Mehr

SQL. Fortgeschrittene Konzepte Auszug

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

Mehr

Einführung in MDX. Seminararbeit im Modul Seminar II Wirtschaftsinformatik WS 2004/ 05 Prof. Dr. Klaus Kruczynski

Einführung in MDX. Seminararbeit im Modul Seminar II Wirtschaftsinformatik WS 2004/ 05 Prof. Dr. Klaus Kruczynski Einführung in MDX Seminararbeit im Modul Seminar II Wirtschaftsinformatik WS 2004/ 05 Prof. Dr. Klaus Kruczynski Autor: Sebastian Willand Matrikel-Nr.: 030240 Fachhochschule Liechtenstein Masterstudiengang

Mehr

Herbstsemester 2009. Datenbanken mit Übungen Kapitel 4: SQL. H. Schuldt. Inhalt

Herbstsemester 2009. Datenbanken mit Übungen Kapitel 4: SQL. H. Schuldt. Inhalt Herbstsemester 2009 Datenbanken mit Übungen Kapitel 4: SQL H. Schuldt Inhalt Datenmanipulationssprache SQL: SQL (Structured Query Language) ist die Standardsprache für die Datendefinition und Datenmanipulation

Mehr

9. Einführung in Datenbanken

9. Einführung in Datenbanken 9. Einführung in Datenbanken 9.1 Motivation und einführendes Beispiel 9.2 Modellierungskonzepte der realen Welt 9.3 Anfragesprachen (Query Languages) 9.1 Motivation und einführendes Beispiel Datenbanken

Mehr

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

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

Mehr

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

Motivation. Themenblock: Klassifikation. Binäre Entscheidungsbäume. Ansätze. Praktikum: Data Warehousing und Data Mining.

Motivation. Themenblock: Klassifikation. Binäre Entscheidungsbäume. Ansätze. Praktikum: Data Warehousing und Data Mining. Motivation Themenblock: Klassifikation Praktikum: Data Warehousing und Data Mining Ziel Item hat mehrere Attribute Anhand von n Attributen wird (n+)-tes vorhergesagt. Zusätzliches Attribut erst später

Mehr

Web-Technologien. Prof. Dr. rer. nat. Nane Kratzke SQL. Praktische Informatik und betriebliche Informationssysteme

Web-Technologien. Prof. Dr. rer. nat. Nane Kratzke SQL. Praktische Informatik und betriebliche Informationssysteme Handout zur Unit Web-Technologien SQL 1 Prof. Dr. rer. nat. Nane Kratzke Praktische Informatik und betriebliche Informationssysteme Raum: 17-0.10 Tel.: 0451 300 5549 Email: nane.kratzke@fh-luebeck.de (Praktische

Mehr

Art der Info: Technische Background Info Teil 2 (April 2002)

Art der Info: Technische Background Info Teil 2 (April 2002) Betrifft: Autor: Oracle 9i New Features SQL und PL/SQL Christine Hansen (christine.hansen@trivadis.com) Art der Info: Technische Background Info Teil 2 (April 2002) Quelle: Aus dem NF9i-Kurs und NF9i-Techno-Circle

Mehr

Seminar in der Seminarreihe Business Intelligence 1. OLAP und Datawarehousing

Seminar in der Seminarreihe Business Intelligence 1. OLAP und Datawarehousing Seminar in der Seminarreihe Business Intelligence 1 OLAP und Datawarehousing OLAP & Warehousing Die wichtigsten Produkte Die Gliederung Produkt Bewertung & Vergleiche Die Marktentwicklung Der aktuelle

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

Indexing und Performance Tuning

Indexing und Performance Tuning Indexing und Performance Tuning Cybertec Schönig & Schönig GmbH Hans-Jürgen Schönig PostgreSQL Indexing - Jeder hat schon einmal ein Telefonbuch Benutzt - Jeder hat schon einmal Suchen durchgeführt CREATE

Mehr

Einführung in SQL Datenbanken bearbeiten

Einführung in SQL Datenbanken bearbeiten Einführung in SQL Datenbanken bearbeiten Jürgen Thomas Entstanden als Wiki-Buch Bibliografische Information Diese Publikation ist bei der Deutschen Nationalbibliothek registriert. Detaillierte Angaben

Mehr

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

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

Mehr

SQL structured query language

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

Mehr

Michaela Weiss 01. April 2015. Lerneinheit 4: Relationale Datenbanken am Beispiel von MySQL

Michaela Weiss 01. April 2015. Lerneinheit 4: Relationale Datenbanken am Beispiel von MySQL Michaela Weiss 01. April 2015 Lerneinheit 4: Relationale Datenbanken am Beispiel von MySQL Seite 2 Datenbanken Allgemeines: Datenbank(management)systeme ermöglichen die Speicherung großer Datenmengen Kennzeichen

Mehr

Datenbankenseminar: SAP Reporting Vergleich ABAP vs. Quick View. Dipl. WiFo Sven Adolph

Datenbankenseminar: SAP Reporting Vergleich ABAP vs. Quick View. Dipl. WiFo Sven Adolph Datenbankenseminar: SAP Reporting Vergleich ABAP vs. Quick View Dipl. WiFo Sven Adolph Gehalten am Lehrstuhl PI III Prof. Moerkotte 28.11.2003 Übersicht 1. Motivation 2. Die betriebliche Standardsoftware

Mehr

Datenbankprogrammierung

Datenbankprogrammierung Datenbankprogrammierung Arbeiten mit DB2 Server DB2- Befehlszeilenprozessor ausführen SQL-Skript-Datei bearbeiten Editor SSH Client Linux SSH-Konsole für Befehlszeilenproz. (ssh) X-Weiterleitung für Editor

Mehr

Projektion. Projektion. Operation: Projektion

Projektion. Projektion. Operation: Projektion Projektion einfache Abfragen Aufbereiten der Ergebnisse von Abfragen Ausdrücke und Formeln Abfragen im Verbund aggregierende Abfragen gruppierende Abfragen Angabe der zu bearbeitenden Tabelle(n) Angabe

Mehr

Wann nutze ich welchen semantischen Layer im Kontext von SAP HANA? [B3] Francis Fink Uetliberg, 16.09.2014 www.boak.ch

Wann nutze ich welchen semantischen Layer im Kontext von SAP HANA? [B3] Francis Fink Uetliberg, 16.09.2014 www.boak.ch Wann nutze ich welchen semantischen Layer im Kontext von SAP HANA? [B3] Francis Fink Uetliberg, 16.09.2014 www.boak.ch Obwohl mit der Verwendung von SAP HANA ein neuer semantischer Layer zum Einsatz kommt,

Mehr

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

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

Mehr

Objektrelationale und erweiterbare Datenbanksysteme

Objektrelationale und erweiterbare Datenbanksysteme Objektrelationale und erweiterbare Datenbanksysteme Erweiterbarkeit SQL:1999 (Objekt-relationale Modellierung) In der Vorlesung werden nur die Folien 1-12 behandelt. Kapitel 14 1 Konzepte objekt-relationaler

Mehr

Selektion von Aggregationstabellen zur Optimierung der Antwortzeiten eines OLAP-Servers

Selektion von Aggregationstabellen zur Optimierung der Antwortzeiten eines OLAP-Servers TECHNISCHE UNIVERSITÄT ILMENAU Institut für Praktische Informatik und Medieninformatik Fakultät für Informatik und Automatisierung Fachgebiet Datenbanken und Informationssysteme Diplomarbeit Selektion

Mehr

XML Vorlesung ETHZ SS 2006 4.7.2006. XQuery. 4.7.2006 XML Vorlesung ETHZ SS 2006 2. 4.7.2006 XML Vorlesung ETHZ SS 2006 4

XML Vorlesung ETHZ SS 2006 4.7.2006. XQuery. 4.7.2006 XML Vorlesung ETHZ SS 2006 2. 4.7.2006 XML Vorlesung ETHZ SS 2006 4 Vorlesung ETHZ, Sommersemester 2006 und Datenbanken Erik Wilde 4.7.2006 Übersicht Sichten auf Transfer vs. Datenmodell, Support im DBMS vs. relationales Modell (ER-Modell) SQL/ Integration von in die Welt

Mehr

Multidimensionales Datenmodell, Cognos

Multidimensionales Datenmodell, Cognos Data Warehousing (II): Multidimensionales Datenmodell, Cognos Praktikum: Data Warehousing und Mining Praktikum Data Warehousing und Mining, Sommersemester 2010 Vereinfachte Sicht auf die Referenzarchitektur

Mehr

SQL: statische Integrität

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

Mehr

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

Erstellen einer Datenbank. Datenbankabfragen

Erstellen einer Datenbank. Datenbankabfragen Erstellen einer Datenbank Datenbankabfragen Überblick Die fünf Stationen Semantisches Modell Logisches Modell Prüfung auf Redundanz Abfragen Softwaremäßige Implementierung Zur Erinnerung: Semantisches

Mehr

Anfragen in Operativen Systemen und Data Warehouses

Anfragen in Operativen Systemen und Data Warehouses Data Warehouses Sommersemester 011 Melanie Herschel melanie.herschel@uni-tuebingen.de Lehrstuhl für Datenbanksysteme, Universität Tübingen Anfragen in Operativen Systemen und Data Warehouses Anfragen Operative

Mehr

Fakultät für Informatik & Wirtschaftsinformatik DB & IS II - SS 2015. Metadaten

Fakultät für Informatik & Wirtschaftsinformatik DB & IS II - SS 2015. Metadaten Fakultät für Informatik & Wirtschaftsinformatik Metadaten Metadaten sind Daten über Daten Data-Dictionary speichert Informationen über die Struktur der Daten, z.b.: Tabellen, Spalten, Datentypen Primär-

Mehr

Aufgaben zur fachwissenschaftlichen Prüfung Modul 3 Daten erfassen, ordnen, verarbeiten und austauschen: Schwerpunkt Datenbanken

Aufgaben zur fachwissenschaftlichen Prüfung Modul 3 Daten erfassen, ordnen, verarbeiten und austauschen: Schwerpunkt Datenbanken Aufgaben zur fachwissenschaftlichen Prüfung Modul 3 Daten erfassen, ordnen, verarbeiten und austauschen: Schwerpunkt Datenbanken 30 Wozu dient ein Primärschlüssel? Mit dem Primärschlüssel wird ein Datenfeld

Mehr

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

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

Mehr

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

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

Mehr

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

Vorwort zur 5. Auflage... 15 Über den Autor... 16 Vorwort zur 5. Auflage...................................... 15 Über den Autor............................................ 16 Teil I Grundlagen.............................................. 17 1 Einführung

Mehr

Verknüpfte Daten abfragen mit SPARQL. Thomas Tikwinski, W3C.DE/AT

Verknüpfte Daten abfragen mit SPARQL. Thomas Tikwinski, W3C.DE/AT Verknüpfte Daten abfragen mit SPARQL Thomas Tikwinski, W3C.DE/AT Agenda SPARQL Eine Anfragesprache für RDF Was ist eine SPARQL-Abfrage? Beispiel Arbeiten mit Variablen Komplexere Anfragen Filtern und sortieren

Mehr

Art der Info: Technische Background Info Teil 3 (April 2002)

Art der Info: Technische Background Info Teil 3 (April 2002) Betrifft: Autor: Oracle9i New Features SQL und PL/SQL Patrick Malcherek (patrick.malcherek@trivadis.com) Art der Info: Technische Background Info Teil (April 00) Quelle: Aus dem NF9i-Kurs und NF9i-Techno-Circle

Mehr

Einleitung Projektion Selektion Join Mengenop. Vollst.keit. Einleitung Projektion. Selektion Join. Vollst.keit. Einleitung Projektion Selektion Join

Einleitung Projektion Selektion Join Mengenop. Vollst.keit. Einleitung Projektion. Selektion Join. Vollst.keit. Einleitung Projektion Selektion Join Parsen der Anfrage (SQL) Transformation in eine Standardform (Relationenalgebra) Logische Optimierung Transformation in alternative Zugriffspläne, Physische Optimierung Ausführung des gewählten Zugriffsplans

Mehr

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

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

Mehr

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

DBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt DBS ::: SERIE 5 Die Relation produkt enthält Hersteller, Modellnummer und Produktgattung (pc, laptop oder drucker aller Produkte. Die Modellnummer ist (der Einfachheit halber eindeutig für alle Hersteller

Mehr

Kapitel 19: Datenbank-Unterstützung für Datenanalyse

Kapitel 19: Datenbank-Unterstützung für Datenanalyse Kapitel 19: Datenbank-Unterstützung für Datenanalyse Datenbank-Unterstützung für Data Mining Unterschiedliche Ebenen: Erweiterung des Datenbank-Kerns ( Datenbank-Primitive ), Erweiterungen der Anfragesprache,

Mehr

Ein wesentliches, charakteristisches Merkmal aller Datenbankmanagement

Ein wesentliches, charakteristisches Merkmal aller Datenbankmanagement Anfrageformulierung: Allgemeines Ein wesentliches, charakteristisches Merkmal aller Datenbankmanagement nkmanagement- systeme ist die Unterstützung einer (oder mehrerer) Anfragesprachen. Eine Anfrage ist

Mehr

MySQL-Befehle. In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben.

MySQL-Befehle. In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben. MySQL-Befehle 1. Einleitung In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben. 2. Arbeiten mit Datenbanken 2.1 Datenbank anlegen Eine Datenbank kann man wie folgt

Mehr

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

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

Mehr

Erstellen von Business Intelligence mit Office XP und SQL 2000 Analysis Services

Erstellen von Business Intelligence mit Office XP und SQL 2000 Analysis Services Erstellen von Business Intelligence mit Office XP und SQL 2000 Analysis Services (Engl. Originaltitel: Building Business Intelligence with Office XP and SQL 2000 Analysis Services) In diesem Artikel wird

Mehr

Fachbereich Informatik Praktikumsversuch 4. Prof. Dr.. S. Karczewski Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.06.2015

Fachbereich Informatik Praktikumsversuch 4. Prof. Dr.. S. Karczewski Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.06.2015 Hochschule Darmstadt Data Warehouse SS2015 Fachbereich Informatik Praktikumsversuch 4 Prof. Dr.. S. Karczewski Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.06.2015 1. Kurzbeschreibung Dieses Praktikum

Mehr

Erste Schritte, um selber ConfigMgr Reports zu erstellen

Erste Schritte, um selber ConfigMgr Reports zu erstellen Thomas Kurth CONSULTANT/ MCSE Netree AG thomas.kurth@netree.ch netecm.ch/blog @ ThomasKurth_CH Erste Schritte, um selber ConfigMgr Reports zu erstellen Configuration Manager Ziel Jeder soll nach dieser

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

ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen

ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen C3: Structured Query Language Lernziele: Nach der Bearbeitung dieser Lektion haben Sie folgende Kenntnisse erworben: Sie können elementaren

Mehr