Hiérarchies dans les cubes ASO

Les dimensions des outlines Essbase contiennent une ou plusieurs hiérarchies de niveaux et de membres associés. Les hiérarchies sont stockées ou dynamiques. Les hiérarchies stockées sont agrégées rapidement, en fonction de la structure de l'outline. Les hiérarchies dynamiques sont calculées au moment de l'extraction, à l'aide de formules et de l'ordre de résolution. Une hiérarchie alternative est une structure d'attributs ou de membres partagés.

La dimension Temps dans la base de données ASOsamp.Basic inclut les hiérarchies MTD, QTD et YTD :

Figure 36-1 Profil présentant plusieurs hiérarchies et membres dans la dimension Temps


Cette image présente une outline dans laquelle la dimension Temps est activée pour plusieurs hiérarchies.

Dans un cube en mode "aggregate storage", les hiérarchies peuvent être stockées ou dynamiques.

Une dimension peut contenir des hiérarchies stockées et dynamiques. Chaque type a ses propres avantages et restrictions. Pour utiliser plusieurs hiérarchies dans une dimension (même si elles sont toutes stockées), vous devez activer plusieurs hiérarchies pour celle-ci.

Lorsque vous marquez un membre de dimension en tant que plusieurs hiérarchies activées, il est automatiquement balisé en tant que libellé uniquement.

Si vous ne marquez pas la dimension en tant que hiérarchies multiples activées, la dimension est automatiquement balisée en tant que hiérarchie stockée (à l'exception de la dimension balisée en tant que comptes, qui est balisée en tant que hiérarchie dynamique).

Remarques :

La première hiérarchie d'une dimension à plusieurs hiérarchies doit être une hiérarchie stockée.

Dans l'interface Web Essbase, vous activez plusieurs hiérarchies pour une dimension à l'aide d'une propriété de membre.

Hiérarchies stockées

Les membres des hiérarchies stockées sont agrégés selon la structure de l'outline. Dans la mesure où les bases de données en mode "aggregate storage" sont optimisées pour l'agrégation, l'agrégation des valeurs de données pour les hiérarchies stockées est très rapide. Pour permettre cette agrégation rapide, les membres des hiérarchies stockées sont soumis aux restrictions suivantes :

  • Les hiérarchies stockées peuvent avoir l'opérateur de non-consolidation (~) (uniquement sous les membres de libellé uniquement) ou l'opérateur d'ajout (+).

  • Les hiérarchies stockées ne peuvent pas comporter de formules.

Les hiérarchies stockées sont soumises à des restrictions sur les membres de type libellé uniquement. Reportez-vous à Différences de profil pour ASO.

Dans la hiérarchie ci-dessous, la hiérarchie Toutes les marchandises et la hiérarchie Marchandises haut de gamme sont des hiérarchies stockées. Le membre All Merchandise et le membre High End Merchandise sont les sommets des hiérarchies et sont tous deux balisés en tant que sommet d'une hiérarchie stockée.

Figure 36-2 Profil en mode "aggregate storage" affichant la marchandise haut de gamme de hiérarchie de remplacement dans la dimension Produit


Cette image présente une outline dans laquelle la dimension Products inclut la hiérarchie de remplacement High End Merchandise.

Dans l'interface Web Essbase, vous indiquez une hiérarchie stockée à l'aide d'une propriété de membre.

Vous pouvez baliser le membre supérieur de la hiérarchie en tant que membre supérieur d'une hiérarchie stockée à l'aide de l'instruction Importer la base de données MaxL.

Les membres suivants peuvent être balisés en haut d'une hiérarchie stockée :

  • Membre de dimension (génération 1). Si un membre de dimension est balisé en tant que membre supérieur d'une hiérarchie stockée, la dimension entière est considérée comme une seule hiérarchie stockée et aucun autre membre de la dimension ne peut être balisé en tant que membre supérieur d'une hiérarchie stockée ou dynamique.

  • Enfants du membre de dimension (génération 2). Si un membre de génération 2 est balisé en haut d'une hiérarchie stockée, tous les membres de génération 2 de la dimension doivent également être balisés en haut d'une hiérarchie stockée ou dynamique. La première hiérarchie d'une dimension doit être stockée et

La dimension marquée comme comptes est automatiquement considérée comme une hiérarchie dynamique. Vous ne pouvez pas définir ce type de dimension comme hiérarchies stockées.

Hiérarchies dynamiques

Pour évaluer une hiérarchie dynamique, Essbase calcule, plutôt que d'agréger, les membres et les formules. L'ordre dans lequel les membres et les formules sont évalués est défini par la propriété d'ordre de résolution. Voir Ordre de calcul et ordre de résolution dans les cubes ASO.

Au moment de l'extraction, Essbase calcule les combinaisons de membres requises et toutes les formules de membre d'outline requises. Etant donné que les hiérarchies dynamiques sont calculées, la durée de l'extraction des données peut être plus longue que pour les données extraites à partir de hiérarchies stockées. Toutefois, lorsque vous concevez votre base de données, les hiérarchies dynamiques présentent les avantages suivants :

  • Ils peuvent contenir n'importe quel opérateur de consolidation.

  • Ils peuvent avoir des formules.

Dans l'interface Web Essbase, vous indiquez une hiérarchie dynamique à l'aide d'une propriété de membre.

Vous pouvez baliser le membre supérieur de la hiérarchie en tant que membre supérieur d'une hiérarchie dynamique à l'aide de l'instruction Import de données MaxL.

Les membres suivants peuvent être balisés en haut d'une hiérarchie dynamique :

  • Membre de dimension (génération 1) : si un membre de dimension est balisé en tant que membre supérieur d'une hiérarchie dynamique, la dimension entière est considérée comme une hiérarchie dynamique unique et aucun autre membre de la dimension ne peut être balisé en tant que membre supérieur d'une hiérarchie dynamique ou supérieur d'une hiérarchie stockée.

  • Enfants du membre de dimension (génération 2) : si un membre de génération 2 est balisé en tant que membre supérieur d'une hiérarchie dynamique, tous les membres de génération 2 de la dimension doivent également être balisés en tant que membres supérieurs d'une hiérarchie dynamique ou supérieurs d'une hiérarchie stockée. La première hiérarchie de la dimension doit être une hiérarchie stockée.

Remarques :

Si un membre a l'opérateur de non-consolidation (~) sur tous ses enfants, le membre doit uniquement être marqué comme libellé.

Les comptes balisés de dimension sont automatiquement considérés comme une hiérarchie dynamique. Vous ne pouvez pas définir ce type de dimension comme hiérarchies stockées.

Essbase ne peut pas sélectionner de membres de hiérarchie dynamique pour une vue agrégée.

Hiérarchies de remplacement

Une hiérarchie alternative peut être modélisée de l'une des manières suivantes :

  • En tant que dimension d'attribut, qui utilise des attributs pour classer logiquement les membres au sein de la dimension (par exemple, une dimension Product peut avoir des attributs tels que Size et Flavor).

    Remarques :

    Si vous utilisez une dimension d'attribut comme hiérarchie alternative, une requête utile est un rapport de tableau croisé de membres de dimension d'attribut par membres de dimension de base. Par exemple, un rapport de tableau croisé d'informations sur les ventes de produits peut afficher des attributs de taille (tels que petits et grands) sur des colonnes et des produits sur des lignes. Si vous utilisez des membres partagés comme hiérarchie alternative, vous ne pouvez pas créer la requête de rapport de tableau croisé équivalente des membres partagés par les membres prototypes.

  • Hiérarchie de membres partagés. L'autre hiérarchie comporte des membres partagés qui pointent vers des prototypes de membres des hiérarchies précédentes dans l'outline. Les membres partagés sont regroupés selon une hiérarchie différente de celle des membres prototypes. Les membres partagés sur des hiérarchies dynamiques peuvent avoir des formules. Le tableau suivant présente les hiérarchies de la base de données ASOsamp.Basic. La dimension Products est illustrée ci-après.

Tableau 36-1 Exemples de hiérarchies et de hiérarchies alternatives pour la dimension Produit d'ASOsamp.Basic

Product Hiérarchie Hiérarchie de remplacement (contenant des membres partagés)

Panneau plat

Produits, Toutes les marchandises, Électronique personnelle, Divertissement à la maison, Téléviseurs

Produits, marchandise haut de gamme

TV HD

Produits, Toutes les marchandises, Électronique personnelle, Divertissement à la maison, Téléviseurs

Produits, marchandise haut de gamme

Figure 36-3 Profil en mode "aggregate storage" affichant la marchandise haut de gamme de hiérarchie de remplacement dans la dimension Produit


Cette image présente une outline dans laquelle la dimension Products inclut la hiérarchie de remplacement High End Merchandise.

Autres restrictions de hiérarchie pour les membres partagés

Les restrictions suivantes s'appliquent aux hiérarchies alternatives dans les outlines en mode "aggregate storage" :

  • L'instance prototype du membre doit se produire dans l'outline avant toute instance partagée du membre. Par exemple, dans l'outline ci-dessus, le membre HDTV apparaît dans la hiérarchie All Merchandise avant d'apparaître en tant que membre partagé dans la hiérarchie alternative High End Merchandise.

  • La première hiérarchie d'une dimension dans laquelle plusieurs hiérarchies sont activées ne peut pas contenir de membre partagé.

  • Les dimensions de hiérarchie stockée ne peuvent pas comporter de membres partagés. Les hiérarchies stockées au sein d'une dimension à hiérarchies multiples peuvent avoir des membres partagés.

  • Afin de s'assurer que les valeurs ne sont pas comptées deux fois, une hiérarchie stockée ne peut pas contenir plusieurs copies du même membre partagé. Par exemple, une hiérarchie stockée ne peut pas contenir un membre partagé et ses ancêtres. Dans le plan ci-dessus, vous ne pouvez pas ajouter le membre partagé "Téléviseurs" en tant qu'enfant de "Marchandises haut de gamme", car cela ferait de "Téléviseurs" un frère de ses enfants, des membres partagés "Panneau plat" et "HDTV", provoquant l'ajout des valeurs de "Panneau plat" et "HDTV" à deux reprises.

  • Les instances de prototype d'un membre doivent se trouver dans la même dimension que le membre partagé (identique aux outlines en mode "block storage").

  • Une hiérarchie stockée ne peut pas contenir une instance prototype et une instance partagée du même membre.

  • Une hiérarchie stockée ne peut contenir une instance partagée d'un membre de hiérarchie dynamique que si ce dernier est un membre de niveau 0 et qu'il ne contient pas de formule.

Remarques :

Dans un cube en mode "aggregate storage", un membre partagé partage automatiquement tous les attributs associés à son membre prototype.

Dans un cube ASO, un membre partagé partage automatiquement tous les attributs associés à son membre prototype. Cela s'applique également à un membre partagé implicite (par exemple, un membre qui n'a qu'un seul enfant). Vous pouvez empêcher le partage implicite en définissant la propriété Never Share. Ce comportement des attributs et des membres partagés dans les bases de données ASO est différent de celui des bases de données en mode "block storage".