Présentation des dimensions d'attribut
Pour illustrer l'objectif des dimensions d'attribut, considérez la base de données Sample Basic, disponible dans la section galerie du catalogue de fichiers Essbase. Dans cette base de données, les produits ont des attributs qui sont des caractéristiques des produits, telles que la taille et l'emballage d'un produit.
Les membres d'attribut résident dans les dimensions d'attribut. Lorsqu'elle est affichée dans le visualiseur/l'éditeur d'outline de l'interface Web Essbase, une dimension d'attribut comporte la lettre A en regard de son nom dans l'outline.
L'image ci-dessous présente l'outline Sample Basic présentant la dimension Product et trois dimensions d'attribut : Caffeinated, Ounces et Pkg Type. A droite de la dimension Produit, les termes Caféiné, Onces et Type de conditionnement indiquent que ces dimensions d'attribut sont associées à la dimension Produit.

Les attributs sont associés à des dimensions dispersées, autres que des attributs, appelées dimensions de base. Dans l'exemple ci-dessus, la dimension Product est la dimension de base des dimensions d'attribut Caféiné, Onces et Type de conditionnement. Market est la dimension de base pour les dimensions d'attribut Population et Intro Date.
Remarques :
Les dimensions et les membres d'attribut sont calcul dynamique (à l'exception des attributs non agrégés). Essbase calcule donc les informations d'attribut au moment de l'extraction. Les données d'attribut ne sont pas stockées dans la base de données.
Membres de dimensions d'attribut
Les membres d'une dimension d'attribut Essbase sont des attributs potentiels des membres de la dimension de base associée. Après avoir associé une dimension d'attribut de base à une dimension d'attribut, vous devez associer des membres de cette dimension à des membres de cette dimension.
Le cube Sample_Dynamic Basic comporte cinq dimensions standard (Année, Mesures, Produit, Marché et Scénario) et cinq dimensions d'attribut (Caffeinated, Onces, Type de conditionnement, Population et Date d'introduction).

La dimension standard Produit est associée à quatre dimensions d'attribut : Caféiné, Onces, Type de conditionnement et Date d'introduction. La dimension standard Market est associée à la dimension d'attribut Population.
Le membre de dimension Marché Connecticut est associé au membre 6000000 de la dimension d'attribut Population. Cela fait de 6000000 un attribut du Connecticut.

L'élément de produit 100-10 a trois attributs : il contient de la caféine, est vendu dans des contenants de 12 onces et est vendu en boîtes.

Restrictions applicables aux dimensions et aux membres de base et d'attribut
Lorsque vous implémentez des attributs Essbase dans la base de données, observez les règles relatives aux membres des dimensions d'attribut et aux membres de leurs dimensions de base.
Vous ne pouvez baliser que des dimensions dispersées en tant que dimensions d'attribut.
Avant de pouvoir enregistrer une outline sur le serveur, chaque dimension d'attribut doit être associée à une dimension standard dispersée en tant que dimension de base.
Les dimensions d'attribut doivent être les dernières dimensions de l'outline.
Les dimensions d'attribut ont un paramètre de type : texte, numérique, booléen ou date. Le texte est le paramètre par défaut. Bien qu'il soit affecté au niveau de la dimension, le type s'applique uniquement aux membres de niveau 0 de la dimension. Reportez-vous à Types d'attribut.
Si vous enlevez la balise d'attribut d'une dimension, Essbase enlève les préfixes ou les suffixes de ses noms de membre. Les préfixes et les suffixes ne sont pas visibles dans le profil. Reportez-vous à la section Set Prefix and Suffixe Formats for Member Names of Attribute Dimensions.
Un membre de dimension de base peut avoir plusieurs attributs, mais un seul attribut de chaque dimension d'attribut.
Par exemple, le produit 100-10 peut avoir des attributs de taille et d'emballage, mais une seule taille et un seul type d'emballage.
Vous ne pouvez pas associer un attribut à un membre partagé implicite, dont l'enfant est marqué comme partagé.
Vous pouvez utiliser des valeurs d'attribut dans les calculs dans les comparaisons suivantes :
-
> (supérieur à)
-
>= (supérieur ou égal à)
-
< (inférieur à)
-
<= (inférieur ou égal à)
-
== (égal à)
-
<> ou != (différent de)
-
IN
Restrictions pour l'association de dimensions d'attribut
Lorsque vous associez une dimension d'attribut Essbase à une dimension standard, cette dernière devient la dimension de base pour la dimension d'attribut. La dimension de base doit être dispersée et, bien qu'elle puisse avoir plusieurs associations d'attributs, une dimension d'attribut donnée ne peut avoir qu'une seule dimension de base associée.
Observez les restrictions suivantes sur les associations de dimension d'attribut :
-
Une dimension d'attribut doit être associée à une dimension standard dispersée.
-
Une dimension standard peut être une dimension de base pour plusieurs dimensions d'attribut.
-
Une dimension d'attribut ne peut être associée qu'à une seule dimension de type de base.
Par exemple, supposons qu'il existe une dimension d'attribut Size avec les membres Small, Medium et Large.

Si vous associez la dimension d'attribut Taille à la dimension Produit, vous ne pouvez pas associer la dimension d'attribut Taille à la dimension Marché. Le suivi des informations relatives à la taille de la dimension Marché nécessite une autre dimension d'attribut portant un nom différent.
Restrictions pour l'association de membres d'attribut
Lorsque vous associez des membres de dimensions d'attribut Essbase à des membres de dimensions de base, observez les règles relatives aux niveaux d'association. En outre, vous ne pouvez pas associer plusieurs attributs de la même dimension à un seul membre de base.
Observez les restrictions suivantes sur les associations de membres d'attribut :
-
Vous ne pouvez pas associer plusieurs membres de la même dimension d'attribut au même membre de dimension de base. Par exemple, les types de conditionnement Bouteille et Can ne peuvent pas être associés à la fois au produit 100-30.
-
Vous pouvez associer des membres de différentes dimensions d'attribut au même membre d'une dimension de base. Par exemple, un produit de cola décaféiné (100-30) vendu dans des bouteilles de 16 onces a trois attributs : caféiné : faux ; onces : 16 ; et Pkg Type : bouteille.

-
Essbase n'exige pas que chaque membre d'une dimension de base soit associé à un membre d'une dimension d'attribut.
-
Les membres de niveau 0 des dimensions d'attribut sont les seuls membres que vous pouvez associer aux membres de dimension de base.
Par exemple, dans la dimension d'attribut Population, vous ne pouvez associer que des membres de niveau 0, tels que 3000000, 600000 et 900000, à des membres de la dimension Market. Vous ne pouvez pas associer un membre de niveau 1 tel que Small.

Le nom du membre de niveau 0 d'une dimension d'attribut est la valeur d'attribut. Les seuls membres des dimensions d'attribut ayant des valeurs d'attribut sont les membres de niveau 0.
Vous pouvez utiliser les membres de niveau supérieur des dimensions d'attribut pour sélectionner et regrouper des données. Par exemple, vous pouvez utiliser Small, membre de niveau 1 de la dimension d'attribut Population, pour extraire les ventes dans les catégories de population 3000000 et 6000000.
-
Associez les membres d'attribut uniquement aux membres de niveau 0 de la dimension de base correspondante. Les associations d'attributs définies sur les membres de niveau autre que 0 d'une dimension de base ne sont pas prises en charge et peuvent produire des résultats incorrects ou incomplets dans les requêtes d'attribut.
Cette restriction s'applique à :- Cubes de stockage de blocs hybrides (BSO), qu'ils soient partitionnés ou non.
- Cubes en mode "aggregate storage" (ASO) utilisant des partitions transparentes ou fédérées.
- Cubes BSO (block storage) classiques qui utilisent des partitions fédérées.
Cette restriction ne s'applique pas aux éléments suivants :- Cubes BSO (block storage) classiques (non hybrides) sans partitions ou avec partitions transparentes.
- Cubes en mode "aggregate storage" (ASO) sans partitions
-
Tous les membres de dimension de base associés à des membres d'une dimension d'attribut particulière doivent être au même niveau. C'est ce qu'on appelle le "niveau d'association". La première association d'attributs détermine le niveau d'association.
-
Vous ne pouvez pas associer un attribut à un membre partagé implicite, dont l'enfant est marqué comme partagé.
Types d'attribut
Les dimensions d'attribut Essbase sont de type texte, numérique, booléen ou date. Le type que vous sélectionnez active les fonctions appropriées pour regrouper, sélectionner ou calculer les données. Bien qu'il soit affecté au niveau de la dimension, le type d'attribut affecte uniquement les membres de niveau 0 de la dimension d'attribut.
Type d'attribut texte
Le type d'attribut par défaut est Texte. Les attributs de type Texte permettent une sélection de base de membres d'attribut et la comparaison d'attributs lors de calculs. Etant donné que les comparaisons sont textuelles, Essbase compare les caractères. Par exemple, le type d'emballage Bouteille est inférieur à l'emballage de type Can, car la note B se situe avant la note C dans l'alphabet. Dans la base de données Sample Basic, Pkg Type est une dimension d'attribut de texte.
Type d'attribut numérique
Les noms des membres de niveau 0 des dimensions d'attribut numérique sont des valeurs numériques. Ces noms (valeurs) peuvent être inclus dans des membres de dimension d'attribut numérique lors de calculs. Par exemple, vous pouvez utiliser le nombre d'onces spécifié dans l'attribut Onces pour calculer le profit par once de chaque produit.
Vous pouvez également associer des attributs numériques à des fourchettes de valeurs de dimension de base. Par exemple, pour analyser les ventes de produits par groupe de population de marché (états avec 3 000 000 habitants ou moins dans un groupe, états avec une population comprise entre 3 000 001 et 6 000 000 habitants dans un autre groupe, etc.). Reportez-vous à Configuration de noms de membre représentant des plages de valeurs.
Essbase prend en charge les attributs de date du 1 er janvier 1970 au 1er janvier 2038.
Type d'attribut booléen
Toutes les dimensions d'attribut booléen d'une base de données ne contiennent que deux membres. Les noms de membre doivent correspondre aux paramètres de la base de données, par exemple True et False. S'il existe plusieurs dimensions d'attribut booléen, indiquez un format de nom de membre de préfixe ou de suffixe pour garantir des noms de membre uniques (par exemple, Caffeinated_True et Caffeinated_False). Voir Définir des noms de membre d'attribut booléen.
Type d'attribut de date
Vous pouvez utiliser des attributs de type date pour indiquer le format de date (moï-jour-année ou jour-mois-année) ainsi que pour séquencer des informations en conséquence. Reportez-vous à Modification des noms de membre dans les dimensions d'attribut de date. Vous pouvez utiliser des attributs de date dans les calculs. Par exemple, vous pouvez comparer des dates dans un calcul qui sélectionne les ventes de produits à partir des marchés établis depuis le 10-12-1999.
Essbase prend en charge les attributs de date du 1 er janvier 1970 au 1er janvier 2038.
Comparaison des dimensions d'attribut et standard
Les dimensions et les membres d'attribut sont similaires aux dimensions et aux membres standard. Vous pouvez ajouter des alias et des commentaires, inclure des hiérarchies et nommer des générations/niveaux. Les dimensions d'attribut doivent être dispersées, Calcul dynamique et positionnées à la fin de l'outline, sans formules ni membres partagés.
Le tableau suivant décrit les principales différences entre les dimensions d'attribut et standard et leurs membres.
Tableau 6-2 Différences entre les dimensions d'attribut et standard
| Fonctionnalité | Dimensions d'attribut | Dimensions standard |
|---|---|---|
|
Stockage |
Dispersé. La dimension de base d'une dimension d'attribut doit également être dispersée |
Elles peuvent être denses ou dispersées |
|
Propriété de stockage |
Peut être Calcul dynamique uniquement. Par conséquent, ils ne sont pas stockés dans la base de données. L'outline n'affiche pas cette propriété. |
Peut être Stocker des données, Calcul dynamique, Ne jamais partager ou Libellé uniquement |
|
Position dans le profil |
Doit être la dernière dimension de l'outline |
Doit être au-dessus de toutes les dimensions d'attribut dans l'outline |
|
Partitions |
Impossible de définir des dimensions d'attribut, mais vous pouvez utiliser des attributs pour définir une partition sur une dimension de base |
Peut être défini selon des dimensions standard |
|
Formules (sur les membres) |
ne peut pas être associé |
Peut être associé |
|
Membres partagés |
Non autorisé |
Autorisé |
|
Propriété de membre de calcul à deux passes |
Non disponible |
Disponibilité |
|
Calcul à deux passes avec formule d'exécution |
Si une formule de membre contient une fonction dépendante de l'exécution associée à un nom de membre d'attribut et que le membre associé à la formule est marqué comme deux passes, le calcul ignore le membre et émet un message d'avertissement. Les fonctions dépendantes de l'exécution incluent : @CURRMBR, @PARENT, @PARENTVAL, @SPARENTVAL, @MDPARENTVAL, @ANCEST, @ANCESTVAL, @SANCESTVAL et @MDANCESTVAL. |
Le calcul est effectué sur les membres standard avec des formules d'exécution et des passes balisées. |
|
Dimensions multiples à deux passes : ordre de calcul |
L'ordre de calcul des membres marqués comme deux passes dépend de l'ordre dans l'outline. La dernière dimension est calculée en dernier. |
Le résultat du calcul ne dépend pas de l'ordre de l'outline pour les membres balisés à deux passes dans plusieurs dimensions. |
|
Calcul à deux passes sans formule de membre |
Calcul ignoré, message d'avertissement émis. Par conséquent, le croisement des membres balisés à deux passes et des membres de niveau supérieur peut renvoyer des résultats différents du calcul sur les dimensions standard. |
Disponibilité |
|
Membres de calcul dynamique denses dans des blocs stockés inexistants |
Les calculs ignorent les dimensions denses si elles se trouvent sur des blocs stockés inexistants. Pour que les attributs fonctionnent sur des membres denses, des blocs de données doivent exister pour les membres denses. Lors de l'extraction de données sur un membre dense qui a une formule de calcul dynamique et aucun attribut, Essbase crée dynamiquement le bloc de données et renvoie une valeur. Toutefois, si le membre dense Calcul dynamique possède un attribut, l'extraction sur le membre d'attribut entraîne #MISSING car Essbase ignore le calcul dynamique sur le membre dense et, par conséquent, le bloc de données n'est pas créé. Pour identifier les blocs stockés qui n'existent pas, exportez la base de données ou exécutez une requête pour déterminer si le bloc contient des données. |
Disponibilité |
|
Attributs UDA sur les membres |
Non autorisé |
Autorisé |
|
Consolider |
Pour tous les membres, calculé via les membres de la dimension Attribute Calculations : Sum, Count, Min, Max et Avg. Les opérateurs de consolidation de l'outline sont ignorés lors du calcul des attributs. |
Opération de consolidation indiquée par l'affectation du symbole de consolidation souhaité à chaque membre |
|
Sélection de membres facilitée par la saisie de membres de niveau 0 |
Les types disponibles sont texte, numérique, booléen et date. |
Tous les membres traités comme du texte |
|
Associations |
Doit être associé à une dimension de base |
S/O |
|
Analyse des feuilles de calcul |
Répertoriez les données de dimension de base associées à l'attribut sélectionné. Par exemple, l'exploration vers le bas de l'attribut Verre affiche les ventes pour chaque produit emballé dans du verre, où Produit est la dimension de base de la dimension d'attribut Type de conditionnement. |
Répertoriez les niveaux de détail inférieurs ou semblables dans les dimensions standard. Par exemple, l'analyse descendante du trimestre 1 affiche la liste des produits et leurs ventes pour ce trimestre. |
Ordre de résolution et attributs de résolution
Si le mode hybride est activé pour votre cube Essbase, vous pouvez définir l'ordre de résolution des dimensions d'attribut et de leurs dimensions de base, ce qui évite d'avoir à baliser les membres en tant que deux passes.
En mode hybride, l'ordre de calcul par défaut (également appelé ordre de résolution) correspond à celui des bases en mode "block storage", avec quelques améliorations. Si vous voulez utiliser un ordre de résolution autre que celui par défaut, vous pouvez définir un ordre de résolution personnalisé pour les dimensions et les membres.
Pour plus d'informations sur le mode hybride, reportez-vous à Adoption du mode hybride pour le traitement analytique rapide.
Calculs à deux passes sur les dimensions d'attribut
Le calcul à deux passes est ignoré pour les calculs d'attribut sur les membres Essbase qui n'ont pas de formule ou qui ont une formule non prise en charge.
L'exemple suivant, basé sur la dimension Product de la base de données Sample Basic, illustre le fonctionnement des calculs à deux passes sur les dimensions d'attribut. Supposons que le membre "400-30" soit marqué comme deux passes.
Si le membre "400-30" a la formule de membre suivante :
="400–10";Essbase exécute la formule lors d'une extraction sur "400-30".
Si la formule de membre "400-30" est la suivante :
=@CURRMBR("Market");Essbase ignore le calcul car la formule inclut la fonction d'exécution @CURRMBR, qui n'est pas autorisée, et émet le message d'erreur suivant :
Two-pass calc skipped on member [400-30] in attribute calcSi "400-30" n'a pas de formule de membre, le même message d'erreur est généré car un membre marqué comme deux passes doit avoir une formule.
Comparaison des attributs et attributs défini par l'utilisateur
Les attributs et les attributs définis par l'utilisateur permettent une analyse basée sur les caractéristiques des données. Les attributs offrent une plus grande capacité que les attributs définis par l'utilisateur. Cette rubrique décrit les différences entre les attributs et les attributs définis par l'utilisateur en termes de stockage, d'extraction, de conversion et de calcul des données Essbase.
Stockage des données
Les attributs peuvent être associés à des dimensions dispersées uniquement, tandis que les attributs définis par l'utilisateur peuvent être utilisés avec des dimensions denses et dispersées.
Extraction des données
| Extraction des données | Attributs | Attributs UDA |
|---|---|---|
|
Vous pouvez regrouper et extraire les totaux consolidés par attribut ou valeur UDA. Par exemple, associez la valeur High Focus Item à différents membres de la dimension Product et utilisez ce terme pour extraire les totaux et les détails de ces membres uniquement. |
Pris en charge Simple |
Pris en charge Plus difficile à implémenter, nécessitant des scripts ou des commandes de calcul supplémentaires |
|
Vous pouvez classer les attributs dans une hiérarchie et extraire les totaux consolidés par niveau supérieur dans la hiérarchie d'attributs. Par exemple, si chaque produit a un attribut de taille tel que 8, 12, 16 ou 32, et que les tailles sont classées comme petites, moyennes et grandes. Vous pouvez voir le total des ventes de petits produits. |
Pris en charge |
Pris en charge Plus difficile à mettre en oeuvre |
|
Vous pouvez créer des vues de tableau croisé affichant des totaux agrégés d'attributs associés à la même dimension de base. |
Pris en charge Vous pouvez afficher une matrice de toutes les valeurs de chaque dimension d'attribut. |
Non prises en charge Vous pouvez extraire uniquement les totaux en fonction de valeurs UDA spécifiques. |
|
Vous pouvez utiliser les opérateurs booléens AND, OR et NOT avec des valeurs d'attribut et d'attribut défini par l'utilisateur pour affiner une requête. Par exemple, vous pouvez sélectionner des boissons décaféinées dans le groupe de 100 produits. |
Pris en charge |
Pris en charge |
|
Etant donné que les attributs sont de type texte, booléen, date ou numérique, vous pouvez utiliser les opérateurs et fonctions appropriés pour utiliser et afficher les données d'attribut. Par exemple, vous pouvez afficher les totaux des ventes de tous les produits introduits après une date spécifique. |
Pris en charge |
Non prises en charge |
|
Vous pouvez regrouper des attributs numériques dans des plages de valeurs et laisser le processus de construction de dimension associer automatiquement le membre de base à la plage appropriée. Par exemple, vous pouvez regrouper les ventes dans différentes régions en fonction de l'éventail de leur population (moins de 3 millions, entre 3 et 6 millions, etc.). |
Pris en charge |
Non prises en charge |
|
Dans la dimension Attribute Calculations, vous pouvez afficher les agrégations de valeurs d'attribut sous forme de sommes, de nombres, de minimums, de maximums et de moyennes. |
Pris en charge |
Non prises en charge |
|
Vous pouvez utiliser un attribut dans un calcul qui définit un membre. Par exemple, vous pouvez utiliser le poids d'un produit en onces pour définir le profit par once membre de la dimension Mesures. |
Pris en charge |
Non prises en charge |
|
Vous pouvez extraire des membres de base spécifiques à l'aide d'informations relatives aux attributs. |
Pris en charge Puissantes sélections conditionnelles et basées sur des valeurs |
Pris en charge Uniquement pour les chaînes de texte |
Conversion de données
En fonction de la valeur d'un attribut défini par l'utilisateur, vous pouvez modifier le signe des données lors de leur chargement dans la base de données. Par exemple, vous pouvez inverser le signe de tous les membres avec le débit ADU. Le basculement de signe n'est pas pris en charge pour les attributs.
Scripts de calcul
| Scripts de calcul | Attributs | Attributs UDA |
|---|---|---|
|
Vous pouvez effectuer des calculs sur un membre si son attribut ou sa valeur UDA correspond à une valeur spécifique. Par exemple, vous pouvez augmenter le prix de 10 % de tous les produits avec l'attribut ou l'attribut UDA de Bouteille. |
Pris en charge |
Pris en charge |
|
Vous pouvez effectuer des calculs sur les membres de base dont la valeur d'attribut satisfait aux conditions que vous spécifiez. Par exemple, vous pouvez calculer le profit par once de chaque membre de base. |
Pris en charge |
Non prises en charge |