企业级SSD与客户端级SSD对比:性能、可靠性与耐久性全方位解析
企业级SSD与客户端级SSD对比:性能、可靠性与耐久性全方位解析
随着数据中心对高性能存储的需求日益增长,固态硬盘(SSD)逐渐成为替代传统机械硬盘(HDD)的首选方案。然而,在选择SSD时,企业级SSD与客户端级SSD之间存在显著差异。本文将从性能、可靠性、耐久性三个方面,深入解析这两种SSD的不同特点,帮助读者在选择存储设备时做出明智决策。
性能
通过从SSD控制器到NAND闪存芯片的多通道架构和并行访问,SSD可为来自CPU的顺序和随机数据请求带来格外高的读取和写入性能。
在涉及处理数百万字节随机公司数据(包括在CAD技术图纸上的协作、供分析用的地震数据(例如大数据),或者访问供银行交易用的全球客户数据(例如OLTP))的典型数据中心情形中,必须以最少的延迟量访问存储设备(可能涉及需要并发访问相同数据的客户端),而不会对响应时间造成影响。用户体验基于低延迟,低延迟可以提高用户生产效率。如果将这一点推广到整个员工队伍,您就能看出低延迟的好处是如何迅速累积起来的。
客户端应用程序仅涉及单个用户或应用程序访问,在任何用户或系统操作的最短和最长响应时间(或延迟)之间具有更高的容许值。
使用SSD的复杂存储阵列(例如网络连接存储、直连存储或存储区域网)也会受到不相符性能的负面影响,并可导致存储阵列延迟、持续性能受到破坏,并最终危害到用户感受到的服务质量。
与客户端SSD不同,企业级固态硬盘不仅针对前几秒访问中的最高性能进行了优化,还使用更大的预留空间(OP),从而在更长时段内持续提供更高的稳定状态性能。
这将确保在最高流量负载期间的存储阵列性能与组织的预期服务质量(QoS)要求一致。
可靠性
NAND闪存中存在几个固有的问题。其中两个最重要的问题是:NAND闪存单元在反复写入过程中会发生磨损,从而导致使用寿命有限;以及自然产生的错误率。
在NAND闪存生产期间,从硅晶圆切下的每个NAND闪存颗粒均会经过测试并具有底层位错误率(BER或RBER)特性。
BER定义了在没有纠错码(ECC)的情况下,NAND闪存中自然发生的位错误的比率,以及固态硬盘(SSD)控制器在不中断用户或系统访问的情况下,使用即时高级ECC(通常被不同的SSD控制器制造商称为BCH ECC、强ECC或LDPC纠错码)进行纠错的比率。
SSD控制器纠正这些位错误的能力可以通过无法修复的位错误率(UBER)来说明,“这是一个数据错误率指标,等于在应用任何具体纠错方法后的每位读取的数据错误数。”*
正如行业标准协会JEDEC于2010年在文件“JESD218A:固态硬盘(SSD)要求与耐久测试方法”以及文件“JESD219:固态硬盘(SSD)耐久工作量”中定义和标准化的内容所述,企业级SSD在许多方面与客户端级SSD存在差异,这些差异包括但不限于企业级SSD能够支持更为繁重的写入工作量、更为极端的环境条件以及从比客户端SSD更高的BER中恢复。
应用类别 | 工作负载(参见JESD219) | 有效使用(电源打开) | 保留使用(电源关闭) | UBER要求 |
---|---|---|---|---|
客户端 | 客户端 | 40° C 8小时/天 | 30° C 1年 | ≤10^-15 |
企业 | 企业 | 55° C 24小时/天 | 40° C 3个月 | ≤10^-16 |
表1 - JESD218A:固态硬盘(SSD)要求与耐久测试方法
版权所有 JEDEC。复制内容已获 JEDEC 允许。
在使用JEDEC建议的UBER要求方面,将企业级SSD与客户端SSD进行对比,企业级SSD要求每处理1万万亿位(1.11 PB)仅存在1位经历1次无法修复的位错误,而客户端级SSD与此相比则是每处理1千万亿位(0.11 PB)存在1位错误。
企业级SSD还将增添额外的技术,将支持利用存储在其他NAND闪存颗粒中的奇偶校验数据恢复损坏的数据块(类似于驱动器组RAID,这支持恢复具体的块,利用其它块中存储的奇偶校验数据重建此块)。
为了补充内置于企业级SSD的冗余数据块恢复技术,还在端到端内部保护方案中实施定期检查点创建、循环冗余检验(CRC)和ECC纠错,以确保数据在从主机经过闪存再回到主机的完整性。端到端数据保护意味着,在存储到SSD内存缓存和当从NAND存储区写入或读取的过程中,对从主机接收的数据进行完整性检查。
与企业级SSD针对位错误的增强型ECC保护类似,SSD可能还包含用于电力损失检测的物理电路,可以管理SSD中的电力存储电容器。硬件中的电源故障支持检测输入到SSD的电源,在发生意外电力损失期间,它使用电容器向SSD电路提供临时电源,从而在SSD断电前完成任何内部或外部发出的未完成的写入。对于数据丢失无法恢复的应用,通常要求使用断电保护(PLP)电路。
通过频繁地将SSD控制器缓存区中的数据(例如它的闪存转换表)刷新到NAND存储,断电保护也可能在SSD固件中实施——这无法保证出现电源损失时不会丢失数据,但能尝试最大限度降低不安全断电的影响。固件断电保护还确保SSD在遇到不安全停机后基本可以操作。
在许多情况下,使用软件定义存储或服务器集群可能会降低对基于硬件的电源故障支持的需求,因为任何数据都会复制到一台或多台服务器中的单独、独立的存储设备中。大规模互联网数据中心通常利用软件定义存储来实现对RAID服务器的电源故障支持,以存储相同数据的冗余副本。
耐久性
随着NAND闪存单元的每个编程或擦写(P/E)周期,闪存设备中所有NAND闪存可靠存储数据位的能力会下降,直至NAND闪存块不再能够可靠地存储数据;此时,降级或损坏的块从用户可寻址的存储池中除去,逻辑块地址会移至NAND闪存阵列上的新物理地址。通过使用属于SSD中预留空间(OP)存储组成部分的备用块池,新存储块替换坏存储块。
随着单元不断编程或擦除,BER还会线性增加,出于此方面原因,必须对企业级SSD控制器施行一组复杂的管理技术,以管理单元在SSD的预期寿命期间可靠存储数据的能力。
指定NAND闪存的P/E耐久性可能会有很大差异,这取决于当前的光刻制造工艺以及生产的NAND闪存的类型。
NAND闪存类型 | QLC | TLC | MLC | SLC |
---|---|---|---|---|
架构 | 每个单元4位 | 每个单元三位 | 每个单元两位 | 每个单元一位 |
存储容量 | 最大存储容量 | 较大存储容量 | 大存储容量 | 最小存储容量 |
耐久性(P/E) | 最低耐久性 | 较低耐久性 | 中等耐久性 | 最高耐久性 |
成本 | $ | $$ | $$$ | $$$$ |
NAND位错误率(BER)约值 | 10^4 | 10^4 | 10^7 | 10^9 |
表2 – NAND闪存类型
企业级SSD与客户端级SSD在负载周期方面也存在差别。企业级固态硬盘必须能够承受数据中心服务器中常见的繁重读写活动,这些服务器需要在每周每天的24小时内随时访问数据。与之相比,客户端固态硬盘通常一周内每天仅被充分利用8小时。
企业级SSD拥有24x7负载周期,客户端级SSD拥有20/80负载周期(在计算机应用方面,20%的时间活跃,80%的时间处于空闲或睡眠模式)。
理解任何应用或SSD的写入耐久性较为复杂,因此JEDEC委员会还建议使用写入TB数(TBW)的耐久性衡量指标,用于指示在向SSD写入多少原始主机数据量后,SSD中所含的NAND闪存就会变成不可靠的存储介质并应将此驱动器废弃。
通过运用JEDEC建议的JESD218A测试方法和JESD219企业级工作量,将更易于阐述SSD制造商借助TBW进行的耐久性计算,并推断可应用到任何数据中心的更易理解的耐久性措施。
如JESD218和JESD219文件所述,不同应用类别的工作负载也可能受到比主机提交的实际写入高出一个数量级的写放大系数(WAF)的影响。这很容易导致NAND闪存磨损失控、NAND闪存位错误率(BER)因长时间过度写入而升高,以及SSD中无效页广泛分布导致的性能下降。
虽然TBW(总写入字节数)是企业级和客户端固态硬盘讨论中的一个重要话题,但TBW仅仅是一个NAND闪存级别的耐用性预测模型。平均无故障时间(MTBF)应被视为基于设备所用组件可靠性的组件级耐用性和可靠性预测模型。对企业级SSD组件的期望包括在SSD预期寿命期间管理所有NAND闪存的电压上更为耐久和更为得力。所有企业级SSD都应至少有200万小时的额定MTBF,这相当于超过230年!看到更高的SSD MTBF规格并不罕见;应注意,200万小时作为企业级SSD的起点绰绰有余。
对企业级SSD的S.M.A.R.T.监控和报告使得能够根据当前写入放大(WAF)因子和损耗程度对设备进行故障前预期寿命的轻松查询。通常还支持对故障事件(例如电力损失、物理接口发生的位错误或不均衡的损耗分布)进行故障前预测警告。
对于在标准运用期间或故障后监控SSD方面,客户端级SSD可能仅具有最低的S.M.A.R.T.输出量。
根据SSD应用级和存储容量,还可分配更高的NAND闪存预留存储量作为预留空间(OP)的备用存储量。OP容量对用户和操作系统访问是隐藏的。它可用作临时写入缓冲以获得更高的持续性能,并在SSD的预期寿命期间作为有缺陷的闪存单元的替代品,以提高SSD的可靠性和耐久性(利用更多数量的备用块)。
结论
从NAND闪存编程和擦除耐久性,到为满足不同应用级工作量而采用的复杂管理技巧,企业级SSD和客户端级SSD之间存在明显差异。
了解这些应用类别之间的差异是在要求高且通常任务关键的企业环境中最大限度地减少和管理破坏性停机时间风险的有效工具。