可计算存储: 透明压缩与SSD寿命

SSDFans 2020-09-07 00:00


点击蓝字
关注我们



未来时速

what Andy giveth, Bill taketh away. 

每次英特尔提供更强大的计算能力,微软都能吃干抹净。

1990诞生的 Andy and Bill‘Law 依然有效,伴着随着数据量的指数级增长,在数据存储和处理领域愈演愈烈。“在未来的10年中,企业的变化会超过它在过去50年中的总变化。”这是比尔盖茨在1999年著作《未来时速》中的文字。我们很难逐一列举所有的关键变化,但在存储领域也遵循这个预测。比如最近一直提到的华为天才少年,张霁研究磁盘和数据库相关的智能优化,姚婷研究新型存储介质和键值存储系统,左鹏飞研究非易失性内存系统,都与存储领域有直接关系,似乎也说明存储领域的变化还在不断发生。

更高效的生产力势必替代原有的生产力和生产关系。从大型机和小型机的分区技术,再到x86虚拟化和现在风头正劲的容器和容器编排技术,都着力于提高应用的部署密度,提升计算资源的利用率,最终降低持有成本。存储领域也不例外,纵观Flash的历史:

SSD持续在企业关键应用落地并大规模部署。从MLC,TLC再到QLC,容量逐渐增大成本逐渐降低,但基于SSD技术的实现原理,寿命问题也愈发突出。

写放大与寿命

SSD不能像内存和机械硬盘直接覆盖旧数据,只能擦除Block后再写入其中一个“干净”的Page。当SSD剩余空间变少,出现大量数据碎片时,就要读取整个Block数据,将有效数据重新写到已经擦除的Block。这个过程叫Garbage Collection (GC),导致写放大(Write Amplification)。其实,衡量写放大有更加量化的指标,叫做写放大因子(Write Amplification Factor简称WAF),JEDEC(固态技术协会,即推出SSD标准的组织)对于写放大因子WAF的定义:


如图为JEDEC中描述WAF如何计算的例子,此Block包含64个Page(256 sectors),假设当需要更新Page1~Page3(8 sectors)数据,假设算法为:

  1. 拷贝所有page0~page63到DRAM;

  2. DRAM中更新Page1~Page3;

  3. 擦除此Block并回写DRAM数据;

此时写放大因子为 256/8=32,写放大增加了32倍的写入量,从而引发了更多擦除写入。

众所周知,闪存颗粒存在擦写次数的限制,所以在衡量SSD寿命时,通常会以TBW(或DWPD)为衡量依据。写放大导致了闪存颗粒擦写次数的“放大”,进一步降低寿命。有如下计算公式:

同时,随着写入量的增加,坏块的出现概率也会提升。对于可靠性,比较重要的衡量指标为UBER(不可修复的错误比特率),用来度量在应用错误纠正机制后依然产生的每比特读取的数据错误数量占总读取数量比。

UBER描述的是出现数据读取错误的概率,该值越低越好。下图描述UBER随写入数据量增加的线性关系:


  • 0~600,UBER一直为0

  • 600~800,此时由于写入量的持续增加,形成少量坏块,UBER从0缓慢增加到0.003

  • 800~1000,更多颗粒的失效与写放大对于颗粒擦写的叠加导致剩余NAND颗粒更容易形成坏块,从而导致增加不多的写入量,UBER也急剧增加,此时数据读取错误率陡增。

凡有的,还要加給他;沒有的,连他所有的也要夺过來。

总之,对于常常承载企业关键业务的SSD来讲,考虑可靠性,不仅关注写入量,随着擦写次数增加,造成的读取错误也是企业级应用不可接受的。TBW和UBER不应该单独讨论,就像在数据库领域Recovery Time Objective (RTO) 和 Recovery Point Objective (RPO)总是同时出现,只谈数据服务的恢复时间,又或者一味强调数据零丢失,都是耍流氓。当然业界也在提高SSD存储颗粒的擦写次数、GC算法方面持续发力,同时,结合可计算存储的透明压缩,也为SSD寿命及稳定性的提升带来了新的方向。

压缩与寿命

定性而言,压缩势必减少数据写入,最终提升存储颗粒的写入寿命。但在工程领域,还需要获取更详尽的数据。要考虑压缩带来的寿命收益,首先以不影响业务(参见:可计算存储: 数据压缩和数据库计算下推)为前提。决定写入寿命的相关因素很多,比如存储颗粒的品质,数据模型,温度,湿度,可能还涉及玄学。写入模型一定是最重要因素的之一,这就要先回到SSD的企业级服务的重要业务场景。JESD219(JEDEC中专门介绍SSD寿命测试中分析工作负载的文档)分析了企业级SSD工作负载的特点,并在此基础上进行严格的数据负载模拟测试。借助JESD219这个事实标准,便于我们进一步验证数据压缩对于减少写放大的收益。

JESD219工作负载

含如下几点:

  • 数据热度:数据集访问较为集中,5%的数据获得50%的访问频率,20%的数据获得80%的访问频率;

  • IO大小:以小块IO为主,67%的IO大小在4KB,过大的IO或者过小的IO都比较少,如下图,为不同I/O大小下所占的比例;

  • 测试时长:JESD219对于压缩比与写放大的测试也以此工作负载模型展开,并针对不同压缩比数据、不同预留空间大小、不同容量大小,进行测试,其中为了接近真实业务场景,保证测试持续时长是非常有必要的,为此我们采用以上IO pattern持续测试10000分钟;

  • 记录方式:每分钟采样一次写放大因子;

先看看魔改后制造负载的脚本(截取部分):

最终完成记录如下图所示:


如图为JESD219,基于同样的负载模型,使用企业级常用的3.2TB/3.84TB/6.4TB SSD容量测试,数据压缩比1:1/1.2:1/2:1/2.13:1/3.7:1/9:1逐渐增大,持续10000分钟并记录写放大的数据。从测试结果可见

  1. 所有模型在持续测试一段时间后会到达稳态,此时写放大趋于稳定;

  2. 同为3.2TB SSD,数据压缩比从1:1/1.2:1/2.13:1/9:1,写放大骤减,3.84TB及6.4TB SSD结果类似;

可见随压缩比提高,不同型号SSD都可持续获得写放大减少的收益。

选取典型的SSD容量配比,对比分析具体数据,如下图

一般企业级SSD预留空间为28%(可用空间3.2TB),当数据压缩比1:1时,写放大因子为1.79,当数据压缩比为1.2:1时写放大因子降低为1.48(仅提升了20%的压缩写放大降低了17%)。当数据压缩比为2.1:1时,写放大因子为0.58,写放大降低67%。

一般消费级SSD预留空间为7%(可用空间3.84TB),当数据压缩比1:1时,写放大因子为3.67,当数据压缩比为1.2:1时写放大因子降低为1.95,仅仅做了20%的压缩写放大降低了49%,已经接近企业级SSD数据压缩比1:1时写放大因子1.79。当数据压缩比为2.1:1时,写放大因子为0.62,写放大降低83%。

回顾TBWUBER,可以总结:

压缩不仅提高性能,同时也提升寿命和稳定性。

除了考虑压缩本身,结合企业级业务还需要考虑很多方面,如是否对业务透明、是否零拷贝不带来额外开销、可扩展性等等,可参考可计算存储: 数据压缩和数据库计算下推,如下图基于可计算存储的透明压缩供参考。

JESD219考虑的已经很充分,但如果想要更接近应用负载,还需要更进一步。以数据库场景为例,使用MySQL,借助Sysbench制造读写压力(OLTP混合读写oltp_read_write、数据集2TB),可以观测到其IO模型(基于eBPF跟踪IO)和JESD219还存在较大差异:

  1. I/O大小,73%的I/O集中在16~31kbytes,其原因为InnodDB数据页默认为 16KB。15%的I/O集中在1KB以下是由于redolog默认以512 bytes 进行I/O操作;

  2. 数据热度,在sysbench测试中,以离散I/O为主,尽量均衡访问完整2TB数据集;

当然,这完全可以通过魔改JESD219脚本更有针对性的模拟应用负载,这里不做展开。

十倍速变化

There's plenty of room at the bottom.

物理学家理查德·费曼 (Richard P. Feynman)在1959年12月的美国物理学年会上发表了题为“There's plenty of room at the bottom”(“底层还大有可为”)的演讲,对未来物理学的发展起到深远的影响。可计算存储技术作为应用的“bottom” 也将对应用架构产生更大的影响。



参考

  • 可计算存储: 数据压缩和数据库计算下推

  • On the Impact of Garbage Collection on flash-based SSD Endurance

  • Write Amplification Analysis in Flash-Based Sold State Drives

  • QZFS: QAT Accelerated Compression in File System for Applicaton Agnostic and Cost Efficient Data Storage

  • Improving Performance and Lifetime of Solid-State Drives Using Hardware-Accelerated Compression

  • Zoned Namespaces (ZNS) SSDs

  • JESD219



高端微信群介绍

创业投资群


AI、IOT、芯片创始人、投资人、分析师、券商

闪存群


覆盖5000多位全球华人闪存、存储芯片精英

云计算群


全闪存、软件定义存储SDS、超融合等公有云和私有云讨论

AI芯片群


讨论AI芯片和GPU、FPGA、CPU异构计算

5G群


物联网、5G芯片讨论

第三代半导体群

氮化镓、碳化硅等化合物半导体讨论

储芯片群

DRAM、NAND、3D XPoint等各类存储介质和主控讨论

汽车电子群

MCU、电源、传感器等汽车电子讨论

光电器件群

光通信、激光器、ToF、AR、VCSEL等光电器件讨论

渠道群

存储和芯片产品报价、行情、渠道、供应链




< 长按识别二维码添加好友 >

加入上述群聊




长按并关注

带你走进万物存储、万物智能、

万物互联信息革命新时代

微信号:SSDFans
SSDFans AI+IOT+闪存,万物存储、万物智能、万物互联的闪存2.0时代即将到来,你,准备好了吗?
评论
  • 耳机虽看似一个简单的设备,但不仅只是听音乐功能,它已经成为日常生活和专业领域中不可或缺的一部分。从个人娱乐到专业录音,再到公共和私人通讯,耳机的使用无处不在。使用高质量的耳机不仅可以提供优良的声音体验,还能在长时间使用中保护使用者听力健康。耳机产品的质量,除了验证产品是否符合法规标准,也能透过全面性的测试和认证过程,确保耳机在各方面:从音质到耐用性,再到用户舒适度,都能达到或超越行业标准。这不仅保护了消费者的投资,也提升了该公司在整个行业的产品质量和信誉!客户面临到的各种困难一家耳机制造商想要透
    百佳泰测试实验室 2024-12-20 10:37 116浏览
  • 由于该文反应热烈,受到了众多工程师的关注,衷心感谢广大优秀工程师同仁的建言献策。特针对该技术点更新一版相关内容! 再次感谢大家的宝贵建议!填充铜(Solid Copper)和网格铜(Hatched Copper)是PCB设计中两种不同的铺铜方式,它们在电气性能、热管理、加工工艺和成本方面存在一些区别:1. 电气性能:填充铜:提供连续的导电层,具有极低的电阻和最小的电压降。适合大电流应用,并能提供优秀的电磁屏蔽效果,显著提高电磁兼容性。网格铜:由于铜线之间存在间隔,电阻相对较高,电压降也
    为昕科技 2024-12-18 17:11 127浏览
  • 随着工业自动化和智能化的发展,电机控制系统正向更高精度、更快响应和更高稳定性的方向发展。高速光耦作为一种电气隔离与信号传输的核心器件,在现代电机控制中扮演着至关重要的角色。本文将详细介绍高速光耦在电机控制中的应用优势及其在实际工控系统中的重要性。高速光耦的基本原理及优势高速光耦是一种光电耦合器件,通过光信号传递电信号,实现输入输出端的电气隔离。这种隔离可以有效保护电路免受高压、电流浪涌等干扰。相比传统的光耦,高速光耦具备更快的响应速度,通常可以达到几百纳秒到几微秒级别的传输延迟。电气隔离:高速光
    晶台光耦 2024-12-20 10:18 110浏览
  • 汽车驾驶员监控系统又称DMS,是一种集中在车辆中的技术,用于实时跟踪和评估驾驶员状态及驾驶行为。随着汽车产业智能化转型,整合AI技术的DMS逐渐成为主流,AI模型通过大量数据进行持续训练,使得驾驶监控更加高效和精准。 驾驶员监测系统主要通过传感器、摄像头收集驾驶员的面部图像,定位头部姿势、人脸特征及行为特征,并通过各种异常驾驶行为检测模型运算来识别驾驶员的当前状态。如果出现任何异常驾驶行为(如疲劳,分心,抽烟,接打电话,无安全带等),将发出声音及视觉警报。此外,驾驶员的行为数据会被记录
    启扬ARM嵌入式 2024-12-20 09:14 65浏览
  • ​本文介绍PC电脑端运行VMware环境下,同时烧录固件检测不到设备的解决方法。触觉智能Purple Pi OH鸿蒙开发板演示,搭载了瑞芯微RK3566芯片,类树莓派设计,Laval官方社区主荐,已适配全新OpenHarmony5.0 Release系统!PC端烧录固件时提示没有发现设备按照各型号烧录手册中进入loader模式的操作方法,让开发板连接到PC端。正常来说开发板烧录时会显示“发现一个LOADER设备”,异常情况下,会提示“没有发现设备”,如下图所示: 解决步骤当在烧录系统固
    Industio_触觉智能 2024-12-18 18:07 79浏览
  •         在上文中,我们介绍了IEEE 802.3cz[1]协议提出背景,旨在定义一套光纤以太网在车载领域的应用标准,并介绍了XMII以及PCS子层的相关机制,在本篇中,将围绕IEEE 802.3cz-MultiGBASE-AU物理层的两个可选功能进行介绍。EEE功能        节能以太网(Energy-Efficient Ethernet)是用于在网络空闲时降低设备功耗的功能,在802.3cz的定义中,链
    经纬恒润 2024-12-19 18:47 67浏览
  •         不卖关子先说感受,真本书真是相见恨晚啊。字面意思,见到太晚了,我刚毕业或者刚做电子行业就应该接触到这本书的。我自己跌跌撞撞那么多年走了多少弯路,掉过多少坑,都是血泪史啊,要是提前能看到这本书很多弯路很多坑都是可以避免的,可惜这本书是今年出的,羡慕现在的年轻人能有这么丰富完善的资料可以学习,想当年我纯靠百度和论坛搜索、求助啊,连个正经师傅都没有,从软件安装到一步一布操作纯靠自己瞎摸索,然后就是搜索各种教程视频,说出来都是泪啊。  &
    DrouSherry 2024-12-19 20:00 72浏览
  • By Toradex秦海1). 简介为了保证基于 IEEE 802.3 协议设计的以太网设备接口可以互相兼容互联互通,需要进行 Ethernet Compliance 一致性测试,相关的技术原理说明请参考如下文章,本文就不赘述,主要展示基于 NXP i.MX8M Mini ARM 处理器平台进行 1000M/100M/10M 以太网端口进行一致性测试的测试流程。https://www.toradex.com
    hai.qin_651820742 2024-12-19 15:20 127浏览
  • 沉寂已久的无人出租车赛道,在2024年突然升温了。前脚百度旗下萝卜快跑,宣布无人驾驶单量突破800万单;后脚特斯拉就于北京时间10月11日上午,召开了以“We,Robot”为主题的发布会,公布了无人驾驶车型Cybercab和Robovan,就连低调了好几个月的滴滴也在悄悄扩编,大手笔加码Robotaxi。不止是滴滴、百度、特斯拉,作为Robotaxi的重磅选手,文远知行与小马智行,也分别在10月份先后启动美股IPO,极氪也在近日宣布,其与Waymo合作开发的无人驾驶出行汽车将大规模量产交付,无人
    刘旷 2024-12-19 11:39 133浏览
  • //```c #include "..\..\comm\AI8051U.h"  // 包含头文件,定义了硬件寄存器和常量 #include "stdio.h"              // 标准输入输出库 #include "intrins.h"         &n
    丙丁先生 2024-12-20 10:18 69浏览
  • 在强调可移植性(portable)的年代,人称「二合一笔电」的平板笔电便成为许多消费者趋之若鹜的3C产品。说到平板笔电,不论是其双向连接设计,面板与键盘底座可分离的独特功能,再加上兼具笔电模式、平板模式、翻转模式及帐篷模式等多种使用方式,让使用者在不同的使用情境下都能随意调整,轻巧灵活的便利性也为多数消费者提供了绝佳的使用体验。然而也正是这样的独特设计,潜藏着传统笔电供货商在产品设计上容易忽视的潜在风险。平板笔电Surface Pro 7+ 的各种使用模式。图片出处:Microsoft Comm
    百佳泰测试实验室 2024-12-19 17:40 157浏览
  • You are correct that the length of the via affects its inductance. Not only the length of the via, but also the shape and proximity of the return-current path determines the inductance.   For example, let's work with a four-layer board h
    tao180539_524066311 2024-12-18 15:56 127浏览
  • 百佳泰特为您整理2024年12月各大Logo的最新规格信息。——————————USB▶ 百佳泰获授权进行 USB Active Cable 认证。▶ 所有符合 USB PD 3.2 标准的产品都有资格获得USB-IF 认证——————————Bluetooth®▶ Remote UPF Testing针对所有低功耗音频(LE Audio)和网格(Mesh)规范的远程互操作性测试已开放,蓝牙会员可使用该测试,这是随时测试产品的又一绝佳途径。——————————PCI Express▶ 2025年
    百佳泰测试实验室 2024-12-20 10:33 80浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦