并非所有的闪存阵列都是相同的
2015-10-09 TechTarget中国 编辑:bean
如今全闪存阵列十分火热。突然之间,初创公司和传统存储厂商推出了数以百计的全闪存阵列系统。许多厂商甚至声称,他们推出的全闪存阵列的价格比起那些使用传统15K转速机械硬盘的高端磁盘阵列还要便宜。混合阵列供应商也不甘示弱,至少有一家供应商声称他们的全闪存阵列可以提供比高端磁盘阵列更好的性能,并且价格要比高端阵列低。您在选择适合自己环境的存储系统时,所有这些信息让选择变得更加的复杂。
全闪存阵列的购买标准须从以下三个重要因素来考量:IOPS(每秒输入/输出数)、IO延迟和吞吐率。根据您的应用程序,无论是IOPS还是吞吐率都至关重要。小数据块I/O密集型应用特别关注IOPS,而对于大数据块密集型的应用,核心关注的指标就是吞吐率。此外,在所有的应用场景下,延迟时间都是至关重要的。你很快就会发现,通过将现有的基于传统机械硬盘设计的磁盘阵列进行设计和修改,使之变成全闪存阵列,这样做并不能提供相匹配的性能。闪存盘和传统的硬盘驱动器有非常多的不同点;它们在使用,失效策略和管理方式上均不相同。修改现有的控制器方式应该到此为止。要想发挥闪存盘每一个字节的性能优势,则需要全新的思维方式,一般而言都要从头开始进行设计。我见过一个例外,那就是惠普公司的3PAR storeServ7450全闪存阵列。它看起来就像是一个为全闪存专门设计的阵列一样,而这主要应该归功于3PAR系统内部使用的定制ASIC芯片。
尽管现在“软件定义一切”的概念十分流行,但是全闪存阵列在今天来看仍是硬件定义的。它们是专有的设备而且需要每个厂商都要完成对应的设计和开发。其中大多数产品都是建立在以SSD磁盘为基础上的,然而也有一些是从闪存芯片入手的。基于SSD磁盘的系统的大多数功能都依赖于SSD自身,如垃圾回收机制和耗损平衡机制。您获取的一切功能都来自于SSD厂商。然而基于闪存芯片进行设计的系统能够在磁盘阵列级别而非SSD级别上来执行相应的功能,这样做的结果就是获得额外的性能,更好的弹性,更高的密度以及更低的功耗。而这些特性最终会体现在系统的价格上。IBM,Skyera和Violin的产品都属于这一类型。
在线重复数据删除和压缩技术在全闪存阵列的世界里仍是一个有争议的话题。一些阵列将这些功能进行内嵌,并且你不可以禁用它们。同样重要的是,通过这些功能来实现4:1、5:1或6:1的容量折减,这样表现出来的全闪存阵列的价格,就可以神奇的达成“等于硬盘价格”的效果。其他阵列则完全缺乏这些功能。这里有两件事需要注意。第一,重复数据删除需要有适用的应用程序列表。VDI(虚拟桌面基础架构)和虚拟服务器应用在这些程序列表中应该排在最前面,但是在很多数据库、视频流以及其他的一些应用上,这些功能就不会起太大的作用。你跑在全闪存阵列上的应用程序会告诉你厂家吹嘘的每GB美元的花费到底是不是适用的。第二,如果重复数据删除和压缩不影响性能,它们会是完美的技术特性,而性能又是你购买全闪存阵列的首要考虑因素。所以你需要结合性能的表现来看这些特性。基本上,这就意味着厂商必须通过添加硬件的方式来抵消功能引起的性能削弱。理想情况下,你应该能够在LUN基础上来使用或者不使用这些功能。
下一个考虑的问题就是性能的一致性。一个设计优良的系统性能表现必须是一致的,它的延迟时间必须保持在一个较低的水平上。你可能希望一台全闪存阵列可以支持多种使用不同大小的数据块的应用程序,且都要求一个很高的性能。所以在询问厂商产品的性能时,让他们给你提供在每个数据块下的性能表现,而不是所有数据块下的一个平均性能。
数据保护是我们使用闪存时的另一个拦路虎。在硬盘的世界里,我们习惯于使用RAID作为数据保护机制。想当然的是,我们盲目的把这样的理念搬到了闪存的世界。闪存是一种随机存取的介 质,它不需要担心寻址时间和旋转延迟问题,但是RAID是针对这些问题来设计的。RAID机制可以用于闪存,但是你不得不从头来思考数据保护的方式。例如,在使用闪存时就没必要像传统方式下在一个RAID5和RAID6的设置中只放五块或者六块驱动器,从而来满足更长的条带化需求。当闪存盘失效时,RAID的重建也需要不同的方式来实现。检查我们的数据是如何受到保护的以及当一个闪存单元失效时会发生什么。期待你能获取比硬盘更好的数据保护机制。
任何全闪存阵列在和传统磁盘阵列对比在电力供应、制冷和密度方面都有明显的优势,但是你还需要在全闪存阵列之间进行比较,因为这些系统在以上方面也会有很大的不同。电力和制冷需求普遍和密度有关。该行业仍然在研究如何在全闪存阵列上取得最大的效果,这期间一些厂商做的比其他厂商更好。
任何关于全闪存阵列的讨论如果不提可扩展性都是不完整的。市场上存在各种各样的产品,有的支持scale-out(横向扩展),有的支持scale-up(纵向扩展)。当你评估全闪存阵列时,首先要确保它能提供给你今天需求的足够的性能和容量,另外还要保证在这两个维度上有足够的空间用于未来的扩展。
几年前还可以购买一台不包含任何企业级存储应用程序和服务的全闪存阵列,如自动精简配置,快照,复制和克隆。但是在今天,如果全闪存阵列没有这些完整的功能特性,我是不会考虑购买的。这些需求同样适用于易用性和可管理性。
不是每个全闪存阵列都是一样的,同样你要购买哪个取决于你要部署的应用类型。任何全闪存阵列都能提供给你比传统磁盘阵列更好的性能,但是怎么选择就好比你要买一辆保时捷,也要先了解兰博基尼和玛莎拉蒂一样。