【AICon】探索八个行业创新案例,教你在教育、金融、医疗、法律等领域实践大模型技术! >>> 了解详情
写点什么

SQL Server 2016 —— 可更新的非聚集列存储索引

  • 2015-06-14
  • 本文字数:1051 字

    阅读完需:约 3 分钟

非聚集列存储索引(NCC Index)在 SQL Server 2016 中也得到了一定程度的功能增强,其中最引人注目的一条在于可以对其进行更新了。

非聚集列存储索引功能最早出现在 SQL Server 2012 中,它的设计目的是为普通的堆或 B 树表提供一种只读的快照。它的设想是对其进行定期的删除与重建,可以以每个晚间或每一周作为维护周期。作为一种替代方式,你也能够通过分区切换加载更多的数据。

在 SQL Server 2014 中出现了聚集列存储索引(CC Index),这种列存储引擎的功能得到了升级,能够支持数据更改。但这种功能并未在 NCC 索引中得到延续,后者的能力依然仅限于快照模式而已。

在 2016 版本中,这一条限制终于被完全取消了。实际上,NCC 索引在默认情况下就是可更新的。如果你仍然希望使用原始的快照方式,那么必须将该索引保存在一个只读的文件组中。

筛选索引

如果你确信只需要一个经过良好定义的数据子集,那么筛选索引能够极大地减少所需的磁盘空间。并且在许多情况下,筛选也能够加速性能。

在 SQL Server 2016 中 NCC 索引的另一个新特性是能够对索引定义应用筛选条件,这一点只能够用于非聚集列存储索引,而聚集列存储索引与内存优化表仍然需要包括完整的索引定义。

批量模式增强

批量模式处理是一个非常神秘的主题,只有当你理解 SQL Server 解释器的工作原理时才能够充分利用它。如果你对这一主题还不熟悉,请阅读 Chris Adkin 的系列文章“了解 SQL Server 批量模式的底层知识”。简单来说,批量模式比起一次处理一条记录的速度至少快两倍,但并不是在所有情况下都能够使用这一模式的。

如果你正在运行 13.0 兼容模式(即 SQL Server 2016),那么以下这些操作就可以选择使用批量模式。

  • 排序
  • 对多个不同函数进行聚合:例如 COUNT/COUNT、AVG/SUM、CHECKSUM_AGG、STDEV/STDEVP
  • 开窗聚合函数:COUNT、COUNT_BIG、SUM、AVG、MIN、MAX,以及 CLR
  • 开窗用户自定义聚合:CHECKSUM_AGG、STDEV、STDEVP、VAR、VARP,以及 GROUPING
  • 开窗聚合分析函数:LAG< LEAD、FIRST_VALUE、LAST_VALUE、PERCENTILE_CONT、PERCENTILE_DISC、CUME_DIST、以及 PERCENT_RANK

在 SQL Server 1014 中,批量模式只限于并行查询使用,而现在它也可以用于单线程的工作了。

查看英文原文: SQL Server 2016: Updatable, Non-Clustered Columnstore Indexes


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-06-14 05:171617
用户头像

发布了 428 篇内容, 共 172.1 次阅读, 收获喜欢 38 次。

关注

评论

发布
暂无评论
  • Go-Excelize API 源码阅读(十九)——SetHeaderFooter

    Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Microsoft Excel™ 2007 及以上版本创建的电子表格文档。支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多种文档格式,高度兼容带

    2022-08-24

  • 【愚公系列】2022 年 06 月 二十三种设计模式 (二十二)- 模板方法模式 (Template Method Pattern)

    设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化

    2022-06-04

  • 盲盒开发盲盒 app 开发

    盲盒软件源码开发,盲盒app原生开发,盲盒系统开发,盲盒小程序开发,盲盒模式开发,盲盒平台搭建,盲盒功能详解,盲盒源码搭建,一番赏小程序,芒趣app小程序

    2021-11-17

  • 盲盒开发盲盒小程序系统开发

    盲盒软件源码开发,盲盒app原生开发,盲盒系统开发,盲盒小程序开发,盲盒模式开发,盲盒平台搭建,盲盒功能详解,盲盒源码搭建,一番赏小程序,芒趣app小程序

    2021-11-17

  • 1. Hive 的基本概述与原理

    2023-09-08

  • 32|存储引擎:数据清洗与存储

    这节课,我们一起写一个存储引擎,用它来处理数据的存储问题。

    2022-12-22

  • 百万级电商秒杀架构设计

    你作为一个电商创业公司的架构师,负责设计6.18大促秒杀系统的设计,你们的业务模式如下:

    2022-05-08

  • 高并发线下沙龙不容错过!

    本次 Qunar 高并发线下沙龙面向公司内外部所有同学,将与大家从下方五个主题进行面对面交流与切磋。本次分享不仅有技术干货,还有幸运奖品,精美茶歇。欢迎感兴趣的小伙伴报名,让我们对高并发主题来一次深入交流!

    2021-12-07

  • 电商秒杀系统

    你作为一个电商创业公司的架构师,负责设计6.18大促秒杀系统的设计,你们的业务模式如下:

    2022-06-30

  • BridgePattern- 桥接模式

    桥接模式(Bridge Pattern):也称之为桥梁模式,接口(Interface)模式或者柄体(Handle and Body)模式,其核心思想是将抽象部分与它的实现部分分离,使抽象部分和实现部分两个维度都可以独立的变化。

    2022-05-31

  • 学习 web 前端开发有哪些好的方法

    无论是学习什么技术,除了找到一个比较适合自己的学习方式外,更为重要的是要在不断学习过程中,找到适合自己的学习方法才能更快的提高学习效率,当然学习web前端开发技术也不例外,其实,对于零基础小伙伴学习前端开发技术知识,选择一家比较靠谱的前端培训

    2022-07-19

  • 14|跳数索引:后起新秀 ClickHouse

    这节课我会从写入、分片、索引、查询的实现这几个方面带你重新认识ClickHouse。

    2022-11-23

  • Spark 3.0(二):DPP 特性该怎么用?

    今天这一讲,我通过一个电商场景下的例子带你学习分区剪裁、动态分区剪裁的概念、作用、用法和注意事项,让你一次就学会!

    2021-05-10

  • 模块九作业 - 设计电商秒杀系统

    【业务背景】 你作为一个电商创业公司的架构师,负责设计6.18大促秒杀系统的设计,你们的业务模式如下:

    2022-01-16

  • 17|框架升级:如何小步安全地升级数据库框架?

    今天我们以Sharing项目为例,一起把项目中原先采用SQL拼写的方式替换为使用Room框架来统一管理缓存数据。

    2023-03-20

  • 直击面试!阿里技术官手码 12W 字面试小册在 Github 上爆火

    临近金三银四,想必有不少老哥已经在为面试做准备了。大家想必也知道现在面试就是看项目经验+基本技术+个人潜力(也就是值不值得培养)。总之就是每一次面试都是对我们能力的检验(无论是软实力还是硬实力)。软实力其实就是简历包装,自我介绍,与面试官交谈技

    2023-03-22

  • react 源码解析 16.concurrent 模式

    1.开篇介绍和面试题

    2021-12-24

  • 24 小时自助洗车让洗车更自由

    24小时自助洗车除了让洗车更自由之外,洗车费用也很划算,都是按时计费的。一般洗车一次车大概8-10元就够了,如果要洗的再久点,那就10-15元左右,是不是很划算呢?

    2022-06-30

  • SQL 窗口函数原理和使用

    讲师介绍: 王振兴,毕业于北京邮电大学,前阿里巴巴技术专家。多年的 BI 相关的平台开发经验。对数据库、SQL、大数据的离线开发有深入的研究和多年的实战经验。 问题背景: 在我们的应用系统里面,通常会遇到一些复杂的查询需求,例如按照工作年限给员工排名,要求年限一样的员工排名也一样。类似这样的查询,普通的 SQL 实现起来特别复杂,效率也比较低。为此,SQL ISO-2003提供的 SQL 窗口函数,可以用于解决功能复杂的 SQL 查询场景,提高我们的工作效率。 内容看点: 为什么要学习 SQL 窗口函数 SQL 窗口函数的原理和使用方法

    2022-02-15

  • 【LeetCode】字母异位词分组 Java 题解

    给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。

    2021-12-06

发现更多内容

ARBT阿尔比特项目代币合约质押分红挖矿系统开发(源码搭建)

l8l259l3365

揭秘产品经理提升效率的秘密武器:在线白板工具你绝对不能错过!

彭宏豪95

产品 产品经理 科技 在线白板 办公软件

Acrobat Pro DC 2022 for Mac中文破解版下载

iMac小白

Adobe Acrobat Pro DC下载 Adobe Acrobat Pro DC破解

第8期 | GPTSecurity周报

云起无垠

10月24日程序员节

小齐写代码

云安全中的生成式AI:雷声大雨点小?!

树上有只程序猿

云安全 生成式人工智能

第7期 | GPTSecurity周报

云起无垠

数仓实时场景下表行数估算不准确引起的的性能瓶颈问题案例

华为云开发者联盟

数据库 后端 华为云 数仓 华为云开发者联盟

需要获取产品License

矩视智能

深度学习 机器视觉

mac系统软件推荐 iStatistica Pro最新中文免激活

mac大玩家j

Mac软件 系统监控软件 系统优化工具

Arbitrum链阿尔比特ARBT共识铸币模式系统开發(源码搭建)

l8l259l3365

KubeEdge v1.15.0发布!新增5大特性

华为云开发者联盟

云计算 云原生 后端 华为云 华为云开发者联盟

数据飞轮拆解车企数据驱动三板斧:数据分析、市场画像、A/B实验

字节跳动数据平台

大数据 数字化转型 云服务 数据平台 火山引擎

强大视频工具:VideoProc Converter 4K激活中文最新版

胖墩儿不胖y

Mac软件推荐 视频处理软件 视频工具 视频转换器

SecureCRT for mac注册破解版下载

iMac小白

SecureCRT下载 SecureCRT破解版 SecureCRT注册 SecureCRT激活 SecureCRT mac

IPSec VPN原理介绍 | 京东物流技术团队

京东科技开发者

vpn IPsec 企业号10月PK榜

Explore IPQ8072 and IPQ9574-QCN9274 -the limitless potential of the from speed to security

wifi6-yiyi

IPQ8072 WiFi7

React技术栈支援Vue项目,你需要提前了解的 | 京东云技术团队

京东科技开发者

Vue 前端 React 企业号10月PK榜

AlDente Pro for Mac中文激活版下载

iMac小白

AlDente Pro下载 AlDente Pro破解版 AlDente Pro mac

Android Kotlin 协程初探 | 京东物流技术团队

京东科技开发者

kotlin andiod 企业号10月PK榜

cmp云管平台专业厂商哪家好?有什么优势?

行云管家

公有云 数据安全 云管平台 云管理 云数据安全

「智造」第1期:锻造行业智能制造规划

用友BIP

智能制造

数字化建设之路始于选型,企业该如何避免选型“坑”?

优秀

数字化转型 数字化建设

东莞理工网安学院举办“火焰杯”软件测试高校就业选拔赛颁奖典礼

测试人

软件测试

前端CodeReivew实践 | 京东云技术团队

京东科技开发者

前端 敏捷开发 Code Review 代码评审 企业号10月PK榜

3D模型如何添加表面贴图?

3D建模设计

材质 纹理 贴图

音画双绝,坚果O2超短焦系列引领超短焦投影进入三色激光时代

Geek_2d6073

C++中的多线程编程:高效的并发处理方式

高端章鱼哥

c++ 多线程编程

如何从单体架构迁移到微服务架构:挑战和最佳实践

互联网工科生

微服务 单体

智慧云-实现企业APP梦想,10倍轻松便捷

知者如C

Photomatix Pro for Mac(HDR图像处理器) v7.1.16永久激活版

mac

苹果mac Windows软件 Photomatix Pro HDR合成软件

SQL Server 2016 —— 可更新的非聚集列存储索引_架构_Jonathan Allen_InfoQ精选文章