OLAP CUBE 聚合和分区

OLAP CUBE Aggregations and Partitions

我一直在优化许多多维数据集,处理时间很长。每 1000 万行大约需要 20 分钟。我已经创建了分区并且处理变得很短 - 每 1000 万大约 4 分钟。此外,我还为所有分区创建了一个聚合,具有完全处理的 molap 和 100% 聚合(立方体不是那么大)。是否有任何理由为每个分区创建聚合?当用户尝试刷新基于 olap 立方体的 pivot table 时,它会工作得更快吗?

谢谢。

通常您有一个聚合设计,由度量值组中的所有分区共享。在非常大的度量值组上,您可能有第二个轻量级聚合设计用于非常旧的很少使用的分区。

添加大量聚合设计(例如每个分区一个单独的设计)可能会稍微减慢查询速度,因为内部需要花费额外的时间来确定要读取哪个聚合。

如果您使用了聚合向导,请不要打扰。它对您如何查询多维数据集一无所知,并且会创建浪费处理时间的愚蠢无用的聚合。相反,部署您的多维数据集,然后在用户有 运行 一些查询并执行 Usage Based Optimization 几天后返回。

创建分区是缩短多维数据集处理时间的好方法。 如果在正确的字段上进行聚合,则聚合很有用。我所说的正确是指用户最常使用的过滤器选择。基于使用的优化是实现它的好方法。 另请通读以下文章,了解在检查性能时使用的方法。 https://mytechconnect.wordpress.com/2013/08/27/ssas-performance-best-practices-and-performance-optimization/