浅析企业级SSD Multi-Stream Write技术

简介: Multi-stream write(多流写)技术可以使SSD根据主机端提供的Stream ID,将具有相同或相似生命周期的数据写入到相同的擦除单元中去,大大提高了GC时的效率,减少了写放大,使得SSD的性能和寿命都有了较大的提升。

Multi-stream write(多流写)技术是什么?

在企业级存储中经常提到一个关键性的词语"冷热数据分区"。比如Meta data肯定是热数据。把相同生命周期的数据打上标签,告诉SSD盘,SSD盘放置数据的时候,就可以分区存放,会大大减少垃圾回收的工作量。要实现这个功能,阵列软件必须有接口和SSD控制器通讯。除了自研SSD之外,还有一个办法,采用支持Multi-stream write(多流写)技术的SSD。


Multi-stream write(多流写)技术可以使SSD根据主机端提供的Stream ID,将具有相同或相似生命周期的数据写入到相同的擦除单元中去,大大提高了GC时的效率,减少了写放大,使得SSD的性能和寿命都有了较大的提升。


比较早些时候,这个多流写技术就已经成为SCSI T10的标准,可以用在SAS/SATA SSD上。在今年5月份发布的NVMe Spec 1.3版本中也看到了Multi-Stream的身影(如下图),也就是说Multi-Stream技术将在NVMe SSD应用场景中发挥优势,继续发光发热。

虽然多流写技术已经是一个标准,此前市场上好像一直只有三星对这个技术比较挚爱。不过,在今年8月份的FMS上,东芝发布的全球首款64层3D闪存的PM5 12Gbit/s SAS系列企业级SSD中也支持多流写入技术(Multi-Stream Write Technology)。后续应该会有更多厂商开始支持这项技术。


Multi-stream write(多流写)技术效果几何?

多流写技术的目的就是将使SSD根据主机端提供的Stream ID,将具有相同或相似生命周期的数据写入到相同的擦除单元中去,这样就是大大提高了GC时的效率,减少了写放大。如下图,采用多流写技术后,在不同workload情况下,SSD的写放大都会降低到接近1,效果非常理想。

(注:数据来自三星官网公布内容)

我们知道写入放大数值越小,越能提升固态使用寿命。多流写技术让NVMe SSD的寿命得到了2倍的提升,如下图。

(注:数据来自三星官网公布内容)

同时,多流写技术对NVMe SSD的IOPS有显著的提升,如下图。最大IOPS是传统SSD IOPS的9倍,这真的是飞一般的感觉~~~

(注:数据来自三星官网公布内容)


相关文章
|
4天前
|
数据库
stream-query开源合规
stream-query开源合规
18 0
|
4天前
|
固态存储 网络协议 Linux
SPDK NVMe-oF Target
SPDK NVMe-oF Target
SPDK NVMe-oF Target
|
存储 缓存 前端开发
【Node 基础】Buffer & Stream
【Node 基础】Buffer & Stream
【Node 基础】Buffer & Stream
|
Apache
【解决方案】No input file specified. Apache解决方案
【解决方案】No input file specified. Apache解决方案
141 0
【解决方案】No input file specified. Apache解决方案
|
存储 索引
Elastic:深入了解数据流Data Stream
最近看到不少同学反馈数据流的问题,特针对数据流谈谈自己的理解,以供大家参考。
251 0
|
存储 测试技术 索引
ES中数据流Data streams详解
ES中数据流Data streams详解
447 0
ES中数据流Data streams详解
|
存储 固态存储 Java
multi-stream SSD 介绍
# NVMe Multi-stream ## 1. 原理介绍 ### 1.1. flash 写操作 在介绍 multi-stream 之前,首先简单介绍一下 flash 写操作的特性。 - SSD 中写操作(write)的单元为 page,page 的大小通常为 2 ~ 64 KB - NAND flash 在对 page 写操作之前,必须对 page 执行擦除操作(er
8000 0
SAP Odata batch操作,只支持multipart_mixed类型的content-type
SAP Odata batch操作,只支持multipart_mixed类型的content-type
115 0
SAP Odata batch操作,只支持multipart_mixed类型的content-type
|
存储 缓存 固态存储
高性能存储的另一块拼图——DM 支持 IO Polling
DM (Device Mapper) IO polling 新特性[1]目前正瞄准 v5.13 窗口。有了该特性的支持,DM 设备开始正式支持 io_uring 的 polling 模式,从而为 Linux 的高性能存储栈补上了另一块拼图。 > 注 > 1. io_uring 是 Linux 的新一代高性能异步 IO 框架,由 block 子系统的维护者 Jens Axboe 亲自
667 0