# OLAP-Würfel

Ein OLAP-Würfel (englisch OLAP cube, von Online Analytical Processing) oder Datenwürfel (englisch data cube), auch Cube-Operator genannt, ist ein in der Data-Warehouse-Theorie gebräuchlicher Begriff zur logischen Darstellung von Daten. Die Daten werden dabei als Elemente eines mehrdimensionalen Würfels (engl. cube) angeordnet. Die Dimensionen des Würfels beschreiben die Daten und erlauben auf einfache Weise den Zugriff. Daten können über eine oder mehrere Achsen des Würfels ausgewählt werden. Die Bezeichnung OLAP (Online Analytical Processing) stammt aus der Datenanalyse.
Diese Art der Darstellung ist für die Analyse von Daten von Vorteil, da auf verschiedene Aspekte (Dimensionen) der Daten auf gleiche Weise zugegriffen wird. Daher auch der Einsatz bei OLAP-Anwendungen, welche die Daten in einem Data-Warehouse analysieren oder visuell aufbereiten.

## Grundoperationen

Typische OLAP Operationen sind rollup (Aggregation der Daten erhöhen) und drill-down (Aggregation der Daten verringern oder Detaillevel erhöhen) entlang einer oder mehrerer Dimensionen. Im Detail können folgende Operationen angewandt werden:
* Slicing: Ausschneiden von Scheiben aus dem Datenwürfel
* Dicing: Hierbei wird ein kleinerer Würfel erzeugt, der ein Teilvolumen des Gesamtwürfels enthält. Dieses geschieht durch Teileinschränkungen auf einer oder mehreren Dimensionen.
* Pivoting / Rotation: Drehen des Datenwürfels, so dass mindestens eine andere Dimension sichtbar wird
* Drill-Down: Aggregationen eines Informationsobjekts auf detaillierte Werte herunterbrechen; „Hereinzoomen“
* Drill-Up/Roll-Up: Gegenoperation zu Drill-Down; Verdichten auf höhere Hierarchiestufe (z. B. von der Monats- auf die Jahressicht)
* Drill-Across: Dimension auf der gleichen Hierarchiestufe; Betrachtung der benachbarten Dimensionselemente (andere Region, anderes Produkt, anderer Monat)
* Drill-Through: während man sich bei Drill-Up oder Drill-Down vertikal durch die Daten(Hierarchie) bewegt, wird Drill-Through dafür verwendet horizontal weitere OLAP-Würfel auszuwerten; manchmal wird Drill-Across mit Drill-Through gleichgesetzt
* Split: Der Split-Operator ermöglicht es, einen Wert nach mehreren Dimensionen aufzuteilen, um weitere Details zu ermitteln (z. B. den Umsatz einer Filiale für eine bestimmte Menge von Produkten)
* Merge / Drill-In: Im Gegensatz zu Split wird hier die Granularität durch das Entfernen zusätzlicher Dimensionen wieder verringert.

## Beispiel

OLAP-Würfel kommen häufig bei der Analyse von Unternehmensdaten zum Einsatz, beispielsweise Umsätze, Lagerbestände und Verkäufe. Zu den Dimensionen, die hier wichtig sein können, zählen beispielsweise Zeit, Filiale, Verkäufer und Produkt.
Der Würfel stellt also die Daten (auch Fakten genannt) Umsatz, Lagerbestand, Verkäufe abhängig von den Dimensionen Zeitraum, Filiale, Verkäufer, Kunde und Produkt dar.
Es lassen sich somit sehr leicht die folgenden Fragen beantworten:
* Wie viel Kaffee wurde vergangene Woche in der Filiale Marburg verkauft?
* Wie viel Kaffee befindet sich dort im Lager?
* Welcher Verkäufer hat den meisten Kaffee verkauft?
* Welche Filiale hat vergangenes Jahr den meisten Umsatz gemacht?

## Technische Umsetzung

Die Daten werden multidimensional (MOLAP), relational (ROLAP) oder in Hybrid-Konfiguration (HOLAP) gespeichert. Einige Systeme laden die Daten bei der Initialisierung komplett in den Hauptspeicher, um schnelle Zugriffe zu ermöglichen. In der Regel ist der Würfel „dünn besetzt“ (englisch sparse), das heißt, die allermeisten möglichen Intersektionen im Würfel sind nicht mit Werten belegt. Der Umgang einer Software mit diesen Teilen des Würfels trägt entscheidend zum Speicherbedarf und zur Performance des jeweiligen Systems bei.
Für relationale Systeme ist der Einsatz eines Sternschemas typisch. Dabei wird eine Trennung in eine Faktentabelle und mehrere darum gruppierte Dimensionstabellen vorgenommen.