SQLServer2014新特性:内存优化与Hekaton详解
需积分: 10 10 浏览量
更新于2024-07-21
收藏 1.16MB PDF 举报
"这篇文档详细介绍了SQLServer 2014的新特性,特别是其内存数据库功能,也称为Hekaton,以及与之相关的OLTP和HA/DR改进。Hekaton是一个内置于SQLServer的数据引擎,它采用了无锁机制,支持ACID事务,并通过本地编译存储过程提高性能。此外,文档还提到了内存优化表的创建方式、限制及对开发人员和DBA的影响。"
SQLServer 2014引入了许多新功能,其中最引人注目的是内存数据库系统,官方代号为Hekaton。Hekaton是一种完全集成在SQLServer引擎内部的内存优化数据库,设计目标是提升在线事务处理(OLTP)的性能。它的核心特点包括使用哈希索引来优化内存中的数据结构,采用多版本行控制以消除传统的锁机制,如锁、闩锁和自旋锁,以及将T-SQL存储过程编译为机器代码,以实现更高效的执行。
Hekaton适用的场景主要是那些高并发、小事务且存在大量锁等待的情况,以及需要优化存储过程中的复杂逻辑。然而,Hekaton对表的结构和数据类型有特定的要求,比如不支持ALTER TABLE操作,不允许LOB数据类型,行大小不能超过8060字节,不支持除主键外的其他约束,无自增列和计算列,也不支持CLR类型。对于DBA来说,内存优化表需要放在内存优化文件组中,而且可以选择持久化或非持久化模式。此外,由于内存资源的限制,可能需要处理并发写冲突,这需要在程序设计时加入重试机制。
内存优化表的创建通常通过特定的语法完成,而本地编译存储过程则适用于包含复杂业务逻辑的OLTP查询。然而,它们只能访问内存优化表,且有一些限制,如不能访问非内存优化表,某些SQL语句可能不适用。如果内存不足,可能会导致事务失败或恢复时出错,甚至影响到未使用内存优化表的事务。
在性能方面,Hekaton通过消除日志写入前的等待(Write Ahead Log)来显著减少事务延迟。但在某些情况下,例如当事务日志空间不足或者内存优化表占用过多内存时,可能会影响系统的正常运行。进行性能测试和调整是确保系统稳定性和性能的关键步骤。
SQLServer 2014的这些新特性为处理高并发OLTP工作负载提供了强大的工具,但同时也需要开发人员和数据库管理员充分理解和适应这些新技术,以充分利用其潜力并确保系统的稳定运行。
2024-11-29 上传
2024-11-29 上传
2024-11-29 上传
2024-11-29 上传
2024-11-29 上传
2024-11-29 上传
zhengrr7111369
- 粉丝: 0
- 资源: 1
最新资源
- C语言数组操作:高度检查器编程实践
- 基于Swift开发的嘉定单车LBS iOS应用项目解析
- 钗头凤声乐表演的二度创作分析报告
- 分布式数据库特训营全套教程资料
- JavaScript开发者Robert Bindar的博客平台
- MATLAB投影寻踪代码教程及文件解压缩指南
- HTML5拖放实现的RPSLS游戏教程
- HT://Dig引擎接口,Ampoliros开源模块应用
- 全面探测服务器性能与PHP环境的iprober PHP探针v0.024
- 新版提醒应用v2:基于MongoDB的数据存储
- 《我的世界》东方大陆1.12.2材质包深度体验
- Hypercore Promisifier: JavaScript中的回调转换为Promise包装器
- 探索开源项目Artifice:Slyme脚本与技巧游戏
- Matlab机器人学习代码解析与笔记分享
- 查尔默斯大学计算物理作业HP2解析
- GitHub问题管理新工具:GIRA-crx插件介绍