unRAID But Not Unprotected
One of the things I like best about this job is discovering hand crafted software that elegantly solves the problem its designer had in mind while putting a new twist on familiar technology. Looking for a reliable and yet expandable place to store the media for his home theater PCs Lime Technology's Tom Mortensen came up with unRAID; which lets users build parity protected data stores from drives of different sizes and add capacity on the fly.
January 7, 2010
![Network Computing logo Network Computing logo](https://eu-images.contentstack.com/v3/assets/bltde8121fc52c5c8f3/blt3f3d0318f746b1c2/65a530e4187606040a1d8b8c/placeholder.png?width=1280&auto=webp&quality=95&format=jpg&disable=upscale)
One of the things I like best about this job is discovering hand-crafted software that elegantly solves the problem its designer had in mind, while putting a new twist on familiar technology. Looking for a reliable and yet expandable place to store the media for his home theatre PCs, Lime Technology's Tom Mortensen came up with unRAID, an innovation that lets users build parity-protected data stores from drives of different sizes and add capacity on the fly.
Like a RAID-4 array, an unRAID is made up of a group of data drives and a dedicated parity drive. Rather than stripe data across the data drives as a RAID-4 array would, unRAID writes an independent RFS file system to each data drive. When you save a file to the system, it's stored in one data disk's file system. unRAID updates the corresponding blocks on the parity disk to reflect the new data. As long as the parity disk is as large as or larger than all the other drives, unRAID can use all the space on all its data drives for user files.
To minimize the number of I/Os for each write, unRAID calculates the new parity from the old parity, the new data and the old data, so the parity calculation takes four I/Os for any set of data drives. Calculating parity from all the data drives could take several times that many on a large array. It also means an unRAID system only needs to spin up one data drive to play a movie and just two, the data drive that's being written to and the parity drive, to store data.
UnRAID's user shares create a CIFS share that exists on multiple data drives. Each file is stored on a single drive based on one of several available load balancing or spanning policies. A side effect of not striping data, although one much loved by unRAID's users, is that in the event of multiple drive failures the files stored on the other data drives are still available. This means that you can still watch seasons 1-24 of Dr. Who when the drive with the last few seasons crashes.
Not striping data does limit unRAID's performance, but you should remember that unRAID isn't supposed to be a general purpose replacement for standard RAID based NASes. It just has to be fast enough to deliver an HD video stream to a HTPC (Home Theater PC) and save data as fast as a Blu-Ray drive can rip it. Read performance is limited to the speed of a single drive and writes are normally somewhat slower. Users can dedicate a cache drive to hold new data until a scheduled process copies it to the unRAID. With a cache disk write performance is about that of the cache drive.All three unRAID editions boot from a USB flash disk and run entirely in as little as 512MB of memory. The free, basic version supports up to three data drives, the $69 Plus edition raises support to six drives, and $119 buys the Pro edition that can support up to 22 drives (20 data plus one each parity and data) and use Active Directory for authentication. Lime Technologies even sells 15 bay NAS systems, using Celeron or Core 2 processors and a "Best of Newegg" parts list including SATA hot swap trays for $1200-$1400. An active user community supplies scripts and add-ons for things like running a web server on the Linux based unRAID system or recalculating parity on a scheduled basis.
unRAID will become even more interesting when Line Technologies adds P&Q double parity and the ability to create multiple unRAIDs in a single appliance down the road. While I wouldn't use unRAID in a corporate environment or recommend they add iSCSI support, it seems to be a clever solution to the problem of storing large media files.
About the Author
You May Also Like
Maximizing cloud potential: Building and operating an effective Cloud Center of Excellence (CCoE)
September 10, 2024Radical Automation of ITSM
September 19, 2024Maximizing Manufacturing Efficiency with Real-Time Production Monitoring
September 25, 2024