SSD ZNS使用场景与市场调研

ZNS应用概述

        该功能目前已应用在企业级SSD,消费级SSD暂时未引入该feature。

ZNS SSD使用场景

RocksDB + ZenFS 黄金组合:RocksDB是Facebook开发以Key-value导向的日志型数据库,能将用户冷热数据分开存储,其数据写入特点是以append only方式,同ZNS的严格顺序写有异曲同工之妙,配合全面适配ZNS的ZenFS文件系统,将最大化发挥ZNS SSD的优势。

字节跳动ZNS SSD应用:针对云存储的痛点:性能、成本、稳定性、定制化。字节采用了软硬结合的方式整体优化。软件方面,负责GC,WL,NAND数据存放位置优化以及QoS优化。硬件方面,主要负责是底层NAND异常和NAND管理,以及CMB、PMR特性。

存储厂家产品计划

厂家

产品

应用场景

上市时间

浪潮

新一代ZNS SSD闪存盘

ZNS存储技术针对的是云场景应用,适用于大容量空间存储的数据,例如高清视频、图像等

2022

SK海力士

下一代企业级标准的ZNS SSD解决方案

采用72层512Gb 3D TLC NAND,符合NVMe1.2.1规范,支持PCIe Gen3传输速度,M.2 22110,容量高达2TB。

2020年

英韧科技

东湖(Donghu)系列

解决云存储、边缘计算等应用中产生的海量数据存储、硬盘寿命、建设成本等问题。

2023年

Western Digital

ZNS SSD

企业级SSD,结合SMR技术优势。

2023年

忆芯科技

企业级主控STAR2000的企业级方案

致力于赋能高性能存储解决方案,赋能数据中心新应用。

2022年

三星

基于第六代V-NAND的ZNS SSD PM1731a

ZNS SSD 有望作为一种更为有效管理爆发式增长数据的解决方案

2021年

社区支持情况

        Linux®内核版本4.10开始支持ZBD(Zone Block Device “分区存储块设备”),并在Linux内核版本5.9开始全面支持ZNS。

        QEMU®开源仿真平台从QEMU 6.0版本开始全面支持ZNS。灵活的Zone配置和错误注入,加速ZNS方案的开发和落地。

        fio作为存储设备的主要性能测试工具,在3.9版本开始全面支持ZNS,可以对ZNS SSD进行性能分析和测试。

        zonefs,f2fs,btrfs,xfs,ext4文件系统将全面支持ZNS,且可以看到市场上有明显应用案例。

附 ZNS SSD简介

        NVMe 标准工作组于 2020 年推出新型的分区命名空间(zoned namespace, ZNS)接口技术规范。得益于与闪存相契合的分区抽象,ZNS SSD 相比于标准块接口 SSD 在容量、成本、性能、以及软件可定义方面具备巨大优势。

        ZNS 是从 OC(Open Channel,开放通道)SSD基础上发展而来的,实现了把FTL(Flash Translation Layer,闪存转换层)从SSD内部迁移到上层的Host端,把SSD内部开放给了Host端,这样用户可以根据自己需要,比较灵活的拥有自己特定的FTL,代价是软件架构必须重新设计,成本非常高,对用户技术实力要求也非常高。

ZNS 架构

        ZNS协议将NVMe 2.0其中的一部分将进行标准化处理,以满足行业需求。相比之下ZNS SSD规范更加标准,生态环境更加友好,简化了软件架构,用户可以更加容易地根据自身场景需求进行特定软件开发。

        ZNS SSD将FTL移至Host端进行数据管理和I/O调度,NVMe ZNS提供了分区存储设备接口,该接口允许SSD和主机在数据放置方面进行协作,根据数据类型的不同选择单独的存放位置,从而可以将数据与SSD的物理介质对齐,提高了总体性能并增加了主机能直接读写的容量,并实现了I/O隔离。

        ZNS规范中,将SSD namespace的整个LBA(logical block address,逻辑区块地址)范围划分为若干个等长的区间,等长的LBA区间成为一个zone,每个zone内必须以顺序的方式进行写入,每个zone有其独立的状态机进行管理。

        ZNS SSD内部可以根据不同的应用场景将不同的zone与不同的物理位置进行映射;configA是一种最有利于顺序读写的配置,这种方法可以保证读写过程Die的并发性最好,一般来说标准SSD都会按照这种方式写入。configB更有利于Latency敏感的场景,每个用户控制自己的Die,从而减少相互之间的影响。

        由于zone内要求必须顺序写入,这样在多线程写入同一个zone时,线程之间会因为写入指针的竞争导致写入速度受限或者出现写入位置不正确的问题,这样同一个zone的写入队列深度不能超过1,为了解决这个问题,ZNS提供了append附加写和ZRWA(Zone Random Write Area,分区随机写入区)两种写入模式:

        其一,Append写入模式。Append命令将由SSD决定写入的LBA,并返回给用户,这样消除了主机软件间的zone写入位置竞争问题。

        其二,ZRWA允许在SSD缓存中对数据进行随机写入和就地覆盖。与Zone Append命令相比,这种方法在SSD上需要更多的资源。

普通SSD VS ZNS SSD

        普通SSD产品,文件不能被驱动器分开写入,最终导致具有不同生存期的文件被存储在相同的erase单元中,而ZNS SSD支持主机与存储设备协作放置数据,可以实现应用程序控制区域中的数据放置,即分区存储。

        ZNS SSD主要是为了能够充分利用底层介质的存储容量,同时发挥介质本身的特性优势,例如ZNS针对QLC NAND闪存SSD,它可以根据数据的类型和访问频率采用不同的数据分区方式,以减少整体写放大,从而延长硬盘寿命,同时,还可以改进的I/O访问延迟,支持主机与存储设备协作放置数据,如下图展示了普通SSD与ZNS区别。

        ZNS SSD要求所有zone只能顺序写入(或者append等),不能出现复写操作,重新使用前需要对zone执行zone reset命令等,这样应用及驱动都需要更多的配合ZNS SSD,不过当前各大存储系统及开源工具都已经或者计划完成ZNS SSD的适配与支持,标准化的接口实现了强大的软件和硬件生态系统。

        相比普通SSD产品,ZNS SSD主要有五大优势:消除了SSD的GC(Garbage Collection,垃圾回收)进程的WAF(Write Amplification,写放大)、消除了传统的OP(Over provisioning,预留空间)空间、由于较小的映射表,DRAM更少、更高的吞吐量和更低的延迟、大幅提升SSD盘寿命。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiaosanxian

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值