SQL Server 2012:性能列存储索引与B树

时间:2012-03-28 14:56:31

标签: sql-server indexing sql-server-2012 b-tree columnstore

columnstore-index的一个好处是,单个列的数据“彼此相邻地存储在磁盘上”。这代表更好的压缩和更快的读取时间。

然而;当使用B树(常规的非聚集索引)时,数据本身不是那棵树的叶子吗?因此,当我在列A上创建索引时,列A的所有字段是否都不会与表并行排列在磁盘上?这意味着数据可以被压缩并且可以快速读取。

简而言之:当一个列存储索引确实比单个列上的B树更高效时?

提前致谢!

1 个答案:

答案 0 :(得分:1)

  

因此,当我在A列上创建索引时,不会列A列的所有字段   出现在磁盘上与表格并行排序?

是的,A列将被排序。但所有其他专栏都没有。列存储索引按排序顺序存储所有列(以2 ^ 20行的块为单位)。