周末看到个消息,觉得有点价值跟大家分享下。
这是一篇来自Dell EMC英文博客的文章,标题为《NVMe – the Yellow BrickRoad to New Levels of Performance》,里面有一张图:
这里提到的3个要点是
- 灵活:跨不同存储产品形态——阵列、融合(包括超融合)和软件定义;
- 敏捷:基于行业标准技术构建;
- 可靠:由Dell EMC设计和测试。
EMC从收购XtremIO并发布第一代产品开始就采用标准尺寸SAS SSD驱动器,看来NVMe仍然延续该风格。
EMC这篇博客中也不避讳提到了最近大力宣传NVMe的Pure Storage:
“那个来自Pure Storage时髦的新品“100%NVMe”阵列怎么样呢?他们为这个新的阵列打造了自己专有的“NVMe驱动器”(被称为“Flash模块”),这是昂贵的,客户将不得不付出代价。迄今为止,还没有发布新的FlashArray //X的性能基准(还注意到PureStorage的FlashArray //M的现有性能指标也已从其网站上删除)。这些会你想怀疑...”
EMC也提到Violin Memory使用专有闪存模块失败的例子,对友商的评价大家看看就好,考虑到国内存储厂商也有人撰写类似的文字,所以我也没啥可说的。毕竟大家都有自己的判断力:)
NVMe SSD真的会使阵列更快吗?
我想跟大家聊的,主要是上面的路线图。
今年最早发生的是SDS——新版本ScaleIO 3.0针对NVMe和NVDIMM的优化,接下来会有Dell PowerEdge 14G服务器的Ready Node,这些我在《Dell EMC World 2017(1):25GE、FC多协议交换机和SC5020》一文中已经提到过。
然后是VxRack和VxRail超融合,这里面的主角是VMware vSAN,新版本6.6加入对Intel Optane SSD P4800X(3D XPoint Memory)的支持,用于写缓存层并且采用NVMe接口。当然普通NVMe SSD也可以用于Cache或者容量层。
大约在2017年底-2018年初,推出基于NVMe的阵列,我最感兴趣的是这个。
在《NVMeF的另一种用法:连接AFA控制器和JBOF》中我就提到,短时间内NVMe over Fabric用于存储系统的主机连接还不成熟;将NVMe/F用于控制器机箱与SHELF的连接,指望50Gb RoCE以太网后端的NVMe SSD性能充分发挥也不现实。那么还有一个问题,SAS SSD已经拖全闪存阵列的后腿了吗?
一个PCIe SSD在服务器本地跑到几十万、甚至上百万IOPS今天已经不是新闻;而双控AFA也就几十万IOPS的性能,里面至少会有十块以上的SAS SSD。为了实现共享存储、冗余高可用、快照、重删/压缩等各种数据服务,全闪存阵列的瓶颈一般不在盘上,而且包括Oracle等数据库在内的主流应用绝大多数时候都能胜任。
从《技术市场分析:闪存阵列中默默服务的SASSSD》里面大家可以参考我列出的,目前主流SAS SSD能跑多快,还没算最新推出一代就有读写都达到10万IOPS的。这个水平用在阵列中不够吗?NVMe SSD的延时可以更短(确切的说是写延时,除非你用Optane),而在阵列中还有大容量DRAM Cache、RAID处理啥的,底层介质100μs也不见得成为瓶颈。
所以我真正关心的,是NVMe怎么给阵列带来质变?可以想到的一个方向是3D XPoint Memory对分层存储的重新定义。现在的AFA可以用不同类型SSD分层,但引入更快的SCM介质意义应该更大。不知即将发布的U.2 Optane SSD会不会有双端口?而在Server SAN/超融合中现在就可以用P4800X做为写缓存,或者放置需要最高性能的元数据了。
Intel介绍了一个8节点Ceph集群,使用了BlueStore存储引擎,将WAL和DB放在一个Optane P4800 SSD上。我们暂且先不讨论该配置在今天的实用性达到什么程度,下面先看看性能。
另一个话题就是存储软件的效率,现有的Server SAN平均每节点IOPS表现不错的也就10几万(参见《温故知新:ScaleIO Oracle性能测试解析》),网络已经用了40Gb甚至更高,具体配几个SAS还是NVMe SSD似乎也不是太关键的问题?当然,我也一直在等待最新的测试数字。
8个节点跑到280万随机读IOPS,每节点超过30万了,每节点写IOPS也达到7万。按照我们的经验Ceph对CPU资源开销属于分布式存储软件中比较大的,能测出上面的水平,我想各家商业SDS在性能优化上可能会有点压力。
无论分布式还是集中存储,如何更好发挥NVMe SSD的性能都是一个要考虑的问题。两个存储控制器之间的NTB通道,如果用PCIe 3.0 x8其写带宽不到8GB/s,而它还没有成为几十万IOPS(往往是混合读写)的瓶颈。那么,存储软件的效率能否有所突破,我认为这才是对NVMe最关键的。
最后再推荐下我写的评测,也希望大家多了解3D XPoint Memory和Optane。
《IntelOptane P4800X评测(序):不用缓存和电容保护的SSD?》
《IntelOptane P4800X评测(1):好钢如何用在刀刃上?》
《OptaneP4800X评测(2):Oracle 170万TPM意味着什么?》
《IntelOptane P4800X评测(3):Windows绑核优化篇》
参考资料
https://blog.dellemc.com/en-us/nvme-the-yellow-brick-road-to-new-levels-of-performance/