Aufbau performanter BIC-Auswertungen

Best Practice

Jedes Datenbanksystem kann ausgebremst werden, wenn es nicht optimal abgefragt wird. Schon einige wenige technische Kniffe können dabei helfen, dass BIC schneller berechnet und performantere Auswertungen ermöglicht. Onesimus Klante, Consultant bei TIP HCe, hat langjährige Erfahrung mit Berichtsaufbau und -optimierung. Er gibt in diesem Artikel seine Tipps weiter, um Ihre BIC-Berichte zu optimieren.

Filtern optimal einsetzen

Der wichtigste Schlüssel für schnelle Reaktionszeiten im BIC ist, die Datenmenge für Auswertungen so weit wie möglich einzuschränken. Hierfür sind die folgenden Punkte relevant:

1. Filterkriterien in der MDXValue-Zelle verringern
Hat eine Auswertung viele Spalten und Zeilen, kommen schnell große Mengen MDXValue-Zellen zusammen. Für BIC ist es ein großer Unterschied, ob die Filterkriterien in den MDXValue-Zellen oder der MDXFilter-Zelle angegeben sind, da das Rechnen in den Value-Zellen sehr viel aufwendiger ist. Daher ist es sinnvoll, alle Filterkriterien, die für die komplette Auswertung gelten, in der Filterzelle anzugeben.

2. Filterzellen kaskadieren
Wird eine Auswertung in ähnlicher Weise erneut benötigt, so ist es sinnvoll, die neue Auswertung so anzulegen, dass in der neu angelegten Filterzelle auf die bereits bestehende Filterzelle verwiesen wird. Dadurch müssen nicht beide Zellen den kompletten Cube durchsuchen.

3. Mehrere Filterzellen nutzen
Werden verschiedene Auswertungen benötigt, können diese sowohl auf derselben Filterzelle basieren als auch auf unterschiedlichen. Da jede Filterzelle, die in einem Bericht genutzt wird, zu einer Cube-Abfrage führt, gilt es abzuwägen: Nutzen viele Berichte und Listen dieselbe Filterzelle als Quelle, so kann dies innerhalb von BIC zu einer langsamen Verarbeitung führen. Die intern zu verarbeitende Datenmenge wird zu groß. Wird für ähnliche Berichte jeweils eine eigene Filterzelle verwendet, werden immer wieder ähnliche Auswertungen im Cube ermittelt. Deshalb gilt: Ähnliche Auswertungen sollten in einer Filterzelle zusammengefasst werden.

4. Strukturen verwenden statt vieler Filterkriterien
Die Menge an Filterkriterien, die Sie im BIC auswählen, hat großen Einfluss auf die Performance des Berichtes. Es ist sinnvoller, 40 Diagnosen, die z.B. für eine Auswertung benötigt werden, im WIF in einer Struktur zusammenzufassen, als diese einzeln im BIC auszuwählen.

Listen statt Berichte verwenden

Berichte basieren auf einzelnen MDXValue-Zellen. Jede dieser Zellen muss von Excel einzeln ausgewertet und berechnet werden. Bei Listen hingegen werden die Daten direkt in die einzelnen Zellen geschrieben. Daher ist eine Liste performanter als ein Bericht.

Nicht jede Auswertung lässt sich mit einer Liste realisieren, doch durch die Möglichkeiten der „strukturierten Liste“ und der „Analyze“-Funktion lassen sich viele Berichte auch als Liste darstellen.

Drillfilter im Bericht abschalten

Wenn in einem Bericht gedrillt wird, öffnet BIC standardmäßig nur die Elemente, die auch Daten enthalten. Diese Prüfung kostet Zeit. Wenn diese Funktion jedoch nicht benötigt wird, erfolgt die Auswertung durch ein Abschalten des Filters wesentlich schneller.

„no Empty“-Funktion und „All“ in einer Liste

Auch Listen können weiter optimiert werden. Dies kann mit den Zusatzparametern „no Empty“ oder „All“ im Listenheader erfolgen.

„no Empty“

Dieser Parameter wird in Kennzahlenspalten verwendet. Wird zum Beispiel die „Anzahl Fälle“ für das aktuelle Jahr und das Vorjahr in einer Liste ausgegeben, muss die Liste in jeder Zeile prüfen, ob Daten in einer der beiden Kennzahlenspalten vorhanden sind. Nur dann wird die Zeile ausgegeben.

Wird „no Empty“ hingegen ausschließlich in der Spalte des aktuellen Jahres angegeben, erfolgt diese Prüfung nur noch in dieser einen Spalte. Insbesondere dann, wenn viele Kennzahlenspalten in einer Liste vorhanden sind, kann „no Empty“ die Performance stark verbessern.

„All“

Dieser Parameter wird in Dimensionsspalten verwendet. Er schaltet die Prüfung, ob Daten in einer Zeile vorhanden sind, komplett ab. Dies kann zu erheblichen Performanceverbesserungen führen. Während also der Parameter „All“ alle Prüfungen abschaltet, reduziert „no Empty“ diese auf eine Kennzahlenspalte.

Umfang von Auswertungen reduzieren

Eine Excel-Arbeitsmappe kann eine Vielzahl an Reitern und somit Auswertungen enthalten. Dies kann sehr umfangreich werden, so dass die Übersichtlichkeit abnimmt. In solchen Fällen ist es gegebenenfalls sinnvoll, Auswertungen thematisch in eigene Arbeitsmappen aufzuteilen. Auch innerhalb einer Excel-Arbeitsmappe können Auswertungen ggf. stark zusammengefasst werden. So ist es nicht notwendig die gleiche Auswertung für jede Fachabteilung Einzel in einem eigenen Reiter zu erstellen. Hier reicht ein Reiter, in dem dann zwischen einzelnen Fachabteilungen mit einem Interaktiv-Dropdown gewechselt wird.

Analyze verwenden

Eine weitere Möglichkeit, Auswertungen in unterschiedliche Arbeitsmappen aufzuteilen, ist die Analyze-Funktion. Mit dieser und der Interaktiv-Funktion kann schnell zwischen Arbeitsmappen hin- und hergesprungen werden.

Es gibt verschiedene Punkte, an denen angesetzt werden kann, um performantere Auswertungen zu erhalten. Ein gutes Vorgehen ist es deshalb, nach dem Bauen der eigenen Berichte die genannten Punkte durchzugehen und zu prüfen, welche der Ansätze für die eigenen Berichte sinnvoll sind.

Wenn Sie Fragen zum Berichtsaufbau haben, wenden Sie sich gerne an das TIP HCe-Consulting-Team.

Abb. 1: Drillfilter im Bericht abschalten

Abb. 2: „no Empty“-Parameter

Artikel vom 22. Mai 2023