Choosing a Hard Drive or SSD
What, Exactly, is a Hard Drive?
The part of a computer commonly called a hard drive is the component that stores data semi-permanently (that is, until you or a program tell the computer to delete that data).
Technically speaking, only a conventional HDD (Hard Disk Drive) with spinning disks can properly be called a "hard drive." The newer SSD's (Solid State Drives) technically are not hard drives; but because they serve the same purpose, they're commonly referred to as "SSD hard drives." Most operating systems also see them as hard drives and label them that way. I suppose at some point that will change.
Unlike RAM, the hard drive or SSD is a semi-permanent storage device. It is non-volatile, in geek terms. That means it continues to hold data even when the power to the drive is turned off (or even if the drive is removed from the computer). That's why you can turn your computer off at night and turn it back on in the morning, and all your data will still be there.
A properly functioning hard drive or SSD will retain data until the user or a program instructs it to delete or modify that data. This is why it's important to securely erase the data on a drive before discarding it. In fact, a cottage industry exists that specializes in destroying the data on drives so they can safely be disposed of.
System RAM, on the other hand, is volatile, which means that once the power is removed from the RAM, the data that was on the RAM disappears.
Types of Hard Drives
Conventional Hard Disk Drives (HDD's)
A conventional hard disk drive (sometimes called a "mechanical" hard drive or an HDD nowadays) is a stack of magnetic disks that spin at very high rates of speed (7200 RPM for a modern EIDE or SATA drive, and 10,000 RPM for a SCSI drive) that are used to store your computer's data.
The disks are enclosed in a protective casing that also contains the drive motor, servos, actuator arms, read/write heads, and the logic circuitry necessary to interface with the system and read from and write to the magnetic disks. Hard drives also contain their own ROM, RAM cache, and controller circuitry.
Conventional hard drives have some disadvantages. They are sensitive to physical shock, vibration, magnetic fields, and orientation (in general, they should be mounted either horizontally or vertically -- not anywhere in between). Because of the gyroscopic effect of the spinning disks, moving them while they are spinning is a very bad idea. They also consume a lot of power and generate a considerable amount of heat. Many people use hard drive coolers to cool them down a bit.
Hard disk drives do have one advantage over SSD's, however, and that is that HDD's don't have a lifespan defined by a specific number of read/write cycles. SSD's do. That's one reason why HDD's are still used in some systems that are constantly writing to the drive, such as video surveillance systems. In applications where the drive is constantly being written to, HDD's may last considerably longer than SSD's.
Solid-State (SSD) Hard Drives
A newer type of hard drive that's becoming enormously popular is called a Solid State Drive, or SSD.
SSD's have no disks, heads, actuators, or other moving parts. They store data on microchips utilizing NAND-based flash memory, which is the same technology used for USB drives and memory cards for cameras and other devices.
Because SSD drives use the same interface as mechanical drives, an HDD drive can be directly replaced by an SSD. Most SSD's come with cloning software to do just that.
SSD drives have many advantages over conventional drives. SSD drives are less sensitive to vibration, make no noise, consume less power, generate a bit less heat, never need defragmentation (in fact, it's strongly recommended against), need no time to "spin up," and may be mounted in any orientation.
The biggest advantage SSD's have over HDD's is that SSD's are much faster. My Windows 10 Professional workstation cold boots in about 10 seconds. My Fedora (Linux) laptop cold boots in about six seconds. Large programs load in seconds rather than minutes, and virus scans take barely enough time for me to get a cup of coffee.
On the down side, SSD's have a lifespan limited by the total number of read / write cycles. That lifespan is getting longer: Most better SSD's now come with warranties of five years or longer, so your computer will probably become obsolete before the SSD wears out. Nonetheless, many experts recommend not using SSD's in devices that constantly write to the drive, such as video surveillance equipment.
Another thing you should be aware of is that although SSD drives don't fail very often, when they do, data recovery can be difficult or impossible. That's not so much a disadvantage as a reminder to have a good computer backup plan in place.
The prices of SSD's have come way down since the last time I revised this site. Last week I replaced the hard drive in my laptop with a 500 GB Crucial SSD for less than I paid a few years ago for the HDD that it replaced.
The fact that the price gap between SSD and HDD drives is closing so rapidly is why many people (including myself) are now opting to use an SSD as a computer's sole drive. Up until recently, it was common to purchase a smaller SSD on which to install the operating, system, and applications; and a larger mechanical drive to store the user's documents and other data. That doesn't make a whole lot of sense any more from a cost point of view. The cost of the two drives combined would probably be more than the cost of simply buying a bigger SSD, at least up to the 1 TB mark. At the time of this writing, SSD's larger than 1 TB are still pretty pricey.
There's also something called a "hybrid drive" or "SSD-HDD" drive that utilizes SSD technology for the drive's cache, but disks for storage. The idea is that frequently-accessed data is offloaded from the slower disks to the faster SSD cache, and then pulled from cache as needed by the system, which improves performance at a lower cost than that of a full-SSD drive. But as full SSD drives are becoming less expensive, hybrid drives of less than 1 TB capacity are starting to fade away.
Types of Hard Drive Interfaces
The interface is the way that the hard drive is connected to the rest of the computer. It encompasses both physical form factors and electronic standards that assure interoperability of drives made by different manufacturers, as well as factors like backward-compatibility.
Serial ATA (SATA) Drives
Most new consumer-grade desktop and laptop computers use Serial ATA (SATA) drives. SATA replaced the EIDE hardware interface while maintaining the ATA command set, enabling much faster data transfer rates than EIDE drives, but with fewer compatibility and configuration issues than SCSI drives. SATA drives also are less expensive than SCSI drives of comparable capacity.
At the time of this revision, the current SATA revision is SATA-III (officially called SATA 6 Gb/s) SSD or HDD. Your actual data transfer speed, however, is going to be more like 550 600 MBps at best. This is partly because of overhead, but is also a result of the AHCI interface, which was designed for spinning disks. SATA drives have evolved, but the interface has not.
When using SATA-III, make sure that everything in your system (the motherboard, the SSD, and the SATA drive cable) are certified for 6 Gb/s. Your system will only run as fast as the slowest link in the chain.
NVMe stands for "Non-Volatile Memory express." At the time of this revision, NVMe drives are the fastest possible drives available for personal computers.
NVMe drives are functionally similar to other SSD drives, which is to say they're basically a bunch of flash memory chips soldered together. But rather than using the SATA interface, with all its legacy limitations, they use the PCIe bus. This makes actual write speeds of nearly 3 GBps possible today, as in right now, at the moment I'm writing this page.
If you want to use NVMe, it's important to make sure that you choose a motherboard that supports it. This may seem obvious until you realize that most NVMe cards connect to something called the M.2 interface, but not every M.2 interface supports NVMe. Some support SATA speeds. There also are several variations of the M.2 form factor, and your NVMe drive much fit the one on your motherboard. The point is that it's not enough to say, "Yeah, this mobo has an M.2. slot." You have to make sure that the M.2 slot supports the NVMe drive you're considering.
Some NVMe drives plug right into the PCIe slot, and you can also buy adapters that will allow you to install an M.2 NVMe into a PCI slot. But not every BIOS will let you boot into a drive on the PCIe bus. Again, check the motherboard documentation to be sure before you spend any money.
As to whether the performance improvement of NVMe is worth the increased cost, I'd have to say yes, if you're building a new computer; but maybe not so much if you're thinking about upgrading an existing one. As with most things computer-related, it depends on how you use the machine.
In my own case, the computer I use for work has a SATA SSD drive. It cold-boots in about seven seconds and most of the software I use opens pretty much instantaneously. Even more complex programs like video editing software take only three or four seconds to open. So even if this computer has a BIOS setting somewhere that allows for PCIe boot (I honestly haven't checked), I really wouldn't be saving much time by upgrading. I'm happy with my current user experience.
It's also true, however, that as a Web developer, I deal mostly with small text files and relatively simple software in terms of disk I/O. Code editors are basically just fancy text editors. If I were a gamer or used other I/O-intensive software on a regular basis, I'd look into upgrading or replacing this computer.
If I were building a new computer today, however, I would go with NVMe, even given my relatively lightweight needs. The cost difference just isn't enough not to go bleeding-edge in this case.
How Big a Hard Drive do I Need?
Well, that depends.
Hard drives with capacities well in excess of a Terabyte are now available. But a 500 GB drive is probably plenty for a single user who mainly uses standard office applications and doesn't store a lot of graphic, video, or music files. Chances are that the drive will wear out before you fill it up. On the other hand, 500 GB drives are considered pretty small as hard drives come these days, so you'll probably find that you can buy a much larger drive for a few dollars more.
If you're into digital photography, music, or video, then you'll want a much bigger drive for your homebuilt computer -- probably something in the 1 TB to 2 TB range. The same holds true for a computer that will be used by multiple users.
It's a lot easier and more economical to install a larger drive to begin with, then to have to install a larger drive later on when you have run out of drive space. So when pondering whether it's worth an extra ten bucks to step up to that bigger drive, the answer is probably yes.
Understanding the Importance of Hard Drive Cache
As with processors, most HDD's have a small amount of cache (of "buffer") DRAM memory built into the drive. The cache stores frequently-requested data so it doesn't have to be repeatedly read from the drive. It also allows the interface to operate higher speeds than those needed to read and write to the disk. The cache holds the data while the disk is catching up, as it were. A larger cache can therefore dramatically improve HDD performance and computer speed.
The amount of hard drive cache at the time of this writing ranges from a skimpy 2 MB on el-cheapo drives, to 256 MB on extremely high-end drives. Personally, I suggest you buy a hard drive with 64 MB of cache at a minimumif you choose to use a HDD. Not only does more cache improve the computer's performance, but drives that come with a larger cache tend to be better-built, higher-end drives with longer warranties.
If you don't need a tremendous amount of storage, you may be able to save a little money on a HDD by looking for a high-end drive with a lot of cache, but in a size that the manufacturer is discontinuing. As drives in excess of a Terabyte are now available, many manufacturers are discontinuing production of smaller drives that are still very high-end in terms of quality. These drives are usually sold at considerable discounts, but they're still great drives. They're just smaller than what people want these days.
Because SSD's are much faster than HDD's, a larger cache on an SSD won't necessarily result in a noticeable difference in user experience. In fact, it's not uncommon to use small SSD's as caching drives for larger HDD's, as is done with hybrid drives. But what onboard cache will do for an SSD is reduce the number of read / write cycles a bit, possibly extending the life of the SSD.
Saving Money on a Hard Drive
Most hard drive manufacturers make hard drives in both OEM (Original Equipment Manufacturer) and consumer packaging. The consumer versions typically come in brightly-colored boxes that contain the hard drive, a cable (maybe), the screws, an instruction manual, and a bootable utility that helps partition the drive or copy an existing drive to the new drive. The OEM version typically comes in a plastic bubble that contains the drive itself, maybe the screws, and nothing else.
Many home computer builders prefer the OEM drives because they're usually much less expensive than the comparable consumer-packaged drives. But there are a couple of things to be careful of.
Firstly, OEM drives are packaged in bulk cases that provide good shipping protection while the whole crate is intact. But once the package is opened and the individual drives removed, they have a lot less protection than a consumer-packaged drive. So the likelihood of an OEM HDD being damaged in shipping is slightly higher than a drive that's consumer-packaged. (This is not so true for SSD's, which have no moving parts and are not as bothered by being bounced around.)
Secondly, you probably won't be able to use the warranty on an OEM drive if it should fail. OEM drives are intended for sale to computer manufacturers, and the warranty exchange program works differently for OEM's. So unless you're registered with the drive manufacturer as an OEM or System Builder, the chances are they will not honor any warranty claim you file on an OEM drive. (The vendor from whom you purchased it may honor the warranty, however, or may sell extended warranties. Ask before you buy.)
Remanufactured or Reconditioned Drives
Most manufacturers also sell "remanufactured," "reconditioned," or "factory-repaired" drives. Personally, I don't think the minimal price difference justifies the chance you're taking unless the drive carries the same full warranty as the company's new drives. The way I see it, if the drive manufacturer is telling me the drive's "as good as new," but doesn't want to back that up with a full warrantee, something isn't right.