SNIA持久化内存峰会:虚拟机、数据库、SDS进展曝光

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介: - VMware眼中的三种NVRAM; - SQL Server:NVDIMM-N用于Log Buffers加速; - S2D初期支持SCM DIMM块设备; 附会议资料下载链接

记得一年前撰写《3D XPoint遇上SAP HANA:机遇与挑战》,就是参考的SNIA PersistentMemory Summit 2017会议资料。日前PM Summit 2018大会又在美国加州圣何塞举行,再次给我们带来了一些有价值的参考资料。

 

640?wx_fmt=png


会议资料下载链接   https://www.snia.org/pm-summit

百度网盘分享   https://pan.baidu.com/s/1kWSEaGJ

 

HyperVisor支持:VMware眼中的三种NVRAM

 

640?wx_fmt=png上图引用自VMware在会上的演讲资料,这里列出了比较成熟或者即将进入市场的三种持久化内存技术。

 

首先是NVDIMM-N,现已在DellHPE的服务器上支持选配;然后是HPE将普通DRAM内存备份到NVMe SSD上的方式,我理解这样做掉电保护时不仅要对内存条本身供电,维持整个系统开机电池的容量要求高些;第三种是DIMM 内存条形态的Intel3D XPoint,首批上市容量预计在256-512GB,因为介质属于SCM非易失存储级内存,所以没有掉电保护需求。

 

关于目前已上市的PCIe/NVMe接口Intel 3D XPoint SSD,可以参考我写的系列评测:

IntelOptane P4800X评测(序):不用缓存和电容保护的SSD

IntelOptane P4800X评测(1):好钢如何用在刀刃上?

OptaneP4800X评测(2):Oracle 170万TPM意味着什么?

IntelOptane P4800X评测(3):Windows绑核优化篇

MySQL的启示:Intel Optane P4800X评测(4)

SPDK实战、QoS延时验证:IntelOptane P4800X评测(5)

 

640?wx_fmt=png

VMware还列出了性能对比,在一个Fedora 24虚拟机里用FIO测试,从低到高分别为NVMeSSDvSCSI仿真)、vPMemDiskvSCSI仿真)、vNVDIMM(块访问)和vNVDIMM-DAX(直接访问)。性能显然是越往右边越好,其中大数据块的差距更大,写比读的差距更大。

 

持久化内存用于vSCSI块设备的性能也受到了拖累,不过这种方案的好处是可以兼容传统的Guest OS操作系统


640?wx_fmt=png

同时我们看到,微软Hyper-V也从Windows Server2016 RS4(目前还是内部预览版)开始支持Persistent MemoryvPMEM)。

 

SQL Server数据库:NVDIMM-N用于Log Buffers加速

 

640?wx_fmt=png

大家可能看到过Oracle 18c宣传未来对NVRAM的支持,本次微软也讲了SQL Server 2016在这方面的动作。

 

日志写速度容易成为数据库交易的瓶颈,因此更快的日志对数据库(单位时间内)更多的更新带来可能。目前SQL Server的做法是将Log Buffers建立在NVDIMM-N中,数据到达这一步即完成事物提交。当日志写满一个大块时,再将整个块后台刷入SSD上的日志文件。

 

640?wx_fmt=png

由于SQL Server 2016能够使用字节寻址的log(以内存速度commit),能够显著缩短日志的写入延时。根据测试数字,特别是对In-Memory数据库的update速度可提升1,同时降低交易时间。

 

S2D分布式存储:初期支持SCM DIMM块设备

 

关于微软Windows Server 2016自带的Storage Spaces Direct存储软件,我们也发过几篇详细的评测:

 

4节点近160万IOPS:SDS/超融合测试不能只看数字

12万邮箱ESRP测试:Exchange超融合存储设计漫谈

揭秘VDI存储测试:4节点SDS模拟12000虚拟桌面

Windows超融合遇上OracleRACS2D测试之四

 

640?wx_fmt=png

如上图,不难看出S2D是在HDDSATA/SAS SSDNVMe SSD之外引入了第4类存储介质支持。连接在CPU内存总线上的SCM,不难猜到Intel 3D XPoint Memory,至少是最快最实际的。

 

640?wx_fmt=png

S2D配置SCM存储层时,持久化内存设备替代了之前NVMe SSD的位置,既可以支持全SCM(有点奢侈吧),也可以将SCM作为NVMe或普通SSDCache设备

 

3D XPoint Memory为例,写IOPS与读IOPS几乎一样快,写寿命不低于30 DWPD(远高于NAND闪存),官方说没有写放大,不需要垃圾回收。用了这样的Cache设备做为SSD容量层的写缓存S2D的性能会不会再创新高呢?

 

根据上面的描述,我已经大致猜测到将于RS4版本Windows Server 2016回归的S2D,对SCM的支持为块设备形式。而很快我就从下面的文字中确认了这一点。

 

640?wx_fmt=png

Windows Storage Spaces Direct对持久化内存的支持,“最初为模拟块设备,未来还会有更多用法。”

 

:SNIA PersistentMemory Summit 2018会议资料下载

https://pan.baidu.com/s/1kWSEaGJ

目录
相关文章
|
1月前
|
SQL 开发框架 JavaScript
在 Vue 中进行数据持久化时,有哪些常用的数据库框架?
在 Vue 中进行数据持久化时,有哪些常用的数据库框架?
49 3
|
27天前
|
缓存 Java C#
【JVM故障问题排查心得】「Java技术体系方向」Java虚拟机内存优化之虚拟机参数调优原理介绍(一)
【JVM故障问题排查心得】「Java技术体系方向」Java虚拟机内存优化之虚拟机参数调优原理介绍
76 0
|
29天前
|
监控 关系型数据库 数据库
OceanBase数据库常见问题之增加内存依旧报内存不足如何解决
OceanBase 是一款由阿里巴巴集团研发的企业级分布式关系型数据库,它具有高可用、高性能、可水平扩展等特点。以下是OceanBase 数据库使用过程中可能遇到的一些常见问题及其解答的汇总,以帮助用户更好地理解和使用这款数据库产品。
|
1月前
|
JavaScript 前端开发 API
如何在 Vue 中进行数据持久化(例如与后端数据库交互)?
如何在 Vue 中进行数据持久化(例如与后端数据库交互)?
27 3
|
1月前
|
存储 Java 编译器
JVM虚拟机内存区域详情
JVM虚拟机内存区域详情
15 0
|
1月前
|
存储 Java 开发者
深入理解Java虚拟机(JVM)内存管理
【2月更文挑战第11天】 在本篇文章中,我们将深入探讨Java虚拟机(JVM)的内存管理机制,一项对于优化Java应用性能至关重要的技术领域。不同于常规的技术文章摘要,我们不仅概述了JVM内存管理的基本概念,还将引导读者通过实际案例理解其在现实世界应用中的重要性。从堆(Heap)和栈(Stack)的区别开始,到垃圾收集(Garbage Collection)机制的工作原理,本文旨在为Java开发者提供一个清晰、系统的JVM内存管理知识框架,帮助他们在开发过程中做出更加明智的决策。
|
2月前
|
存储 算法 Java
Java虚拟机内存管理机制
【2月更文挑战第7天】本文主要介绍了Java虚拟机内存管理机制的基本原理和实现方式。Java虚拟机的内存管理机制是Java程序运行的重要组成部分,对程序性能和稳定性有着直接的影响。文章首先从Java虚拟机内存模型入手,介绍了Java虚拟机中堆内存、方法区、栈、PC寄存器等内存区域的功能特点和使用方式;然后详细阐述了Java虚拟机内存管理机制的垃圾回收算法和回收器的分类、优化和实现过程;最后介绍了一些常见的内存问题和优化技巧,以及如何通过代码调优和合理使用内存配置参数来提高程序的性能和稳定性。
|
3月前
|
存储 缓存 NoSQL
Redis 数据结构+线程模型+持久化+内存淘汰+分布式
Redis 数据结构+线程模型+持久化+内存淘汰+分布式
311 0
|
4月前
|
NoSQL 安全 Java
基于内存的分布式NoSQL数据库Redis(六)AOF设计
基于内存的分布式NoSQL数据库Redis(六)AOF设计
168 0
|
4月前
|
存储 分布式计算 NoSQL
基于内存的分布式NoSQL数据库Redis(五)数据存储与RDB设计
基于内存的分布式NoSQL数据库Redis(五)数据存储与RDB设计
153 0

热门文章

最新文章