@xyhhx @ariadne Most of what bcachefs focuses on are things that something like a database needs to implement itself anyway, no matter what filesystem it uses.
A database can always checksum data itself more efficiently than the filesystem can. A database that wishes to support snapshots can do so much more efficiently than the filesystem it is on. A database can replicate data across machines much more efficiently than a filesystem could. If a filesystem on one node goes corrupt, a distributed database can simply rebuild its contents from other nodes. The list almost certainly goes on and on.
Furthermore, none of the features of a filesystem like bcachefs are helpful to a database. The features that would be useful, like transactions, simply are not exposed via the POSIX API. Even if they were exposed, I am virtually certain that they would be less efficient than what databases can and do implement themselves. The thing databases do make use of, like fast reads, writes, and appends, are already supported by existing filesystems like XFS.
Where advanced filesystems really shine is when there is one filesystem on one node that is used by many applications directly. That includes a lot of desktops, laptops, and single-node servers. Pets, not cattle. Those donβt get as much funding nowadays.
Honestly, I think hierarchical filesystems are a poor fit for most needs. A combination of a proper database and object storage would be a much better fit. But it will be very hard to get to that on client machines.
Disclaimer: Iβm by no means a storage expert, just someone who has observed a lot from all sorts of things over the years.