In a recent column, titled How To Maximize Your SSD Investment, I discussed the importance of discovering the performance profile of your environment so you could make a better decision about which solid state drive (SSD) devices are the best choice for your data center. Research and planning are the best way to tackle a problem, but sometimes you don't have the luxury of time. You have to "fix it now" and you have to perform triage using solid state storage.
I think that eventually most data centers will end up with flash SSD solutions throughout the data center stack (servers, network, and storage), but when you are in triage mode you need to move quickly to fix an immediate performance problem. In this situation, we are going to risk throwing hardware at the problem at the expense of accuracy, and, while the purists will raise their eyebrows, taking a best guess instead of waiting a few weeks for data to be analyzed is reality sometimes.
We do want to do a quick check to ensure we can make a strong educated guess that our performance problem is related to storage. The quickest way to do that is to look at the CPU utilization of the attached server or servers hosting the application. If that utilization is relatively low (below 30%) then, in almost every case I have seen, there is a problem related to storage.
The next step is to decide which of the various flavors of SSD will most help your performance. Since we are typically breaking away from a set SSD strategy, this project may not be a budget item, so keeping cost down is also important. We want to implement something that is as inexpensive as possible, as non-disruptive as possible, for as little money as possible. Since a brand new storage system is probably not an option, so we are going to be looking for something that we can add to an existing setup.
[ For more storage performance tips see The Storage Problem Technology Can't Solve. ]
This is an ideal situation to look to server-side SSD, especially if our performance problem is isolated to a single application on a single server (or a small number of servers). PCIe is quickly becoming the default solution for these situations. Most database applications support PCIe for caching, and there are several operating system-level software-caching products available. As we discussed in a recent article, though, all PCIe SSDs are not created equal, and it is important to know what each PCIe SSD can really do for you--as well as what level of software support exists for the boards. A stumbling block to implementing PCIe SSD may be a space problem. In that case, you may want to look at SSD-DIMMS or drive-form-factor SSDs.
If the performance problem is affecting multiple servers, then a network-based SSD solution may be better. The value of these solutions is that they can provide performance enhancements to multiple servers or hosts and to multiple storage systems (even different brands of systems). A few can be implemented with no disruption to current operations. These devices may be able to become the foundational core of broader SSD strategy and eliminate the performance sprawl problem we discussed in a recent article.
When users are pounding on IT's door complaining about performance, there may not be enough time available to undertake a complete project that includes a deep interrogation of the performance challenges the environment is facing. Triage leverages your knowledge of the environment and the near-zero latency of SSD to provide a quick remedy. After triage is complete, you should open up a project to design a complete SSD strategy.
Follow Storage Switzerland on Twitter
From thin provisioning to replication to federation, virtualization options let you reclaim idle disks, speed recovery, and avoid lock-in. Get the new, all-digital Storage Virtualization Guide issue of Network Computing. (Free registration required.)