ZFS (file system): what is an "uberblock" used for?

2

Why does ZFS (and possibly some other file systems out there) tend to use an "uberblock" on top of imaps? Why can't there just be multiple imaps instead of the uberblock?

Kaitlyn Mcmordie

Posted 2011-10-26T02:43:44.463

Reputation: 699

Answers

4

The ZFS Uberblock is the root of a giant dynamic tree whose leaves contain data.

Most other file systems use instead a superblock (and copies of it) and a static collection of fixed size inode maps.

There are no inode maps with ZFS, inode equivalents (dnodes) are dynamically created and destroyed.

jlliagre

Posted 2011-10-26T02:43:44.463

Reputation: 12 469

Thank you. So if there are no imaps in ZFS - then how is the giant dynamic tree supposed to exist? – Kaitlyn Mcmordie – 2011-10-26T07:04:42.150

1

It exists by design: http://hub.opensolaris.org/bin/download/Community+Group+zfs/docs/ondiskformat0822.pdf

– jlliagre – 2011-10-26T07:09:50.613

I guess another way to ask that is, do you know where the uberblock point to? – Kaitlyn Mcmordie – 2011-10-26T07:10:03.953

The uberblock points to the ZFS pool. – jlliagre – 2011-10-26T15:13:40.400

Sorry, I still don't know what you mean by that... Thanks for the docs but from what I can understand from the document is that ZFS has similar fundamentals as other filesystems, but not really sure why the uberblock is so special in its own regard. Basically what I'm trying to ask is why not just have an imap cached in memory instead of the uberblock? – Kaitlyn Mcmordie – 2011-10-26T18:59:10.350

I'm afraid you are misunderstanding ZFS. It has highly disruptive fundamentals. Also, ZFS has certainly much more things cached in memory than the uberblock. – jlliagre – 2011-10-26T19:57:18.280