我有大约60万行和20列的仓库表。行数往往增长得相当快。我通常只需执行此查询:
SELECT * FROM MyTable WHERE EventDate BETWEEN @Date1 AND @Date2
目前我只在主键上有聚集索引而没有其他索引。这个返回大约200 000行的年份查询执行大约6分钟,这对我来说真的很慢。列存储索引可以帮助我以及在哪个列上放置它,包括哪些列?
答案 0 :(得分:0)
您在寻找Clustered columnstore Index还是Non-Clustered Columnstore索引?如果它是Clustered Columnstore索引,您将为所有列建立索引。在正常情况下,您可能不需要“选择*”重温为什么在所有情况下都需要“选择*”?如果它是数据仓库工作负载,那么集群列存储会更快。
Create clustered columnstore index CI_tbl on tablename
您使用的是哪个版本的sql server? SQL 2014中提供了此功能,在2012年,您可能需要使用非群集列存储索引。