Monday, November 21, 2005

ZFS emerges from the vapor

The last few stragglers of Solaris 10 are finally making their way out the door, and look none the worse for their lateness. ZFS seems extremely promising from an administrability point of view; getting rid of LVMs, if it accomplished nothing else, would be a huge usability win, and greatly increase the appeal of pooled storage systems. Clicking around the links Bryan has posted above, I saw some promising things, but a few things struck me as odd.

For instance, Bill Moore shares an anecdote about a large performance win over UFS. The artificial benchmark in question flooded the system's block I/O layer with write requests, so the handfuls of reads lying around to, e.g., page in the root shell so the sysadmin can figure out what the hell just happened take seconds and minutes to complete, and the system is generally ground to dust. How does "ZFS" improve on this? Well, it observes that writes are bufferable, while reads are blocking, and so prioritizes reads over writes. It is therefore much more able to survive storms of write requests. Nice.

So, why am I putting "ZFS" in quotes above? Because it seems to me that any block I/O layer could perform the same optimization. Why is this, as Bryan claims, "a consequence of the end-to-end principle"? Couldn't I do the same thing with extfs in Minix?

Another entry that my virtualization-oriented bias leads me to see differently was some of Bart Smaalders' musings on the consequences of ZFS for the future of Solaris. One of the pieces of extremely clever engineering in ZFS surrounds its treatment of snapshots; they're easy to make, lightweight, first-class, not necessarily read-only, etc., so Bart envisions all sorts of consequences for system upgrades, partitioning, etc. What's interesting to me, as a virtualization dork, is that virtualization (v12n?) makes all of this possible for any file system, under any operating system, with a minuscule fraction of the five-year engineering effort required to create a marvel like ZFS. So, if you find yourself fantasizing about using these snaphost features of ZFS under Windows, consider running that Windows machine in a VMware virtual machine.

But, while it is perhaps lightly overhyped, I truly think ZFS rocks, and wish I could use it on my host right now. Maybe if Janus can follow ZFS out of the vapory mists, I'll make that threat a reality...


Post a Comment

<< Home