我目前正试图在SSAS中模拟一个参差不齐的层次结构,但我被卡住了。
首先,我尝试这样建模:
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, , ** 在此示例中,最后一行包含表示“缺失”级别的空格。
在这里,ROLAP成功地解释了层次结构,但MOLAP模式最终错误地对事实表中的成员进行了分类,因此聚合被关闭。
接下来,我基于AdventureWorksDW example SalesTerritory维度将其更改为以下内容,该维度是一个参差不齐的层次结构:
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** 我正在利用HideIfOnlyChildAndSameNameAsParent来隐藏成员。
现在MOLAP的数字排成一列,但在ROLAP的土地上,我的速度有了很大的下降,因为我的层次结构的第一级有大约10000名成员- SSAS出去吃午饭进行扩展。
所以很明显,我遗漏了一些东西,但我还没有看到很多关于“正确”的方法来做一个参差不齐的层次结构的例子。
谢谢你的回答。
发布于 2009-07-20 04:47:17
一般来说,“参差不齐的层次结构”对我来说是“父子关系”的直接翻译。你会希望它是这样的:
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什么是ParentID,SSAS就会为你生成这个父/子。而是自动的。另外,这里我使用ItemID作为代理键,并使用指向它的ParentID。使用整数的原因有很多,但是对于父/子,您应该做的是使用ID作为键列,然后将ItemKey作为属性/关系添加到所述键列。然后,您可以通过Attribute Key对Item (此模式中缺少)进行排序,并选择ItemKey。您还可以选择是否向用户显示该属性。
默认情况下,SSAS假定null或自引用父键是根节点。我通常使用null,因为当我滚动浏览记录时,它们更容易让我看到。但是,这是一个偏爱的事情。
https://stackoverflow.com/questions/1122979
复制相似问题