我有一个 SSAS Cube,有 35 个维度和 10 个度量。
当我从SSMS运行(通过右键单击 SSAS 数据库)在数据库上“进程已满”时,大约需要 1 小时 30 分钟。
当我通过 XMLA 脚本从 SQL 代理作业处理多维数据集(进程已满)时,大约需要 1 小时 20 分钟。
当我通过 SSMS 分别处理维度和度量(过程完整)时,需要 1 小时 50 分钟。
但是,当我从 SSIS(通过 XMLA 的 DML 任务)处理维度和度量时,它需要 5 个多小时。[内存消耗几乎达到 100%]
所以我的问题是:
显然,此功能在以前的版本中可用,但现在已被删除。
有哪些替代方案?
我有一个包含来自零售业务的库存盘点数据的多维数据集。它有 2 个度量组 - 一个包含在每个盘点批次中计算的库存单位数(与产品、批次和时间维度相关),另一个包含产品价格(仅与产品维度相关)。
price 度量组中的度量使用 Min 和 Max 运算符(即它们显示 Products 维度的选定成员的最低或最高价格)。
我似乎已经正确配置了多维数据集和维度(价格度量按预期显示)......除了以下情况:
如果我在 Excel 中查询多维数据集并按时间和批次获取单位,我会看到预期的结果(见下图,按时间 = 2015 过滤,并隐藏没有数据的行),即仅包含所选单位事实数据的批次时间维度成员。
如果我现在添加一个价格度量(不更改任何过滤器),Units total 不变(如预期),但我现在可以看到Batch 维度中的每个成员(见下图)。这对最终用户来说是一个问题,因为他们只想查看先前选择的批次中产品的价格。
从技术角度来看,这是有道理的 - 价格事实与时间无关,因此不能像单位那样被我的时间过滤器过滤。
我可以做些什么(在多维数据集设计或 Excel 中)消除给定过滤器没有单位的 Batch 成员?注意:我无法让用户编写 MDX 查询 - 报告构建需要保持“点击”!
编辑 27/1(添加额外的屏幕截图以说明根据 TomV 的回答设置 Ignore Unrelated Dimensions = False 的奇怪副作用)
如果呈现的数据4-dimension中每个维度都依赖于分层的 3 级聚合,例如(国家、城市、街道),那么我们可以将其总结为4096多种方式!
我们知道对于具有
n维度的多维数据集,其中没有维度是分层的,我们有2^n汇总方式,但在这种情况下,每个维度都有分层的 3 级聚合4^4=256方式。
为什么上面的说法提到有4096办法呢?
如果由于我的英语用法缺陷而无法很好地说明我的问题,请参阅:
这是我的公式,但是我的答案与 4096 非常不同!
我有四个大维度,其中一个维度不会改变,特定维度也不需要处理。
那么,单独处理三个维度会更新多维数据集,还是我每次都需要处理整个多维数据集(正在处理所有维度)?