openBI: Von Excel-Tabellen zu OLAP-Würfeln …

18. Januar 2009 um 11:21 am | Veröffentlicht in BI, Palo | 2 Kommentare
Schlagwörter: ,

cubeIch habe die Erfahrung gemacht, dass Berichtsempfänger, Controller und Entwickler aus der relationalen Datenbankwelt sich schwer tun, die Idee der multidimensionalen – OLAP- Analyse von Daten zu verinnerlichen.  Ich möchte daher mit diesem ausführlichen Beitrag die Frage beantworten: „Was ist eigentlich OLAP?“ und einige für die Modellierung von OLAP Datenbanken wichtige Begriffe erläutern.

OK, das Akronym für OnLine Analytical Processing hat irgendetwas mit Würfeln (engl. cubes) und Berichtswesen zu tun, aber was bringt es dem Controller & Berichtswerker bei der täglichen Arbeit?

Einfache Antwort: Ein Würfel unterstützt bei Adhoc-Analysen. Letztlich ist ein Würfel nicht anderes, als eine „Menge von vordefinierten Antworten“. Vorbei die Zeiten, wo eine spontane Anfrage des Managements durch langwieriges „number-crunchen“ aus manuelles Downloads der operativen Systeme durch den Controller beantwortet werden musste. Die Kunst bei der Einführung von OLAP-Systemen besteht jedoch darin, die möglichen Fragen zu erarbeiten!

Im folgenden werde ich anhand eines Fallbeispiels – einer mittelständischen Bäckerei – einige wesentliche Begriffe erläutern, die für die Modellierung von OLAP-Würfeln erforderlich sind. In einem späteren Blog werde ich dann – ausgehend von diesem Beispiel – die wichtigsten OLAP-Analysefunktionen erklären.

Folgende Ausgangsituation:

Die Großbäckerei BackFrisch produziert täglich Brot, Brötchen und Kuchen für verschieden Filialen in Norddeutschland. Der Geschäftsführer Herr Wichtig steht seit einigen Monaten vor dem Problem, dass von einigen Backprodukten zuviel produziert und an die Zentrale zurückgeliefert werden. Andere Waren sind dagegen laut Aussage der Filialleiter(innen) nach wenigen Stunden ausverkauft. Um eine bessere Planungsgrundlage zu bekommen, entscheidet sich Herr Wichtig ein OLAP-System einzuführen. Seine Controllerin Frau Innova – eine Excelliebhaberin – schlägt vor,  die Open Source (M)OLAP-Datenbank Palo zu probieren: Palo kann kostenlos verwendet werden und fügt sich nahtlos in Excel ein.

Nach der anfänglichen Begeisterung für das Werkzeug folgt die Phase der Ernüchterung. Wie kommen die Daten aus den Filialen in die Datenbank und wie sieht das OLAP-Datenmodell aus? Doch nicht so ganz trivial …
Man wendet sich an einen freiberuflichen Berater – Herrn Hell – der von einem Geschäftsfreund empfohlen wurde.

Herr Hell lässt sich zunächst das fachliche Problem erklären und stellt anschließend die aus seiner Perspektive notwendigen Fragen für die Würfelmodellierung in Palo:

  1. Welche Kennzahlen wollen sie auswerten?
    Jeder Würfel enthält Kennzahlen! Sie quantifizieren betriebliche Tatbestände. Typische Kennzahlen sind z.B. Umsatz, Kosten und Gewinn, aber auch Mengen oder Bestände.
  2. Welche Dimensionen werden in den Würfel aufgenommen?
    Jeder Würfel/cube besteht aus Dimensionen! Sie bilden die betriebswirtschaftlichen Aspekte ab, nach denen ausgewertet werden soll: Kunden, Produkte, Organisationseinheiten, … sowie – immer dabei – die  Zeit.
    Die Dimensionen stellen in einem dreidimensionalen OLAP-Modell die Achsen dar. Auf den Achsen werden die (Dimensions-)Elemente – also die konkreten Dimensionsausprägungen – abgebildet.Eine typische Frage an einen Würfel ist z.B.: „Zeige mir den Umsatz nach Produkten, anschließend nach Regionen über die Monate des Jahres 2007″. Hierfür wird auch der Begriff  „Pivotieren“ verwendet.

Herr Frisch und Frau Innova erarbeiten mit Herrn Hell folgende Dimensionen, die nach den Kennzahlen gelieferte und verkaufte Menge – die sog. Basiskennzahlen – sowie nach der Abweichung – eine berechnete Kennzahl als Differenz aus den beiden Basiskennzahlen –  ausgewertet werden sollen: Produkte, Filiale, Warengruppe, Stadt, Kalenderwoche und Jahr.

Wie sieht nun der Würfel konkret aus? Einen Würfel zu zeichnen, der mehr als drei Dimensionen abbildet, ist unmöglich. Daher wurden in dem Würfel unten nur die oben unterstrichenen Dimensionen auf den Achsen abgebildet. OLAP-Modelle bestehen aber meist aus mehr als 3 Dimensionen. Deshalb spricht man dann von Hypercubes.

Der Würfel der Bäckerei BackFrisch

Abbildung 1: Der Würfel der Bäckerei BackFrisch

Auf den Achsen sind einige Elemente der jeweiligen Dimension abgebildet. Die Zellen des von diesen Elementen aufgespannten Raums enthalten die Basiskennzahlen. Im „echten“ Leben können das Milliarden und Abermilliarden von Zellen sein. Mittels OLAP-Funktionen können diese jedoch extrem einfach via Mausklicks ausgewertet werden.

In der Abbildung oben sind auf die Dimensionen Zeit und Filialen außerdem noch sogenannte Hierarchien angedeutet. Jede Dimension kann eine oder mehrere Hierarchien enthalten, die Elemente einer Dimension in eine Rangordnung bringen. Sie sind wie ein Familienstammbaum aufgebaut und bedienen sich sogar deren Namen: Man spricht von Eltern- oder Kindknoten.

Hierarchien sind ein sehr leistungsstarkes Merkmal von OLAP, da sie flexibel vom Enduser aufgebaut werden können. Über Hierarchien wird die Analyse nach unterschiedlicher Granularität – Feinheit – ermöglicht: Die „feinste“ Stufe der Dimension Zeit des Würfels oben ist die Kalenderwoche (KW). Die Kalenderwochen werden über eine Hierarchie zu Monaten, diese wiederum zum Quartalen und die zu guter Letzt zu Jahren verdichtet. Ein anderes Beispiel wäre die Verdichtung von Kunden zu Kundengruppen über eine Hierarchie.

Auf diese Weise kann der OLAP-Nutzer sehr einfach vom Allgemeinen bis ins Detail seine Daten analysieren. In diesem Zusammenhang spricht man auch von Navigationspfaden. Wie dies genau abläuft beschreibe ich in einem späteren Blog.

Zu guter Letzt der wichtigste OLAP-Begriff: Aggregation. Das „Hangeln“ entlang von Navigationspfaden heißt immer auch Verdichten oder Verfeinern von Kennzahlwerten – man spricht auch von „Heraus-“ und „Hineinzoomen“.  Die meisten Kennzahlen werden summiert, daher ist die Summenfunktion auch die Standardaggregation in OLAP-Systemen, aber es sind durchaus auch andere Berechnungsvorschriften – z.B. Durchschnitte –  mit OLAP realisierbar.

Es gibt im Grundsatz zwei unterschiedliche technische Möglichkeiten mit Aggregationen umzugehen: Entweder werden die Ergebnisse aller Dimensionskombinationen und Hierarchien vorberechnet und im Hypercube abgelegt – hier spricht man von MOLAP: multidimensionales OLAP. Oder die Aggregation der Kennzahlen passiert erst im Moment der Abfrage durch den Nutzer – diese OLAP-Form wird ROLAP: relationales OLAP genannt.
Ein gut modelliertes MOLAP-System ist naturgemäß erheblich schneller: Es muss nur auf vorkalkulierte Zellinhalte im RAM-Speicher zugreifen und auf dem Bildschirm darstellen, während ROLAP-Anwendungen umfangreiche SQL-Abfragen gegen die zugrundeliegende Datenbank auf einer Festplatte absetzen.
Die Bäckerei BackFrisch hat sich mit Palo für ein MOLAP-System entschieden.

Nach dieser langen Einführung zu OLAP-Würfeln werde ich in einem späteren Blog die wichtigsten OLAP Funktionen – Drill Down/Roll Up und Slice & Dice –  am Beispiel des hier entwickelten Würfelmodells der Bäckerei Backfrisch erläutern. Hierzu greife ich auf Animationen zurück – ein Bild sagt mehr als tausend Worte!

OLAP-Analysen sind nicht besonders „management-freundlich“ … auf höheren Ebenen mag man es gern einfach – wie ich auch. Zum Beispiel über die Auswahl der Sichten/Parameter über Drop-Down-Boxen und die Visualisierung der Information durch Abbildungen. Diese Anwendungen nennt man Dashboards oder Management-Cockpits. Ein Beispieldashboard der Bäckerei BackFrisch auf Basis des hier beschriebenen Modells ist hier zu finden.

Advertisements

2 Kommentare »

RSS feed for comments on this post. TrackBack URI

  1. […] nicht auf. Good! Und noch eine weitere gute Nachricht: jPalo – das Palo-webfrontend für (OLAP-)Adhoc-Analysen – ist in die BI-Suite integriert worden und bietet nur auch eine […]

  2. […] für einen Tag ein, BI einigen Interessierten näher zu bringen. Also haben wir erstmal einige Grundlagen geklärt und Vokabeln […]


Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

Bloggen auf WordPress.com.
Entries und Kommentare feeds.

%d Bloggern gefällt das: