【IT168 应用】如果你想利用固态硬盘来建系统,那么你需要很高的可靠性和性能,你不可能从消费者级闪盘中获得那种可靠性和性能。
但是选择企业级闪盘会如何呢? 供应商也许会说,它的固态硬盘具有企业级质量,但是你怎么确定它所说的是宣传营销上的夸大之词还是事实呢? 你必须了解企业级固态硬盘的各项参数,在选择产品时认真比对,保证你为客户建立的系统具有很长、可靠的使用寿命。
真正的企业级固态硬盘有4个主要属性:速度、耐久性、数据完整性和系统构造程序友好性。
很强的性能
与毫秒级响应时间的普通硬盘不同,固态硬盘的读写I/O指令响应时间是微秒级,先处理I/O指令,然后移动数据。 这是通过设备的滞后时间、它能支持的每秒随机I/O次数以及它能传输的读写数据量来体现的。
企业级固态硬盘必须能够处理企业级工作量,而不是消费者级、单用户的工作量。 它必须超过转速为15000转、24小时不停循环工作、能够常年累月处理写数据增强型和可变工作量的快速企业级硬盘的性能。
许多固态硬盘在刚刚上市并被出售后都具备很快的性能,但是当闪存中的所有数据单元都被填满,新数据触发固态硬盘模块的程序擦除周期后,它们的性能就开始下降了。
这是不能容忍的现象。 固态硬盘使用快速单级单元闪存还是两位多级单元闪存并不重要,重要的是系统构造程序必须能够在相当长的时间里保持其高性能。
在固态硬盘的使用寿命期间,它上面的存储的数据将会被擦除,数据块将删除单元。 有用的数据将被后台的一个程序进程收集起来,移动到新的存储模块,剩下的空存储模块将被后台运行的闪存控制器擦除。
以后进行的任何写数据操作都会在已经被擦除清空的存储模块里进行,这样就可以保证操作的速度和写数据的性能。
固态硬盘的响应时间平均可保持在5毫秒以下。 响应时间不会越来越高,数据传输速度和每秒能够处理的I/O次数不会减慢或减少。
有些固态硬盘的写数据和读数据性能变化很大,比如这是某家著名供应商的64GB多级单元固态硬盘的性能参数:
顺序读数据:每秒355MB
顺序写数据:每秒75MB
Crucial RealSSD C300,厂商规格
与读数据I/O性能数据相比,写数据的I/O性能数据显得太慢,这显然是一款消费者级闪存硬盘,不适用于需要企业级固态硬盘的系统。
如果固态硬盘有独立测试数据就好了,现在这种情况已经开始出现了,存储性能委员会(Storage Performance Council)已经推出SPC-1C标准检查程序。
${PageNumber}虽然市场还没有统一规范,但是行业领先厂商如希捷已经开始朝着这个方向努力并利用SPC-1C标准检查程序来测试它们的产品。 同时,利用标准数据存储模块的性能数据比如在随机I/O测试中使用4K存储模块和标准测试计划比如Iometer也可以使用。
企业级单级单元固态硬盘显示顺序读数据和写数据I/O带宽在300MBps和360MBps之间,读数据和写数据的速度大致相当,随机读数据和写数据的IOPS分别超过48000和22000。 它们将把这个性能水平保持5年的时间,保证为客户提供足够的工作寿命。
耐久性测试
与磁盘媒体不同,闪存媒体会磨损。 经过一定数量的写数据操作,存储单元对写数据指令作出的反应会出现越来越多的错误,它的存储能力也会下降。 多级单元闪存在这方面的表现更差,因为每个单元有两位,增加了电子活动和磨损。
NAND必须能够按存储单元模块而不是单个单元级来读写数据。 当把新数据写入某个存储模块时,在覆写之前,整个存储模块都必须被擦除。 存储模块中即将被擦除的有用数据将被复制下来,然后与新的数据一起被写入存储模块,大致说来,这意味着固态硬盘在一次写入操作中实际上要进行两次写入操作。
这种情况被称作写放大,它应该被降低下来,尽可能让新的写数据操作次数与删除内部的写数据操作次数之间的比率接近1比1。
处理这个问题有3个基本的方法。
一种方法是将写入的数据暂时储存的一个临时区域,对它们进行批处理,让它们能够在顺序写数据进程中被写入完整的存储模块,而不是在存入系统的同时马上就写入随机存储模块。 那些数据也许会被压缩以减少它需要占用的存储单元的数量,同时还可以提高闪存的使用寿命。
企业级固态硬盘应该具有5年的使用寿命。
第二种方法是超额准备闪存空间,然后预留出一个区域,在其他存储模块用完时使用。 闪存控制器保持着分布图,随时了解已经使用的存储模块、磨损的数据存储模块、尚未使用的存储模块和无法使用的存储模块。 当存储模块磨损之后,它们就会被新的存储模块取代。
第三种方法被称为磨损调整,控制器必须保证写入固态硬盘的功能对所有存储模块而言是公平共享的,不会集中在少数存储模块上面。 这有助于让固态硬盘中的存储单元均匀磨损,以及保持存储容量。
在将数据均匀分布在固态硬盘的过程中,某些数据会被移动。 这就会产生新的写数据操作,从而缩短固态硬盘的有效使用寿命。 需要利用控制器算法来优化磨损调整和减少写数据的数量。
企业级固态硬盘应该具备5年的使用寿命。 它还应该具备能够写入的正式数据量,比如800GB多级单元固态硬盘能够写入14.6PB的数据量,相当于每天写满10块硬盘。
如果数据写入的速度较低,那么设备的使用寿命就会较长。 供应商应该保证产品使用寿命。
${PageNumber}保持完整性
以稳定速度快速可靠地将数据写入固态硬盘或读出是三项重要的质量指标,但是校正数据同样很有必要。
错误检查和校正对固态硬盘来说非常重要,这一点跟传统硬盘一样。 T10保护信息和I/O检错码等技术也可以保证数据的完整性。
T10 PI来自硬盘技术,可以保证端到端数据的完整性。 当数据被写入一台设备时,会增加元数据,让服务器可以对它进行核对,保证它读取的数据正是以前写入的数据。
IOEDC是固态硬盘内部的技术,它可以让固态硬盘的控制器识别和校正错误,保证不影响应用程序读取固态硬盘中的数据。
当数据第一次被写入时,循环冗余校验(CRC)数据会被加入进去。 CRC值是通过源数据的值计算得出的,它就是源数据的逻辑地址。 当数据被读取时,CRC值会进行重新计算,然后与原来的值进行比较,新计算出来的CRC值可以显示出读取的数据与之前写入的数据是否有差异。
到现在为止,你也许已经建立了不少使用传统硬盘的存储系统。 但是为了满足应用程序对性能的需求,现在又增加了固态硬盘的存储系统。
让供应商对固态硬盘组件进行认证和测试,保证它们在标准检查程序中的性能测试结果不低于你以前使用的传统硬盘存储系统是很有用的。
支持服务最好是一样的,那样你就可以使用已经非常熟悉的服务。 最好固态硬盘系统使用的加密技术也跟你以前使用的传统硬盘系统的加密技术一样,如果存储管理系统同时支持传统硬盘和固态硬盘就更好了。
传统硬盘和固态硬盘最好使用相同的接口比如6Gbps SAS接口,那意味着你需要注意那些只有一种端口的连接方式的系统。 如果传统硬盘与固态硬盘的外形尺寸也一样就更好了,比如都是2.5寸。
你需要认证固态硬盘,你的供应商应该有严格的质量控制程序,保证为你提供相当可靠的固态硬盘。 最好是选择两次故障间隔时间在150万小时以上或年故障率在0.55%以下的固态硬盘。
原设备制造厂家、系统集成商和系统生产商需要在固态硬盘组件中关注的4项指标是快速和稳定的性能、长期且有保障的使用寿命、非常好的数据完整性和能够帮助简化将固态硬盘添加到现有系统或开发纯固态硬盘系统的供应商。
专注于消费者的固态硬盘不能满足这些标准,没有与系统生产商合作过的供应商提供的固态硬盘会带有更高的风险。
正确了解固态硬盘的特征和供应商标准,你就可以为客户提供优秀的产品,为它们提供快速和极具价值的解决方案。