File system hounds have a new project to watch. bcachefs was released yesterday, bringing with it checksumming, compression, support for multiple devices, and caching. Eventually, the file system aims to even support snapshotting.
bcachefs started out as simply bcache. Kent Overstreet began working on the project while working at Google. While the effort was targeted at building a cache, he quickly discovered that he was writing the fundamental building blocks of a file system.
(Related: A primer for Hadoop)
Overstreet’s goal was to replicate the performance of XFS and Ext4, while also including the modern features of Btrfs and ZFS. To this end, bcachefs has support for multiple devices, à la ZFS. The file system also includes compression and checksumming; however, Overstreet cautioned against using both at the same time due to some work that still needs to be done.
He is currently developing bcachefs in his spare time, and has encouraged other developers to come help. He’s supporting himself off of his savings, saying that it’s a perfect time to expand the base of contributors to the project.
Future versions of the file system should include snapshots, erasure coding, and native support for SMR drives and raw flash.