admin管理员组

文章数量:1531419

2024年7月16日发(作者:)

SQL Server 2014 数据库引擎新特性前瞻

方勇

【摘要】

2013年6月25日,微软发布了SQL Server 2014 CTP1 ,作为数据库爱好者怎能不

先睹为快。本文将为您介绍SQL Server 2014 的重点新特性。

【正文】

非常的意外,SQL Server 2014 CTP1 安装完成之后,显示的版本号为11.0.9120。要

知道SQL Server 2012 的版本号为11.0.2100。按照微软的惯例:1) 数据库的版本不会更

新这么频繁,微软没有2年更新SQL server 版本的先例;2)近些年经常推出R2版;3)从

版本号来看, 之后R2 大版本号才回相同。我怀疑SQL Server 2014 正式发布的时候会不

会更名为SQL Server 2012 R2。

下面我们来看看SQL Server 数据库引擎的几个重点新特性:

1. 内存优化表

如果说SQL Server 2012 的数据库引擎最大的亮点是Always On的话,那么SQL

Server 2014 最大的亮点就是内存优化表(Memory-optimized tables)了。内存优化表让

我们眼前一亮,可以改善基于磁盘的表的低性能。通过以下的原理和机制让我们获得更好的

性能和可扩缩性:

 通过数据页和索引页驻留在内存,减少IO瓶颈

 采用乐观并发控制,消除了逻辑锁,提高了并发性

 本机编译存储过程,执行效率更高

2. AlwaysOn 增强

释放办公激情,效能触手可及

嘉为IT咨询培训

0

SQL Server 2012 的企业版中增加了Always On的新特性,可以提供最大四个副本。

副本可以作为容灾副本实现类似于数据库镜像一样的容灾和故障转移,也可以作为查询副

本,提供给报表或者应用系统的只读查询,分担主服务器的开销。

在SQL Server 2014 中,我们可以看到Always On 被增强了:

 将最大的副本数据从4个增加为8个

 无法连接主副本或者群集仲裁丢失,查询副本仍然可以用于查询

 提高了可用组排错的效率,包括:1)在Windows Server 2012 以上版本,

故障转移群集实例可以使用群集共享卷作为群集共享磁盘;2)增加了动态管理视

图用于返回信息

3. 列存储索引增强

SQL Server 2012第一次出现了列存储索引,聚集的列存储索引可以提高数据压缩

和查询性能。但是遗憾的是,这种技术我们只能用于数据仓库,因为创建了列存储索引

的表只能提供只读查询。而且即使用于数据仓库也会很不方便——每次装载数据前必须

删除列存储索引。

在SQL Server 2014 中,我们可以看到列存储索引被被增强了:

 SQL Server 2014中聚集的列存储索引可以被更新了,也就意味着我们可以对

建立了列存储过程的表进行Insert、Update、Insert 操作了。

 ALTER INDEX … REBUILD 有一个新的COLUMNSTORE_ARCHIVE 数据

压缩选项可以进一步压缩列存储索引的某个分区,可以减少存储空间,节省存储和

检索所需的时间。

4. 缓冲区扩展

内存可以用于缓存数据,减少IO的开销和改善性能。但是某些事务型的数据库通

常非常巨大,远大于内存。SQL Server 缓冲区的机制是:将最近最常用访问的数据保

留在缓冲区。内存不够大的时候,就只能不断把数据从内存中清除,然后从硬盘读取新

的数据到内存中。

既然内存的成本较高,有没有较低成本的替代方案呢?

释放办公激情,效能触手可及

嘉为IT咨询培训

1

本文标签: 内存副本数据库