SQL Server 性能加速利器:列存储索引与内存 OLTP 深度解析
1. 分区相关优质博客推荐
有一位亲密朋友兼顶级 MVP Kimberly Tripp 写了一篇出色的博客,探讨分区相关内容,链接为:https://www.sqlskills.com/blogs/kimberly/sqlskills-sql101-partitioning/ 。Kim 明确指出,分区更多是关于可管理性而非性能。实际上,分区并非能解决所有性能问题,但确实能带来性能提升。她还提到了分区视图的概念。
2. 列存储索引概述
列存储索引是 SQL Server 中为加速性能引入的实用特性。逻辑上,列存储数据以行和列的表格形式组织,物理上则按列格式存储;而行存储在逻辑和物理上都按行格式组织,行格式是 SQL Server 表和索引的标准格式。列存储索引通过列结构、高效压缩、数据消除和批模式执行来加速性能。
列存储的概念由来已久,但直到 SQL Server 2012 才被引入 SQL Server(其压缩算法与 PowerPivot 和 SQL Server Analysis Services 等产品使用的 Vertipaq 引擎通用)。常见的误解是认为列存储索引是“内存技术”,实际上它存储在磁盘上,且在内存和磁盘中都进行了压缩。若列存储索引能全部放入内存,性能最佳,但并非必须全部放入。正是其压缩特性使更多数据能存入内存,成为 SQL Server 的高效功能。
3. 列存储索引的工作原理
为更好理解列存储索引的工作原理,需了解以下术语:
- 行组(rowgroup) :一组同时压缩成
超级会员免费看
订阅专栏 解锁全文
849

被折叠的 条评论
为什么被折叠?



