SQL Server 2016新特性:In-Memory OLTP
Posted Fanr
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server 2016新特性:In-Memory OLTP相关的知识,希望对你有一定的参考价值。
存储格式修改
在2014,2016中修改了内存优化表的存储格式,新的格式是序列的并且the database is restarted once during database recovery.
ALTER TABLE日志优化,并且可以并发运行
当你在内存优化表执行ALTER TABLE,只有元数据的修改会被写入日志。这样减少了大量的日志。并且很多ALTER TABLE是并行的,这样可以减少语句运行的时间
- 但是如果包含LOB,就不能并行运行
统计信息
优化表的统计信息可以自动更新。另外可以通过采样来收集统计信息,不需要进行表扫描
内存优化表的并发和heap扫描
内存优化表和索引,只是并行扫描。对于分析的查询可以提高性能。
另外,heap扫描也进行并发扫描。
内存优化表的TSQL增强
在SQL Server 2014很多TSQL语句都不能使用,现在在2016上可以使用了:
- 支持唯一约束和索引
- 支持内存优化表间的外键
-
- 外键只能引用主键,不能用唯一建
- 支持check约束
- 非唯一索引支持key中的null
- 支持内存优化表上的触发器
-
- 只支持AFTER的触发器,INSTADOF触发器不支持
- 内存优化表中的任何触发器必须使用WITH NATIVE_COMPILATION。
- 内存优化表,多列,行大小可以超过8060字节。
- 支持LOB类型
natively compiled的TSQL增强
略
性能和扩展性的提高
- 数据大小不在限制
- 支持多个线程把内存优化表的修改持久化到磁盘
- InterOp支持多线程访问
SSMS的增强
略
以上是关于SQL Server 2016新特性:In-Memory OLTP的主要内容,如果未能解决你的问题,请参考以下文章
SQL Server 2016新特性:DROP IF EXISTS
SQL Server 2016新特性:Live Query Statistics
SQL Server 2016新特性:Temporal Table