Berechnungsreihenfolge und Lösungsreihenfolge in ASO-Cubes
Die Berechnungsreihenfolge für Essbase Aggregate Storage-(ASO-)Cubes unterscheidet sich von der Berechnungsreihenfolge für Block Storage-Cubes. Gespeicherte Hierarchien und Attribute-Dimensionen werden konsolidiert und dann dynamische Hierarchien basierend auf einer definierten Lösungsreihenfolge ausgewertet.
Bei Aggregate Storage-Cubes berechnet Essbase Daten in der folgenden Reihenfolge:
-
Aggregiert Elemente gespeicherter Hierarchien und Attribute-Dimensionen. Die Reihenfolge, in der Elemente und Dimensionen aggregiert werden, wird intern optimiert und ändert sich entsprechend der Art der Cube-Modellstruktur und der vorhandenen Aggregationen. Da die Aggregation additiv ist, wirkt sich die Reihenfolge, in der Essbase die Dimensionen und Elemente aggregiert, nicht auf die Ergebnisse aus.
Da die interne Aggregationsreihenfolge für einen Aggregate Storage Cube nicht vorhersehbar ist, sind inhärente Rundungsfehler ebenfalls nicht vorhersehbar. Diese Rundungsfehler sind das erwartete Verhalten bei der Computerberechnung und in Bezug auf die betreffenden Datenwerte äußerst gering.
-
Berechnet Elemente und Formeln für dynamische Hierarchiedimensionen. Die Reihenfolge, in der Elemente und Formeln ausgewertet werden, wird durch die Eigenschaft "Lösungsreihenfolge" definiert, die Sie für jedes Element oder jede Dimension festlegen können. Die Berechnungsreihenfolge kann sich auf die Berechnungsergebnisse auswirken.
Auftragseigenschaft lösen
Das Konzept der Lösungsreihenfolge gilt für die Abfrageausführung. Wenn eine Zelle in einer mehrdimensionalen Abfrage ausgewertet wird, ist die Reihenfolge, in der die Berechnungen aufgelöst werden müssen, möglicherweise mehrdeutig. Um Mehrdeutigkeiten zu entfernen, können Sie mit der Eigenschaft "Auflösungsreihenfolge" die erforderliche Berechnungspriorität angeben.
Hinweis:
Es empfiehlt sich, die Lösungsreihenfolge anzugeben, indem Sie die Eigenschaft "Lösungsreihenfolge" auf Element- oder Dimensionsebene festlegen. Elemente Ohne Formeln, für die keine Solve-Reihenfolge angegeben ist, erben die Lösungsreihenfolge ihrer Dimension. Elemente mit Formeln, die keine angegebene Lösungsreihenfolge aufweisen, haben die Lösungsreihenfolge Null.
Verwenden Sie den Modellstruktureditor in der Essbase-Weboberfläche oder Smart View, um die Lösungsreihenfolge zu ändern. Um die Lösungsreihenfolge für ein berechnetes Element anzugeben, können Sie den Parameter solve_order im Mit Abschnitt einer MDX-Abfrage verwenden.
Der Wert der Eigenschaft "Lösungsreihenfolge" bestimmt die Priorität, mit der Essbase die Formeln berechnet. Die Formel der Elemente, für die eine Lösungsfolge angegeben ist, wird von der niedrigsten zur höchsten Lösung errechnet. Sie können eine Lösungsreihenfolge zwischen 0 und 127 festlegen. Der Standardwert lautet 0.
Sie können die Lösungsreihenfolge auf Elementebene oder auf Dimensionsebene angeben. Essbase verwendet die folgenden Informationen, um die Berechnungspriorität zu definieren:
-
Element-Solve-Reihenfolge
-
Dimensionslösungsreihenfolge (Elemente ohne Formeln, für die Sie keine Elementlösungsreihenfolge angeben, erben die Lösungsreihenfolge ihrer Dimension. Elemente mit Formeln, für die Sie keine Lösungsreihenfolge für ein Element angeben, haben eine Lösungsreihenfolge von Null.)
Wenn mehrere Elemente dieselbe Lösungsreihenfolge aufweisen, werden die Elemente in der umgekehrten Reihenfolge ausgewertet, in der ihre Dimensionen im Outline auftreten. Das Element, das später in der Gliederung auftritt, hat Vorrang.
Die Berechnungsreihenfolge der Bindungssituation unterscheidet sich für berechnete Elemente, die in einer MDX-Abfrage für Blockspeicher-Cubes definiert sind.
Hinweis:
Wenn eine Elementformel vom Wert eines anderen Elements abhängig ist, muss das Element mit der Formel eine höhere Lösungsfolge als das Element oder die Elemente haben, von denen es abhängig ist. Beispiel: In der Gliederung "ASOSamp.Basic" hängt die durchschnittliche Menge/Transaktion vom Wert der Einheiten und Transaktionen ab. Die durchschnittliche Menge/Transaktion muss einen höheren Lösungsauftrag aufweisen als Einheiten und Transaktionen.
Beispiel für die Eigenschaft "Auflösungsreihenfolge"
Das folgende Beispiel basiert auf dem Cube ASOSamp.Basic. Um Mehrdeutigkeiten in Abfrageergebnissen zu entfernen, verwendet das Beispiel die Eigenschaft "Auflösungsreihenfolge", um die erforderliche Berechnungspriorität anzugeben.
Die unten gezeigte Tabellenabfrage ruft Daten für die Anzahl der verkauften Einheiten und die Anzahl der Transaktionen für Januar des aktuellen Jahres und für Januar des Vorjahrs ab. Das Abweichungselement zeigt die Differenz zwischen dem aktuellen Jahr und dem Vorjahr an. Das Element "Durchschn. Einheiten/Transaktion" zeigt ein Verhältnis der Anzahl verkaufter Einheiten pro Transaktion an.
Abbildung 37-5 Ergebnisse aus der Tabellenabfrage von ASOSamp.Basic-Cube, der die Abweichung zwischen zwei Verhältnissen zeigt (C12)

Die folgende Abbildung zeigt die Cube-Modellstruktur für diese Elemente und die Formeln, die auf die Elemente "Abweichung" und "Durchschn. Einheiten/Transaktion" angewendet werden.
Abbildung 37-6 ASOSamp.Basic Cube mit den Dimensionen "Maße", "Jahre" und "Zeit"

Bei der Berechnung der Abweichung der durchschnittlichen Einheiten pro Transaktion (Zelle C12 im Tabellenbeispiel) könnte das Ergebnis die Abweichung zwischen den beiden Verhältnissen sein, oder das Ergebnis könnte das Verhältnis der beiden Abweichungen sein. Das Ergebnis hängt davon ab, ob Essbase der Formel für "Abweichung" oder der Formel für "Durchschn. Einheiten/Transaktion" Vorrang gibt.
Der Wert der Eigenschaft "Lösungsreihenfolge", die mit den Elementen in der Modellstruktur verknüpft ist, bestimmt die Priorität, mit der Essbase die Formeln auswertet. Je höher die Einstellung der Lösungsreihenfolge ist, desto später wird das Element berechnet. Beispiel: Eine Formel mit der Lösungsreihenfolge "1" wird vor einem Element mit der Lösungsreihenfolge "2" berechnet.
Wenn im Beispiel das Abweichungselement eine niedrigere Lösungsreihenfolge als das Element "Durchschn. Einheiten/Transaktion" aufweist, hat die Formel des Abweichungselements Vorrang, und das Ergebnis ist die Abweichung zwischen zwei Verhältnissen. Dies ist im ASOSamp.Basic-Cube der Fall, da die Lösungsreihenfolge des Abweichungselements 10 und die Lösungsreihenfolge des Elements "Durchschn. Einheiten/Transaktion" 20 ist. Die Formel für die Abweichung hat Vorrang, da das Abweichungselement die niedrigere Lösungsreihenfolge aufweist. Das Ergebnis für Zelle C12 der Abfrage im Tabellenbeispiel ist die Abweichung zwischen den beiden Verhältnissen, wie in der folgenden Tabelle dargestellt:
Tabelle 37-4: Mit der Eigenschaft "Lösungsreihenfolge" die Abweichung zwischen zwei Verhältnissen angeben
| Mitglied | Lösungsreihenfolge | Formel | Ergebnis der Schnittmenge von Abweichung und durchschn. Einheiten/Transaktion (Zelle C12) |
|---|---|---|---|
|
Abweichung |
10 |
Aktuelles Jahr - Vorjahr |
Durchschnittliche Einheiten/Transaktion im laufenden Jahr - Durchschnittliche Einheiten/Transaktion im Vorjahr 0,94894382 (Zelle C6) - 0,954252111 (Zelle C9) = -0,005308291 (Zelle C12) |
|
Durchschn. Einheiten/Transaktion |
20 |
Einheiten/Transaktionen |
Wenn Sie alternativ den Cube "ASOSamp.Basic" ändern und dem Element "Durchschn. Einheiten/Transaktion" eine niedrigere Lösungsreihenfolge als dem Element "Variance" zuweisen, hat die Formel im Element "Durchschn. Einheiten/Transaktion" Vorrang. Das Ergebnis ist das Verhältnis zweier Abweichungen, wie in der folgenden Tabelle und im folgenden Tabellenbeispiel gezeigt:
Tabelle 37-5: Verhältnis zweier Abweichungen mit der Eigenschaft "Lösungsreihenfolge" angeben
| Mitglied | Lösungsreihenfolge | Formel | Ergebnis der Schnittmenge von Abweichung und durchschn. Einheiten/Transaktion (Zelle C12) |
|---|---|---|---|
|
Abweichung |
20 |
Aktuelles Jahr - Vorjahr |
Abweichung der Einheiten (aktuelles Jahr ggü. Vorjahr) / Abweichung der Transaktionen 10585 (Zelle C10) / 11340 (Zelle C11) = 0,933421517 (Zelle C12) |
|
Durchschn. Einheiten/Transaktion |
10 |
Einheiten/Transaktionen |
Abbildung 37-7 Ergebnisse aus der Tabellenabfrage von ASOSamp.Basic Cube mit dem Verhältnis zweier Abweichungen (C12)
