MDX查询速度很慢,怎么优化?

0
环境:
      OS(操作系统):windows server 2008 r2 企业版 x64 sp1
      DB(数据库版本): SQL SERVER 2012 x64 企业版 SP1 
      SP(数据库补丁):SP1 

问题描述:
DW数据仓库有1TB,SSAS CUBE有接近400G,里面有15个度量值组,200多个度量值;11个分析维度,最大的维度(单品)其成员包含2.5万,其它维度都在2000个以下。现在查询MDX查询非常慢,主要慢的有两类:
1、涉及度量值和维度比较多的(平均会查询20个度量值和8个左右的维度(涉及单品的查询)),返回的结果集平均有5000行左右,查询时间消耗有20分钟左右。
2、涉及度量值是非重复计数类型的(聚合方式是非重复计数),平均也在8个左右的维度(涉及单品的查询),返回的结果集在3000行左右,查询销售在60分钟左右。

前端用的RS和自己的写的一个工具,用SQLProfiler跟踪过,发现不是前端的问题,而是MDX查询返回结果太久了。

请求解决方案:
      1、所有的查询速度能降低到5分钟以内返回结果。
      2、SSAS是否支持分布式计算,或者我的cube能不能拆分成多个,总之我要结果返回一个结果集即可。
 
已邀请:
0

天善_小龙 2016-04-01 回答

 前端用的RS和自己的写的一个工具,用SQLProfiler跟踪过,发现不是前端的问题,而是MDX查询返回结果太久了。
 
楼主既然找到问题的关键了,那就需要focus在 mdx query 优化方面的事情了。但是我们不清楚你的scenario,所以无法从根本上去帮你找出问题关键点在哪里。但对于MDX Query performance tuning方面,不妨看看下面的文章,里面有很多点你可以结合自身实际情况,进行优化操作:
Analysis Services Query Performance Top 10 Best Practices: https://technet.microsoft.com/en-us/library/cc966527.aspx

要回复问题请先登录注册