浅析企业级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倍,这真的是飞一般的感觉~~~

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


相关文章
|
3月前
|
存储
【Azure 应用服务】Storage Queue触发Azure Function时报错 The input is not a valid Base-64 string
【Azure 应用服务】Storage Queue触发Azure Function时报错 The input is not a valid Base-64 string
|
6月前
|
存储 缓存 Linux
BTRFS- Multiple Device Support(多重设备支持)
BTRFS- Multiple Device Support(多重设备支持)
68 2
|
11月前
|
Java 数据处理 数据库
stream-query加入dromara开源组织
stream-query加入dromara开源组织
82 1
《Intel Data Direct IO (Intel DDIO)Frequently Asked Questions》电子版地址
Intel Data Direct I/O (Intel DDIO):Frequently Asked Questions
95 0
《Intel Data Direct IO (Intel DDIO)Frequently Asked Questions》电子版地址
|
安全 算法 Cloud Native
使用阿里云服务网格 ASM 和 Intel Multi-Buffer 技术实现更快的应用服务间加密通信|学习笔记
快速学习使用阿里云服务网格 ASM 和 Intel Multi-Buffer 技术实现更快的应用服务间加密通信
使用阿里云服务网格 ASM 和 Intel Multi-Buffer 技术实现更快的应用服务间加密通信|学习笔记
|
缓存 Linux 数据安全/隐私保护
实战分享|Write Cache设置效果为何有差异?
sdparm和hdparm去修改HDD的write cache,发现在系统下write cache设置的效果有差异。
|
存储 固态存储 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
8543 0
|
存储 索引
Elastic:深入了解数据流Data Stream
最近看到不少同学反馈数据流的问题,特针对数据流谈谈自己的理解,以供大家参考。
317 0
|
存储 缓存 固态存储
高性能存储的另一块拼图——DM 支持 IO Polling
DM (Device Mapper) IO polling 新特性[1]目前正瞄准 v5.13 窗口。有了该特性的支持,DM 设备开始正式支持 io_uring 的 polling 模式,从而为 Linux 的高性能存储栈补上了另一块拼图。 > 注 > 1. io_uring 是 Linux 的新一代高性能异步 IO 框架,由 block 子系统的维护者 Jens Axboe 亲自
780 0
|
弹性计算 安全 关系型数据库
PostgreSQL 12 preview - 可靠性提升 - data_sync_retry 消除os层write back failed status不可靠的问题
标签 PostgreSQL , data_sync_retry , write back , retry , failed status 背景 有些OS系统,对fsync的二次调用不敏感,因为OS层可能有自己的CACHE,如果使用了buffer write,并且出现write back failed的情况,有些OS可能在下次fsync时并不能正确的反馈fsync的可靠性与否。(因为这个B
569 0