Überlegungen zum Design für Aggregate Storage-Modellstrukturen

In diesem Thema werden wichtige Designaspekte beim Entwerfen der Modellstruktur für Ihren Essbase Aggregate Storage-(ASO-)Cube aufgeführt. Die Art und Weise, wie Abfragen ausgeführt werden, hat viel mit der Planung der Modellstruktur zu tun. Verwenden Sie die Empfehlungen hier, wenn Sie überlegen, welche Hierarchien als gespeicherte, dynamische oder alternative Hierarchien (Attributdimensionen und gemeinsame Elemente) implementiert werden sollen.

Ein implementiertes Beispiel für die Entwurfsempfehlungen finden Sie im Cube ASOsamp.Basic, der in der Galerie verfügbar ist.

Entwurf der ASO-Gliederung

Beachten Sie beim Entwerfen einer Aggregate Storage-Modellstruktur die folgenden Informationen:

  • Verwenden Sie gespeicherte Hierarchien (und nicht dynamische Hierarchien) so weit wie möglich.

  • Verwenden Sie gemeinsame Elemente nur, wenn dies erforderlich ist.

  • Minimieren Sie die Anzahl der Hierarchien. (Beispiel: Jede zusätzliche gespeicherte Hierarchie verlangsamt die Ansichtsauswahl und erhöht möglicherweise die Größe der aggregierten Daten.)

  • Wenn eine Hierarchie eine kleine Teilmenge der ersten Hierarchie ist, sollten Sie die kleine Hierarchie zu einer dynamischen Hierarchie machen. Zu den Überlegungen gehören, wie oft die Hierarchiedaten abgefragt werden und welche Auswirkungen die Abfrageperformance hat, wenn sie zum Zeitpunkt des Abrufs dynamisch abgefragt werden.

  • Die Performance von Attributen entspricht der Performance von Elementen in einer gespeicherten Hierarchie.

  • Je höher die Zuordnungsebene eines Attributs für das Basiselement ist, desto schneller wird die Abfrage abgerufen.

Attribute-Dimensionen und ASO-Cubes

Dieses Thema enthält Informationen zu den Unterschieden zwischen Aggregate Storage- und Block Storage-Cubes in Bezug auf Attribute. Um die Informationen in diesem Thema zu verwenden, sollten Sie bereits mit Attributkonzepten für Blockspeicher vertraut sein. Siehe Mit Essbase-Attributen arbeiten.

Die folgenden Informationen gelten für Attribute-Dimensionen, wenn sie in Aggregate Storage-Cubes verwendet werden:

  • In Attributdimensionen ist nur der Additionsoperator (+) verfügbar.

  • Für eine bestimmte Attribute-Dimension müssen alle Zuordnungen mit einer Ebene der Basisdimension übereinstimmen. Beispiel: Im Cube "ASOsamp.Basic" sind Zuordnungen für die Attributdimension "Store Manager" mit Ebene 0 der Dimension "Stores" verknüpft. Für Attributzuordnungen gelten die folgenden Einschränkungen:

    • Ebene 0: Sie können Attribute jedem Element der Ebene 0 einer dynamischen oder gespeicherten Hierarchie zuordnen, die keine Formel enthält.

    • Nicht-Ebene 0: Attribute können nur Elementen der oberen Ebene in der primären gespeicherten Hierarchie zugeordnet werden.

Attribute-Dimensionen haben keine Hierarchietypen. Sie können keine Attribute-Dimension als dynamische oder gespeicherte Hierarchie angeben. Essbase behandelt Attribute-Dimensionen als gespeicherte alternative Hierarchien der Basisdimension. Beispiel: In der Datenbank ASOsamp.Basic behandelt Essbase die Attributdimension "Store Manager" so, als wäre die Dimension "Store Manager" eine gespeicherte alternative Hierarchie der Dimension "Stores".

Wenn das Abfragetracking aktiviert ist, berücksichtigt Essbase Abfragen zu Attributdimensionsdaten und kann Attribute-Dimensionselemente in die Aggregatansichtsauswahl einbeziehen. Weitere Informationen finden Sie unter Ansichten basierend auf Verwendung auswählen.

Hinweis:

Abfragen für Attributelemente, die Nicht-Level-0-Elementen zugeordnet sind, geben Werte für Nachkommen des Nicht-Level-0-Elements zurück. Dieses Verhalten von Abfragen für Attributelemente in Aggregate Storage-Cubes unterscheidet sich vom Verhalten in Block Storage-Cubes.

Attributabfragen für ASO-Cubes

Beim Auswählen und Erstellen von Ansichten auf Basis von Attributabfragedaten werden einige Abfragen von Attributdaten zum Zeitpunkt des Abrufs immer dynamisch berechnet, was sich auf die Abfrageperformance auswirken kann.

Jede Abfrage, die Attribute-Dimensionselemente enthält, muss auch mindestens ein Element aus der Basisdimension enthalten. Wenn die Abfrage eine einzelne Attribute-Dimension und ein Sum-of-all-Dimensionselement umfasst, aggregiert Essbase die Abfragedaten, wodurch die Abfrageperformance möglicherweise verbessert wird. In anderen Fällen muss Essbase die Abfrage zum Zeitpunkt des Abrufs berechnen.

In der folgenden Tabelle werden Attributabfragetypen und die Berechnung der Abfrage durch Essbase beschrieben:

Tabelle 36-2: Attributabfragen und Berechnungsperformance

Attributabfragetyp Abfrageberechnungstyp

Die Abfrage umfasst ein Sum-of-all-Basisdimensionselement und Elemente aus einer Attribute-Dimension.

Essbase kann Abfragedaten aggregieren und so die Abfrageperformance verbessern.

Die Abfrage umfasst alle Elemente der Basisdimension und Elemente aus mehreren Attribute-Dimensionen.

Essbase berechnet die Abfrage zum Zeitpunkt des Abrufs basierend auf den Eingabedaten der Ebene 0.

Die Abfrage umfasst jedes untergeordnete Element des Basisdimensionselements (oder Dimensionselements, das nur als Label gekennzeichnet ist) und Elemente aus einer Attribute-Dimension.

Essbase berechnet die Abfrage zum Zeitpunkt des Abrufs basierend auf den Eingabedaten der Ebene 0 oder auf Daten aus Aggregationen in der Basisdimension.

In der folgenden Gliederungsdarstellung ist RealDimension die Summe aller untergeordneten Elemente (sie ist nicht nur als Label gekennzeichnet). Wenn eine Abfrage ein oder mehrere Elemente aus einer einzelnen Attribute-Dimension (z.B. AttributeDimension1) enthält, die mit dem Basisdimensionswert (RealDimension) durchkreuzt werden, kann Essbase Aggregatzellen für die Daten erstellen und so die Abfrageperformance verbessern.

Die folgenden Abfragen werden jedoch immer zum Zeitpunkt des Abrufs berechnet:

  • Jede Abfrage, die Daten für Elemente aus einer Attribute-Dimension (z.B. AttributeDimension1) und einem der untergeordneten Elemente von RealDimension anfordert, wird dynamisch zum Abrufzeitpunkt basierend auf den Eingabedaten der Ebene 0 oder auf Daten aus Aggregationen berechnet.

  • Jede Abfrage, die Daten aus mehreren Attributdimensionen (z.B. AttributeDimension1 und AttributeDimension2) und einer Basiselementdimension (z.B. RealDimension) anfordert, wird dynamisch zum Abrufzeitpunkt basierend auf Eingabedaten der Ebene 0 berechnet.

    Abbildung 36-4: Gliederung für Attributabfragebeispiel


    Diese Abbildung zeigt eine Gliederung, die als Beispiel für eine Attributabfrage verwendet wird, wie im Text vor der Abbildung beschrieben.

Attributabfragen und mehrere Hierarchien

Wenn Sie Daten aus einer Dimension mit mehreren Hierarchien abfragen, kann sich die Abfrageperformance verbessern, wenn Sie die Daten wie folgt abfragen:

  1. Wählen Sie die abzufragende Hierarchie.

  2. Navigieren Sie zu den detaillierten Daten (z.B. durch Vergrößern der Hierarchie in Smart View).

Wenn dynamische Hierarchieelemente und gespeicherte Hierarchieelemente in dieselbe Abfrage aufgenommen werden, ist möglicherweise ein großer interner Speichercache erforderlich, wodurch die Abfrageperformance verringert wird.