限时领|《AI 百问百答》专栏课+实体书(包邮)! 了解详情
写点什么

SQL Server 2016:内存列存储索引

  • 2015-06-04
  • 本文字数:634 字

    阅读完需:约 2 分钟

SQL Server 2016 的一项新特性是可以在“内存优化表(Memory Optimized Table)”上添加“列存储索引(Columnstore Index)”。要理解这是什么意思,我们应该首先解释术语列存储索引和内存优化表。

列存储索引是一种按照列而不是行组织数据的索引。每个数据块只存储一个列的数据,最多包含100 万行。因此,如果数据为5 列1000 万行,那么就需要存储在50 个数据块中。当只查询部分列时,这种数据组织策略特别有效,因为数据库不会从磁盘读取用户不关心的列。

列存储索引比表扫描要快得多,但没有传统的B 树索引那么快。这特别适合于那种无法预测需要什么索引的即时报表。

内存优化表正如它的名字, 它是一个经过优化并一直驻留在内存中的表。这有许多好处,比如锁无关写,但它也有很大的局限性。比如,只允许有8 个索引,这对于用于即时查询的表而言限制太大。

SQL Server 2016 部分地弥补了这种限制,它允许那 8 个索引中的其中一个为列存储索引。但要遵循如下规则:

  • 像内存优化表上的其它索引一样,列存储索引必须在表创建时定义。
  • 列存储索引必须包含基表中的所有列。(在普通表上的列存储索引不存在这种限制。)
  • 列存储索引必须包含基表中的所有行。换言之,它不能是“筛选索引(filtered index)”。

一个与内存优化表相关的特性是创建本地编译查询。数据库使用C 编译器将这些查询编译成了机器码,而不使用SQL Server 解释器。使用列存储索引的查询可以使用这个选项,而不用总是通过解释器运行。

查看英文原文 SQL Server 2016: In-Memory Columnstore Indexes

2015-06-04 10:162733
用户头像

发布了 1008 篇内容, 共 424.4 次阅读, 收获喜欢 346 次。

关注

评论

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

对谈 MoonBit:AI 时代的编程语言应该是什么样子的?丨编码人声

声网

一文了解Spring Boot启动类SpringApplication

不在线第一只蜗牛

spring Spring Boot

Spring的三种依赖注入的方式

不在线第一只蜗牛

Java spring 依赖注入

数智化配补调:零售品牌增长新引擎

第七在线

Mac海洋冒险游戏推荐:潜水员戴夫Dave The Diver 中文安装包

你的猪会飞吗

Mac游戏下载 Mac游戏推荐

电脑彻底删除的文件还能恢复吗怎么弄 电脑删除的文件怎么恢复 回收站也删了

阿拉灯神丁

易恢复性 EasyRecovery 电脑文件 数据恢复软件 软件包

软件测试学习笔记丨JUnit5动态测试的生命周期

测试人

软件测试

mac冒险游戏:死亡细胞Dead Cells for mac 下载

你的猪会飞吗

mac下载 mac单机游戏

火山引擎数据飞轮实践:在电商场景中,如何建设全链路数据血缘?

字节跳动数据平台

大数据 数据中台 数据治理 数据安全 数据研发

文献解读-基准与方法研究-第十五期|《不同 DNA 测序平台的标准化比较》

INSVAST

基因数据分析 生信服务 基准与方法研究

对标 GPT-4o,法国开源实验室发布多模态大模型 Moshi;腾讯汤道生:AI 领域不应只关注大模型丨 RTE 开发者日报

声网

基于Istio的多网关运行时:配置、部署和应用

inBuilder低代码平台

云原生 istio

SkyEye对接CANoe:助力汽车软件功能验证

DevOps和数字孪生

汽车行业 CANoe

SD-WAN移动办公解决方案

Ogcloud

SD-WAN 企业组网 SD-WAN组网 SD-WAN服务商 SDWAN

再聚北京共话未来,亚信安慧AntDB数据库邀您报名TDBC 2024可信数据库发展大会

亚信AntDB数据库

AntDB数据库

SD-WAN的具体适用场景有哪些

Ogcloud

SD-WAN 企业组网 SD-WAN组网 SD-WAN服务商 SDWAN

SQL Server 2016:内存列存储索引_架构_Jonathan Allen_InfoQ精选文章