我们开发了一个自定义MOLAP引擎,用于实时处理大量正在处理的数据。现在我们需要将SSAS与我们的系统集成。 Dimension的元信息和属性数据非常容易获得。 但是,如何在不使用SSAS计算聚合(即仅存储在叶子上的数据)的情况下获取事实数据? 我们自己进行的聚合和计算。
从SQL数据库中选择数据不是解决方案,因为加载时Cube可以执行连接,过滤。清理数据等。
假设我们有产品维度:
事实表 - 销售:
|Product|Qty|
|Bread | 1 |
|Chair | 3 |
我想从多维数据集中获取实际数据,而不是聚合一个:
|Product|Qty|
|All | 4 |
|Book | 0 |
|Bread | 1 |
|Chair | 3 |
答案 0 :(得分:4)
尝试在SSAS中查看DrillThrough。这可以显示事实纹理数据,并且在双击单元格时可以在Excel中作为默认操作使用。您可以自定义结果集,只要所有度量/维度都来自相关的事实表:
http://csjohnlam.spaces.live.com/Blog/cns!996308EF3A99432B!214.entry?sa=340601263
你也会发现这很有用:
http://asstoredprocedures.codeplex.com/wikipage?title=Drillthrough&referringTitle=Home
答案 1 :(得分:1)
总而言之,如果不重新处理多维数据集,则无法获取更新的事实。如果您想要实时获取原始数据,则必须自己从数据仓库中的维度/事实表中自行计算。
答案 2 :(得分:1)
在ssas中你可以禁用层次结构级别聚合,对于空行,在获取数据之前使用非空作为关键字