It's easy to see why SSDs are experiencing a storm of activity in the storage realm. They’re fast! Traditional disks obviously have to rotate, taking a whopping 5 milliseconds to get to your data. (Even if you have 100 disk drives, you'll never get data back more quickly than 5 milliseconds.) SSDs are fundamentally different, offering microsecond lookup times. Because of this simple latency difference, SSDs give you an instantaneous way to boost system and application performance. The metaphor that Jamon Bowen, Director of Sales Engineering at Texas Memory Systems, likes to use is the CPU. “Let’s say you have a CPU-bound app, and you drop in a CPU that's five times more powerful. That app runs five times faster. SSD offers essentially the same paradigm.”
Traditionally, the downside of SSD has been cost; often, the added performance just hasn’t been worth it. “But SSDs offer so much capacity now,” says Bowen, “that, even if an enterprise couldn't afford SSD before, we’re getting to the point where virtually every database should be running on SSDs.” There are a multitude of enterprise SSD offerings on the market, and this Buyer’s Guide covers a few of your options for the sake of quick comparison. But before you dive into the market, you need to know about some key differentiators that are important to your buying decision.
SLC vs. MLC
To focus this buyer’s guide, I decided to establish a general distinction between consumer and enterprise SSDs. My first thought was to differentiate according to capacity, but really the best way to make such a distinction is to look at single-level cell (SLC) versus multi-level cell (MLC) chips. Essentially, if we’re talking about an enterprise application, we’re talking about SLC—and that's where a lot of the cost differential comes from. MLC is half the price automatically because of its ability to store two bits per cell, but you have less margin for error when reading data, so it's more error-prone. The main concern people have about flash in general is its ability to hold up over time under heavy write workload. And in that kind of environment, SLC wins. Sure, it’s twice as expensive, but it also lasts more than twice as long.
There are several ways that an enterprise can dive into the SLC SSD market—by placing the SSD into an existing storage array, by putting the SSD directly into the server, or by investing in an SSD appliance.
Existing storage array. In this scenario, you’d use SSDs primarily as an automated cache or tier, so the focus isn’t necessarily about increasing performance as much as getting the same performance at a lower cost by using SSDs and higher-capacity drives. A lot of the IT market revolves around efficiency, and doing more with less.
Within the server. Using SSDs is a simple solution, typically via PCIe SSD. These SSD types have been successful because of their simplicity.
The appliance. The appliance SSD is an effective way to establish a streamlined, high-capacity, clusterable setup in your storage environment. The focus of that type of design is performance, where the focus of the SSDs within the array is lower cost with a tiering approach.
In the buyer’s guide table, you’ll see several considerations to keep in mind while shopping for your SSD solution. Three particular considerations to keep an eye on—beyond each vendor’s performance claims, such as the amount of time under particular write workload that the drive is rated to last—are Mean Time Between Failures (MTBF), TRIM compatibility, and wear leveling.
MTBF. Component failures will randomly occur within any SSD device. One thing that separates enterprise and consumer drives is their ability to handle failures internally. A flash chip packages multiple dies, and each one of those dies can fail. “Just because a flash chip has no moving parts doesn't mean that failures won't occur,” says Bowen. “They will.” MTBF is about how much redundancy has been built into a device to handle those failures.
TRIM compatibility. SSDs don’t write data randomly; they store data in blocks that are moved around by a flash translation layer (FTL) as you update it. An index determines the physical location where the data blocks are stored. Over time, data is rewritten, and some data ends up in the background that isn't referenced by anything anymore. That data needs to be deleted so you can write to the space again. The TRIM standard allows for the OS to inform the SSD that it has deleted a file. “Normally,” says Bowen, “when you delete a file on a file system, it doesn't touch the disk; it just updates within the file system to say that space is empty. With SSD, there's an actual reason to tell the device that space isn't used anymore, so that data stops moving in the background.”
Wear leveling. Media wears out! SSDs’ blocks can go through only so many erase cycles before they begin to become unreliable. As its name suggests, wear leveling arranges date so that erasures and re-writes are distributed evenly, so that the SSD doesn’t wear out unevenly. The controller implementation is essential in this case.
SSDs in the Enterprise
One core distinction between enterprise and consumer SSDs is the power of the controller in front of that flash memory, and how it handles SSDs’ inherent random-write disadvantages. “That's what's most difficult for a flash controller, and where virtually all performance R&D goes,” says Bowen. The problem in the SSD market is that although the controller is the most important SSD component, it hasn't been standardized to the point where you can easily say one SSD is better than another without running actual random-write workload tests. So you have some research and work ahead of you. But this buyer’s guide is at least a good starting point.