use*_*862 14 sql-server-2008-r2
背景:
我在 UAT 阶段有一个事实表。目标是在 Prod 中加载 5 年的数据(预期大小为 4 亿条记录)。目前它只有 2 年的测试数据。
表特点:
要求:
在这个事实表上的查询应该在 30 秒内给出结果(一般查询选择 sum(measure) 通过 Dim 值加入几个 Dims 组)。报告直接在此事实表的顶部完成。
问题:
任何包含索引中可用列的查询都可以正常工作,但是如果我们包含不在包含中的任何其他列......它很糟糕。需要5-10分钟以上。任何人都可以建议一些解决方案,它适用于我们选择的任何维度/列。在这种情况下,索引视图可以提供帮助吗?
升级到 SQL Server 2012 并使用列存储。他们在这些要求中茁壮成长。说真的,下载评估版并尝试一下。删除所有索引,删除聚集索引,只需在所有列上添加一个非聚集列存储索引并试一试。我见过像你这样的案例,将执行时间减少到 2-3 秒,主要是因为段消除开始了。一些补充内容:
归档时间: |
|
查看次数: |
7739 次 |
最近记录: |