根据这个希捷演示目前正在进行一些(?)努力,旨在修改 ext4 文件系统,引入 SMRFS -EXT4 - 支持 hmHDD。目标是提供一个层来隐藏应用程序中的 ZAC 命令细节(我相信)。还有这个文件声称“从内核 v 4.7 开始... hm 驱动器作为 SG 节点公开 - 无块设备文件”。这是什么意思?也许这些文档已经过时,并且 ext4(或其他常见的 Linux 文件系统)已添加对主机感知 HDD 的支持。哪些 Linux 发行版通过文件系统支持 HMHDD?如果存在此类支持 - 需要采取哪些步骤才能在不更改应用程序的情况下启动并运行 HMHDD(其中文件系统隐藏所有细节)?我关心的是像 DB 这样的一般应用程序 - 而不是日志样式。
还有这样的视频(SDC2020:使用 SMR HDD 提高分布式存储系统 TCO)声称从 4.10 linux 内核 f2fs 开始已经支持驱动器 - 您使用过这种方法吗?也许 f2fs 不是随机操作的最佳匹配,但我希望 f2fs 能够以可接受的性能完成此类任务(其中读取占主导地位)
答案1
“从内核 v 4.7 开始...主机管理的驱动器作为 SG 节点公开 - 无块设备文件”。这是什么意思?
你只会得到/dev/sgX
SCSI 通用设备,它是一个字符设备,允许您向驱动器发送 SCSI 命令。我不确定什么是正确的用例仅有的SG 节点存在——下面提到的解决方案需要块设备节点存在才能工作。
我无法找到有关 ext4 中分区设备支持进展的任何信息,f2fs 声称支持它,调用mkfs.f2fs
with-m
应该是您所需要的,但我对此没有个人经验。
您可以使用 Device Mapper 解决块级别的区域“问题”,dm 区域目标。基本上在驱动器顶部创建一个可供所有文件系统使用的“普通”块设备,因为对于它们来说它只是一个常规块设备。看起来是唯一打包的主要发行版用户空间 dm 分区工具就是SUSE,各个发行版的内核支持总结这里。