Show HN: Uberblok – an interactive museum of ZFS internals

uberblok.storagebits.workers.dev

69 points by storagebits 1 day ago

I've worked for a long time in the storage field during my career and ZFS is the piece of engineering I admire most in that space. I wanted a way to pay homage to it and to explore and better understand its internals. So I built Uberblok: a museum of ZFS. A deep dive into copy-on-write, txgs, vdevs, RAID-Z, snapshots, the ARC, metaslabs, the ZIL, send/receive with explanations and animated diagrams.

I'm sure people here know these internals better than I do, so corrections are very welcome.

I built it with my agent swarm organization, Algotitan.

I hope you'll enjoy the deep dive into Uberblok as much as I do.

Museum: https://uberblok.storagebits.workers.dev Repo: https://github.com/algotitanhq/uberblok

QuantumNomad_ 6 hours ago

I absolutely love ZFS. I use it on FreeBSD for all disks on the whole system, including the ones that FreeBSD itself is installed on, and I use it with some disks on Linux and with most of my external disks with macOS.

In an alternative universe, Mac OS X would have gotten ZFS shipped with the base install back in 2007, and presumably we’d then still have that to this day. In our universe that ended up not happening even though it was supposed to :/ https://mjtsai.com/blog/2025/04/28/revisiting-zfs-for-mac/

I really would have loved to have the whole of macOS running on ZFS. But at least using ZFS from homebrew on macOS to have ZFS on external disks is the next best thing after that, and which we do have.

  • storagebits 4 hours ago

    I forgot that Apple story, a great "what ifs". It's not in the history wing yet, thanks for the link, it might deserve its own panel!

drewg123 5 hours ago

I'd love ZFS a lot more if it weren't for the ARC. Using ARC means that ZFS caches stuff outside the kernel page cache. That in turn means that sendfile is no longer zero-copy when data originates on ZFS, making it a non-starter for content drives for our CDN workload.

  • ahofmann 5 hours ago

    Yes, but this is a Linux/licensing problem. Use one of the BSDs and the ARC doesn't fight with the system cache.

cbarrick 3 hours ago

Genuinely cool, but the LLM-speak started to wear on me.

An editing pass to make the prose less "punchy" would be great.

ghm2180 5 hours ago

One small suggestion: Make the code open to the right instead of a new window, that makes it easy to keep context without distraction.

  • storagebits 4 hours ago

    Good idea, thanks! A side panel is the way to go.

    • storagebits 1 hour ago

      Shipped, thanks to you: the copy-on-write room now opens its sources in a side panel. Your comment went from here to production in about four hours. Others rooms to come. The rendering is far better!

ashkankiani 4 hours ago

Building a museum when you self admit you don't understand the internals that well... seems like a conflicting goal? If you're showing off to educate then how can you do that if you don't understand it?

We know the answer, obviously. I can't trust how much of this was something an AI said vs something you actually did seriously look over. At the very least, all of the text on this should've been in your own words, I think. Otherwise this is just show and tell of some prompts.

I wish I could enjoy tech demos anymore, but now they feel so hollow. Which is a real loss from the age of LLMs. I used to enjoy reading the dolphin EMU progress report for years. I wonder what they're up to.

AyyEye 5 hours ago

> I built

You keep using those words. I don't think it means what you think it means.

  • storagebits 4 hours ago

    Fair hit. "Directed" is closer: agents wrote the code and most of the text, I chose the subject, steered and reviewed.

    • gspr 2 hours ago

      You were a manager, in other words.

unethical_ban 6 hours ago

As a mere operator, I've been fascinated by ZFS ever since I first heard of it 15+ years ago. It seems so elegant, like it really is the last generalist filesystem one would ever need. Performant, reliable, fundamentals easy to comprehend. I've never tried managing LVM configs because zpools and raidz are just so damned easy. Native encryption. Datasets can be as simple or as complicated as you need them to be. send/recv dataset syncing at the block level vs having to decrypt and sync files individually.

A lot of this goes over my head as someone who isn't familiar with filesystem internals, but I appreciate the effort and the homage to a great tool.

  • storagebits 6 hours ago

    Thanks, that's exactly the reader I'd like to reach, and you're not the first to say it goes over your head. Honestly, I'm still trying to figure out who it doesn't go over the head of. Matt Ahrens, maybe? ^^ Next is a "start here" route: one plain question per room, answered before any code. Copy-on-write and snapshots are probably the best rooms to start with today.

  • gspr 2 hours ago

    So many really brilliant people keep saying this, so I don't doubt that it's true. Can you explain to an ordinary user why ZFS isn't everywhere? It seems to be a marvel, yet ext4 lives on.

    • storagebits 2 hours ago

      I would say (in no particular order) that the CDDL license is not innocent, ext4 is good enough for many usages, cost ? ZFS is RAM hungry ... but ZFS is well present where it means most (NASes , Proxmox , backups to tell some)

    • unethical_ban 58 minutes ago

      Primarily licensing, IMO. Its license is incompatible with inclusion in the Linux kernel. Ubuntu ships with native support for it anyway; I guess they're not worried about legal issues. It's completely functional in Linux, you just have to take an extra step to install it, which is enough to keep it from mass non-techie adoption.

      Totally worth it for NAS. I think there are more systems that utilize its advanced dataset features in the BSD world.

  • yjftsjthsd-h 2 hours ago

    > Native encryption.

    I think maybe that's the one feature that's iffy? Theoretically great but bad history of bugs. (Unfortunately)

ghostly_s 4 hours ago

If you can't be bothered to copy edit the gratingly AI prose, I can't be bothered to read it.