我的事实/度量表包含两个相同的记录(所有列包含相同的数据)。
当我处理多维数据集时,它似乎只汇总了两个记录中的一个。 所以我没有得到我期望的结果100,而是在2015/01/01获得50个单位。
似乎多维数据集在处理时对度量执行类似group by
函数的操作,导致从两个相同的记录中只获取一行。
事实表:
Code name date units
----------------------------------
1 productA 20150101 50
1 productA 20150101 50
我该如何克服这个问题?
答案 0 :(得分:0)
从事实\维度设计的角度来看,您应该在事实表中只有维度键的不同组合。所以,例如在你的情况下,如果
Code
列是Codes
维度的关键,Name
列是关键
到Products
尺寸和Date
列是Date
的关键
维度和Units
是一个数字事实值然后您应该有不同的维度键组合(代码,名称,日期)并预先聚合到此级别的粒度,数值unit
值。
因此,如果在您的情况下您需要同时拥有这两行(从业务角度来看它们不是重复的),您似乎应该更改此事实表的粒度级别,或者换句话说,再添加一个维度属性(键)到事实表,它将通过一些隐藏(现在)维度来区分这些行,例如Operator
。在此操作之后,您的事实表可能看起来像这样
Code Operator name date units
1 1 productA 20150101 50
1 2 productA 20150101 50