Dimensionsindexe

Der Analyseserver kann bestimmte Prozessdimensionen indexieren. Indexe werden angelegt, um bestimmte Abfragen zu beschleunigen, die einen Filter auf einer solchen Dimension haben. Ein Index wird im Speicher gehalten, so dass das Hinzufügen von weiteren Indexen ggf. eine Erhöhung des konfigurierten Analyseserverspeichers erforderlich macht.

Datenzugriffsdimensionen werden automatisch indexiert. Sie können weitere Dimensionen auswählen, die zu Ihrem Einsatzszenario passen. Dies sind normalerweise eine oder mehrere Dimensionen, die häufig für das selektive Filtern verwendet werden. Ein Beispiel hierfür ist ein stark selektiver Filter, der immer festgelegt ist, wenn auf das Haupt-Dashboard zugegriffen wird. Wenn Sie Empfehlungen benötigen, bei welchen Dimensionen eine Indexierung sinnvoll ist, wenden Sie sich an den Software AG-Produktsupport.

Für mehrstufige, zweistufige, Varianten-, Zeit- und Tageszeitdimensionen können Sie außerdem festlegen, in welcher Granularität (Verfeinerung) der Index gepflegt werden soll. Wenn keine oder eine falsche Verfeinerung angegeben ist, wird die gröbste Stufe (BY_LEVEL_1, BY_LEVEL1_N, BY_YEAR, BY_HOUR_OF_DAY) verwendet.

Sie können Indexe für die folgenden Dimensionstypen verwenden:

Die Indizes werden in der Settings-Datei AnalysisServer_settings.properties festgelegt:

Beispiel

INDEX.PROCESS.VSTEL.USE=true -> Index auf der Dimension VSTEL.

INDEX.PROCESS.MATERIAL.USE=true

INDEX.PROCESS.MATERIAL.REFINEMENT=BY_LEVEL2_4 -> Index auf der zweiten Ebene der Dimension MATERIAL.

INDEX.PROCESS.TIME.USE=true

INDEX.PROCESS.TIME.REFINEMENT=BY_DAY -> Index auf der Dimension TIME mit der Genauigkeit DAY.

Zurzeit werden nur Indexe für Prozessdimensionen unterstützt. Außerdem ist zurzeit nur ein Index pro Dimension erlaubt. Dies bedeutet, dass der Index nur mit einer Verfeinerung erstellt werden kann. Da der Index allerdings für Filter mit jeder Verfeinerung verwendet werden kann, wenn auch nicht mit derselben Leistung, stellt dies kein Problem dar.

Wird ein Index mehrfach (.USE=true/false) aktiviert oder deaktiviert, wird der zuletzt angegebene Wert verwendet. Falls mehrere Verfeinerungen festgelegt sind, wird ebenfalls die zuletzt festgelegte verwendet.