DragonFly kernel List (threaded) for 2007-10
DragonFly BSD
DragonFly kernel List (threaded) for 2007-10
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: HAMMER filesystem update - design document

From: Michael Neumann <mneumann@xxxxxxxx>
Date: Thu, 11 Oct 2007 10:18:59 +0200

This post by Matt went off-list, but I think should go to the list as well.

:Interesting. What exactly are those database files used for? Is a
:database file attached to each file to store ACLs, for example? Or can
:it be used like btree(3)? Do they have their own namespace in the
:Wow! I a am really looking forward to try out HAMMER!!!
:   Michael

    Because HAMMER uses a B-Tree (maybe a B+Tree the more I look at it)..
    in anycase, because HAMMER uses a B-Tree all lookups are basically
    key searches, even when looking up an offset in a file.  Since B-Tree
    elements specify records which can reference variable-length data,
    there really is very little difference between a database record
    indexed with a key and regular file data indexed with an offset.

    Records are typed so any given filesystem object can contain multiple
    key spaces.  One space will hold ACLs, one will be for regular file
    offsets, and there's nothing preventing us from having a key space
    directly accessible by userland.

    A HAMMER-aware database would be able to store its records using the
    key space directly.  It opens up some intriguing possibilities.

					    Matthew Dillon

[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]