storage-paper-reading-notes

Xu J, Kang J, Dong M, et al. FalconFS: Distributed File System for Large-Scale Deep Learning Pipeline[C]//23rd USENIX Symposium on Networked Systems Design and Implementation. 2026: xx-xx.

问题

在深度学习流水线中,分布式文件系统的客户端元数据缓存是无效的,浪费了宝贵的内存资源。

方法

作者提出了无状态的客户端架构(stateless-client architecture,),将路径解析迁移到服务端中。

混合元数据索引

方法:利用文件名哈希,将文件inode放置到对应的元数据服务器上,并使用选择性重定向来实现负载均衡。

(1)正常情况:使用文件名哈希来定位元数据服务器。

(2)极端情况:

第一,热门文件名(Hot filenames):由于应用程序的命名惯例,特定文件名会频繁出现,例如,图6中的map.json

第二,哈希方差(Hash variance):如果唯一文件名的数量没有远多于元数据服务器的数量,文件名将会分布不均衡。

解决办法:选择性重定向(selective redirection),并使用异常表(exception table)来指定哪些文件名如何重定向。

延迟命名空间复制

方法:在所有元数据服务器上复制整个命名空间,并采用延迟同步无效机制来降低维护开销。

并发请求合并

每个元数据服务器会初始化固定数量的数据库工作线程,并准备好一个连接池。根据请求类型不同,连接池会将请求放到对应的请求队列中。空闲工作线程检索队列,并在一次事务中执行队列中的所有请求。

VFS Shortcut

实验

对比系统:CephFS、JuiceFS、Lustre

测试工具:

标注任务性能

ResNet-50模型训练性能

总结

与CephFS和Lustre相比,FalconFS的小文件读写吞吐量最高提升了5.72倍,模型训练的吞吐量最高提升了12.81倍。

代码仓库:https://github.com/falcon-infra/falconfs

启发

不足