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

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


相关文章
|
存储 缓存 固态存储
SSD的原理和结构简介
SSD如淡雅之兰花,寻求内外统一,内涵与外在俱佳,除了英俊潇洒的外表,内在的魅力同样不可抵挡。
|
固态存储 IDE 开发工具
【实战经验分享】如何对SSD固态硬盘下发SCSI command?
目前可以供用来下发SCSI/ATA Command的工具有很多,比如BusHound, Hdparm, Sg3, Msecli等。其中Msecli是Micron自己的专门用来管理Micron SSD的命令行接口, 对于其他家的SSD是无效的。我们这里主要用的Sg3这个工具
|
存储 固态存储 Linux
BLOCK 层这么多参数都是什么意思?!
每个 request queue 会维护一个 struct queue_limits 结构来描述对应的块设备的硬件参数,这些参数描述了硬件存储单元的组织方式,会影响 block layer 的很多行为,其中部分参数在 `/sys/block//queue/` 下导出 ```c struct request_queue { struct queue_limits limits; ... } `
4508 1
|
监控 调度 开发工具
IO神器blktrace使用介绍
## 前言 1. blktrace的作者正是block io的maintainer,开发此工具,可以更好的追踪IO的过程。 2. blktrace 结合btt可以统计一个IO是在调度队列停留的时间长,还是在硬件上消耗的时间长,利用这个工具可以协助分析和优化问题。 ## blktrace的原理 一个I/O请求的处理过程,可以梳理为这样一张简单的图: ![](http://image
20197 0
|
7月前
|
存储 API 开发工具
DeepSeek 3FS解读与源码分析(5):客户端解读
本文深入解析了3FS的客户端模式,包括FUSE Client和Native Client(USRBIO)。
DeepSeek 3FS解读与源码分析(5):客户端解读
|
10月前
|
存储 算法 网络安全
Intel QAT 加速的数据压缩和 TLS 加解密技术 | 龙蜥大讲堂 102 期
Intel QAT(QuickAssist Technology)加速的数据压缩和TLS加解密技术,由Intel网络与边缘事业部唐志军分享。课程涵盖QAT简介、数据压缩、安全应用及价值主张,重点介绍QAT在CPU密集型任务中的加速作用,如对称/非对称加密、数据压缩等。通过QAT,可大幅提升性能,节省CPU资源,优化存储和网络传输效率,适用于网络安全、虚拟机迁移、大数据处理等场景。
674 0
|
存储 固态存储 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
9473 0
|
关系型数据库 MySQL 测试技术
MySQL压测--TPCC安装,测试
今天我们来讲一下MySQL的压力测试工具,目前我接触到的主要有两种压力测试工具:TPCC,Sysbench,前者只适合MySQL数据库OLTP压力测试,而Sysbench功能就比较广泛,可以测试OS的CPU,Memory,IO,以及多种关系型数据库,如MySQL,PostgreSQL; 这篇博客主要讲解Tpcc 安装,测试。
2623 0
|
存储 Ubuntu Linux
linux系统中如何制作rootfs?详细教程
linux系统中如何制作rootfs?详细教程
444 0
|
存储 固态存储 Linux
开启全新存储时代:SPDK文件系统项目实战指南
开启全新存储时代:SPDK文件系统项目实战指南