In the high-stakes race to own part of the $60B flash market, manufacturers have cut corners to get their flash products out the door. They have all the features you are looking for, but you will be shocked at what they leave out. Failing to ask the right questions can result in some very disruptive surprises.
What matters most to your business?
Is it latency? IOPS? Data Reduction Capabilities? You will find plenty of manufacturers with those fancy, new features.
How about availability? Where does that rank? Is that not critical above all else? Yet, that is where the all-flash array market receives the big D minus.
See, we have lived a pampered storage life. We now take for granted basic storage capabilities that make sure storage is available 100% of the time. This includes frequent operations such as scaling performance, scaling capacity and upgrading firmware. Nearly every traditional array manufactured in the last 10 years has evolved to provide these basic services, online, and without impacting data services. Not so, with all-flash arrays.
The sad truth is that many of the all-flash products available today have limited non-disruptive capabilities. You would be surprised to know that some of the largest manufacturers, with the most *flashy* marketing, are the most immature. Let’s break down each area and see where they often come up short:
Scaling Performance: In traditional arrays, this was done by adding drives, as drives were the bottleneck. Now the bottleneck has shifted to compute. Few manufacturers provide the capability to non-disruptively scale CPU. There are even manufacturers who go to market with self-proclaimed “Scale-Out” architectures, yet require the array to be formatted whenever scaling occurs. You may ask, “What good is scale-out if I have to erase my data to do it?” Good question, indeed.
Scaling Capacity: This should be pretty easy, right? Perhaps add flash to a pool, or create some new raid groups? Unlikely with all-flash arrays. Capacity is often tied into an appliance that houses both the flash and the CPUs. Need one or the other and you are forced to buy both. Most manufacturers don’t allow drives of different sizes in the same platform, which limits future growth options. Some manufacturers allow you to add drives to an existing appliance, but require the appliance to be erased each time. Ouch!
Firmware Upgrades: Many manufacturers are getting better at this and most support it now, but some are regressing, and terribly so. I’ve heard several customers complain that a certain major manufacturer is requiring their all-flash arrays to be erased and reinitialized for new code upgrades. There is a word for a platform like that: Beta.
Manufacturers have addressed the limitations, but in a less-than-ideal way. The underlying architectures are slow to catch-up and the market is too ripe. So, for now, it is easier to bolt on extra hardware and software instead of fixing the short-comings of the arrays themselves. You will see all sorts of storage virtualizers, plexers, replicators and routers fronting these arrays. The extra latency kills your performance and the extra costs kill your budget. In fact, this is a sure-fire way to detect an architecture with big gaps. What does all that extra hardware provide that the array itself is missing?
Would you put up with such madness on a traditional array; evacuating all data whenever you add some performance, capacity or new firmware? Would you pay for it up front, install it, and then endure this pain while the manufacturer finishes their code?
The good news is, there are mature all-flash arrays available (I’m happy to work for a company that provides one). The point of this post is to encourage you to be thorough in your research and make sure you ask the right questions. If you stay focused on what’s important, you’ll be fine! Manufacturers have a way of steering conversations to features that are impressive and away from features that are required. Here are some tips:
- Control the conversation and keep it relevant to your business.
- Discuss your most basic requirements; even if you assume all manufacturers meet them.
- Make sure you determine what is in the current product and what is future-ware. Some manufactures market the future like it is today.
- Have a few discussions with at least 2 or 3 manufacturers. If you just talk to one, you won’t know what you are missing.
- Beware of complexity, its purpose is to hide architecture gaps.
- Ask for a POC! Manufacturers with solid products will not hesitate to let you test their gear.
Finally, don’t settle for a product that is a step backwards from what you have today. You are purchasing a product, not a roadmap. Don’t be a beta tester on your time and your dime.
P.S. The Pure Details
In case you were wondering how Pure Storage measures up in the non-disruptive space, here is where we stand. 100% Non-Disruptive Everything. Period.
Scale Capacity: Storage shelves can be added non-disruptively in full or halfs. Drive types can easily be mixed as the array scales.
Scale Performance: Non-disruptive upgrades of controllers allow the array be scaled from the smallest controller size to the largest while online and serving data.
Maintain Performance: The Pure architecture was designed so 100% of performance can be achieved, even during failures. Redundant components, including controllers, can be replaced without impact.
Upgrade Firmware: Non-disruptive minor AND MAJOR code upgrades. Customers on Purity 3.x are able to upgrade to 4.x and receive new replication capabilities at no cost, with no downtime.
No Compromise: All the above is possible while customers still benefit from industry leading data protection, flash management and un-beatable data reduction capabilities. No SAN virtualizers, plexers or replicators; just 100% fully-integrated awesomeness.