A topic The SSD Guy often brings up in presentations is the fact that SSDs can be used in enterprise applications to reduce server count, a phenomenon often called: “Server Consolidation.” This is a confusing issue, so it bears some explanation.
There are lots of ways to accelerate an I/O-bound application. The most direct one is to speed up the I/O. In the past this has involved some pretty elaborate ways of using HDDs in arrays with striping and short stroking. Many of these arrays cost a half million dollars or more.
Another is to hide the slow I/O speed by caching I/O transactions. A couple of ways of doing this are to increase the size of the servers’ DRAM memory or to add a DRAM cache. Adding memory is the most common approach, but once the slots in the server are loaded to their maximum capacity, then a DRAM cache becomes a reasonable alternative.
A popular open-source program for caching is called “memcached” and it works by using a server as a DRAM cache on the network – network I/O requests are intercepted by the memcached device. If matching data is found in the memcached appliance then it is handed back to the requesting server. If a copy is not found in the memcached appliance then the I/O request is serviced by the slower storage array.
For thornier problems involving databases the database can be “sharded.” Sharding is the art of splitting a big database into a number of smaller sets to allow it to be processed in parallel. There’s a lot of cunning involved in this exercise, and when the database is reconfigured (i.e. someone asks for a new field to be added) then a lot of re-work must be done. Sharding is something database administrators try to avoid because of its complexity.
Finally, SSDs can be added to the system either as the shared storage or as local storage. SSDs are typically used to accelerate storage, but in some cases SSDs replace the system’s storage altogether.
Several case studies exist on various SSD vendors’ websites with testimonials from customers who have been able to reduce their server count through the use of SSDs. See Fusion-io, Kaminario, Schooner (Plaxo testimonial), Violin, Samsung (with HP), and Texas Memory Systems for a few examples.
With SSDs I/O is faster, so there’s no reason to use either sharding or memcached appliances. If the database is not sharded, then the system can perform the same tasks with fewer servers. If memcached is not used then there is no need for a memcached server. Either way server count is reduced.
In many cases the system can get by with less server memory, another power saving step.
Of course, a server count reduction yields additional benefits: less power consumption and cooling, reduced rack space and floor space requirements, and so on. Even reliability improves, because if there are fewer things in the data center then there are fewer things to fail.
In cases where licensed software is used on these servers the software licensing fees can be reduced as well. This is a real: “Something for nothing!”
Objective Analysis goes into more detail on this subject in the report The Enterprise SSD: Technologies & Markets, which can be purchased for immediate download from the Objective Analysis website.
4 thoughts on “SSDs and Server Consolidation”
I’m not in the business of buying reports such as this. It would be interesting if, in such adverts, SSD proponents get to the nub: SSD will never (at least with NAND devices) be cost competitive on a $$$/Byte basis with spinning rust. On the other hand, they can well be cost competitive on a $$$/database basis, IFF a current schema is pretty much [un|de]normalized. Re-factoring (a meme highly prized in the coding realm) a flatfile-in-engine schema to higher NF yields a (possibly) much smaller footprint, and gains gobs of DRI as a bonus. High NF databases are the Killer App for SSD, but the vendors and consultants haven’t had the gonads to go for it. It is a puzzlement.
Robert, Good observations. My background is in chips & hardware so I have to defer to your greater understanding of databases, but I do agree with you about $$$/Byte, which I expounded upon in a November post: When will SSD Prices Drop Below HDD Prices?. The short answer to this question is: “Never.”
Even so, SSDs will find a very comfortable niche due to their $$$/IOPS, which is the main reason they are currently gaining acceptance.
I would guess that it will only take a few years for programmers to start cranking out database management software that is seriously focused on getting the most out of an SSD. This is a great new layer in the memory/storage hierarchy!
Comments are closed.