Best storage strategies for the multimedia PC

Best storage strategies for the multimedia PC

Summary: This information is also available as a TechRepublic PDF download. The modern PC has become the storage and entertainment hub of the home for many consumers and some people are gobbling up terabytes of data per year storing their DVD library, downloads, TV episodes, and other "stuff" that Seagate's CEO so candidly admits he's helping you I mean someone you know store.

SHARE:

This information is also available as a TechRepublic PDF download

The modern PC has become the storage and entertainment hub of the home for many consumers and some people are gobbling up terabytes of data per year storing their DVD library, downloads, TV episodes, and other "stuff" that Seagate's CEO so candidly admits he's helping you I mean someone you know store. While this has changed the way we consume media for the better, it's created a huge dilemma of how we go about storing all that stuff efficiently AND reliably.

The computer storage industry is peddling a dumbed down form of storage to consumers that causes them to give up half their capacity with mirroring technology such as RAID-1 and RAID-10. Other cheap RAID devices that use striping technology such as RAID-0 puts the user's data at severe risk because a single disk failure kills the entire volume. The most practical solution such as RAID-5 is unfortunately often overlooked because RAID-5 controllers cost a little more to integrate. But if you buy the right gear and you know the pros and cons of each RAID technology, you won't need to spend a lot of money and still get the best solution.

On a side note, my colleague Robin Harris has been on a misplaced vendetta against RAID storage in which he believes RAID doesn't solve *his* problem. While Robin is right that RAID doesn't solve *his* problem of reliable backup and disaster recovery, RAID was never meant to solve the backup problem and it's a solution to an entirely different problem that Robin Harris may not care about but others do. What I and many other consumers need is to be able to store all that video content in a cheap and reliable manner. This content doesn't really need to be backed up and mirrored off-site because it's impractical to mirror terabytes of data and because the data is replaceable. Things like your personal photos and documents which can't ever be replaced should absolutely be using practical off-site strategies.

If you just shoved six large 750GB hard drives in to your computer, you end up with a management nightmare because you have at least six independent volumes to manage. While six independent drives is very flexible and in some cases better performing when you're doing multiple copy tasks at the same time, it's simply too much to manage and I've lost track of files because I'll accidentally forget to back it up and accidentally deleted what I thought was a replica. To solve the storage dilemma for the user that needs terabytes of storage, one of the most practical solutions on the market in terms of performance and price is the Intel ICH RAID controller built in to modern Intel chipset motherboards like the 965 and the latest 3-Series chipset. I reviewed 965 ICH8R here where it showed performance rivaling dedicated RAID controllers that cost hundreds of dollars. The latest ICH9R which is built in to the Intel 3-Series chipset improves upon its ICH8R predecessor by allowing you to use up to 6 drives in a single RAID-5 array.

<Next page - Intel's ICH9R RAID controller>

Intel's ICH9R RAID controller

Doing RAID-5 with the Intel ICH9R on-board controller means you get to combine up to 6 hard drives in to a single drive that performs like a champ, has the aggregate capacity of 5 drives, and only loses the capacity-equivalent of 1 hard drive to gain fault tolerance. Should any one of the 6 drives fail, no data will be lost and all you need to do is replace the failed drive with a new one. But one word of caution here, should you fail to immediately replace the failed drive and a second drive fails, you will lose the entire multi-terabyte RAID-5 array. It's like having 6 survivors in the ocean tethered to each other and one of the survivors passed out for a minute and the other 5 keep him from drowning before he wakes up. The strategy has its risks where if a second survivor passes out before the first one wakes up then they all drown but it's statistically unlikely to happen. If you turn off the system and immediately go out and buy a replacement drive, the risk of losing any data is minimal.

There's a better technology called RAID-6 which allows up to two simultaneous failures within an array but RAID-6 controllers are expensive and you lose two drives to redundancy so it's cost prohibitive for most home users. If you could build a 12-drive RAID-6 volume and only lose 2 drives worth of capacity, that would be the ideal survival strategy but most consumers will have to wait until RAID-6 becomes more commoditized and less expensive. Currently, a 12-port RAID-6 capable controller costs around $500 and the ICH9R on-board RAID on Intel-chipset motherboards is essentially free. ICH9R only supports six drives and RAID-5 though there is the possibility of using SATA expanders to support a multiple of six drives and maybe Intel can provide a software/firmware update to support RAID-6.

On the Intel ICH RAID controllers, you can mix the order of the drives in an array which means it's easy to replace the motherboard or upgrade to a newer Intel ICH RAID motherboard. You can just reconnect the drives in any order and the RAID array will automatically mount with the correct settings. However, Intel's ICH RAID controllers are not without fault and one of the most glaring weaknesses is that it lacks a beaconing feature that tells you which drive failed. That means when a drive does fail, the software will tell you the drive number but it won't light up the LED on the drive which means there is a possibility you'll pull the wrong drive and corrupt the array.

Furthermore, the labeling on the motherboard for the port numbers are wrong on a motherboard like the Intel DG965WH ICH8R-based motherboard though I don't know if otherboards have this kind of mislabling. I had to painstakingly track down what the correct port numbers are and I matched it up to the slot number on my hot-swap tray so that the drives are neatly stacked from port 1 to 5. The safest way to replace a failed drive is to shutdown and replace the drive you believe is the bad one. If it turns out you replaced the wrong drive then the array won't mount and you get another shot at figuring out where the failed drive is so there's less chance of corrupting the array. There's no reason Intel can't upgrade their software to simply spit out a fake disk busy message over the SATA port which will light up the disk activity LED to always on so you know which disk to pull. I've requested this feature from Intel months ago but I have not gotten a response.

<Next page - Optimum RAID configurations>

Optimum RAID configurations

So if you were building a new computer with terabytes of storage, how should you configure the array using Intel's built-in ICH9R RAID controller? Do you make one massive RAID-5 array using all six drives and mix your OS (Operating System) and data on the same logical volume or do you leave your OS on a separate drive outside of the RAID array used for data? There are a few possibilities but here's why you should consider having them separate. The OS has a tendency to read and write temporary data from the drive it's stored on from time to time which keeps the drive from spinning down in to power save mode. If the OS is located on the massive RAID volume, it won't ever spin down.

A typical hard drive consumes about 8 watts in idle and five drives in a RAID array consumes a minimum of 40 watts. That means your PC will idle at 100 watts instead of 60 watts on a modern efficient computer. By using port 0 for the OS on an internal hard drive and leaving ports 1-5 for the 5 port hot-swap SATA module, you can allow the RAID volume to spin down and conserve 40 watts of power which works out to about $35/year if your computer is always on if you're paying 10 cents per kilowatt*hour. You also need to factor in the extra heat generated from the drives which means you may have to spend another $35/year on air-conditioning. To put this in context, even a new refrigerator averages around 57 watts 24 hours a day. Whether you care about being green or not, saving green bills in your wallet is always a good thing.

One solution is to use the first drive for OS, Applications, and Temporary storage shown in the diagram below.

One other issue to think about is that BitTorrent downloads may run for hours or days and the files come in all fragmented. Since you only need about 100 GB for OS and Application storage, you have 650 GBs of open space on your OS drive if you're using 750 GB hard drives which have recently dropped to 25 cents per gigabyte. You can use that 650 GB drive as a temporary dumping ground so that the RAID volume can rest. BitTorrent downloads also tend to dump data in a highly fragmented manner since bits and pieces are coming in randomly. By dumping it in to the spare partition on the OS drive and then moving it to the RAID volume when you've verified the download is good, the file is written in a sequential non-fragmented manner and it keeps your data volume clean.

Another use for the 650 GB extra partition is that you can use it to store extra copies of critical data like photos and personal documents stored on the main RAID array. Again that does not mean you don't need off-line and off-site backup and I always tell people to burn their photos on to multiple DVDs and share it with their family. Not only does that allow family to enjoy each other's photographs, it also ensures off-site disaster recovery if one of the homes were to burn down.

If you're ok with only 4 drives in your massive RAID array, you can use 2 SATA RAID ports in a hybrid RAID1/RAID0 array for the OS/Temporary drive. A 150 GB RAID-1 mirror will give your OS volume an extra boost in I/O performance as well as fault-tolerance. The remaining 650 GBs of space can be merged in to a massive RAID-0 1200 GB temporary drive with massive capacity and throughput. Loading your game applications from the RAID-0 volume or RAID-5 data volume will mean that they load large maps much faster. The following diagram shows what this configuration looks like.

One other possibility is that many of the Intel 3-series chipset motherboards like the Gigabyte GA-P35-DS3R ($137 with shipping) often have two extra SATA ports in addition to the six SATA RAID-capable you get from the Intel ICH9R controller. You can use one extra port for the SATA optical drive and the other for the OS and you can use all six RAID ports for a massive RAID array. Here's what this final option looks like.

Topics: Operating Systems, CXO, Hardware, Intel, Storage

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

101 comments
Log in or register to join the discussion
  • Can FreeBSD or Linux use ICH Raid?

    I?m looking at building a NAS server for my video surveillance DVR at work. (need lots of storage) I am looking at rack mount cases and boards for this, my question is does the Intel ICH RAID only work under windows? I was looking at freenas.org for the server os, can freeBSD and/or Linux use the intel raid? Basically does the raid happen at the hardware and bios level or is it a software raid controller like on some other "raid" boards?

    Thanks for any input on this,
    Gary V.
    coppertop27
    • Don't think Matrix software works for Linux or BSD

      Don't think Matrix software works for Linux or BSD. You'd have to use Linux or BSD software RAID.
      georgeou
      • The Matrix .. fully loaded with BS!

        "Intel Matrix Storage Technology" is a Windows-only GUI to do RAID setup and backups and other data management stuff for the RAID controller. The chipset itself can be run by Linux using Linux drivers, and the RAID array can be managed by other utilities. It's just a marketing name for what is really RAID and RAID management utilities. But it sounds really cool, and convinces some people that it's new and exciting and obviously great stuff. It convinced you, didn't it?
        Tsu Dho Nimh
        • Don't be so shallow

          I don't even run the Matrix Storage Utility and I'm well aware it can all be set up from the pre-boot setup. I'm referring to the functionality that the Matrix utility brings.

          The problem is that some Linux users have told me in the past that the RAID functionality doesn't work and you have to use software-RAID managers in Linux (which isn't too bad). When you activate the RAID functionality in the motherboard from the BIOS, you need an entirely different set of drivers than if you have BIOS RAID disabled. From what I understand, Linux supports the non-RAID drivers for ICH.
          georgeou
          • What Functionaliyt?

            "I'm referring to the functionality that the Matrix utility brings."

            What functionality? The ICH cards are not hardware RAID either. It is software RAID, provided by the BIOS on the card. You have to do a "F6" setup and make sure the mobo is set right even under Windows.
            Tsu Dho Nimh
          • No you don't need to do F6 for Vista or Windows 2008

            No you don't need to do F6 for Vista or Windows 2008. You need F6 for any RAID or non-RAID storage controller that Windows doesn't already have drivers for. This is how it is in Win2000, Win2003, XP. Almost all storage controllers that are outside the norm of a regular IDE controller needed F6 drivers for older versions of Windows because the drivers weren't done when those versions of Windows were made.
            georgeou
          • So, is SW good or bad? You can't have it both ways!

            You say, as if it is a bad thing, "you have to use software-RAID managers in Linux" BUT ... in another post, you say,"ICH8R and ICH9R are firmware and software based" as if it's a good thing.

            So ... what is the good stuff about the Matrix Storage Technology(TM)" besides the cool name and the marketing? It's just a GUI front end to an unfriendly BIOS setup.
            Tsu Dho Nimh
          • Software RAID is fine, but you usually can't boot from it

            Software RAID is fine, but you usually can't boot from it.

            Linux (or any good software RAID solution) outperform many hardware RAID controllers (not the good ones) because those controllers have limited performance chips on board whereas software can leverage the powerful CPU. Intel's embedded RAID solution also uses the CPU to do the work even when you're using firmware RAID mode so it works as fast as Linux and uses the same amount of CPU utilization but it supports booting from RAID. The Matrix drivers just give you a way managing the RAID from a nice GUI in Windows and it gives you alerts on failed hardware but it's not needed for the RAID to work.

            So in this sense there really isn?t much difference between using Linux software RAID and Windows Intel Matrix drivers. That's why I said Linux RAID wasn't "so bad". Maybe I should have said it "wasn't bad at all, in fact pretty good". There's also a Linux storage appliance company that only uses software RAID.
            georgeou
    • Intel drivers

      The Intel Storage Solutions group does both Linux and Microsoft drivers. The Linux drivers are fully GPL, and team meetings can get a bit stressed because the (much smaller) Linux driver team have a history of completing their drivers before the MS team gets fully started.
      Yagotta B. Kidding
      • But there are two modes in the driver, nonRAID and RAID

        But there are two modes in the driver, nonRAID and RAID. I could have heard wrong but someone told me that only the nonRAID mode works.
        georgeou
    • ZFS on FreeBSD 7

      Set your storage system up with FreeBSD 7 and use ZFS (quick link: http://wiki.freebsd.org/ZFSQuickStartGuide). ZFS supports RAID 0,1,5, and 6-- although they call it RAIDZ (technically different from RAID but practically the same).

      With a decent processor, memory, and drives (matching George's recommendations, more or less), you'll get excellent performance as well as reliability. ZFS brings with it many other reliability features (journaling and snapshots to name a few).

      Here is a blog I found with some performance figures (YMMV):
      http://milek.blogspot.com/2007/04/hw-raid-vs-zfs-software-raid-part-iii.html
      RestonTechAlec
      • Almost forgot...

        Run Samba on the server, connect your PCs and Macs (and *nix boxes, Slimp3, etc). Tip I figured out for best performance with Samba and iTunes (include this in the [global] section of smb.conf):

        [pre]
        socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
        oplocks = no
        large readwrite = no
        [/pre]
        RestonTechAlec
      • Hardware controller/motherboard required?

        Sounds like a great use for an older pc at home... turn it into a huge NAS for just
        the cost of the drives.

        Just to be sure I'm clear... software raid (like zfs on bsd) does not require any
        special hardware controller or Intel chipset, right?

        Also, when that older pc dies, it it difficult to get the raid array working again on
        another system? (Maybe it's easier w/ software raid, since it doesn't depend on a
        special chipset on the motherboard?)

        Thanks for any info...
        pointzerotwo1
        • Software RAID

          Software RAID does not require any special hardware (although for most uses of RAID you want to use the same size hard drives). I would recommend against PATA so you don't have to deal with the master/slave jumpers-- but I have an old FreeBSD 5.0 RAID1 volume on PATA drives I am connected to right now (with an uptime of over 700 days!). As time permits, I will be moving the data (not the physical drives) to a FreeBSD 7 system with a ZFS array. Depending on my budget, I will use either 1 or 2 redundant drives (corresponding to RAID5 or RAID6, respectively).

          My experience with moving drives to new computers has been with FreeBSD and vinum (which is being phased out in favor of ZFS and geom, from what I can tell). I have moved both mirrors and RAID5 systems to new servers. From what I recall, vinum found the configuration on the drives and I did not have to do anything. It is conceivable that with a radically different setup the device names might change and some minor editing in the vinum configuration might be necessary. My best guess is that this is similar with geom mirrors and ZFS arrays.

          Drives used in a hardware RAID usually won't work on other RAID hardware, but YMMV.
          RestonTechAlec
  • RAID: Good in concept, but controllers are often poor

    Had some RAID troubles myself: At first, the concept sounded wonderful, and I used it for a time.

    Then the RAID controller failed. Turns out RAID isn't as redundant as I thought, since the controller is a single point of failure.

    Not to mention for some strange reason they insist on using a proprietary drive format with some extra data on it which means the OS won't see it unless it's attached to the controller. I had to use some recovery software to restore my data when the controller failed.

    RAID is great in concept - but poor in execution. I've done some looking around, and it appears I'm not the only person who has had a controller fail. So much for RAID :(.
    CobraA1
    • You can replace the Intel motherboard and RAID automounts

      You can replace the Intel motherboard and RAID automounts. You're allowed to change to a newer ICH version like going from ICH8R to ICH9R and you can reattach the hard drives in any order and it will automatically detect and mount.
      georgeou
      • Motherboard replacement? Sounds painful.

        Motherboard replacement? That's pretty painful.

        I'm still waiting until I have the money to replace my current motherboard. Replacing my current motherboard means replacing my RAM and my CPU. Not to mention Windows will probably need to be re-activated.

        The motherboard is the heart of the computer. Replacing it is non-trivial and often painful.
        CobraA1
        • You completely missed the point

          I was saying that even if you had a dead motherboard or you wanted to upgrade the motherboard and migrate your RAID, it was very simple to do because you can plug the drives in any order and the RAID will automatically mount.

          It's probably storing the RAID configuration data on the disks though I wish this would be standardized among RAID controllers. Then you can swap out ANY RAID controller whether it's hardware or software and it should always automount based on configuration data stored on the disk.
          georgeou
          • Yes, missed point entirely...

            I guess he hasn't learned that when Ou speaks people listen...and anyone who disagrees must be wrong. RAID is the greatest thing to happen to information storage since the pen and paper. If you had problems with RAID, they must have been your fault.
            jasonp9
    • hardware RAID = single point of failure

      The only hardware RAID I'm comfortable using is at work, where we use a standalone controllers, and have a few spare controller cards, in case one fails. A good (real) hardware controller card will give you the best performance, but I'm willing to take the (roughly 30%) hit in order to just use straight software RAID (under linux) at home, simply to avoid the woes associated with a dead controller. I have successfully migrated a 6-disk software RAID-5 across 3 motherboards, the first two going through a number of PATA add-on cards, then PATA->SATA adapters (as SATA drives were phased into the array), to finally having all onboard SATA controllers. The array has never hiccupped upon migration -- as soon as I got the kernel configured for the new hardware, it automatically reassembled the array properly, and away I went.
      So, short version of above: software RAID is the way to go if you're concerned with controller failure.
      jameslyden