- 1、本文档共43页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SQLCTP2内存驻留OLTP详细功能概述
SQL Server CTP2内存驻留OLTP详细功能概述
SQL Server技术文档
作者:Kalen Delaney
技术审稿人:Kevin Liu、Sunil Agarwal、Jos de Bruijn、Kevin Farlee、Mike Zwilling、Craig Freedman、Mike Weiner、Cristian Diaconu、Pooja Harjani、Paul Larson、David Schwartz
发布时间:2013年10月
适用产品:SQL Server 2014 CTP2
概述:
内存驻留OLTP(项目“Hekaton”)是一个全新的、完全集成到SQL Server的数据库引擎组件。 对OLTP工作负载访问驻留在内存中的数据进行了优化。内存驻留OLTP能够帮助OLTP工作负载实现显著的性能改善,并减少处理时间。表能被视为“内存优化”,提升内存中的OLTP功能。内存优化表是完全可事务的、并可以使用Transact-SQL进行访问。Transact-SQL存储过程可以编译成为机器码,从而进一步地提高内存优化表的性能。该引擎是专为高并发而设计的,并且阻塞是最小的。
版权声明
本文档中包含的信息只做信息展示用途。本文档中包含的信息和视图,包括URL以及其他的网站参考可能会在未经提示的情况下被修改,您需要自己承担适用这些信息的风险。
本文档并未给您提供适用任何微软产品当中知识产权的法律权限。您只能以内部参考用途的目的来复制和适用本文档当中的内容。
? 2013 微软公司,保留所有权利。
目录
概述 6
设计考虑和目的 6
术语 6
功能概述 7
内存驻留的OLTP有哪些技术亮点? 7
内存优化的表 8
内存优化的表索引 8
增强的并发性功能 9
本地编译的存储过程 9
内存优化的OLTP是不是就是DBCC PINTABLE? 9
竞争对手的解决方案 9
使用内存驻留的OLTP 10
创建数据库 10
创建表 11
行和索引存储 12
行 12
行头 13
有效载荷区域 14
内存优化的表上的索引 14
哈希索引 14
范围索引 16
数据操作 19
内存优化的表允许的隔离级别 19
删除 20
更新和插入 20
读取 21
验证 22
T-SQL支持 22
内存驻留的行垃圾回收机制 23
事务隔离和并发性管理 24
检查点和恢复 26
事务日志 27
检查点 29
检查点文件 30
检查点流程 30
合并检查点文件 30
自动的合并 30
手动合并sys.sp_xtp_merge_checkpoint_files 31
检查点文件垃圾回收 32
恢复 32
本地编译表和存储过程 33
什么是本地编译? 33
维护DLL文件 33
本地编译的表 33
存储过程的本地编译 34
编译和查询流程 35
SQL Server功能支持 36
管理体验 36
Metadata元数据 36
归类视图 36
动态管理对象 37
XEvents 37
性能计数器 38
内存使用报告 38
内存需求 39
通过资源监管器管理内存 39
使用AMR 40
总结 40
了解更多信息: 41
概述
SQL Server在最初设计的时候,假定主内存是非常昂贵的,所以当数据实际需要处理时数据需要驻留在磁盘上。随着在过去的30年中内存的价格大幅度降低,这个假设已不再有效。与此同时,多核服务器已经成为人人可用得起的东西,所以今天的人们可以以5万美元以下的价格购买一台具有32个内核和1TB的内存的服务器。由于在实际使用中的多数OLTP数据库完全可以容纳1TB,所以我们在将数据读入内存处理的时候,需要重新评估存储在磁盘上的数据和产生的I/O成本的收益。此外,当这个数据被更新并需要写回磁盘的时候,OLTP数据库也会产生成本。内存优化表存储的方式完全不同于基于磁盘表存储的方式,并且这些新的数据结构使得数据访问和处理更加有效。
由于这一趋势使得产生更多可用的内存和更多的内核,所以微软SQL Server团队已经开始构建一个具有优化的大型主存储器和多核心的CPU的数据库引擎。本文展现了这个新的数据库引擎功能的技术概述:内存驻留OLTP。
欲了解更多关于内存驻留OLTP的信息,请参阅内存驻留OLTP (内存驻留优化)。
设计考虑和目的
创建真正的主内存中的数据库这一行动被三个基本需求驱动: 1 )、整合大部分或全部数据所需的工作量到主内存,2 )、数据操作需要更少的延迟时间,以及3)、专门的数据库引擎,这些引擎针对一些需要调整的特定类型的工作负载。摩尔定律已经影响了内存的成本,并允许主存储器必须足够大,从而完全满足第一个需求和部分满足第二个需求。 (更大的内存降低读取的延迟,但并不影响在传统数
文档评论(0)