目前,我正在试图在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示例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土地,我有大的减速,因为我的层次结构的1级拥有约10000成员 - SSAS出去吃午饭的扩展

所以,很显然,我失去了一些东西,但我还没有看到对“正确”的方式做一个不规则的层次结构例子很多。

感谢您的任何答案。

有帮助吗?

解决方案

一般情况下,“不规则的层次结构”是一个即时翻译为“父子”对我来说。你会希望它去像这样:

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

一旦你告诉它ParentID是什么SSAS会为你生成这个父/子。相反AUTOMAGIC。另外,在这里我用ItemID代理键,并用它指出了ParentID。有很长的原因,使用一个整数列表,但对于父/子,你应该做的是使用该ID作为键列,然后添加ItemKey作为属性/关系说键列。然后,您可以为了Item(从这个模式中丢失)通过Attribute Key并选择ItemKey。您还可以选择是否要显示属性的用户。

SSAS,默认情况下,假定一个null或自引用母密钥是根节点。我一般用null,因为它们更容易让我明白,当我通过滚动记录。但是,这是一个优选的事情。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top