硬RAID可以为NVMe SSD数据可靠性保驾护航吗?
2016-10-08 09:39
281 查看
随着NAND Flash价格的不断下降,NVMe SSD正在慢慢普及。NVMe SSD由于极高的性能常被用作数据缓存,即使NVMe SSD发生故障,数据还在持久化介质中存储,不会导致数据丢失等严重事件。随着NVMe SSD的大量使用,其逐渐被用作持久化存储介质,替代传统磁盘。一旦NVMe SSD被用作持久化介质,便提出了数据保护的需求。传统磁盘采用RAID或者多副本的方式实现数据保护,那么在NVMe SSD上如何进行数据保护?是否还可以采用传统的硬RAID卡为NVMe SSD提供数据保护服务?
业内Broadcom今年中旬的时候推出了全球首款多模ROC控制器,ROC控制器是硬RAID卡的核心控制器。原有的ROC控制器提供了SAS/SATA接口,支持SAS/SATA盘。多模控制器在原有接口的基础上支持NVMe接口,不仅可以支持传统的存储盘接口,而且可以支持NVMe SSD。这是不是意味着传统硬RAID可以扩展到NVMe SSD应用领域?要想回答这些问题,要从硬RAID的基本原理进行分析。
以LSI的硬RAID为例,其通常采用ROC控制器为核心。ROC是一种RAID SOC控制器,内部集成了多个微控制器,PCIe控制器以及SATA/SAS接口控制器。如果采用这样的SOC来构建NVMe RAID,那么其基本的结构如下图所示:
![](http://s5.51cto.com/wyfs02/M02/88/6F/wKioL1f4ThXxpza7AAFMbDBsdOU084.jpg)
硬RAID卡一端扩展多个NVMe接口;另一端扩展X16 PCIe接口与主机相连。一个U.2 接口的NVMe SSD普遍采用X4 PCIe链路,那么4块盘就可以把与主机相连的PCIe接口跑满。如果想要扩展更多的NVMe SSD,那么与主机相连的PCIe接口就会成为性能瓶颈。
另外,在SOC中需要运行RAID固件,RAID是数据通路的核心软件,如果需要发挥多块SSD盘的性能,那么需要性能优异的SOC控制器,否则SOC本身将会成为严重的性能瓶颈。在NVMe SSD内部的控制器,通常都会采用多核架构,例如一个SSD内部采用16个控制器核,单盘可以运行到80万左右的IOPS。如果想要发挥多NVMe SSD的性能,该嵌入式RAID控制器一定要进行特殊设计,并且采用众核设计思想,通过高并发发挥NVMe SSD多盘性能。目前Broadcom发布的多模控制器似乎并不能很好的发挥多盘性能,是NVMe RAID的性能瓶颈所在。
从Latency的角度来看,NVMe SSD本身采用PCIe接口,如果中间再插入硬RAID,那么IO延迟势必会增加不少。所以,从NVMe 硬RAID的设计来分析,由于NVMe SSD性能实在太高,硬RAID很多地方将会出现性能瓶颈。在不考虑性能的前提下,采用传统RAID架构的NVMe RAID是可以提供数据保护服务的。但是,如果在保证性能的前提下,为NVMe SSD提供数据保护,那么PCIe接口需要升级,SOC的设计需要突破。
在NVMe存储时代,硬RAID遇到了性能问题,如何才能更好的为NVMe SSD提供数据保护服务?以软件为核心的数据保护解决方案是一种很好的选择,相信软RAID是NVMe RAID的未来。
业内Broadcom今年中旬的时候推出了全球首款多模ROC控制器,ROC控制器是硬RAID卡的核心控制器。原有的ROC控制器提供了SAS/SATA接口,支持SAS/SATA盘。多模控制器在原有接口的基础上支持NVMe接口,不仅可以支持传统的存储盘接口,而且可以支持NVMe SSD。这是不是意味着传统硬RAID可以扩展到NVMe SSD应用领域?要想回答这些问题,要从硬RAID的基本原理进行分析。
以LSI的硬RAID为例,其通常采用ROC控制器为核心。ROC是一种RAID SOC控制器,内部集成了多个微控制器,PCIe控制器以及SATA/SAS接口控制器。如果采用这样的SOC来构建NVMe RAID,那么其基本的结构如下图所示:
![](http://s5.51cto.com/wyfs02/M02/88/6F/wKioL1f4ThXxpza7AAFMbDBsdOU084.jpg)
硬RAID卡一端扩展多个NVMe接口;另一端扩展X16 PCIe接口与主机相连。一个U.2 接口的NVMe SSD普遍采用X4 PCIe链路,那么4块盘就可以把与主机相连的PCIe接口跑满。如果想要扩展更多的NVMe SSD,那么与主机相连的PCIe接口就会成为性能瓶颈。
另外,在SOC中需要运行RAID固件,RAID是数据通路的核心软件,如果需要发挥多块SSD盘的性能,那么需要性能优异的SOC控制器,否则SOC本身将会成为严重的性能瓶颈。在NVMe SSD内部的控制器,通常都会采用多核架构,例如一个SSD内部采用16个控制器核,单盘可以运行到80万左右的IOPS。如果想要发挥多NVMe SSD的性能,该嵌入式RAID控制器一定要进行特殊设计,并且采用众核设计思想,通过高并发发挥NVMe SSD多盘性能。目前Broadcom发布的多模控制器似乎并不能很好的发挥多盘性能,是NVMe RAID的性能瓶颈所在。
从Latency的角度来看,NVMe SSD本身采用PCIe接口,如果中间再插入硬RAID,那么IO延迟势必会增加不少。所以,从NVMe 硬RAID的设计来分析,由于NVMe SSD性能实在太高,硬RAID很多地方将会出现性能瓶颈。在不考虑性能的前提下,采用传统RAID架构的NVMe RAID是可以提供数据保护服务的。但是,如果在保证性能的前提下,为NVMe SSD提供数据保护,那么PCIe接口需要升级,SOC的设计需要突破。
在NVMe存储时代,硬RAID遇到了性能问题,如何才能更好的为NVMe SSD提供数据保护服务?以软件为核心的数据保护解决方案是一种很好的选择,相信软RAID是NVMe RAID的未来。
相关文章推荐
- 硬RAID可以为NVMe SSD数据可靠性保驾护航吗?
- SAP:HANA为高性能数据分析保驾护航
- 使用GnuPG为数据保驾护航
- 两种方法设置Win8系统唤醒密码为机密数据保驾护航
- 数据保护伞—为MaxCompute平台数据安全保驾护航
- 利用DLP系统为CRM数据保驾护航
- 使用GnuPG为数据保驾护航
- 《数据集成成为Hadoop保驾护航》久经验证的降低数据管理成本的创新之路,如何来权衡创新&成本?
- SafeNet以数据为中心的安全解决方案为“云计算”部署保驾护航
- SafeNet以数据为中心的安全解决方案为“云计算”部署保驾护航
- MTC为企业数据资产保驾护航
- 点击弹出框,实现可以搜索的ListView排序数据
- 路由数据格式 可以用来做有趣的事情
- 一、为职场新人保驾护航
- 应用db link 把ORACLE 数据库中的表复制到另外一个数据库,也可以把表中的数据从一个库复制到另外一个库的表
- CrossPHP--在我们用ajax,js取不到指定数据时,我们可以换一种方式
- IOS之URL Scheme的使用(可以在app之间调用传递数据)
- DSP调试通过,可以运行,观测变量数据为-1.#QNAN的原因
- udp端口接收不到数据BUT抓包可以抓到数据,why?
- C++中不需要打回车就可以输入数据的函数