闪存正通过多级跳板逐步走向DIMM未来

  直到最近,数据访问与存储技术的主要发展动力一直取决于提升介质本身速度的表现,因此整个存储业界始终关注由磁盘到闪存乃至提升闪存存储容量的技术等核心议题。

直到最近,数据访问与存储技术的主要发展动力一直取决于提升介质本身速度的表现,因此整个存储业界始终关注由磁盘到闪存乃至提升闪存存储容量的技术等核心议题。

IBM公司的相变存储器

以上提到的各项技术皆能够提供所谓存储级内存(简称SCM)方案,即可实现内存级别速度的永久性(非易失)存储产品。在计算机当中,内存会得到直接访问,具备字节可寻址能力且可对接各类加载与存储指令。传统存储(非存储级内存)则通过IO代码堆栈实现访问,其面向存储在非易失性介质之上的块访问驱动器中的文件或数据块进行读取与写入,具体包括纸带、磁鼓、机械磁盘、磁带当然亦包括后来的NAND闪存。

从CPU周期的角度来看,该IO堆栈的执行需要消耗数千次CPU周期; 这是对CPU时间的巨大浪费,会严重拖慢应用程序的执行速度,但考虑到存储设备的速度与CPU的执行速度间存在无数倍差异,这样的浪费又属于“必要之恶”。因此,CPU会在完成某一IO的初始化工作之后,转向正在运行且发出IO请求的其它应用中的其它线程。

如果存储设备能够以内存或者近内存级别速度运行,且数据能够直接面向该介质进行读取以及写入,那么我们将不再需要使用极耗时间的IO堆栈。

考虑到这一点,再加上非易失性存储提供的访问速度优势,原本的双线程切换操作将最终转化为线程合并这类解决方案。

对速度的渴求

与此同时,就在一部分厂商不断追求提升SSD存储容量的情况下,亦有一部分厂商专注于进一步提高其访问性能。当SSD初次出现时,其设计采用与现有主机系统磁盘驱动器插槽相兼容的思路,意味着它能够直接适配原本3.5英寸与2.5英寸磁盘驱动器所使用的SATA与SAS接口。在此之后,制造商意识到PCIe总线所具备的数据访问速度与延迟优势意味着其能够更为充分地发挥闪存存储产品的特性,即实现更高IOPS表现。另外,PCIe卡在物理空间方面也往往更加充裕,意味着制造商能够在其中塞进更多闪存芯片以进一步增加存储容量。

不过各家制造商的PCIe闪存卡亦需要协同配套的驱动器才能在不同主机系统之上使用,如此折腾的结果就是反倒不如直接推出标准的SAS与SATA驱动器。因此整个业界很快意识到他们仍然需要打造出真正标准化的驱动器,而这就是如今炙手可热的NVMe(即Non-Volatile Memory Express)规格。我们现在已经能够在市场上找到大量NVMe SSD产品,且仍有更多相关方案陆续涌现。

说到这里,大家对于整个业界的态势应该已经有了比较清晰的认识。NAND介质、设备与互连领域始终处于不断变化当中,而各存储方案供应商则在不断想办法增加其设备的存储容量与数据访问性能,希望尽可能使其拥有更接近于原始NAND的访问速度表现。正因为如此,SATA与SAS已经由原本的每秒3 Gbit传输速率升级至后来的每秒6 Gbit,再到如今的每秒12 Gbit。在另一方面,虽然PCIe仍然拥有相当显著的速度优势,但其还是无法真正采用主机系统中的CPU-内存总线这样一条DRAM互连速度标准中的黄金通道。NetList与Diablo Technologies等厂商已经率先开始尝试将NAND直接接入内存DIMM,这意味着其能够直接接入内存总线。

软件阻碍着数据访问速度的进一步提升

尽管以上提到的这一切都能够在理论层面带来更快的NAND数据访问速度,但服务器制造商的采用举措却显得相当迟缓——这主要是因为他们明确意识到,这种速度提升亦要求操作系统与应用软件进行有针对性的调整。

这里我们需要首先强调一点,存储介质凭借速度提升获得的回报其实是存在衰减的,这主要是因为业务系统当中还存在着其它一些严重影响访问延迟但却无法通过高速存储介质加以解决的因素。以下为相关示意图:

直到最近,数据访问与存储技术的主要发展动力一直取决于提升介质本身速度的表现,因此整个存储业界始终关注由磁盘到闪存乃至提升闪存存储容量的技术等核心议题。

微软公司为Windows Server 2016发布的DAX架构

以下比较数字来自微软公司进行的实际测试:

  • 在一项简单的4K数据块随机写入测试中,利用单一线程指向 NVMe SSD所能实现的延迟水平为0.07毫秒(70微秒),而传输带宽约为56 MBps。
  • 在使用块模式NVDIMM-N进行同一项测试时,我们发现其延迟水平为0.01毫秒(10微秒),传输带宽则为580 MBps,速度提升10倍。
  • 在采用字节可寻址模式进行同一项测试时,其速度结果进一步提升8倍,延迟为820纳秒而传输带宽则超过8 GBps。

感兴趣的朋友可以点击此处查看微软方面给出的背景介绍(英文原文)。

由此带来的助益不仅仅是为每应用每单位时间节约下数万次CPU周期,更重要的是确保主机系统的CPU无需将额外30%、40%甚至50%以上时间浪费在本不必要的IO处理身上,而能够转而处理更多实际工作。即使只进行粗略计算,如果我们能够在一台服务器上节省下40%的CPU资源,则意味着能够运行额外40套虚拟机或者将服务器的使用成本降低最高40%,同时让现有虚拟机拥有更快的运行速度。

总体而言,我们完全有机会借此消除一切拖慢现有任务执行流程的操作系统代码层冲突。

结论

  1. MLC与TLC 3D NAND SSD如今已经成为存储一级数据的规范性介质。
  2. NVMe访问协议正在逐渐取代SATA与SAS。
  3. 3D NAND SSD在堆叠层领域的强化将使得闪存具备更出色的性价比,进而在二级数据存储领域占得一席之地。
  4. DRAM/闪存NVDIMM将帮助我们回避IO代码堆栈以获得近内存级别字节可寻址存储访问速度。
  5. 3D XPoint以及/或者其它存储介质将使得NVDIMM获得更为可观的性能优势,从而成为DRAM的可行性替代方案。
  6. 非易失性SCM DIMM配合直接访问分卷将显著提升服务器(以及最终客户端)的存储数据访问速度。

这一切都将会通过向NAND芯片中添加更多层与级、通过DIMM挂载存储介质并最终回避IO代码堆栈的方式来进行。这代表着存储行业乃至整个IT技术领域都将迎来更加美好的未来,且这一前景再过几年即将真正出现在我们身边。现在就让我们期待闪存技术的下一波革命性成果吧!

      作者:李超 来源:51CTO 文章知识点与官方知识档案匹配,可进一步学习相关知识云原生入门技能树首页概览8710 人正在系统学习中 相关资源:聚会喝酒看美女必备APP_秀人网-Android其他资源-CSDN文库

来源:weixin_33743880

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2017年7月7日
下一篇 2017年7月8日

相关推荐