7 parts · 8 chapters

Storage Systems and File Systems

Where bytes actually live, and what it costs to make them durable. Measured on this course's Apple M3 Pro laptop: a 4 KB write into the page cache took 8 to 10 µs, write plus fsync about 50 µs, and write plus F_FULLFSYNC (a real flush through the drive's cache) about 3 ms, roughly 330 durable commits per second for one writer.

Seven parts: disks and SSD internals (flash pages, the FTL, write amplification); ext4 and XFS; btrfs and ZFS; journaling versus copy-on-write and what each promises after a crash; RAID and erasure coding; object storage internals (S3-style systems); and distributed file systems (GFS, HDFS, Ceph).

disks and SSD internals · ext4 and XFS · btrfs and ZFS · journaling and copy-on-write · RAID and erasure coding · object storage internals · distributed file systemssenior → staff · backend, database and infrastructure engineers
devicesFlash pages, erase blocks, the FTL, garbage collection.
durabilityWhat fsync means, measured, and group commit.
file systemsext4, XFS, btrfs, ZFS: journaling and copy-on-write.
redundancyRAID levels and erasure codes, with the arithmetic.
objectsHow S3-style stores place, protect and list objects.
distributedGFS, HDFS and Ceph: metadata and data paths.
Built on Kernel Internals and CUses Kernel Internals P4-P5 for the page cache and block layer; Postgres and NoSQL courses use the durability results.