免费下载案例集|20+数字化领先企业人才培养实践经验 了解详情
写点什么

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:171717
用户头像

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

关注

评论

发布
暂无评论
  • 模块九作业 - 设计电商秒杀系统

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

    2022-01-16

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

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

    2022-06-30

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

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

    2021-05-10

  • 盲盒开发盲盒 app 开发

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

    2021-11-17

  • Go-Excelize API 源码阅读(十九)——SetHeaderFooter

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

    2022-08-24

  • SQL 窗口函数原理和使用

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

    2022-02-15

  • react 源码解析 16.concurrent 模式

    1.开篇介绍和面试题

    2021-12-24

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

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

    2023-03-20

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

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

    2021-12-07

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

    2023-09-08

  • 电商秒杀系统

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

    2022-06-30

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

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

    2022-11-23

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

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

    2022-07-19

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

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

    2021-12-06

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

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

    2021-11-17

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

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

    2022-06-04

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

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

    2023-03-22

  • BridgePattern- 桥接模式

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

    2022-05-31

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

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

    2022-05-08

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

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

    2022-12-22

发现更多内容

从传统 IT 容灾转向“全栈云容灾”|什么是更适合政企的云

云布道师

阿里云

iMovie for Mac(专业视频剪辑工具) v10.3.6中文版

Rose

Mac视频剪辑软件 iMovie中文版 iMovie下载 iMovie Mac破解版

阿里逆天级调优方案,内部这套Java性能调优实战宝典,堪称教科书

做梦都在改BUG

Java 性能优化 JVM 性能调优

字节Java全能手册火了!多线程/网络/性能调优/框架啥都有

做梦都在改BUG

Java 微服务 Spring Cloud socket

恭喜又一名小伙伴上岸大厂

冰河

程序员 互联网 架构师 大厂Offer 上岸大厂

运行Adobe软件遇到“Adobe app is not available”怎么解决

Rose

Adobe软件

Github标星67.9k的微服务架构以及架构设计模式笔记我粉了

做梦都在改BUG

Java 架构 微服务 设计模式

如何做好需求管理?华为云需求管理利器CodeArts Req解读

华为云PaaS服务小智

云计算 产品经理 需求管理 华为云

ConcurrentHashMap是如何实现的?

javacn.site

完美!京东资深架构师爆肝纯手打700页架构进阶宝典我粉了

做梦都在改BUG

Java 架构 亿级流量

百度营销首创CPQL模式,破解汽车营销线索难题

Geek_2d6073

首站中科院!百度商业AI技术创新大赛开启巡回宣讲

百度Geek说

人工智能 百度 企业号 5 月 PK 榜

Photoshop2023硬件要求,PS2023最低配置要求

Rose

PS2023 PS2023系统要求 Photoshop2023硬件要求 神经滤镜Neural Filters

易观千帆 | 2023年4月证券APP月活跃用户规模盘点

易观分析

证券

Nautilus Chain开启全球行,普及Layer3概念加速其采用

西柚子

火山引擎DataTester:如何使用A/B测试优化全域营销效果

字节跳动数据平台

AB testing实战 ab测试 A/B测试

如何编写一个健壮的 npm 包 | 京东云技术团队

京东科技开发者

npm npm chalk-next 企业号 5 月 PK 榜

选择小程序第三方开发框架,你需要知道这些

没有用户名丶

2D CAD设计软件CADintosh X 激活版

真大的脸盆

Mac Mac 软件 CAD绘图 CAD设计 cad

名不虚传!字节技术官甩出的"保姆级"数据结构与算法笔记太香了

做梦都在改BUG

Java 数据结构 算法 LeetCode

ps神经滤镜是干什么的,神经滤镜的功能和作用

Rose

Photoshop 2023下载 ps神经滤镜 Neural Filters滤镜

TDengine 成功“晋级” Percona Live 2023 银牌赞助商,开发者驻足关注

爱倒腾的程序员

PAI-Diffusion中文模型全面升级,海量高清艺术大图一键生成

阿里云大数据AI技术

人工智能 模型 Stable Diffusion 企业号 5 月 PK 榜

Nautilus Chain开启全球行,普及Layer3概念加速其采用

鳄鱼视界

万字长文详述ClickHouse在京喜达实时数据的探索与实践 | 京东云技术团队

京东科技开发者

数据库 flink Clickhouse 企业号 5 月 PK 榜

AIGC背后的技术分析 | 图像风格迁移

TiAmo

AIGC 图像风格迁移

MacOS高效iOS代码编写工具|AppCode 2023 激活版v2023.2 兼容M1/M2/intel

Rose

AppCode中文 AppCode 2023破解 AppCode密钥 iOS/macOS开发

顺丰科技携手飞桨自研“智能外呼机器人”,为客户打造优质服务体验

飞桨PaddlePaddle

nlp 语音识别 百度飞桨

Spring Validated 校验框架,让你的项目更简洁,提升开发效率

做梦都在改BUG

Java spring Validated

OpenHarmony创新赛 | 赛事宣讲会日期重磅官宣!为你带来超详尽的赛事攻略

OpenHarmony开发者

OpenHarmony

优质高效!阿里甩出SpringBoot巅峰之作,进阶不二之选

做梦都在改BUG

Java Spring Boot 框架

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