Succès de calcul

Dans la mesure du possible, Essbase calcule une base de données en mode "block storage" en une seule passe de calcul. Dans certains cas, Essbase doit effectuer plusieurs passes.

En général, Essbase calcule un cube BSO en une seule étape de calcul et chacun des blocs de données requis n'est lu en mémoire qu'une seule fois, puis calculé et enregistré. Toutefois, dans certains cas, Essbase peut avoir besoin d'effectuer plusieurs passes de calcul. Lors des passes suivantes, Essbase remet les blocs de données en mémoire, effectue d'autres calculs sur ces blocs et les enregistre à nouveau.

Lorsque vous effectuez un calcul complet par défaut d'une base de données (CALC ALL), Essbase tente de calculer la base de données en une seule passe. Si vous disposez de dimensions balisées en tant que comptes ou temps, Essbase peut être amené à effectuer plusieurs calculs via la base de données.

Le tableau suivant indique le nombre de calculs réussis effectués par Essbase si des dimensions sont balisées en tant que temps ou comptes et que vous disposez d'au moins une formule dans la dimension Comptes :

Tableau 19-11 Succès de calcul pour les comptes et la dimension Temps

Dimension marquée comme comptes Dimension marquée comme temps Succès de calcul Lors de chaque passe de calcul, Essbase calcule en fonction des éléments suivants :

Dense ou dispersé

aucun

1

Toutes les dimensions

Dense

Dense

1

Toutes les dimensions

Dense

Dispersé

2

Pass 1 : Comptes et dimensions Temps

Pass 2 : Autres dimensions

Dispersé

Dispersé

2

Pass 1 : Comptes et dimensions Temps

Pass 2 : Autres dimensions

Dispersé

Dense

2

Pass 1 : dimension Accounts

Pass 2 : Autres dimensions

Si vous utilisez des formules balisées en tant que deux passes, Essbase peut avoir besoin d'effectuer une passe de calcul extra pour calculer ces formules.

Lorsque vous utilisez un script de calcul pour calculer une base de données, le nombre de calculs qu'Essbase doit effectuer dépend du script de calcul.

Essbase écrit dans le journal d'application l'ordre de calcul des dimensions pour chaque passe et le nombre de cycles effectués dans le cube.

Pour chaque bloc, Essbase décide d'effectuer un calcul dense ou dispersé, selon le type de valeur du bloc. Lorsque vous exécutez un calcul par défaut (CALC ALL), chaque bloc est traité dans l'ordre en fonction de son numéro de bloc.

Essbase calcule les blocs en suivant la procédure suivante :

  • Si le calcul intelligent est activé et que le bloc n'a pas besoin d'être calculé (s'il est marqué comme nettoyé), Essbase ignore le bloc et passe au bloc suivant.

  • Si le bloc doit être recalculé, Essbase vérifie s'il s'agit d'un bloc de niveau 0, d'une entrée ou d'un bloc de niveau supérieur.

  • Si le bloc est un bloc de niveau 0 ou un bloc d'entrée, Essbase effectue un calcul dense sur le bloc. Chaque cellule du bloc est calculée.

  • Si le bloc est un bloc de niveau supérieur, Essbase consolide les valeurs ou effectue un calcul dispersé sur le bloc.

    La combinaison de membres dispersés de chaque bloc de niveau supérieur contient au moins un membre parent. Essbase consolide ou calcule le bloc en fonction de la dimension du membre parent. Par exemple, si le bloc de niveau supérieur est Product -> Florida à partir de la base de données Sample.Basic, Essbase choisit la dimension Product.

    Si la combinaison de membres dispersés pour le bloc comporte plusieurs membres parent, Essbase choisit la dernière dimension dans l'ordre de calcul qui inclut un membre parent. Par exemple, si le bloc concerne Product -> East et que vous effectuez un calcul par défaut sur la base de données Sample.Basic, Essbase choisit la dimension Market, qui contient East. La dimension Market est la dernière dans l'ordre de calcul par défaut car elle est placée après la dimension Product dans l'outline de la base de données. Voir Ordre de calcul des membres.

    En fonction de la dimension dispersée choisie, Essbase consolide les valeurs ou effectue un calcul dispersé sur le bloc :

    • Si une formule est appliquée au membre de bloc sur la dimension dispersée choisie, Essbase effectue un calcul de formule sur la dimension dispersée. Essbase évalue chaque cellule du bloc. La formule affecte uniquement le membre de la dimension dispersée, de sorte que les performances globales du calcul ne sont pas affectées de manière significative.

    • Si la dimension dispersée choisie est une consolidation par défaut, Essbase consolide les valeurs en prenant les valeurs des blocs enfant précédemment calculés.