One of the major hurdles for SSD adoption in the data center is what I like to call "endurance anxiety." We all know that NAND-based SSDs have a finite number of bits they can write during their lifetime. We call this endurance and it is a well-known property. The issue arises for customers moving from HDDs to SSDs because HDDs have unlimited endurance, or so we are led to believe.
All drives, whether they be solid state or hard, eventually fail. The old saying is ‘hardware eventually fails and software eventually works’. What’s important to understand is how they fail and how that affects you, the customer. Unfortunately, when we talk about product lifespan, SSDs and HDDs don’t speak the same language. Sure, we both talk about reliability, we both have metrics like Mean Time Between Failure (MTBF) and Annualized Failure Rate (AFR), but those metrics only account for extrinsic failures. With SSDs, NAND has intrinsic endurance that is based on the number of times you write to a cell. With HDDs, you have no such metric, hence the myth of unlimited endurance.
In fact, HDDs do wear out and fail, but that metric can be hidden in the details. Though it is far from universal, some HDDs will specify a duty cycle, or, how many hours per day, or terrabytes per year the drive is rated for. As an example, automotive HDDs are typically rated at a 10-20% duty cycle, which makes a lot of sense, because a normal driver doesn’t drive 24hrs a day. In enterprise environments, nearline HDDs are sometimes rated by the number of TB’s read or written per year. You can use those numbers and a little math to determine endurance. Though in the case of TB/year, that is the total amount of data across the interface, whereas with SSDs, only data written counts.It is important to point out that if you exceed the specified endurance on an SSD, your drive is on life support and you should look into replacing it. With HDDs, the failure mechanism isn’t as clearly defined. If you exceed the duty cycle for an HDD, your drive won’t immediately die, but what it will do is invalidate your MTBF (and AFR) specification. By how much that spec will change is difficult to determine unless you are able to get a de-rating curve from your HDD vendor. So even though SSDs and HDDs wear differently, the point is that they both wear based on how you use them. The advantage with SSDs is that wear is predictable and trackable.
Now, I know you are probably thinking, “Andrew, don’t try and fool us, those are corner cases that don’t apply to most users." You might be right, so let’s look at endurance in a different way. Instead of asking how much data can the underlying technology write, let’s ask how much data is the drive capable of writing.
The Micron M510DC 800GB is capable of writing 30,000 random 4KB blocks per second. If we take that out across the 5 year warranty, that comes out to about 19PB of data that the drive is capable of writing. The challenge is that the M510DC is only rated at 2.5PB of endurance. This is where endurance anxiety rears its ugly head. Let’s compare this to an HDD.
For this example we are going with a mission-critical 15K RPM SAS HDD that, on a good day, will only get you 500 random 4 KB IOPS. Applying the same math over the course of 5 years, you get about 322TB. Even with an endurance of 2.5PB, the M510DC is rated for nearly 8X the endurance of the 15K HDD. This is probably the worst case comparison for the SSD, as there are other Micron SSDs that offer much higher endurance, and there are HDDs that offer far fewer IOPS. The Micron S650DC, for example, is a 3.2TB SAS SSD that supports an endurance of 58PB, which is 181X larger than what our 15K HDD can transfer.
This brings me back to my initial question, do HDDs have unlimited endurance? Probably not. But the question is does that really matter? Endurance on an HDD is a secondary factor because you just simply can’t access data quick enough for it to matter. So, before you let endurance anxiety get the best of you, spend a little time with the math to determine if SSDs are the right fit for you.