大数据维度的MDX模型中的性能如何优化?
0
目前我们有一个维度表(项目维表)。维度成员将近60万。
使用多维模型CUBE,查询时。尽管使用其它维度限制后,只有几百个项目被查询出来,但是效率非常慢,要2分钟。
但是同一个维表,要Tabular模型中。同样的结果集查询出来,不超过5秒。
请高手指教,如何优化多维模型的CUBE。(事实表与项目维采用的是简单的星型链接).
谢谢!
使用多维模型CUBE,查询时。尽管使用其它维度限制后,只有几百个项目被查询出来,但是效率非常慢,要2分钟。
但是同一个维表,要Tabular模型中。同样的结果集查询出来,不超过5秒。
请高手指教,如何优化多维模型的CUBE。(事实表与项目维采用的是简单的星型链接).
谢谢!
没有找到相关结果
重要提示:提问者不能发表回复,可以通过评论与回答者沟通,沟通后可以通过编辑功能完善问题描述,以便后续其他人能够更容易理解问题.
3 个回复
BIWORK - 热衷于微软BI技术,技术架构和解决方案! 2013-12-31 回答
赞同来自: 天涯浪子
星形结构的话,会员维度和其它的维度比如地域可能是分开的,所以在设计会员维度的时候可能需要考虑将地域等信息设计成会员维度的维度属性,或者使用命名查询将会员维度信息和地域信息等关联形成一个完整的维度表,在这个基础之上来建立层次结构。
当然,用户可能不是这样考虑的,他们总是希望一次性要看到所有会员或者按所有会员查看一些度量值,但是这个实际上效率是非常低的。因此和用户也还有一个沟通的过程。
Tabular Model 在2012版本已经推出了,但是目前好像用的还很少,因为据我了解像父子模式,多对多模式在 Tabular Model 设计过程中都不支持了。Tabular Model 支持内存存储,所以会很耗内存,但是效率上可能要更高一些。
superboyli520 - 微软BI技术达人 2014-01-08 回答
赞同来自:
第二个 Tabular Model 有两种存储模式,并非只有内存存储模式。
superboyli520 - 微软BI技术达人 2014-01-08 回答
赞同来自:
但是你用Tabular model速度快的原因,你的查询简单而且,Tabular model 是查询时运算,在你的业务逻辑很简单的情况 下,它有优势是正常的。
Tabular model 有自己的查询优化技术。
如果进行复杂业务技术,可能Cube的优势 会出来。
合理设计分区,聚合,优化维度。是有效的手段。