The ‘ZFS is too complex’ Argument
Jeff Harrell has a nice blog, The Shape of Days: Pretty darned close to perfection, and he has a nice love entry about Time Machine. One of the comments explains that Time Machine is bull and that Apple should have used ZFS instead. Something I completely agree with. Jeff then replies on that saying that ZFS is too complicated.
I seriously don’t buy that ‘ZFS is too complex’ argument. In the common case where there is for example one disk with one partition in a MacBook, ZFS is not any more complex than how disks are currently partitioned with HFS.
ZFS provides a LOT of cool stuff but you certainly don’t have to use it all. Sure, when you want to implement schemes like RAID with ZFS then things become more complicated, but the same is true in the current HFS situation. And a GUI can certainly hide all ‘scary’ ZFS details there. Just as is possible now. Fire up Disk Utility if you are that Pro user.
Anyway, back to the common case where there is one ZFS partition on an iMac or MacBook. Even there the advantages are huge: you get snapshots for FREE. Snapshots will provide exactly the same functionality as Time Machine, except that they are:
- CORE FUNCTIONALITY – Snapshots are not a hack like TM currently is.
- INSTANT – There is no need to wait until a snapshot is actually made.
- DON’T REQUIRE AN INITIAL BACKUP – ZFS Snapshots don’t let you wait hours to do the first initial backup. There IS no initial backup.
- DON’T REQUIRE AN EXTERNAL DISK – ZFS Snapshots work on a single partition. You don’t need an extra disk. Time machine is useless for people working on MacBooks. ZFS could turn that around.
- TAKE NO SPACE – Snapshots take virtually no space. Until you actually start changing files that are contained in a snapshot.
- CAN BE BROWSED – Just as in Time Machine you can browse your snapshots back in time, see what files changed, open old files, etc. No magic there.
Compare that to the current implementation of Time Machine. You can’t deny the advantages of ZFS.
I actually think Apple had planned to use ZFS for OS X 10.5 in general and to base Time Machine on it too. I also think that they completely underestimated the scope of the ZFS porting effort, and that they simply missed the Leopard release window.
Let’s hope they turn it around in a later release.