Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
So can anyone tell me?

So tell me, for the average user - the Average Joe, what real, simple, non-learning-curve advantages would I have gotten with ZFS that represent something significantly better than the current system?

I understand RAID features are one example (I hope not the only one), but frankly the average user is hardly going to touch that (part of the reason the RAID bug in SL went virtually unnoticed.) Plus, the ability to disconnect exernal drives at will (if we're talking about a large, multi-drive setup - fairly unlikely for the average user anyway) is still pretty important.
 
So can anyone tell me?

Extensible disk space. You can simply extend the amount of storage available in a file volume by inserting an extra disc, yet your existing data remains intact. Likewise you could also extend space in an array by simply removing and replacing a drive with a larger one. This would be very useful with home media centre servers, or anything else that needs lots of storage to function.

When I last tried ZFS you needed some command-line magic to get all of this to work, but I presume Apple could have eventually fixed all of this once the underlying code was stable.
 
In fact, WHS doesn't provide any special support for hot-swapping. To remove a drive, you go to the WHS console, tell it which drive to remove, wait for it to copy the data to another drive and then you can physically remove the drive.

If all your shares are replicated, you can just yank the drive. (Essentially the same as a disk failure.)


When I last tried ZFS you needed some command-line magic to get all of this to work, but I presume Apple could have eventually fixed all of this once the underlying code was stable.

For WHS, you need to add a new drive through the GUI. This was deliberately made a manual operation - there might be times when you don't want the system to automatically reformat a drive! The WHS system will not reformat the drive unless the human OKs the action.

For enterprise arrays, which may have hundreds of drives per cabinet, typically when a drive is replaced it is automatically formatted and the array rebuilds.

Whether you call it "hot swap" or "hot plug", the ability to grow storage by adding a drive (or replacing a drive with a larger one) while the system is online and serving data is useful. That's "extensible disk space" as JQW said.
 
How so? The key is abstraction.

Look at the QT framework its cross-platform. The the appropriate calls are mapped to the target OS. Recall YellowBox (Cocoa on Windows) http://www.scribd.com/doc/13976974/Apples-New-Development-Platform-CodeNamed-Yellow-Box

Consider the accelerate frameworks in Cocoa, with it Altivec and SSE instructions can be written in a generic way and the appropriate instructions are called depending on platform.

In other words all that is needed is abstraction and mappings to FreeBSD system calls.

XNU/Mach can be virtualized under the FreeBSD kernel in the meantime to run current apps. Take for example the L4/Darbat project: http://ertos.nicta.com.au/software/darbat/


Backdraft is flat out wrong regarding Porting Cocoa, Quartz, Display PDF and the rest to FreeBSD.

Quartz alone is roughly 10 million lines of code.
 
Since when have you cared for the "average joe"?

Always. I am one myself.


Extensible disk space. You can simply extend the amount of storage available in a file volume by inserting an extra disc, yet your existing data remains intact. Likewise you could also extend space in an array by simply removing and replacing a drive with a larger one. This would be very useful with home media centre servers, or anything else that needs lots of storage to function.

When I last tried ZFS you needed some command-line magic to get all of this to work, but I presume Apple could have eventually fixed all of this once the underlying code was stable.

Thank you. That does sound interesting!
 
So can anyone tell me?

Imagine you have Mac Pro... with a single 500GB hard drive. You see it on your OS X desktop as "Macintosh HD". Like a lot of people, lets assume you run out of space.

So you buy another 500GB disk. It becomes, say, "Macintosh HD 2"... another icon on your desktop. You run out of space a second time.

So you buy a third 500GB disk. It becomes, "Macintosh HD 3"... yet another icon on your desktop!

So you buy a forth 500GB disk. It becomes, "Macintosh HD 4"... and so on.

As well as a messy desktop....Lets say you have a 1TB final cut pro project... you're screwed in this case, because it wont fit on any of your 500GB disks even though you have 2TB of space in total.

While "joining" lots of disks together into what appears to be a single disk is old hat... you'd have to start a fresh each time you want to add a new disk by deleting all your stuff and reinstalling OS X... and use software RAID 0 striping to make two 500GB disks into 1TB or create a bunch of disks which span.

But ZFS changes this... if you started off with a single 500GB disk in a zpool, you can just add each extra disk you buy into the same pool without the need to reformat. Your original "Macintosh HD" would simply go from 500GB to 1000GB to 1500GB to 2000GB each time you added a new one. No need to do anything. Super easy and convenient.

You might say that you dont have a Mac Pro... but even with a single-hard drive Mac you could still add external USB disks to the pool (even though its probably not recommended).

The nature of ZFS means that you could continue adding disks in this way almost indefinitely as it supports massively large volumes which are so big you cant really reach the limits (its 128bit) making it ideal for servers. The file system also provides continuous integrity checking and automatic repair... which is why people say it can "fix itself" if something goes wrong. It should be impossible to lose any data through file corruption, even if your system experienced a huge power failure while reading/writing to the volume.
 
[*] You can already do this trivially with a second disk or partition. Average users can do it through System Preferences. ZFS might make it more elegant and efficient, but it doesn't add a feature that we're currently missing.
That's a really silly argument. Pen and paper worked fine for centuries and yet we have computers that improve about each 6 to 12 months. Technology itself is about improving stuff, making it better. Yes it's nice there are alternatives but that doesn't mean they can't or shouldn't be improved. That's what having a new FS like ZFS is all about. It doesn't add a lot of new features but it does improve a lot of features as well as add some new ones. If Apple is able to do that with some mew HFS+ than that's just fine.

[*] hmmm... "Often I don't notice?" My question was how often is this happening. Are you saying that I currently experience data corruption "often" that would be prevented by a checksumming file system, but I just don't notice it for some reason? I'd like to see some research on that because, as you say, I haven't noticed it and I do tend to use the data on my hard drive quite a bit.
Any dataloss is a big big big issue since a lot of people tend not to make any backups. Yes, we do have Time Machine but still there are some people use not making use of it. It would also be great to know if I need to have my drive checked as the filesystem detected and corrected some errors. If I want to know right now if things fail or not I have to open up Console and check the logs, I have to run Disk Utility or fsck and have it check for errors manually. Disk Utility can sometimes find problems you don't know about and which it can't fix. On several occasions I had to resort to DiskWarrior to have it fix the drive. It would be great if something would detect and attempt to fix it automatically and notify me so I can do something with it (have it serviced, replace the drive). Just like objc already explained. If ZFS is the solution to this (which it partly is, the dialog objc is talking about is the OS X/Disk Utility implementation, the feature itself is a ZFS thing) than that's fine, but if Apple manages to get this in HFS+ than that's just fine too.

By far the most common cause of data loss among users (i.e. not data centers) is physical hard drive failure. Checksumming won't help you with that -- you'll need a backup or an appropriate form of RAID. You say "why take the risk and lose a x TB filesystem?". You need to quantify a risk before you can judge the effectiveness and justify the costs of a mitigation.
You can corrupt filesystems and do other nasty things to hdd's like a power out (not everyone uses an UPS). In those cases it is nice to have something check its consistency and fix whatever needs fixing. Unfortunately HFS+ is bad at this. Disk Utility and fsck have problems fixing some index problems. Strange thing is that DiskWarrior is able to fix the problems but it can be at a cost (you can lose some data which is better than all data).

In case of dataloss I disagree that it's about how many users it would affect and how many times it can occur. Dataloss is always a big problem even if you have backups. If there is an easy way of preventing/detecting dataloss than that would be a great feature anyway.

Well that is indisputably cool. But as someone who manages ZFS volumes on the fly from the command line, by definition you're in a pretty small minority among all PC users, Mac or otherwise.
If something like Disk Utility would support ZFS than it wouldn't be much of a hassle any more. You could just drag new drives to the ZFS pool. The problem in this case is the lack of GUI's to make it easy for the user. In this case it's more like a chicken - egg problem.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.