If you follow any EMC blogs at all, you'll have seen that we launched the XtremIO product last Thursday. Our entrée into the all-flash-array (AFA) storage segment, XtremIO rounds out EMC's robust flash strategy consisting of hybrid arrays (VNX & VMAX), server flash in the form of both straight storage (XtremSF) and cache (XtremSW), distributed server based storage (ScaleIO), and all flash arrays (XtremIO).
If you're interested in how it works, you should head on over to Chad's blog for a look-see.
What you might have missed is how this applies to Microsoft workloads. As you might imagine, they fall into a few different categories (I wrote a blog post about this last year, but it needs an addendum for AFA appropriate applications):
Major use cases for flash technology in general
I need gobs of IO: These are workloads that generate a bunch of IO. Think of VDI boot storms, or the various wackiness that can come about from any dense virtualized environment. Or perhaps high performance SQL Server environments (virtualized or not)
I need low latency: Think of a SQL-backed application that isn't performing the way you'd like. You don't have to think hard to arrive at one.
I need smaller footprint: Any application that you're short-stroking traditional disks for. Move people have turned to automatic tiering on a hybrid array to solve this. But still - if you have legacy HW and the right type and footprint of application, you might add AFA to the evaluation list
And let's add a couple to the list for:
Major use cases for all-flash arrays specifically
- I have a heavily duplicated environment: The obvious one here is VDI (look at the blog title for a hint as to what OS gets virtualized most frequently). Let's also think about SQL Server Always On Availability Groups (AAG). As you probably know, AAG essentially duplicates SQL databases, allowing them to be attached to separate servers for both high availability, as well as read-only scale-out. Read-only scale-out can mean anything from offloading backups to a separate server, to offloading reporting workloads and cube generation. The inline deduplication feature of XtremIO allows you to achieve a primary design goal of SQL AAG technology without any increase in storage footprint.
- I need wicked low latency, uniformly, at scale, unencumbered by cache or other workloads on the array. A corollary of the second bullet point above. But it bears some inspection, particularly in those instances where transactions per second can be translated into a dollar figure.
There are some things you'll want to consider around the method of deduplication, scale out, and so forth to determine which AFA might be right for you. But in any case, a comprehensive strategy is called for in any of these cases. For example, the VDI use case you might test out in the lab would consist of system partitions. But user data often dwarfs the capacity footprint of system partitions in VDI environments, and it has neither the duplication features, nor the performance requirements of the system partitions. For those, NAS might be the best approach.
You'll also want to consider other features. In the case of XtremIO, it comes with VPLEX support out of the box, which allows you to do geographically dispersed clustering (check out the white paper on Microsoft's site for details), not to mention RecoverPoint support and all the goodness it brings.
Finding the ideal use cases for flash in your data center
Chances are that you can think of a couple applications you're responsible for that could use a performance boost. You've given an application all the memory and CPU you can, along with all the storage you can afford. You (or your management) is either unwilling or unable to optimize application itself. You've got to feed the beast. For those apps, run perfcollect on all the layers of that app. Get the results to your EMC SE or EMC partner SE. Let us know what you're doing with the machine - are you doing reporting, streaming backups, SSAS cubes? We can tell you what the latencies are, and what you can expect with an EMC flash solution. If the capacity and IO requirements fit, the answer may be XtremIO. Or it might be server-based flash, or it might be an automated storage tiering. Or it might be as simple as shrinking your backup windows with hardware offloaded snapshots or clones.
You never know if you don't ask.