- 原理:
- 优化底层设备的 data placement。
- 一个 stream 上操作的数据生命周期相同,这样磁盘会把数据放到相同的 erase blocks 里,避免GC时的拷贝操作。
- 对于 NVMe,stream 是跟硬件的 write channels 绑定的,是个稀缺资源,必须考虑 separate data with different deletion characteristics.
- 使用:
- 通过 fcntl,内核版本大于4.13
- 指定目标 inode 或 fd
- https://man7.org/linux/man-pages/man2/fcntl.2.html