Verdichtungsebenen 

Was sind Verdichtungsebenen?

In einem Führungsinformationssystem werden typischerweise Berichte benötigt, in denen der Endanwender von einer hoch aggregierten Ebene bis zu einer für ihn betriebswirtschaftlich interessanten Detaillierungsstufe navigieren kann. Die ausgewählten Berichtsdaten werden im Hauptspeicher gehalten und können unter Umständen zu einem größeren Datenvolumen und langen Antwortzeiten führen. Es gibt verschiedene Alternativen, die Antwortzeiten eines Berichts zu verbessern. Diese werden im Abschnitt Antwortzeiten optimieren behandelt. In diesem Abschnitt wird die Alternative der Verdichtungsebenen erläutert und die Richtlinien, nach denen Sie Ihre Verdichtungsebenen definieren sollen, erklärt. Wie Sie Verdichtungsebenen anlegen und aufbauen, lesen Sie im Customizing.

Eine Verdichtungsebene speichert Bewegungsdaten eines Aspektes redundant in einer komprimierten Form. In den Bewegungsdaten werden einzelne Objekte durch eine Menge von Merkmalen beschrieben. Verdichten bedeutet, daß ausgewählte Merkmale weggelassen werden. Objekte aus dem originären Datenbestand, die sich nicht mehr unterscheiden, nachdem Merkmale weggelassen wurden, werden in der Verdichtungsebene zu einem Objekt zusammengefaßt. Die Verdichtung ermöglicht dem Berichtswesen einen schnellen Lesezugriff auf die Daten.

Das folgende einfache Beispiel zeigt, wie Bewegungsdatensätze auf der Datenbank verdichtet werden können, um die Lesezeit im Bericht zu verbessern.

Mitarbeiter xxx auf Kostenstelle 100 im Buchungskreis 1000 hat 50 Überstunden geleistet

Mitarbeiter yyy auf Kostenstelle 100 im Buchungskreis 1000 hat 30 Überstunden geleistet

Mitarbeiter zzz auf Kostenstelle 200 im Buchungskreis 1000 hat 20 Überstunden geleistet

Wenn diese Bewegungsdaten so übertragen werden, werden drei Sätze in der Bewegungsdatenbanktabelle geschrieben:

Mitarbeiter

Kostenstelle

Buchungskreis

Überstunden

xxx

100

1000

50

yyy

100

1000

30

zzz

200

1000

20

 

In der Praxis werden im Berichtswesen nur verhältnismäßig wenige Analysepfade verwendet, sodaß Sie für das obige Beispiel eine Verdichtungsebene definieren könnten.

Eine Verdichtungsebene wird auf Kostenstellenebene gebildet, d.h. es wird über das Merkmal Mitarbeiter verdichtet. Für diese Verdichtung fallen diese Sätze zusammen und es bleibt die folgende Struktur:

Kostenstelle

Buchungskreis

Überstunden

100

1000

80

200

1000

20

 

In diesem Fall könnte man die Verdichtungsebene noch höher setzen, indem sie auf Buchungskreisebene gebildet wird.

Buchungskreis

Überstunden

1000

100

 

Je mehr Merkmale verdichtet werden, desto höher ist der Komprimierungsgrad der Daten und desto eingeschränkter ist die Verwendung der Ebene. Sie müssen zwischen der verkürzten Antwortzeit aufgrund der Verdichtung und dem möglichen Einsatz der Ebene im Berichtswesen abwägen. Sehr stark verdichtete Daten werden Ihnen keinen Vorteil bringen, wenn sie nur in wenigen Berichten verwendet werden können.

Bei der Definition haben Sie die folgenden Möglichkeiten:

  1. Merkmale, über die verdichtet wird
  2. Die Kennzahlwerte werden über ein Merkmal verdichtet.
    Im Bericht können Sie anschließend das Merkmal nicht mehr auswerten.

  3. Freie Merkmale
  4. Die Kennzahlwerte können nicht über das Merkmal verdichtet werden.
    Im Bericht können Sie anschließend beliebige Merkmalswerte auswerten.

  5. Feste Merkmale

Die Kennzahlwerte werden nur für einen bestimmten Merkmalswert gehalten.
Im Bericht können Sie anschließend nur diesen Merkmalswert auswerten.

Je nachdem wie Sie ein Merkmal in Ihrem Bericht spezifiziert haben, entscheiden Sie, ob ein Merkmal verdichtet, mit einem festen Wert versehen oder freigelassen werden sollte. Sie definieren die Verdichtungsebenen im Customizing. Damit die Verdichtungsebenen von Berichten verwendet werden können, müssen die Ebenen mit Daten versorgt werden. Sie planen dazu einen Job zum Aufbau der Verdichtungsebenen in der Hintergrundverarbeitung ein. Erst dann können die Ebenen von Berichten verwendet werden. Nachdem die Ebenen aufgebaut worden sind, werden die Daten immer zeitgleich mit Veränderungen in der Bewegungsdatenbank des Aspektes vom System fortgeschrieben. Damit sind die verdichteten Daten so aktuell wie die Bewegungsdaten. Weitere Informationen hierzu finden Sie im Customizing.

Beim Ausführen eines Berichtes prüft das System, ob es für den Bericht gesicherte Daten gibt. Falls Daten schon gesichert wurden, werden diese angezeigt. Falls keine Daten für den Bericht gesichert wurden, aber eine passende Verdichtungsebene existiert, werden die Daten der Verdichtungsebene aufgerufen. Wenn es weder gesicherte noch Daten aus einer passenden Verdichtungsebene gibt, werden die Daten neu selektiert.

Wann benutze ich Verdichtungsebenen?

Falls die Antwortzeiten der Berichte in Ihrem Führungsinformationssystem nicht zufriedenstellend sind, sollten Sie sich überlegen, ob Sie Verdichtungsebenen definieren.

Bevor Sie sich für Verdichtungsebenen entscheiden, sollten Sie sich über die anderen Möglichkeiten zur Verbessung der Antwortzeiten informieren. Hierzu lesen Sie den Abschnitt Antwortzeiten optimieren .

Richtlinien zur Erstellung einer Verdichtungsebene

Bei der Definition einer Verdichtungsebene gibt es oft mehrere mögliche Kombinationen von Merkmalen. Da nicht jede Verdichtungsebene eine Verbesserung der Antwortzeiten gegenüber einem online ausgeführten Bericht herbeiführen kann, gibt es Richtlinien, nach denen Sie Ihre Verdichtungsebenen definieren sollten. Um einen optimalen Verdichtungseffekt zu erreichen, müssen Sie für jede Verdichtungsebene den gewünschten Bericht analysieren, die betroffenen Stamm- und Bewegungsdaten ermitteln und folgende Richtlinien in Erwägung ziehen:

  1. Eine Verdichtungsebene soll im Vergleich zur Anzahl der Sätze in den Bewegungsdaten möglichst wenig Sätze enthalten.
  2. Schätzen Sie die Anzahl der zu lesenden Sätze auf der Datenbank und die Anzahl der Sätze in Ihrer geplanten Verdichtungsebene. Mindestens der Faktor 10 sollte erreicht werden.

    Verdichtungsebenen sollen – falls möglich – über Merkmale mit vielen Werten verdichtet werden. Ein hoher Verdichtungseffekt wird erreicht, wenn Sie z.B. über die Merkmale "Artikel" und "Kunde" verdichten, da diese Merkmale typischerweise viele Werte haben.

    Falls Ihre Verdichtungsebene viele Sätze enthält, muß der entsprechende Bericht so definiert sein, daß er nicht mehr als 10.000 bis 20.000 Sätze aus der Verdichtungsebene lesen muß.

  3. Es sollten möglichst wenig Verdichtungsebenen existieren.
  4. Da die Verdichtungsebenen automatisch aktualisiert werden, führt jede Änderung in den Bewegungsdaten zu einem Update in allen Verdichtungsebenen. Das bedeutet, daß die Änderung eines Bewegungsdatensatzes mehrere Schreibvorgänge der Datenbank verursacht. Wenn es viele Verdichtungsebenen gibt, führt dies zu einer Beeinträchtigung der Performance bei der Datenübernahme.

    Wenn Sie einen Vorschlag für eine Verdichtungsebene erzeugen, sollten Sie den Vorschlag manuell überarbeiten. Sie sollten auch überprüfen, ob eine ähnliche Verdichtungsebene schon existiert. Diese Informationen finden Sie bei der Pflege der Verdichtungsebenen im Übersichts- und Detailbild. Es ist sinnvoll, diese Daten gelegentlich für alle Verdichtungsebenen zu überprüfen, da z.B. die Anzahl der Zugriffe Ihnen bei der Entscheidung helfen kann, ob eine Ebene noch benötigt wird. Weitere Informationen hierzu finden Sie im Customizing.

  5. Abhängige Merkmale sollen in eine Verdichtungsebene immer mit aufgenommen werden.

In vielen Fällen besteht eine Abhängigkeit zwischen mehreren Merkmalen. Wenn z.B. aus der Artikelnummer über die Anreicherung die Artikelgruppe gefüllt wird, dann ist die Artikelgruppe vom Artikel abhängig. Das Datenvolumen in der Verdichtungsebene wird durch die Hinzunahme der Artikelgruppe nicht vergrößert und führt nicht zu einer Verschlechterung der Performance. Der Vorteil ist, daß die Verdichtungsebene auch von Berichten verwendet werden kann, die diese abhängigen Merkmale enthalten.

Die Abhängigkeit zwischen zwei Merkmalen entsteht in den meisten Fällen durch die Anreicherung (siehe Anreicherung von Merkmalswerten ) oder wird von Vorsystemen bereits mitgegeben, z.B. ein im Kundenstamm hinterlegter Vertreter zum Kunden.

Wie Sie Verdichtungsebenen anlegen und aufbauen, ist im Customizing ausführlich beschrieben.

Ein Beispiel zur Definition einer Verdichtungsebene finden Sie im Abschnitt Beispiel: Wie kann ich die Antwortzeiten meines Berichtes verbessern? .