MDX & Export
Zwei verwandte Power-User-Features: der MDX-Editor (zum Schreiben von Abfragen per Hand oder zum Hand-Tunen der Ausgabe des Workbench) und die Export-Optionen (um das Ergebnis in ein anderes Tool oder einen Bericht zu bekommen).
Der MDX-Editor
Hinter den Kulissen kompiliert jeder Drag-and-Drop im Workbench zu einer MDX-Abfrage — der Abfragesprache für OLAP-Cubes. Die meisten Analysen brauchen nie, dass Sie sich MDX ansehen; das Workbench ist für den häufigen Fall schneller. Aber manchmal wollen Sie es:
- Debugging. Eine Workbench-Abfrage liefert unerwartete Zahlen, und Sie möchten genau sehen, was gefragt wurde.
- Kopieren. Ein anderes Tool spricht MDX (oder Sie speichern eine Abfrage in einer Datei zur Versionskontrolle).
- Hand-Tunen. Das Workbench gibt Ihnen einen Ausgangspunkt; Sie verfeinern.
- Dinge, die das Workbench nicht ausdrücken kann. Einige
fortgeschrittene MDX-Features (Named Sets, Sub-Cubes, komplexe
WITH-Klauseln) sind nicht als Drop-Zone-Möglichkeiten oberflächlich verfügbar.
Das MDX-Panel öffnen
Klicken Sie auf Show MDX in der Symbolleiste. Ein Panel schiebt sich heraus, das die aktuelle Abfrage als MDX zeigt.
Das Panel ist standardmäßig schreibgeschützt; klicken Sie auf Switch to MDX, um die Abfrage editierbar zu machen. Ab diesem Punkt erstellen Sie MDX direkt — die Drop Zones treiben die Abfrage nicht mehr. Um in den Workbench-Modus zurückzukehren, verwirft Switch back Ihre MDX-Bearbeitungen und baut aus den Drop Zones neu.
Wie MDX aussieht
Eine minimale MDX-Abfrage:
SELECT { [Measures].[Revenue] } ON COLUMNS, { [Time].[Year].MEMBERS } ON ROWSFROM [Sales]Das gibt Ihnen eine Jahr-für-Jahr-Umsatztabelle — dasselbe, als würden Sie Revenue in Spalten und Time › Year in Zeilen ziehen.
Interessanteres MDX:
WITH MEMBER [Measures].[YoY Growth] AS ([Measures].[Revenue], [Time].CURRENTMEMBER) / ([Measures].[Revenue], [Time].CURRENTMEMBER.PREVMEMBER) - 1, FORMAT_STRING = '0.0%'SELECT { [Measures].[Revenue], [Measures].[YoY Growth] } ON COLUMNS, { [Time].[Year].MEMBERS } ON ROWSFROM [Sales]Das fügt einen Year-over-Year-Wachstumsprozentsatz als Calculated Measure hinzu — das Workbench könnte ein ähnliches Ergebnis mit dem Calculated-Members-Dialog erzeugen, aber es als MDX zu schreiben gibt Ihnen exakte Kontrolle.
Hilfreiche MDX-Muster
Ein paar Muster, die zu kennen sich lohnt:
TOPCOUNT(set, n, expression)— Top-N nach einem Measure. Z. B.TOPCOUNT([Customer].[Name].MEMBERS, 10, [Measures].[Revenue])gibt Ihnen die 10 umsatzstärksten Kunden.FILTER(set, predicate)— eine Menge einschränken.FILTER([Region].[Name].MEMBERS, [Measures].[Revenue] > 1000000)behält nur Regionen mit Umsatz über einer Million.PARALLELPERIOD— derselbe Zeitraum im Vorjahr. Sauberer als manuell1vom Year-Level abzuziehen.NON EMPTYauf einer Menge — verwirft Zeilen oder Spalten mit allen-Null-Measures, äquivalent zum Non-Empty-Toggle des Workbench.
Für eine tiefere MDX-Referenz ist Microsofts MDX-Dokumentation der Standard. Mondrian (die Engine hinter Saiku) implementiert die meiste Standard-MDX mit ein paar Eigenheiten, die in den Upstream-Mondrian-Dokumenten dokumentiert sind.
Daten exportieren
Die Symbolleiste hat drei Export-Schaltflächen. Sie produzieren Verschiedenes für verschiedene Zielgruppen.
Export nach Excel (XLSX)
Was Sie bekommen: eine .xlsx-Datei mit der Ergebnistabelle als
Sheet formatiert. Die Pivot-Struktur (Zeilen, Spalten, Summen)
bleibt erhalten. Mehrere Measures werden zu mehreren Spalten.
Drillthrough-Kinder werden zu eingerückten Zeilen im selben Sheet.
Am besten für: jemandem zu übergeben, der weiter in Excel analysieren wird, wo die Pivot-Form nützlich ist.
Export nach CSV
Was Sie bekommen: ein einfaches CSV mit einer Zeile pro Zelle der Ergebnistabelle. Header-Zeile trägt die Spaltennamen. Summen sind standardmäßig ausgeschlossen (ein CSV mit gemischten Summen- + Detailzeilen ist für nachgelagerte Parser verwirrend).
Am besten für: in ein anderes Tool pipen — ein Python-Skript, ein BI-Tool, ein Data Warehouse, alles, was tabellarische Daten will.
Export nach PDF
Was Sie bekommen: eine PDF-Darstellung der aktuellen Ansicht — die Ergebnistabelle ODER das Chart, was auch immer angezeigt wird. Mehrseitige Ausgabe für große Tabellen; das Chart passt auf eine Seite.
Am besten für: in einen Bericht einfügen, als Momentaufnahme e-mailen, einen bestimmten Befund neben seinem Visuellen archivieren.
Drillthrough-Export
Rechtsklicken Sie eine beliebige Zelle im Ergebnis und wählen Sie Export drillthrough. Dies umgeht die Cube-Aggregation vollständig und exportiert die rohen Faktentabellenzeilen, die dieser einen Zelle zugrunde liegen. Nützlich, wenn jemand eine Zahl hinterfragt und Sie ihm die zugrundeliegenden Records senden möchten.
Drillthrough-Exporte sind absichtlich nur CSV — die rohen Zeilen haben keine Pivot-Struktur, die zu bewahren wäre.
Wann welchen Export verwenden
- CSV, wenn die Daten woanders zur weiteren Verarbeitung hingehen.
- Excel, wenn ein Mensch in Excel mit den Daten weiterarbeiten wird.
- PDF, wenn die Ausgabe das endgültige Liefergut ist — eine Momentaufnahme für einen Bericht, ein E-Mail-Anhang, ein Bildschirm-Sharing-Share-Out.
- Drillthrough, wenn Sie die zugrundeliegenden Zeilen hinter einer bestimmten aggregierten Zahl benötigen.
Eine Anmerkung zu Zeilenlimits
Saiku begrenzt die Exportgröße nicht künstlich, aber die zugrundeliegende Warehouse-Abfrage muss abgeschlossen werden. Ein Drillthrough mit einer Million Zeilen braucht eine Weile zum Laufen und eine Weile zum Herunterladen. Wenn Sie routinemäßig Hunderttausende von Zeilen exportieren, überlegen Sie, ob die Cube-Aggregation das tut, was sie sollte — der ganze Sinn von OLAP ist zusammenzufassen, nicht Zeilen zu dumpen.
Wie geht es weiter?
- Eine Abfrage bauen — die Workbench-seitige Alternative zu MDX.
- Erkenntnisse aus Ihren Daten gewinnen — wie der Export für den Empfänger tatsächlich nützlich wird.