揭秘SQL Server 2014有哪些新特性(2)-固态硬盘 Buffer Pool(缓冲池) 扩展

简介

SQL Server 2014中另一个非常好的功能是,可以将SSD虚拟成内存的一部分,来供SQL Server数据页缓冲区使用。通过使用SSD来扩展Buffer-Pool,可以使得大量随机的IOPS由SSD来承载,从而大量减少对于数据页的随机IOPS和PAGE-OUT。

SSD AS Buffer Pool

SSD是固态硬盘,不像传统的磁盘有磁头移动的部分,因此随机读写的IOPS远远大于传统的磁盘。将SSD作为Buffer Pool的延伸,就可以以非常低的成本巨量的扩充内存。而传统的模式是内存只能容纳下热点数据的一小部分,从而造成比较大的Page-Out,如图1所示。

图1.大量随机的IOPS需要由磁盘阵列所承担

但如果考虑到将SSD加入计算机的存储体系,那么内存可以以非常低的成本扩展到约等于热点数据,不仅仅是提升了性能,还可以减少IO成本,如图2所示。

图2.扩展后内存几乎能HOLD所有热点数据

由图1和图2的对比可以看出,扩展后可以使用更便宜的SATA存储。此外,该特性是透明的,无需应用程序端做任何的改变。

此外,该特性为了避免数据的丢失,仅仅在作为缓冲区的SSD中存储Buffer Pool的Clean Page,即使SSD出现问题,也只需要从辅助存储中Page In页即可。

最后,该特性对于NUMA进行了特别优化,即使拥有超过8个Socket的系统,CPU也能无障碍的访问内存。

启用BUFFER Pool Extension

在SQL Server 2014总,启用Buffer Pool Extension非常简单,仅仅需要拥有SysAdmin权限后,输入一个T-SQL语句即可,如图3所示。

图3.启用Buffer Pool Extension

对应的,我们可以在物理磁盘中看到这个扩展文件,该文件的性能和Windows的虚拟内存文件非常类似,如图4所示。

图4.对应的Buffer Pool扩展文件

但这里值得注意的是,我们启用的内存扩展无法小于物理内存或阈值,否则会报错,如图5所示。

图5.报错信息

对于该功能,SQL Server引入了一个全新的DMV和在原有的DMV上加了一列,来描述Buffer Pool Extention,如图6所示。

图6.引入的新的DMV和对于原有DMV的更新

此外,对于该特性的监控,SQL Server还引入了大量与之相关的计数器,如图7所示。

图7.相关计数器

小结

SQL Server Buffer Pool Extension给我们提供了以更低成本来满足更高企业级需求的可能,结合内存数据库,未来的可能性将无限延伸。

(0)

相关推荐

  • SQL查询服务器硬盘剩余空间

    关键代码如下所示: DECLARE @tb1 Table ( drive varchar(20), [MB 可用空间] varchar(20) ) INSERT INTO @tb1 Exec master.dbo.xp_fixeddrives select drive , CAST( CAST((CAST([MB 可用空间] as decimal(9,2))/1024 ) as decimal(9,2)) as varchar)+'G' as 剩余空间 from @tb1 以上所述是SQL查询服

  • lnmp关闭mysql日志保护硬盘空间的方法

    下面先来分享一下,关闭mysql日志的方法 LNMP一键包安装的Mysql默认开启Mysql日志,如果网站对数据库读写较为频繁的话可能会产生大量日志,并占用磁盘空间,还有可能导致VPS的硬盘闲置空间消耗满导致数据库无法开启. 本教程的路径适用于LNMP一键安装包环境,其它环境请根据实际情况操作. 若需要关闭,请执行以下操作: 一.修改文件配置 修改/etc/my.cnf,找到以下字符 log-bin=mysql-bin binlog_format=mixedbash 注释这两行,如下: #log

  • 揭秘SQL Server 2014有哪些新特性(2)-固态硬盘 Buffer Pool(缓冲池) 扩展

    简介 SQL Server 2014中另一个非常好的功能是,可以将SSD虚拟成内存的一部分,来供SQL Server数据页缓冲区使用.通过使用SSD来扩展Buffer-Pool,可以使得大量随机的IOPS由SSD来承载,从而大量减少对于数据页的随机IOPS和PAGE-OUT. SSD AS Buffer Pool SSD是固态硬盘,不像传统的磁盘有磁头移动的部分,因此随机读写的IOPS远远大于传统的磁盘.将SSD作为Buffer Pool的延伸,就可以以非常低的成本巨量的扩充内存.而传统的模式是

  • 揭秘SQL Server 2014有哪些新特性(1)-内存数据库

    简介 SQL Server 2014提供了众多激动人心的新功能,但其中我想最让人期待的特性之一就要算内存数据库了.去年我再西雅图参加SQL PASS Summit 2012的开幕式时,微软就宣布了将在下一个SQL Server版本中附带代号为Hekaton的内存数据库引擎.现在随着2014CTP1的到来,我们终于可以一窥其面貌. 内存数据库 在传统的数据库表中,由于磁盘的物理结构限制,表和索引的结构为B-Tree,这就使得该类索引在大并发的OLTP环境中显得非常乏力,虽然有很多办法来解决这类问题

  • 揭秘SQL Server 2014有哪些新特性(4)-原生备份加密

    SQL Server 2014 CTP2之后公布了一项针对备份的特性,那就是原生备份加密.考虑到之前网络上影响很坏的数据库泄漏事件,本质上都是数据库备份泄漏给第三方导致,SQL Server的原声数据备份可以使得即使备份本身被盗,在没有加密证书的情况下也无法使用,这有效的解决了上述数据泄漏问题.原先的解决方案 在SQL Server 2014之前,如果希望实现对备份实现加密,会通过如下两种方式之一实现: 使用透明数据加密(TDE)加密整个数据库,从而使得备份和事务日志也会被加密 使用第三方备份加

  • 揭秘SQL Server 2014有哪些新特性(3)-可更新列存储聚集索引

    简介 列存储索引其实在在SQL Server 2012中就已经存在,但SQL Server 2012中只允许建立非聚集列索引,这意味着列索引是在原有的行存储索引之上的引用了底层的数据,因此会消耗更多的存储空间,但2012中的限制最大的还是一旦将非聚集列存储索引建立在某个表上时,该表将变为只读,这使得即使在数据仓库中使用列索引,每次更新数据都变成非常痛苦的事.SQL Server 2014中的可更新聚集列索引则解决了该问题. 可更新聚集列存储索引? 聚集列存储索引的概念可以类比于传统的行存储,聚集

  • 升级SQL Server 2014的四个要点要注意

    升级并不容易,但是有一些特性值得花时间了解.下面本文将介绍一些避免升级问题的技巧. 升级一个关键业务SQL Server实例并不容易;它要求有周全的计划.计划不全会增加遇到升级问题的可能性,从而影响或延迟SQL Server 2014的升级.在规划SQLServer 2014升级时,有一些注意事项有助于避免遇到升级问题. 注意:升级SQL Server 2014的四个要点! 选择升级策略 在SQL Server升级中考虑采用内部或是并行迁移策略.我首选并行迁移策略,因为它风险较低,即便难度更大一

  • SQL Server 2014 数据库中文版安装图文教程

    SQL Server 2014三大新特性:集成内存OLTP.BI和混合云搭建,那么记录一下我们的安装过程及配置. 软件环境准备 SQL Server 2014版支持的操作系统有:Windows Server 2008.Windows Server 2008 R2.Windows Server 2012.Windows Server 2012 R2.标准版还支持 Windows 7.Windows 8.Windows 8.1 操作系统. 安装 .Net Framework 3.5 sp1 如果本机

  • 如何在SQL Server 2014中用资源调控器压制你的存储?

    在今天的文章里,我想谈下SQL Server 2014里非常酷的提升:现在你终于可以根据需要的IOPS来压制查询!资源调控器(Resource Governor)自SQL Server 2008起引入,但提供的功能还是有所限制:你只能限制CPU时间(这个已经很棒了),还有你能限制查询(从每个独立的查询)内存量. 但作为DBA的你,你经常会进行一些数据库维护操作,例如索引重建,DBCC CHECKDB操作等.我们都知道,这些操作会在你的存储里带来大量的IOPS直至峰值.如果在7 * 24在线的数据

  • SQL SERVER 2014 安装图解教程(含SQL SERVER 2014下载)

    2015年1月1日,新的一年开始之际,本来应该好好做点有意义的事情来跨个年的.结果,老习惯 - 睡觉之前一定要折腾一下电脑,说干就干,给新到的 DELL 电脑装虚机,下载 SQL SERVER 2014,安装 SQL SERVER 2014. SQL SERVER 2014 安装完成以后,不像 SQL SERVER 2008 R2 会提供一个 BIDS 开发工具,也不像 SQL SERVER 2012 会提供一个 SSDT 开发工具,也就是说 BI 的开发工具(SSIS, SSRS, SSAS)

  • 远程登陆SQL Server 2014数据库的方法

    远程登陆SQLServer (2014)数据库,供大家参考,具体内容如下 两台电脑,同一个局域网内,IP同一网段 配置: Computer1: Windows10,安装SQL Server 2014 enterprise版(作为服务器) Computer2: Windows 10,VS2015 Computer1:(1)设置Windows用户和SQL Server身份验证两种登陆方法 (2)配置SQL Server 配置管理器 网络配置将Named Pipes和TCP/IP协议均打开,TCP/I

  • JavaScript基于activexobject连接远程数据库SQL Server 2014的方法

    本文实例讲述了JavaScript基于activexobject连接远程数据库SQL Server 2014的方法.分享给大家供大家参考,具体如下: 最近翻开一本10年前买的JavaScript的书,这本书买回来只看了前半部分,后面的一直没看,也一直没有从事这方的工作. 看到有一节写着js连access接数据库,于是照着书上的代码,写了一段在chrome浏览器中运行,发现完全没反应. 查了一下才发现,这个activexobject只有微软的IE支持,其他的浏览器都不支持,我想可能是由于连接数据库

随机推荐