Originally Posted by cybrsage
does anyone know the functional differences between the two?
I don't have either yet. But I've just finished gathering all the hardware for my server build, and I'm about to use a combination of WHS and FlexRAID. I can't profess to completely understand the inner workings and all the differences, but generally speaking, there are two significant operational differences, as I understand it:
1) unRAID essentially
the operating system. It's a customized Linux build, which is installed on a usb flash drive. The entire machine becomes a file server using RAID redundancy. FlexRAID can be considered more of a program installed on a PC (already running Windows, Linux, etc).
2) unRAID is a more typical RAID setup which builds parity on the fly. The current version of FlexRAID is considered "snapshot" RAID, in that it only runs when invoked, either manually, or by schedule (I believe most people have it running nightly).
In my opinion, for my needs, FlexRAID has the definite advantage on item 1. There are other things I'd like to have a server do besides file serving, and I'd rather not have two machines running 24x7. Since FlexRAID is just a program running on a PC, it does not care about what other things you may also have that machine doing. To the best of my knowledge, an unRAID box pretty much needs to do just that. I never did investigate the feasibility of putting unRAID on some type of virtualized server though, but even if
that can be done, that comes with its own set of challenges.
On item 2, most people don't like the "non-live" aspect of FlexRAID. If you write data to a FlexRAID server, and don't manually invoke an rsync (parity build), then a hard drive failure between the time you wrote the data and the next automatic (scheduled) rsync could mean data loss up to the amount of data that you wrote since the last rsync. unRAID is calculating parity data live every time you write data. FlexRAID supposedly has a live version in the works, as well as a NAS version. But the current version is "snapshot".
That was almost a deal breaker for me, until I thought more about it. The most significant amount of data going on the server will be movie back-ups. If I back up a movie, forget to run rsync, and a drive failure occurs before the nightly rsync, it's not like I don't have the discs any more. The vast majority of data is still protected. At most, you should only lose data up to the amount that was written since the last rsync. Some people narrow their window of risk by scheduling rsync more often (like hourly). Another factor is that since you can run it in conjunction with WHS, WHS has it's own mirroring function built in. With WHS, you can pick and choose what data you want mirrored, and with FlexRAID you can pick and choose what data you want RAID'd. So the recommended practice is to have small frequently changed files protected by WHS mirroring, and large infrequently changed data protected by FlexRAID. And if you write a big chunk of data, just invoke an rsync.
Although I haven't seen any discussion on this, to me, it seems there would be a hidden advantage to "snapshot" RAID: it is completely transparent as far as data transfers go. Since unRAID is having to calculate parity and write to two disks for every single write, CPU cycles are being taken, and writes will be slower (as well as reads while another write is happening). Although I believe the vast majority of users are happy and get good performance, you do see the occasional "stuttering" post, so I can't help but think that the extra layer between you and the disks can sometimes introduce an additional variable that may have to be troubleshooted. FlexRAID operates more like a back-up program... while it's not running, it's just you reading/writing to the disks like normal.
One other advantage to the FlexRAID setup is that it's not restricted to protecting data on entire disks on the server. You can also include disks (or just specific folders) from other machines, as long as they are powered up when the rsync runs.
Someone may have to correct me on some of my points, but that is my understanding of the significant differences, as well as my thought process that led me to the direction I'm heading. Oh, and FlexRAID is free.