Choosing the Right Solid State Drive for Your Storage Network
Choosing the right solid state drive (SSD) for your enterprise storage networking environment is a critical decision and equally critical is making sure you have the right controller to get the most out of the pricey drives.
In this final part, we'll cover the internal design of SSDs and the use of SAS and RAID controllers important choices for making the most of your solid state drives. If your application requires SSD-like performance, you need to make sure you're doing everything right to maximize your investment.
Your decisions in each of these areas will determine if SSDs are an unqualified success in your data storage environment or of they are just a costly addition with marginal performance improvement. Given the cost of these drives, the last thing you want is a marginal performance improvement.
Internal SSD DesignWithout question, this is the most important decision that you will make: You need to look for a solid state drive that will match the performance you can deliver and the reliability you need.
The first and most important part of the decision process is understanding how much data you write and if the writes are in bursts or at a sustained rate. This is important because for a number of SSDs, bursty writes hurt performance because of wear leveling optimization, and the internal bandwidth within the SSD may not be great enough to handle the incoming writes from the channel and meet the wear leveling requirements of the firmware.
Wear Leveling: The SSD vendor's wear leveling firmware design is critical to write performance. It is important to determine if the algorithm is designed to the pre-wear level so that you have extra blocks that you can write to in advance of your writes, or considering the internal bandwidth, that wear leveling and writes will not impact the SSD.
Internal Bandwidth: The issue of internal bandwidth is likely the least discussed, but is perhaps the most important consideration when choosing an SSD. The industry is moving quickly from 3 Gb/sec SAS to 6 Gb/sec SAS for SSDs, and multiple SSD vendors are claiming over 300 MB/sec write performance. With 3 Gb/sec SAS, the maximum performance is about 384 MB/sec, and with 6 Gb/sec SAS, 768 MB/sec. If writes are coming in at say 300 MB/sec, and the internal bandwidth of the SSD is only 300 MB/sec, then the wear leveling algorithm during writes will likely have priority, and write performance could be significantly degraded. In many cases, the number of wear leveling writes is greater than the write data streaming, and in some poor implementations I have seen almost 4 to 1. That means that the write performance might drop to 60 MB/sec and the wear leveling could take 240 MB/sec. Clearly, 60 MB/sec is slower than most disk drives, especially enterprise drives, for streaming write performance. You would be surprised how many drives I have seen with this poor type of implementation even when vendors call their drives enterprise quality.
The internal bandwidth of the SSD must take into account the external bandwidth (the channel), the maximum full duplex performance of the SSD for reading and, more importantly, writing, and the maximum bandwidth that wear leveling will use based on the algorithm and number of writes. SSD internal bandwidth is in my opinion the most overlooked area of SSD planning and design, and is the most critical design consideration for write-intensive workloads.