在IBM FlashSystem 900内部

IBM FlashSystem系列是多年开发和在闪存技术上投资10亿美元的结果。AFA的内部结构通常是最严格的商业秘密。通常,制造商将重点放在市场营销(数据处理速度,读写速度,可靠性)上,但他们没有透露系统结构的详细信息。



不久前,IBM提供了机会来考虑其FlashSystem 900的组件,该组件可作为独立设备使用,并提供100万/ 600,000 IOPS的随机读取/写入和10.5 / 4.5 Gb / s的I / O进行顺序读取/写入。FlashSystem 900还可作为来自相同IBM,FlashSystem V9000和A9000 AFA的更大系统中的组件。因此,熟悉FlashSystem 900可使您看到组件与由这些组件创建的较大系统之间的区别。

闪存阵列的演变


闪存阵列已经发展了多年,但它们始于使用具有标准2.5英寸规格的传统SSD,这些SSD已连接到专为HDD驱动器设计的存储系统。与HDD相比,使用SSD可以显着加快系统速度。但这并不能完全解决问题,瓶颈只是徘徊在阵列的其他组件(RAID控制器或网络接口)中。

闪存阵列的先驱者开始开发具有更快内部组件和优化数据传输通道的优化SSD设备,而数据中心的需求却在不断增长。大多数AFA制造商仍使用2.5 SSD。基于2.5 SSD的最新AFA为用户提供了高性能和容错能力,但是由于出厂固件,此类SSD的功能受到限制。

其他制造商,例如IBM,XtremIO(EMC)和Violin,已经使用特殊设计的闪存模块创建了自己的AFA。这些新产品提供了控制NAND本身的能力,从而使您能够控制数据密度,性能,耐用性和经济性。

IBM FlashSystem 900


FlashSystem 900是一个2U机箱,可容纳12个可热交换的MicroLatency模块,如下图所示。此外,该系统具有两个大型锂离子电池(左),如果主电源发生故障,它们可以提供足够的电能以完成记录过程。电池可提供足够的功率来正确关闭阵列,而不会丢失任何数据。



每个MicroLatency模块可以包含1.2 TB,2.9 TB或5.7 TB的闪存。反过来,系统通过一个模块记录数据。在RAID 5中配置了模块本身,以确保在其中一个模块发生故障时最大程度地保证数据安全。 IBM还使用其自己的闪存级RAID变量路径来创建二维奇偶校验控制方案。



每个MicroLatency模块均采用Xilinx Kintex-7 FDA的双PCB设计。每个电路板最多可容纳四个FPGA,但是FPGA的数量取决于模块的密度。例如,一个1.2 TB模块将在单个电路板上仅使用一个FPGA。使用多FPGA体系结构可以使IBM线性地扩展性能和功率。



仔细观察板子的背面,可以看到左侧有两个PCIe 3.0 x2连接。这些插槽用于连接到主机并使用IBM专利的串行协议进行通信。该协议提供了NVM Express的类似优点:减少了处理器负载,等待时间,提高了性能。专有协议使用具有端到端路由的硬件加速数据路径来消除导致诸如中断之类的延迟的过程。



每个FPGA都有自己的用于LBA管理的DRAM,IBM还使用DRAM来缓存用户数据。
大多数SSD不会在DRAM中缓存用户数据,但是保护系统级电源损耗(通过电池)的方法为IBM提供了许多优势。 FlashSystem 900中使用的单个SSD不需要使用普通2.5英寸SSD的特殊电容器。这使公司可以将更多闪存存储到项目中。更少的电容器还可以减少潜在的故障点和软件复杂性。

闪存电容器数据包之间仍然有几个电容器,但是当系统同时写入多个NAND数据包时,它们可用来抵抗电压降。



IBM已与美光(Micron)建立了战略合作伙伴关系,以利用可定制且提供高级系统编程功能的FortisFlash NAND。这使IBM可以根据年龄和健康状况,在其整个NAND寿命中动态更改每个单元的核心编程。美光指出,通过适当的配置,FortisFlash NAND MLC可以提供多达10,000个重写周期(是标准3000周期额定值的三倍以上)。

ECC有很多不同的品种,例如BCH和LDPC,每种都有自己的优点和缺点。使用2.5英寸SSD的AFA供应商仅限于ECC,他们只能使用制造商安装的SSD驱动器。但是定制设计提供了使用定制ECC算法的灵活性。

IBM已经开发了自己的ECC算法。此实现在密集方法BCH和纠错能力有限的LDPC和LDPC之间波动,LDPC可能会在纠错过程中经历过多的记录放大(从而降低耐磨性)。 IBM认为,定制的“一次读取”错误纠正包括两种方法中的最佳方法。

IBM还使用热隔离功能,该功能可以检测冷热数据,然后将它们组合以减少磨损。该公司动态跟踪每个单元可能覆盖的剩余数量,因此很少更改的“冷”数据存储在较旧的NAND单元中。因此,保持了耐磨性。 IBM声称隔热层可将耐用性提高49%,而选择性磨损均衡(基于NAND健康状况)的添加可将耐用性提高57%。



每个2U机箱在可用热交换电池的前面板正后方都包含两个冗余电源。该系统在两个大块容器(左)中有四个可热交换的模块化风扇。每个接口的顶部都有多个I / O端口(光纤通道,iSCSI和FCoE范围),位于热插拔接口卡上。



每个容器包含两个英特尔至强E5v2系列处理器,64GB RAM和RAID控制器(XBAR)。容器还可以热插拔,以在系统或内存的计算部分发生故障时最大程度地减少停机时间。设计本身经过了优化,最多可提供两跳,并且再也不会从数据输入/输出端口再到闪存,从而保证了稳定的性能和延迟。

相关性更广。


IBM在2012年收购了Texas Memory Systems,并在2013年对闪存技术追加了10亿美元的投资。这使该公司能够开发出比使用2.5 SSD的典型闪存阵列更高性能和可靠性的单个闪存阵列。 IBM声称FlashSystem系列产品比同类竞争产品提供了9.41%的耐用性,并提供7年保修。 IBM专家可以提高其MicroLatency模块中的内存密度,从而提供针对整个系统断电的保护。他们可以使用自己的,硬件控制的串行接口来执行此操作,从而消除了软件引起的延迟。该公司开发了自己的架构,提供一系列好处,例如自定义ECC和自适应NAND算法,它们在密度,性能和成本方面为最终用户带来了极大的好处。

IBM不是闪存驱动器竞赛中的唯一一家公司。 EMC最近推出了全系列闪存设备,其中一些使用定制的SSD设计。该公司正在将其所有存储系统完全转换为使用闪存。 Pure Storage也有一个很有前途的FlashBlade计划,但是该平台目前在市场上尚不可用。 “ Violin Memory”也有一个单独的项目,但是其糟糕的性能和令人沮丧的前景使许多人无法使用此解决方案。

就性能而言,IBM是顶级的AFA供应商,但绝不是收入第一。该公司声称,在单个项目的最终结果中,与竞争对手相比,它们将以更低的成本提供更高的闪存性能。

显然,基于闪存技术的未来将带来更多专业化和优化的项目。可能-这将导致许多使用市售2.5英寸SSD的系统(和公司)死亡。

Source: https://habr.com/ru/post/zh-CN395715/


All Articles