Live data from Hacker News

BetrFS: An in-kernel file system that uses Bε trees to organize on-disk storage

betrfs.org

11–20 of 48 posts

Re: BetrFS: An in-kernel file system that uses Bε trees to organize on-disk storage

#11
Michael Bender, one of the people behind this, gave an excellent invited talk on B^epsilon trees and the possibilities that write-optimised data structures introduce (especially in data base systems) at IPDPS this year. Unfortunately it wasn’t recorded as far as I’m aware, but the slides are available at http://ipdps.org/ipdps2018/bender-ipdps2018-wods.pdf. A more formal introduction to B^epsilon trees is http://supertech.csail.mit.edu/papers/BenderFaJa15.pdf

Re: BetrFS: An in-kernel file system that uses Bε trees to organize on-disk storage

#12
The website doesn't seem to mention that several of the papers on the filesystem won best-paper awards at major conferences. The paper, Optimizing Every Operation in a Write-Optimized File System, in particular, won best-paper award at FAST '16.

Re: BetrFS: An in-kernel file system that uses Bε trees to organize on-disk storage

#13

This is really interesting... ... so I'm really a bit bewildered and sad by some of the engineering choices they made along the way, like requiring a modified kernel : https://github.com/oscarlab/betrfs/blob/master/README.md#com... The reasons are detailed just above that link target, but are somewhat absurd IMHO: they modified the kernel's `struct task_struct` to pass error values, rather than fixing one of their li…

I wouldn't actually apply such an invasive patch on any system I ever cared about anyway, but I wonder if it would work on the RHEL/CentOS kernel, which has a supposed version of 3.10?

Re: BetrFS: An in-kernel file system that uses Bε trees to organize on-disk storage

#14
post #7

What's the state of this file system? Is it in the Linux kernel? In some BSDs? Both the main page in the FAQ talk about "the kernel" without saying which kernel it is. How reliable is it? Are there file system checkers for it? Does it support snapshots?

There's a comment upthread that it works on a very much patched Linux kernel, so it certainly isn't upstreamed.

Re: BetrFS: An in-kernel file system that uses Bε trees to organize on-disk storage

#15

Michael Bender, one of the people behind this, gave an excellent invited talk on B^epsilon trees and the possibilities that write-optimised data structures introduce (especially in data base systems) at IPDPS this year. Unfortunately it wasn’t recorded as far as I’m aware, but the slides are available at http://ipdps.org/ipdps2018/bender-ipdps2018-wods.pdf . A more formal introduction to B^epsilon trees is http://sup…

Here's the talk Bradley Kuszmaul [1] gave to MIT 6.172 in 2010...

How TokuDB Fractal Tree Indexes Work https://www.youtube.com/watch?v=9Rb85cOXTKU&t=202s

[1] https://people.csail.mit.edu/bradley/

Re: BetrFS: An in-kernel file system that uses Bε trees to organize on-disk storage

#16

This is really interesting... ... so I'm really a bit bewildered and sad by some of the engineering choices they made along the way, like requiring a modified kernel : https://github.com/oscarlab/betrfs/blob/master/README.md#com... The reasons are detailed just above that link target, but are somewhat absurd IMHO: they modified the kernel's `struct task_struct` to pass error values, rather than fixing one of their li…

Feels more like an academic project to prove a point, than an actual usable file system.

Re: BetrFS: An in-kernel file system that uses Bε trees to organize on-disk storage

#17
post #2

Btrfs vs betrfs... This is going to cause so much confusion Ah, but the project isn't new, so I guess it's not a new problem

Pronounce btrfs as “butter fs” and betrfs as “bee-turr fs” or something, then there is no confusion ;) But yeah I agree, betrfs and btrfs are way too similar names.

I think it's intended to be pronounced as "better fs"

Re: BetrFS: An in-kernel file system that uses Bε trees to organize on-disk storage

#18
post #16

This is really interesting... ... so I'm really a bit bewildered and sad by some of the engineering choices they made along the way, like requiring a modified kernel : https://github.com/oscarlab/betrfs/blob/master/README.md#com... The reasons are detailed just above that link target, but are somewhat absurd IMHO: they modified the kernel's `struct task_struct` to pass error values, rather than fixing one of their li…

Feels more like an academic project to prove a point, than an actual usable file system.

I don't think any reasonable academic wants anyone to actually use the prototype of their file system with irreplaceable (i.e. personal) data. Perhaps requiring a patched kernel is this project's way of making sure that that doesn't happen.

Re: BetrFS: An in-kernel file system that uses Bε trees to organize on-disk storage

#19

This is really interesting... ... so I'm really a bit bewildered and sad by some of the engineering choices they made along the way, like requiring a modified kernel : https://github.com/oscarlab/betrfs/blob/master/README.md#com... The reasons are detailed just above that link target, but are somewhat absurd IMHO: they modified the kernel's `struct task_struct` to pass error values, rather than fixing one of their li…

But also, you have to build TokuDB, using gcc-4.7 specifically, and then

> We import TokuDB as a binary blob, and overwrite TokuDB symbols using symbols from these files.

Pretty weird ...

Re: BetrFS: An in-kernel file system that uses Bε trees to organize on-disk storage

#20

This is really interesting... ... so I'm really a bit bewildered and sad by some of the engineering choices they made along the way, like requiring a modified kernel : https://github.com/oscarlab/betrfs/blob/master/README.md#com... The reasons are detailed just above that link target, but are somewhat absurd IMHO: they modified the kernel's `struct task_struct` to pass error values, rather than fixing one of their li…

I wouldn't actually apply such an invasive patch on any system I ever cared about anyway, but I wonder if it would work on the RHEL/CentOS kernel, which has a supposed version of 3.10?

It has very little to do with a 3.10, for instance it includes XFS v5 which was introduced in kernel 3.16.
Post reply on HN