专栏名称: 企业存储技术
企业存储、服务器、SSD、灾备等领域技术分享,交流 | @唐僧_huangliang (新浪微博 )
目录
相关文章推荐
51好读  ›  专栏  ›  企业存储技术

数据库TPC提升42%:NVDIMM-N为何普及慢?

企业存储技术  · 公众号  ·  · 2018-03-20 08:30

正文

请到「今天看啥」查看全文


本文内容非商业用途可无需授权转载,请务必注明作者及本微信公众号、微博 @唐僧_huangliang,以便更好地与读者互动。


由于之前养成的习惯,出差在外晚上总想写点什么。前两天有朋友希望我讲讲NVIDMM-N对性能有多大实际改善,正好手头也有一份相关的测试资料。

其实在2个月前的《 SNIA持久化内存峰会:虚拟机、数据库、SDS进展曝光 》一文中,我就介绍过NVDIMM-N用于SQL Server数据库Log Buffers加速的性能数字,基于In-Memory数据库对比所以提升了一倍,因为内存库本身落盘的I/O就只有日志,所以效果不错。

显然OLTP交易型用户的比例更大,本文就希望能提供这方面的一些参考。

NVDIMM-N架构及DAX访问模型


虽然以前我没专门写过这一块,估计许多朋友对上图中的内容已经不陌生了。简单来说,NVDIMM具备和DRAM完全相同的性能,在异常掉电时利用备份电源(锂电池或电容)中的电量将数据备份到NAND闪存以避免丢失。


这个对比的·是SCM(存储级内存)的访问模式。左边为传统SSD/HDD的块设备;中间为SCM上的块设备卷;右边则是 SCM 上的DAX卷 。后者经过Volmgr/Partmgr,以 Memory Mapped /Cached IO的方式直接建立文件系统。

也许有朋友会问:NVDIMM-N与3DXPoint等新一代存储级内存不同,为什么还要模拟块设备/卷呢?这与当前的应用有关,SQL Server数据库使用这个DAX卷时是 以字节寻址 的。

SQL Server日志缓冲在SCM中的合并提交

之前我谈过这个,传统的日志处理,Log记录在内存Buffer中一旦遇到Commit就要执行写盘到文件的操作。Oracle等数据库也是如此。

而在SQL Server 2016 SP1中对SCM非易失介质的优化,就是 不用每次Commit都写盘,可以凑成更大的块再刷到比如SSD上 。这样能够缩短日志写入延时。

根据此处的“SCM”,我联想到该特性在IntelApache Pass(即DIMM形态3D XPoint)推出时估计直接就可以支持。

注:之前我写过相关的评测,《 SPDK 实战、QoS 延时验证:Intel Optane P4800X 评测(5) 》是系列中的最后一篇,里面附有更多测试的链接。

NVDIMM-N软硬件测试配置

具体测试NVDIMM的服务器设置,是把 4 个数据库的日志分别映射到4条不同的NVDIMM-N (DAX)模组上。

每个数据库大小创建为350GB,使用HammerDB工具测试 TPC-C 工作负载。每个数据库16用户,每项Benchmark测试10分钟。

这里可以提一下Dell EMC PowerEdge 740服务器配置NVDIMM时的注意事项。双路Xeon Scalable服务器最多支持24条内存, 每个通道的第二插槽(上图标绿色)才是用于NVDIMM的 ,我理解在NVDIMM对应通道的蓝色插槽中都要安装有RDIMM常规内存。

关于硬件部分就不详细展开了,有兴趣的朋友可以查看我写的《 Dell PowerEdge R740xd解析:服务器只看参数那就错了 》。

测试结果 | HA影响NVDIMM普及?

TPS 性能对比中,没有NVDIMM时每秒交易数为16800,使用NVDIMM之后达到24000,提升了42%;而 Batch (批处理) 则由每秒32000请求提高43%达到46000。

最后给大家列出测试硬件配置,这里使用了4条16GB NVDIMM-N,4块1.6TBSSD存放数据和日志文件。

同时还提到了一点——使用 单台服务器 测试。针对SQL Server生产环境,推荐至少2台服务器以确保HA高可用。 如果在HA双机连接共享存储的环境,本文这种日志加速方法就不容易用了;要是基于网络同步复制节点,估计延时也会比本地NVDIMM增加不少。

我想这可能就是NVDIMM-N至今还不太普及的一个原因吧?

参考资料:《Accelerating Microsoft SQL Server Performance With NVDIMM-N on Dell EMC PowerEdge R740》


:本文只代表作者个人观点,与任何组织机构无关,如有错误和不足之处欢迎在留言中批评指正。 进一步交流 技术 可以 加我的 QQ/ 微信: 490834312 。如果您想在这个公众号上分享自己的技术干货,也欢迎联系我:)


尊重知识,转载时请保留全文,并包括本行及如下二维码。感谢您的阅读和支持!《企业存储技术》微信公众号: HL_Storage


长按二维码可直接识别关注

历史文章汇总 http://www.10tiao.com/author/index?authorId=691

点击下方“阅读原文”,查看更多历史文章
↓↓↓






请到「今天看啥」查看全文