Mit multidimensionalen und relationalen Daten

Die reine Olap-Lehre gilt im Anwendungsfall nur wenig

28.06.1996

Olap erlaubt den Anwendern verschiedene Sichtweisen und Untersuchungen ein und derselben Daten - man spricht von einer "multidimensionalen Analyse" (MDA), definiert Colin White*. Mit dieser Methode lassen sich Verkaufszahlen etwa nach Produkten, Zeiträumen und Marktgegebenheiten auswerten.

MDA ist jedoch nicht neu. In den 70er Jahren sollten sogenannte Time-sharing-Produkte diese Aufgabe erfüllen, in den 80ern die Tabellenkalkulationen. Olap verschmilzt MDA-Tools und Datenbanktechnologie zu einem integrierten Client-Server-System. Damit stellt sich die Frage, ob sich dafür relationale oder multidimensionale Datenbanken am besten eignen. Tatsächlich, so White, hat jede Alternative ihre Vorzüge.

Die Diskussion sollte White zufolge vornehmlich aus zwei Perspektiven betrachtet werden. Aus Client-Sicht sei insbesondere auf die End-User-Fähigkeiten zu achten. Für die Server-Seite ist die Performance (Antwortzeiten, Anzahl der User, Datenbankgröße) entscheidend. Daneben spielen auch Administrations-Tools und offene Schnittstellen eine Rolle.

Verfügt der Server über eine multidimensionale Architektur, läßt sich damit sowohl das Daten-Management als auch das Analytical Processing erledigen. Es entsteht eine Client-Server-Architektur mit schlanken Clients.

Eine multidimensionale Datenbank muß man sich wie ein Spreadsheet mit zwei Erweiterungen vorstellen: Unterstützung für mehrere Dimensionen und gleichzeitige Zugriffsmöglichkeiten für mehrere Benutzer. Bei diesem Konzept werden die Daten in multidimensionalen Vektoren organisiert und in einer denormalisierten Form abgelegt.

Spezielle Indizierungsschemata und Speicherverwaltungs-Techniken werden für den Datenzugriff, zur Verwaltung wiederholt auftretender Werte und für "Sparse Arrays" benötigt. Sie sorgen gleichzeitig für eine gute Performance, insbesondere bei Anwendungen mit weniger als acht Dimensionen.

Relationalität kostet Leistung

Allerdings fehlt es multidimensionalen Architekturen laut White an standardisierten Schnittstellen. Auch eignen sie sich zwar für kumulierte Daten, jedoch weniger für eine große Menge an Detailinformationen.

Außerdem ist lediglich ein Datenzugriff auf präparierte, statische Daten möglich. Um die multidimensionalen Datenbanken skalierbarer zu machen, bieten manche Hersteller ein sogenanntes "Pass-through" an. Damit sollen Anwender auf relationale Datenbanken, die in der Regel die Detaildaten verwalten, durchgreifen können. Daß dafür zwei Server zu synchronisieren sind, dürfte eine Herausforderung sein.

Bei relationalem Olap ist die multidimensionale Datenbank durch eine relationale ersetzt. Typischerweise enthält sie also die Detaildaten und die verdichteten Informationen. Existieren die kumulierten Daten noch nicht, erzeugt ein Client-Tool sie dynamisch. Das Vorgehen ist zwar flexibler, geht aber häufig auf Kosten der Performance. Zu den Vorteilen zählt, daß für relationale Produkte robuste Tools zur Verfügung stehen. Offene SQL-Schnittstellen ermöglichen es Fremdanbietern, portable Analysewerkzeuge zu entwickeln.

Performance-Einbußen treten durch den Overhead bei der Verknüpfung von Tabellen und beim Indizieren auf. Sie lassen sich allerdings durch Denormalisierung der Tabellen in ein Sternschema mildern (siehe Kasten).

Nachteilig wirkt sich nach Ansicht Whites beim relationalen Konzept auch aus, daß die Datenanalyse auf dem Client ablaufen muß. Im Trend liegt deshalb der Einsatz von Servern, die dafür verantwortlich sind, daß die Clients sich die Server-Informationen teilen können.

*Colin White ist Gründer der Unternehmensberatung Database Associates International (Internet-Adresse: 658674 mcmail.com).