写点什么

内存优化表的索引

  • 2013-09-25
  • 本文字数:678 字

    阅读完需:约 2 分钟

SQL Server 2014 的内存优化表对索引的处理方式与传统表相比差别很大。首先也是最重要的一点,你必须有至少一个索引,但同时索引数不能超过8 个。

必须的那个索引用于组织内存中的数据。不同于传统的表,内存优化表并不支持将数据存储到一个无序堆中。这个索引包含主键,这也是表所唯一允许的唯一列。另外,主键不能是一个标识列。

事实上,标识列是被完全禁止的。这极有可能是支持锁无关写操作所需要的一个限制。

其他7 个索引几乎都是用于辅助join 和order by 操作的。正如前面所提到的,你不能添加额外的唯一索引,也不能使用索引执行外键约束。

你也不能使用触发器解决这些限制,因为内存优化表并不支持。

最后,也不允许检查约束。这意味着几乎所有关注完整性的数据都必须被推送到存储过程或者应用程序层里面。

但是请等一等,还有更多要说明的内容。你还不能在可空的列上放置索引。你也不能使用筛选索引,每一个索引都必须引用每一行。

内部结构

内存优化表中的行并不会被安排在页中。相反,它们分散在内存中。访问它们的唯一方式便是通过索引,这就是至少要有一个索引的原因。

这些索引并不是传统的B 树。它使用一个哈希索引和一个固定数量的桶(buckets)。在理想的情况下,每一个桶仅会容纳一行,因此在创建索引的时候你应该指定期望这个表存储的行的数量。你需要仔细斟酌,对于内存而言超出预算的行数是一个非常大的浪费。

对此,一个计划的替代方案是范围索引(range indexes)。虽然现在还不能用,但是范围索引的期望是能够更好地处理未知数量的行。

明天我们将会继续这个系列,介绍本机编译的查询。

查看英文原文 Indexes in Memory Optimized Tables

2013-09-25 09:321718
用户头像

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

关注

评论

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

《Operating System Concepts》阅读笔记:p626-p628

codists

操作系统

2025年最佳的5个找工作AI助手:全面指南

安全乐谷

AI 面试 找工作 实习 agent

GitHub封锁?推荐5个国产的Git仓库替代平台

程序员晚枫

GitHub 开源

TapData 与 StarRocks 完成兼容性互认证,携手共建实时数据智能生态,联合打造端到端全链路实时数仓解决方案

tapdata

实时数仓 数据集成 StarRocks 实时数据平台 tapdata和starrocks

PIRF 429:True or False

Echo!!!

English

【HarmonyOS 5】鸿蒙实现手写板

GeorgeGcs

鸿蒙 HarmonyOS 本地存储 敏感信息

《Operating System Concepts》阅读笔记:p629-p635

codists

操作系统

2025黑神话悟空更新了什么内容 Mac电脑怎么玩黑神话悟空

阿拉灯神丁

mac电脑虚拟机 CrossOver Mac下载 Mac游戏下载 苹果电脑游戏推荐 黑神话悟空

区块链ETF类APP的开发流程

北京木奇移动技术有限公司

区块链技术 软件外包公司 区块链ETF

【HarmonyOS 5】敏感信息本地存储详解

GeorgeGcs

鸿蒙 本地存储 敏感信息

北京大风来,带了什么来

AI时代的一滴水

人生修炼

深入研究:京东商品评论API详解

tbapi

京东商品评论接口 京东API 京东评论API 京东商品评论采集

如何使用通义灵码玩转Docker - AI助手提升开发效率

阿里巴巴云原生

Docker

性价比很高的智能工单管理系统推荐:轻帆云工单管理效率翻倍,运营成本直降50%!

云智慧AIOps社区

ITSM ITSM软件 工单管理 AI智能客服

上千元改一份简历,真的值得吗

安全乐谷

面试 找工作 简历 实习

深入研究:京东商品视频 API 详解

tbapi

京东API 京东商品视频API

欢迎投稿!Community Over Code Asia 2025 议题征集全面启动!

Apache IoTDB

通义灵码助力JavaScript开发:快速获取API与智能编码技巧

阿里云云效

JavaScript

Arthas profiler(使用async-profiler对应用采样,生成火焰图)

刘大猫

教育 Arthas 大模型 社会科学 人文学科

摩尔线程精彩亮相2025中国移动云智算大会,以全栈AI赋能智算新时代

新消费日报

ATRNX.AI 全智能量化 Agent 引领金融科技新浪潮——第七届全国金融大数据及 AI 战略融合发展大会在杭召开

TechubNews

区块链 人工智能 web3

如何使用通义灵码玩转Docker - AI助手提升开发效率

阿里云云效

Docker

区块链 ETF 类 APP 的主要功能

北京木奇移动技术有限公司

软件外包公司 区块链ETF ETF软件

通义灵码助力JavaScript开发:快速获取API与智能编码技巧

阿里巴巴云原生

js

冲破次元壁!初音未来梦幻联名丨华硕ROG DAY暨2025新品发布会

新消费日报

如何使用 Grafana 连接 Easyearch

极限实验室

Grafana easysearch

深入研究:京东店铺所有商品API详解

tbapi

京东API 京东店铺所有商品API 京东店铺商品采集

香港首届Web3人工智能与RWA产业投融生态对接峰会蓄势待发

TechubNews

区块链 人工智能 AI

PIRF430 - Job Interview

Echo!!!

English

香港首届Web3人工智能与RWA产业投融生态对接峰会蓄势待发

TechubNews

人工智能 AI

Easysearch S3 备份实战

极限实验室

S3 easysearch

内存优化表的索引_架构_Jonathan Allen_InfoQ精选文章