Like most anything else, the two primary factors in what will work best for you is what functionality you want to have and how much you can/want to spend on it. At one end of the spectrum you have a basic appliance that will hold two or three drives for storage and can handle performing a few other tasks. At the other end there is server grade components with multiple dozens of drives that could easily be mistaken as part of a data center storage system. Before we talk about budget though lets come up with what the needs the system needs to fill and other requirements that we might want to be able to handle.
The biggest cost in a NAS server can easily be the hard drives that you put in it for storage space so determining the amount of storage we need should be first and foremost in coming up with requirements. This can be a bit tricky sometimes, but it’s usually better to play it safe and aim on the high side.
So go through and add up all the used space on all of you computers, external drives, thumb drives, flash cards, etc… and don’t forget any digital cameras or digital camcorders. Then add in the space taken up by pictures, music, and videos in all of your phones. Now double that number and add 20% more. This is a probably a pretty safe guess as to the amount of raw storage space for your NAS. This can still go up or down depending on if you have things you plan on storing that are unaccounted for in the current assessment or large files that won’t be moved to a NAS. For instance, maybe you plan on digitizing your movie collection and storing it on your NAS or only about half of a massive CD collection is converted to MP3s on your computer. On the other end, you could have large video game install files that need to stay put and are also a candidate for skipping as part of your backup. This should be a good starting guideline and one thing that we can take into consideration for our software is “Ease of Expandability”.
Now that we should have a handle on some storage requirements the next part moves into “everything else I want my server to do.” Here’s some ideas for other typical requirements that I tend to hear people want.
- Easy to upgrade or expand storage.
- Stream my media files to other computers or TVs in my home.
- Stream my media to a laptop, tablet, or phone while I’m away from the house.
- Keep my files intact in case one or more of the hard drives fail in my server.
- Automatically send offsite backups to a cloud provider or other remote server.
- Record and store TV shows using my antenna.
- Encrypt part or all of my files, disks or system.
- Perform some other tasks like automatically downloading files or host a small website.
The good thing is that, with only a few exceptions, most of the requirement people have fall into what I call a “Low Processor Need” meaning modern low end CPUs can easily handle those tasks and older low end CPUs can handle them as well as long as to many aren’t running at the same time. From that list I’d put encryption, over the air recording, or if you end up needing more than ~12 hard drives into a “Medium Processor Need” and any streaming that requires the computer to convert the files on the fly into a “High Processor Need.” Since ideally this server is running 24/7 you want to try and size the CPU as low as possible while still being powerful enough to meet your requirements.
Hopefully you have an overall budget with a maximum amount you’re willing to spend. Now what we do is split that budget into two parts, one that covers the storage and one that covers the rest of the hardware. Keeping your storage requirements in mind, you can go over to the hardware section and see how many hard drives you’ll need to meet your storage requirement by taking your requirement and dividing by the hard drive’s size and rounding up to the next whole drive. At this point you might need to see about either increasing your budget or paring down your storage or processor requirements.
In the next section I’ll about some hardware and options for buying a pre-built NAS or going the build your own route.