SQL Server 2016 列存储索引功能增强「建议收藏」

SQL Server 2016 列存储索引功能增强「建议收藏」列存储索引(columnstoreindex)在SQLServer2012中已经引入,其带来性能提升的同时也有很多限制,比如对带有列存储索引的表进行INSERT,UPDATE和DELETE时,会遇到如下错误提示:由于这种限制,索引列存储索引并不太适合在OLTP中应用。不过,SQLServer2016对列存储索引做了很多改进,其中我觉得最大的变化是可更新的

大家好,又见面了,我是你们的朋友全栈君。



列存储索引(columnstore index)在SQL Server 2012中已经引入,其带来性能提升的同时也有很多限制,比如对带有列存储索引的表进行INSERT, UPDATEDELETE时,会遇到如下错误提示:

SQL Server 2016 列存储索引功能增强「建议收藏」

由于这种限制,索引列存储索引并不太适合在SQL Server 2012 OLTP DB中应用。不过,SQL Server 2016对列存储索引做了很多改进,其中我觉得最大的变化是可更新的列存储索引,即可以直接对带有列存储索引的表进行INSERT, UPDATEDELETE,因此,我们可以在SQL Server 2016环境中尝试应用这以功能,已提升查询性能。若想具体了解列存储索引的概念、特征、创建及使用,可参考我之前整理的Blog

SQL 2016环境测试的过程中,我发现列存储索引对于有聚集函数的T-SQL,有很好的性能提升,比如下面这个示例,性能提升约15

JOIT表有1500833笔记录,复制一份到JOIT_CSI表,2张表的唯一区别是JOIT_CSI有非聚集列存储索引, 在统计列SERNUM个数的查询中,可以发现JOIT需要7210ms,而JOIT_CSI只有463ms,性能提升约15倍。感兴趣的,可以去发掘其他性能提升的最佳实践。

SQL Server 2016 列存储索引功能增强「建议收藏」

SQL Server 2016 列存储索引功能增强「建议收藏」

SQL Server 2016 列存储索引功能增强「建议收藏」

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/159107.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • bzero用法_pzero是什么意思

    bzero用法_pzero是什么意思bzero用法linux下串口编程使用到了bzero函数原型:externvoidbzero(void*s,intn);用法:#include  功能:置字节字符串s的前n个字节为零且包括‘\0’。  说明:bzero无返回值。  2#include 3#include 4

    2022年10月13日
  • 实用技巧:利用Excel实现客户档案的统一管理「建议收藏」

    实用技巧:利用Excel实现客户档案的统一管理「建议收藏」背景:一个朋友新开了家门市,生意不错,客源旺盛。有次我们喝茶时,他透露一个问题,就是客户的档案管理很不理想,都是纸面的,很容易丢失,也不方便查找。我自诩混迹IT界多年,当然要替好友解决这个小麻烦。考虑到他的门市规模和店员能力,什么ERP、CRM之类的还是免了吧,朋友的要求也很直接,就是俩字:简单。这样的话确实简单了,EXCEL就可以搞定,而且使用门槛相当于零!喝完茶,基本思…

    2022年10月24日
  • 【c#】DataTable分页处理

    【c#】DataTable分页处理【c#】DataTable分页处理

  • 浙江新增python课程_浙江教育新规重磅来袭:今年9月起,八年级新增Python编程课程…

    浙江新增python课程_浙江教育新规重磅来袭:今年9月起,八年级新增Python编程课程…浙江新学期将会对信息课程做调,三到九年级信息技术课将同步替换新器材。其中最大的变化是,八年级将新增Python课程内容。新高一信息技术编程语言由VB替换为Python,大数据、人工智能、程序设计与算法按照教材规划五六年级开始接触。有网友疑惑:“这算不算是超前教育了呢?”其实不然。早在2012年,日本就在中小学中普及编程教育科目;2014年,英国教育部把编程列入了学校的必修课程,让5岁以上的孩子都必…

  • arm和x86对比_arm和intel关系

    arm和x86对比_arm和intel关系信不信,随便逮住一个人问他知不知道CPU,我想他的答案一定会是肯定的,但是如果你再问他知道ARM和X86架构么?这两者的区别又是什么?绝大多数的人肯定是一脸懵逼。今天小编就带你深入了解CPU的这两大架构:ARM和X86。以后出去装X就靠它了! ##重温下CPU是什么鬼##  中央处理单元(CPU)主要由运算器、控制器、寄存器三部分组成,从字面意思看运算器就是起着运算的作用,控制器就是负责发

    2022年10月14日
  • 黑马程序员-面向过程和面向对象思维方式的区别?为什么需要面向对象编程?

    黑马程序员-面向过程和面向对象思维方式的区别?为什么需要面向对象编程?

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号