我有一些表,其中两个表有大约一百万条记录。在一个过程中,我使用了这些表,大约需要5-10分钟来获取大约25,000行。
我创建了一些聚集索引和非聚集索引,执行计划显示所有索引都是聚集索引搜索或非聚集索引搜索。但该过程仍然需要5分钟以上的时间才能执行。
因此,我尝试创建列存储索引,但仍然没有任何改进。
伙计们,有没有人能给我点建议。如何创建索引?列存储和普通聚集/非聚集索引哪个更好
发布于 2015-08-08 19:04:28
列存储索引是否是一个好主意取决于表/数据库的用途。列存储设计用于数据仓库中的大型事实数据表中。它不是为OLTP或任何其他操作数据库构建的。如果您正在使用数据仓库,集群列存储通常是一个好主意,尽管我认为它是为100多万个拖放而设计的,但我假设它仍然工作良好,而且您还应该从改进的压缩中获得好处。
对于OLTP或混合使用,您可能只想专注于索引。看看查询计划和statistics io输出,看看是什么导致了速度慢,如果你找不到可能的错误,要么编辑这篇帖子,要么询问一个关于表、索引和查询计划的新帖子。
查询计划中需要查看的典型内容是索引扫描和排序&大量行的键查找。由于您正在处理数百万行,因此也可能会有假脱机或溢出到temp db中,从而导致速度变慢。
https://stackoverflow.com/questions/31856461
复制相似问题