Quelle est la meilleure façon de modéliser une hiérarchie en haillons dans SSAS pour les ROLAP et MOLAP?
-
13-09-2019 - |
Question
J'essaie actuellement de modéliser une hiérarchie haillons dans SSAS et je suis bloqué.
D'abord, je tentais de ce modèle comme ceci:
ItemKey,Level0Key,Level1Key,Level2Key
Item1,Lvl0-1,Lvl1-1,Lvl2-1
Item2,Lvl0-1,Lvl1-1,Lvl2-1
Item3,Lvl0-1,Lvl1-1,Lvl2-2
**Item4,Lvl0-1, , **
Lorsque la dernière ligne dans cet exemple avait des blancs pour les niveaux « manquants ».
Ici, ROLAP a réussi à interpréter la hiérarchie d'accord, mais le mode MOLAP liquidée membres mis classifiant de la table de faits, de sorte que les agrégations étaient éteintes.
Ensuite, je l'ai changé à cette base sur l'exemple AdventureWorksDW dimension SalesTerritory qui était une hiérarchie haillons:
ItemKey,Level0Key,Level1Key,Level2Key
Item1,Lvl0-1,Lvl1-1,Lvl2-1
Item2,Lvl0-1,Lvl1-1,Lvl2-1
Item3,Lvl0-1,Lvl1-1,Lvl2-2
**Item4,Lvl0-1,Item4,Item4**
Je profite du HideIfOnlyChildAndSameNameAsParent pour cacher les membres.
Les numéros de MOLAP alignés, mais dans la terre ROLAP, je vais avoir des ralentissements majeurs parce que le niveau 1 de ma hiérarchie a environ 10 000 membres -. SSAS va à déjeuner sur une extension
Alors, évidemment, je manque quelque chose, mais je ne l'ai pas vu beaucoup d'exemples sur la « bonne » façon de faire une hiérarchie haillons.
Merci pour toutes les réponses.
La solution
En général, « hiérarchie haillons » est une traduction immédiate de « parent-enfant » pour moi. Vous voudriez qu'il aille comme ceci:
ItemID ItemKey ParentID
1 Lvl0-1 null
2 Lvl1-1 1
3 Lvl2-1 2
4 Lvl2-2 2
5 Item1 3
6 Item2 3
7 Item3 4
8 Item4 1
SSAS va générer ce parent / enfant pour vous une fois que vous lui dites ce que le ParentID
est. Plutôt automagique. En outre, ici je ItemID
comme une clé de substitution, et a utilisé le ParentID
qui a souligné que. Il y a une longue liste de raisons d'utiliser des entiers, mais pour parent / enfant, ce que vous devez faire est d'utiliser l'ID comme la colonne clé, puis ajoutez ItemKey
comme un attribut / rapport à ladite colonne de clé. Vous pouvez alors l'ordre Item
(absent de ce schéma) par Attribute Key
et sélectionnez ItemKey
. Vous pouvez également choisir d'afficher ou non cette propriété à l'utilisateur.
SSAS, par défaut, suppose qu'un null
ou clé parente auto-référentielle est un nœud racine. J'utilise généralement null
parce qu'ils sont plus faciles pour moi de voir quand je faire défiler les enregistrements. Mais, cela est une chose de préférence.