der Folien - HMS Analytical Software GmbH

Werbung
Überblick über
aktuelle DatenAbfragesprachen
David Schäfer
Das Universum der Programmiersprachen
imperativ
C
prozedural
F#
objektorientiert
C#
Java
deklarativ
Das Universum der Programmiersprachen
deklarativ
SQL
MDX
DAX
XPath /
XQuery
Das Universum der Programmiersprachen
deklarativ
SQL
SQL – Structured Query Language
• relationale Datenbanken
• Industrie Standard ISO/IEC 9075:2011 (SQL:2011)
• Sub Sets: DRL, DML, DDL, DCL
• Hersteller-spezifische Erweiterungen:
• T-SQL (Transact SQL von Microsoft & Sybase)
• PL/SQL (Procedural Language / SQL von Oracle)
• SQL/PSM (SQL / Persistent Stored Module von u. A.
MySQL)
• Etc.
Das Universum der Programmiersprachen
deklarativ
XQuery
XPath
XPath – XML Path Language
• Abfragesprache für XML Dokumente
• W3C Standard
• Adressierungs-Syntax auf Basis von „Pfad“
durch logischer Dokumentstruktur, wie ein Navi:
DE/HE/Darmstadt/Schlossgraben/1/darmstadtium
• Kein XML-Syntax sondern:
• Concept Node (Begin der Adresse)
• Logical Tree (Festgelegter Dokumentstruktur)
• Logical Relationships (ancestor, attribute, child, parent, etc.)
XML Datei books.xml:
XQuery – XML Query Language
• Abfragesprache für XML Dateien
• W3C Empfehlung
• Nutzt XPath-Expressions
• Mehr vordefinierte Funktionen
• „XQuery ist das SQL für XML Dateien“:
for $par in $page//p
let $words := fn:count(fn:tokenize($par/content(), " \n\t"))
where $words gt 0
return <p>
{$par/content()}<br/>
Size: { $words }
</p>
Das Universum der Programmiersprachen
deklarativ
MDX
MDX – Multi Dimensional eXpressions
• multidimensionale Datenbanken (Cubes)
• von Microsoft definiert in OLEDB for OLAP
specification
• industriebreit akzeptiert und unterstützt (Microsoft,
IBM Cognos, SAS, SAP BW, etc.)
• Hersteller-spezifischer
Einschränkungen/Erweiterungen
MDX – Multi Dimensional eXpressions
MDX sieht aus wie SQL, aber nicht ganz:
Das Universum der Programmiersprachen
deklarativ
DAX
DAX – Data Analysis eXpressions
• Abfragesprache für
• PowerPivot
• Analysis Services - Tabular Model
• Entwickelt von Microsoft
• Wurzeln:
• MDX
• Excel Funktionen
• Zeilenbasiert
DAX - Anwendungsbereiche
• Berechnete Spalte
• Spalte in der Datenbank – Basis DAX Ausdruck
• Persistente Speicherung
• Berechnete Felder
• DAX Formeln auf aggregierten Werten
• Werden zur Laufzeit berechnet
• Erzeugung neuer Tabelle
• Definition einer neuen Tabelle – Basis DAX Tabellen Ausdruck
DAX – Zeilenbasiert
Berechnete Spalte
Berechnetes Feld
DAX - Funktionsgruppen
• Zeitintelligenz, Datums- und Uhrzeit
• NEXTYEAR, PREVIOUSDAY, PARALLELPERIOD
• YEAR, DAY, NOW
• Filter
• DISTINCT, FILTER(S), RELATED(TABLE)
• Text & Information
• RIGHT, SEARCH, UPPER
• ISTEXT, ISNUMBER, ISERROR
• Logik
• IF, AND, SWITCH
• Mathematik, Statistik & Trigonometrie
• ABS, FLOOR, LOG, COUNT, SUM
• SUMX, COUNTX
Weiterführende Links:
• Andreas Wolter's SQL Server & BI Blog
• MSDN - OLEDB for OLAP Specification
• Chris Webb's BI Blog
• MSDN - DAX Overview
• MSDN - DAX Referenz
• MSDN - Analysis Services & Power Pivot Blog
• PowerPivot (Pro) Blog
Vielen Dank für die Aufmerksamkeit!
Herzlichen Glückwunsch an die PASS und
viel Spaß auf der Abendveranstaltung
David Schäfer – Senior Software Ingenieur
HMS Analytical Software
([email protected])
Herunterladen