Ordre de résolution en mode hybride

L'ordre de résolution dans Essbase détermine l'ordre dans lequel le calcul dynamique est exécuté en mode hybride. Vous pouvez personnaliser l'ordre de résolution ou garder celui par défaut, qui est optimisé pour des performances élevées et l'analyse des dépendances.

Le concept d'ordre de résolution s'applique à l'exécution du calcul dynamique, qu'il soit initié par une formule de membre dynamique ou une dépendance dynamique dans un script de calcul. Lorsqu'une cellule est évaluée dans une requête multidimensionnelle, l'ordre dans lequel les calculs doivent être résolus peut être ambigu, sauf si l'ordre de résolution est indiqué pour donner la priorité de calcul requise.

Vous pouvez définir l'ordre de résolution des dimensions ou des membres, ou vous pouvez utiliser l'ordre de résolution Essbase par défaut. L'ordre de résolution minimum qui peut être défini est 0 et le maximum est 127. Un ordre de résolution plus important signifie que le membre est calculé plus tard. Par exemple, un membre avec un ordre de résolution de 1 est résolu avant un membre avec un ordre de résolution de 2.

Lorsque le mode hybride est activé, l'ordre de résolution par défaut (également appelé ordre de calcul) correspond à celui des bases de données en mode "block storage" :

Dimension/Type de membre Valeur d'ordre de résolution par défaut
Membres stockés 0
Membres de dimension dispersée 10
Membres de dimension Compte dense 30
Membres de dimension Temps dense 40
Membres de dimension standard dense 50
Membres de dimension d'attribut 90
Membres dynamiques à deux passes 100
Ensembles nommés ou membres calculés MDX (définis dans MDX WITH) 120

En résumé, l'ordre de résolution par défaut en mode hybride impose que les membres stockés soient calculés avant les membres de calcul dynamique et que les dimensions dispersées soient calculées avant les dimensions denses, selon l'ordre lequel ils apparaissent dans l'outline (de haut en bas).

Les membres dynamiques (avec ou sans formules) qui ne disposent pas d'un ordre de résolution indiqué héritent de l'ordre de résolution de leur dimension, sauf s'ils sont balisés comme étant à deux passes.

Le calcul à deux passes est un paramètre que vous pouvez appliquer, en mode "block storage", aux membres avec des formules qui doivent être calculées deux fois pour produire la valeur correcte.

Remarque :

N'utilisez pas le calcul à deux passes avec les cubes en mode hybride. Utilisez uniquement l'ordre de résolution.

Le calcul à deux passes n'étant pas applicable en mode hybride, tous les membres balisés à deux passes sont calculés en dernier, après les attributs. En mode hybride, vous devez implémenter un ordre de résolution personnalisé, au lieu du calcul à deux passes, si l'ordre de résolution par défaut ne correspond pas à vos besoins.

L'ordre de résolution par défaut en mode hybride est optimisé pour les scénarios suivants :

  • Les références d'avance, dans lesquelles une formule de membre dynamique fait référence à un membre qui arrive plus tard dans l'ordre d'outline. Il n'existe aucune dépendance d'ordre d'outline en mode hybride.

  • L'agrégation de valeurs enfant basées sur un ordre d'outline, qui correspond étroitement à l'agrégation à l'aide de formules équivalentes.

  • Les membres denses dynamiques en tant que dépendances dans des formules dispersées. En mode hybride, si une formule dispersée fait référence à un membre dynamique dense, la référence est ignorée, car les dimensions dispersées sont calculées en premier. Pour modifier cela, affectez un ordre de résolution à la dimension dispersée qui est supérieur à (calculé après) l'ordre de résolution de la dimension dense.

Personnalisation de l'ordre de résolution

Si vous avez besoin d'ajuster le comportement des calculs dynamiques en mode hybride, vous pouvez y arriver en personnalisant l'ordre de résolution des dimensions et des membres sans apporter de modifications majeures à l'outline.

Si vous implémentez un ordre de résolution personnalisé, il remplace l'ordre par défaut. Si les membres ou les dimensions possèdent le même ordre de résolution, l'ordre dans lequel ils apparaissent dans l'outline (de haut en bas) résout le conflit.

L'ordre de résolution du membre de dimension supérieur s'applique à tous les membres dynamiques de la dimension, sauf si vous avez personnalisé un ordre de résolution pour certains membres.

Pour modifier l'ordre de résolution, utilisez l'éditeur d'outline dans l'interface Web Essbase ou utilisez Smart View (reportez-vous à Modification de l'ordre de résolution d'un PDV sélectionné).

L'ordre de résolution minimum qui peut être défini est 0 et le maximum est 127. Un ordre de résolution plus élevé signifie que le membre est calculé plus tard.

Pour explorer les cas d'emploi de l'ordre de résolution, reportez-vous aux modèles d'ordre de résolution dans la section technique de la galerie des classeurs d'application, que vous pouvez trouver dans le catalogue de fichiers d'Essbase.

Remarques concernant l'ordre de résolution en mode non hybride

Dans les cubes en mode "aggregate storage", procédez comme suit :

  • L'ordre de résolution est défini sur 0 pour toutes les dimensions.

  • L'agrégation est exécutée dans l'ordre de l'outline, cependant :

    • Les membres de hiérarchie stockés sont traités en premier.
    • Les membres de hiérarchie dynamiques sont traités ensuite.

Dans des cubes en mode "block storage" non hybride, l'ordre de résolution par défaut est le suivant :

  • dispersé avant dense

  • comptes avant heure

  • attributs en dernier

Remarque :

Si l'ordre de résolution des membres de Comptes est défini manuellement comme supérieur à l'ordre de résolution des membres de Temps, les membres de Comptes seront évalués après les membres de Série chronologique dynamique.