Meet Linux's Newest File-System: Bcachefs
An anonymous reader writes: Bcachefs is a new open-source file-system derived from the bcache Linux kernel block layer cache. Bcachefs was announced by Kent Overstreet, the lead Bcache author. Bcachefs hopes to provide performance like XFS/EXT4 while having features similar to Btrfs and ZFS. The bachefs on-disk format hasn't yet been finalized and the code isn't yet ready for the Linux kernel. That said, initial performance results are okay and "It probably won't eat your data — but no promises." Features so far for Bcachefs are support for multiple devices, built-in caching/tiering, CRC32C checksumming, and Zlib transparent compression. Support for snapshots is to be worked on.
If there's a Mrs Overstreet, she needs to be careful. Linux FS programmers have a bit of a history.
I should use this sig to advertise my book ISBN-13 : 978-1501515132.
Is this the Linux answer to swapcache and the HAMMER filesystem in DragonFly BSD? Of course, a major generalization and oversimplification, but it seems a similar kind of approach to a similar set of problems.
# make clean sig
There isn't a really great filesystem available for Linux (ext4 can lose data).
That's why I support any team that wants to try to write a better one. Please don't kill your wife, though.
"First they came for the slanderers and i said nothing."
> a modern COW filesystem with checksumming, compression, multiple devices, caching, and eventually snapshots and all kinds of other nifty features
Instead of yet another FS flavor of the month, or year, (Reiserfs, Btrfs, Bcachefs, etc.) and all the man-hours wasted re-solving the same old problems how about just doing it right the first time (ZFS) ?? Because this is what it is turning into. What advantages bachefs have over ZFS??? There is no way in hell I'm going to trust an unproven, buggy, and incomplete FS when we already have one that works.
Fixing the Butr free space shenanigans would have been a step in the right direction: An existing debugged FS.
Reminds me of this xkcd #927: Standards
Maybe your goals aren't shared by anyone that actually writes the OS or applications for Linux. Who cares what windows twats do?
:P
I like the idea this filesystem is going for... it can be useful as a cache, so that hardcore random I/O is smoothed out before it goes onto HDD platters, so a SSD can function as a place for the OS, and as a cache between a drive array or slow external drives.
My only addition would be encryption. If it is designed to work as a transient, ephemeral filesystem where data is only kept until it is safely copied to the real filesystem, then maybe encryption should be a part of this, with keys for data periodically changed out to ensure that data already written to the HDD is not going to be recovered, or if the cache is used as a read cache, the key would reside in RAM and the cache rebuilt on reboot.
He actually got modded up in the systemd thread.
"First they came for the slanderers and i said nothing."
Has better durability, semantics, and outperforms ext4 in most tests and even tmpfs in a few.
Eagerly awaiting mainline merge--waiting for mostly politics to resolve, or so it seems.
From Mr. Overstreet's announcement:
PSA: Right now I'm not getting any kind of funding for working on bcachefs; I'm :)
working on it full time for now but that's only going to last as long as my
interest and my savings account hold out. So - this would be a wonderful time
both for other developers to jump in and get involved, and for potential users
to pony up some funding. If you think this is interesting and worthwhile and you
want to see it completed and upstream - especially if you're at a company that
might make use of it - talk to your $manager or whoever and nag them until they
send me a check
Omne ignotum pro magnifico.
So what? It doesn't need to.
Linux is a free market of ideas and devotion. Projects that are interesting or useful tend to attract developers who are willing to contribute to the project. Those that are unnecessary or niche tend to languish or serve an obscure base of users. Regardless of where along that spectrum any project falls, we're all collectively richer through no effort of our own and at no cost beyond learning to use the software.
If the ability to create your own solution or choose from among many doesn't interest you, you don't have to use it. Air hockey is unlikely to replace football, but that doesn't mean you still can't enjoy it if it's to your tastes.
As opposed to working on fixing one of the existing filesystems?
Yes. If everyone worked on the same thing, we would never see progress in the world. There are already people working on the existing file systems.
If you want to look at it another way, it's like we have a genetic algorithm, randomly designing file systems, and only the best survive. If this keeps up, eventually the file systems on Linux will be very, very good.
"First they came for the slanderers and i said nothing."
Strange, on Earth the internet is not powered by windows servers but rather Linux and BSD ones, nor are smart phones running windows but BSD and Linux. What planet do you live on? The planet of the twats?
who gives a shit? only twats like you apparently
Exactly! I absolutely love btrfs, but it is still more or less experimental and under constant develoment. Why can't Overstreet and his team just work with the btrfs team since they're looking at basically the same feature set. I love Linux and all, but geez, we don't need to reinvent the wheel every few years.
A generic algorithm that takes 10 years between each iteration. btrfs has some cool things, but has some horrible things that seem cool to a dev because of all the complex setups you can do, but sounds like a nightmare to a sysadmin because of all the complex setups it can do. It also forgoes some very important features to gain these "nifty" features.
ZFS is really great, but not perfect. How about someone takes the idea of ZFS, but with no legacy dependencies to hold them down, and implement it in a way that makes up for its shortcomings, like no pointer re-write? One idea that I like about btrfs is configurable raid levels per volume.
Why? Are filesystems important for NBA team owners?
"It probably won't eat your data — but no promises."
Well, that's a ringing endorsement if I ever heard one. Thanks but no thanks.
Just cruising through this digital world at 33 1/3 rpm...
I guess writing a new filesystem is easier than fixing the existing bugs in bcache itself.
"They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety."
Sure, I can understand why, if you're building a ZFS server with tens of terabytes of disk and tens of GB of RAM, you can dedicate an SSD to accelerating it. But more commonly, I'm using a laptop or older desktop that doesn't really have enough horsepower to do that, and may not have room for both an SSD and a spinning disk, and I'd like to just throw a random USB stick on their to use for caching. Windows had something like that for a while (never really helped much, and now that my work laptop has an SSD it doesn't use it at all), but is there some way to accelerate my boring desk-side lab box at work by plugging in a 4-8GB flash stick? Or to accelerate the wimpy server we're using for OpenStack?
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
Seriously, no 'file manager' solution I've seen so far works adequately, and in a way that preserves such tags across devices / disks / etc. What do other slashdotters do for tagging purposes?
SKEIN 256/512 was a SHA3 finalist and is only 1/2 the speed of SSE4 CRC32C, and that is on a CORE2 DUO with out modern SIMD. For half the speed on any 64bit machine you gain many more bits and cryptographic strength.
Yeah, file systems are not created often, so if you're going to create one, you best make sure it's at least better on paper than what is out there. We don't need speed, we need scaling. Even ZFS has issues with large amounts of memory and dedup is horrible on large pools. HAMMER2 sounds awesome, but it does have a lot of crazy features that make it more complex which increases the chance of bugs, not coming to fruition or not getting ported to all Open source OSes. I don't need master-master distribution.
s/their/there/
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks