Penyimpanan selalu memiliki musuh yang sama: disk yang berbohong, penulisan yang terpotong, dan kerusakan di tengah pembaruan. ZFS menjawabnya dengan segelintir gagasan, dan Uberblok, museum interaktif yang dibangun oleh seorang insinyur penyimpanan berpengalaman, memperlihatkannya satu ruangan demi satu, langsung dari kode yang mengimplementasikannya. Setiap animasi dipetakan ke baris kode Open ZFS zfs-2.4.4, dibekukan pada commit 71a9f9578616, dan setiap cuplikan kode tertaut kembali ke sumbernya. Penulisnya mengagumi ZFS sebagai karya rekayasa paling mengesankan di bidang ini, membangun proyek ini sebagai penghormatan sekaligus untuk memahami internalnya dengan lebih baik, dan menyambut koreksi dari pembaca yang lebih memahami kodenya.
Museum dibuka di Aula dengan uberblock, catatan kecil yang menamai akar dari seluruh pool. Catatan ini berisi nomor grup transaksi, ub_txg, dan pointer blok, ub_rootbp, yang menjadi jalan menuju setiap blok lainnya. Setiap disk memiliki empat label, masing-masing dengan cincin uberblock berukuran 128 KiB. Uberblock baru tidak pernah menimpa yang sebelumnya; ia menempati slot N mod jumlah slot. Saat impor, ZFS membaca setiap slot dan menyimpan uberblock yang valid dengan txg tertinggi.
Ruangan-ruangan berikutnya membahas sejarah proyek, pohon, dan bagaimana copy-on-write, checksum, serta self-healing menjaga konsistensi pool tanpa fsck, grup transaksi yang berpindah melalui status open, quiescing, dan syncing, serta hierarki vdev termasuk perangkat mirror, raidz, draid, log, cache, dan special. Museum ini juga menjelaskan RAID-Z, snapshot, ARC, metaslab, ZIL, dan send/receive, semuanya dengan diagram animasi.
Proyek ini tersedia di uberblok.storagebits.workers.dev dan kode sumbernya ada di GitHub, di algotitanhq/uberblok.
Sumber: Hacker News · Diringkas oleh HeadlinesBriefing