AICon 上海站|90%日程已就绪,解锁Al未来! 了解详情
写点什么

SQL Server 2014 新聚合 columnstore 索引介绍

  • 2013-09-30
  • 本文字数:760 字

    阅读完需:约 2 分钟

在 SQL Server 2012 中,开发者有创建 columnstore 索引的选项。这些索引拥有提供 10x 性能提升和超过传统表 7x 压缩的潜力,但是随之也带来了大量的限制。这其中最重要的是他们将基本表送入只读模式的事实。

SQL Server 2014 中的这个新存储引擎克服了这些限制。该引擎被称为聚合columnstore 索引,它允许高度有效的列有序的数据,同时还允许表在执行DML 操作(例如INSERT、UPDATE 和DELETE)的时候正常运作。

就像正常的聚合索引一样,聚合columnstore 索引定义了数据在磁盘上是如何物理存储的。columnstore 支持的表首先会被组织成称为行组(rowgroup)的片段。每一个行组保存102400 到1048578 行数据。在行组被识别出来之后,它就会被打碎成列片段(column segments),然后对这些列片段进行压缩,并将结果插入到实际的columnstore 中。

在处理少量数据(这里的少量指小于10 万行数据)的时候,这些数据会被组织到一个称为deltastore 的部分。一旦这些数据达到了deltastore 能够将其排出的最小大小,那么它们就会被处理为一个新的行组。你可以从下面的MSDN 图表中查看这个过程:

在deltastore 进行转换的时候它会被关闭。但是无论如何这并不是一个全表阻塞操作。在当前的deltastore 因为锁的原因不能访问的时候,会为给定的表创建一个额外的deltastore。如果表是分区的,那么每一个区都会有它自己的deltastore 集。

术语上的注意:Microsoft 现在使用“rowstore”表示按照行和列安排的传统表。deltastore 实际上是一种类型的rowstore。

和之前版本的columnstore 索引不同的是,聚合版本必须包含表中的所有列。这是因为对于剩下的行而言没有其他的堆或者聚合索引去依赖。事实上,聚合columnstore 索引根本不能和其他类型的索引结合。

查看英文原文 Introducing SQL Server 2014’s New Clustered Columnstore Indexes

2013-09-30 06:042544
用户头像

发布了 321 篇内容, 共 124.3 次阅读, 收获喜欢 19 次。

关注

评论

发布
暂无评论
发现更多内容

汽车电子行业开发者的内功心法:汽车软件开发V模型(瀑布模型)

不脱发的程序猿

嵌入式开发 瀑布模型 汽车软件开发 V模型

QT|QLabel显示多行文本过多后显示省略号

中国好公民st

qt 7月月更

Prometheus 发布 LTS 长期支持版本啦

耳东@Erdong

release Prometheus 7月月更

数据平台的发展历程

奔向架构师

大数据 7月月更

系统刷JavaScripit 构建前端体系(语法篇)

程序员海军

JavaScript 7月月更

试着换个角度理解低代码平台设计的本质

Geek_z9ygea

Vue 前端 React 低代码平台

短视频直播系统源码

开源直播系统源码

短视频源码 直播系统源码 开源源码

VLAN再见,我选择用QinQ!1000字带你详细了解QinQ技术

wljslmz

VLAN 网络技术 7月月更 QinQ

qt 实现日历美化

小肉球

qt 7月月更

Flink实战:消费Wikipedia实时消息

程序员欣宸

Java flink 7月月更

Qt | QWidget的一些总结

YOLO.

qt 7月月更

java零基础入门-java8新特性(下篇)

喵手

Java 7月月更

jQuery 请求

Jason199

jquery js post GET 7月月更

python小知识-什么是上下文管理

AIWeker

Python python小知识 7月月更

在 Business Application Studio 里使用 SAP UI5 应用消费 OData 的 Create 和 Delete 操作

汪子熙

Cloud SAP Fiori SAP UI5 7月月更

mysql进阶(十三)命令行导出导入数据库

No Silver Bullet

MySQL 数据库 数据导入 数据导出 7月月更

Java中的设计模式

Java学术趴

7月日更

LeetCode-数组中数字出现的次数(单身狗问题)

芒果酱

c++ C语言 数据结构算法 Leet Code 7月月更

C#入门系列(二十五) -- 接口

陈言必行

7月月更

分享 15 个 Vue3 全家桶开发的避坑经验

Geek_z9ygea

Vue Vue3

STM32+DHT11读取温湿度数据显示

DS小龙哥

7月月更

小心!正则 test() 匹配的一个“坑”

掘金安东尼

正则 7月月更

zookeeper-集群和zab协议

zarmnosaj

7月月更

读书笔记之数据密集型应用的可维护性

宇宙之一粟

设计数据密集型应用 7月月更

Spring系列一:Spring基础篇

叶秋学长

KUDU1.11 环境安装

怀瑾握瑜的嘉与嘉

7月月更 kudu

strcat() - 连接字符串

謓泽

7月月更

Unity3D和Android交互

沃德

程序员 Unity 7月月更

没有了可用Task slot,Flink新增任务会怎样?

程序员欣宸

Java flink 7月月更

C# DataGridView数据导出Excel文件

IC00

C# 7月月更

SQL Server 2014新聚合columnstore索引介绍_大数据_Jonathan Allen_InfoQ精选文章