Updated. I am continuously adding other questions that should be asked to this post – I have added three more – Replication, Data (Protection) and Viability. More recently, I aimed at the heart of the matter in another post, Today’s IOPS Matter Less Than A Good Architecture and Storage Features. In this post, I am aiming at providing anyone looking at purchasing a new flash storage array with some questions that might cause tachycardia among sales folks. Some of this is taken from notes from a work-in-progress, An Introduction to Using High-Performance Flash-Based Storage in Constructing High Volume Transaction Architectures – A Manager’s Guide to Selecting Flash Storage.
Some flash array vendors want you to ask the other vendors ‘gotcha’ questions. This gets silly and often it turns into asking question of low relevance. Here is my list of questions to ask – these are not ‘gotcha’ questions, some may relate to what you are doing and some may be less relevant.
All the flash vendors have managed to do quite well at offering great performance and latency numbers on their arrays. Not all of them are equal in terms of storage features.
A quick word about benchmarks. When benchmarks are offered up – it’s good know what is being demonstrated. Some things to keep in mind include knowing exactly what type of benchmarks or workloads are executed and what the measured IOPS are in terms of block sizes. Also whether the benchmarks are read-only or a mixed read/write workload.
On to some questions.
Does the array support full redundancy with hot-swap-everything ? This type of availability translates into increased resiliency. It also translates into an ability to hot-swap all components of an array in production without downtime.
How does the flash array handle failure ? What if I pull a hot component out ? How will the array behave ? If you have data corruption – this is a serious problem. This is not a science question. It’s good to know before someone accidentally pulls out the wrong component out of the wrong array in the middle of the night.
Does the array support full non-disruptive upgrades to all aspects of the array ? Anytime you need to upgrade the operating environment in your flash array – you want to do so without taking an outage. Some vendors in the very recent past actually told you they had non-disruptive upgrades, but the sordid truth is they didn’t have full non-disruptive upgrades. They actually could partially upgrade their array without taking an outage – but that’s not a full upgrade of the array and you are left with a schizophrenic array inhabited by two versions of their operating system. Today that vendor is attempting to deliver full non-disruptive upgrade features – we will see how that goes. If you don’t have full non-disruptive upgrade capability any major upgrade will probably require taking an outage. Why put the burden of work on your storage administrators when the array should be doing this for you. Array vendors like Nimbus Data, SolidFire, Pure Storage and HDS provide full non-disruptive upgrades.
Does the flash array’s operating environment support data reduction features. Specifically : de-duplication, compression and thin-provisioning ? De-duplication saves you considerably in storage costs. There is a lot of effort and discussion around dedup. It literally increases the capacity of your array. You can find more here. Is there an add-on cost to these in-line data-reduction features ? Data reduction matters. It makes you spend less on additional flash storage. It saves you on storage, storage costs and datacenter space plus the power and cooling costs. HDS, Pure Storage, SolidFire and Nimbus offer all three forms of data reduction with their arrays.
Can you natively cluster multiple arrays to produce a single view of storage ? Some vendors like SolidFire offer an ability to cluster their arrays from five to a hundred nodes. You get not only a single view of your flash storage but you also get cluster redundancy included.
Does the array natively support snapshots and clones ? Is this an add-on cost ? Consider that this feature gives you a quick and easy way to do point-in-time snapshots of your data. In virtualization you can leverage clones with VMware linked clones which provide you with conserving storage space.
Does your flash storage vendor support NFS and CIFS ? Both of these are pervasive. For example, some companies rely completely on NFS as their shared file system. Others that are Windows-centric rely on SMB.
How is the flash array serviced ? Some arrays require sliding them out of the rack and taking the top off to service. Others can be serviced in the rack from the front or back. This makes a difference. Also how service-safe are the components ? Does the act itself of servicing the array provide a risk or has the vendor designed fool-proof serviceability into the array design.
How easy is it to use the array ? In other words, does the array provide an easy to use user interface to easily create, export and delete LUNS or file filesystems ?
In some environments, like cloud providers – there is a desire for quality-of-service (QoS). Does the array offer QoS ? The quality-of-service feature allows performance guarantees or limits some hosts from over-consuming IOPS. Some of these cloud providers use QoS to monetize storage IOPS guarantees. This is something SolidFire does extremely well.
Replication is an important feature. It allows an efficient method of keeping a remote a copy of the data elsewhere. It is a strategy which underlies disaster recovery. Does the flash array in question offer replication ?
When a single or more SSD drives or a flash modules suddenly die- what happens when storage fails ? What is the protection provided to support continued operations. How fast are the rebuilds ? What mechanism is used for protection – RAID or a RAID-like technology ?
It should go without saying, but a company’s viability needs to be taken into consideration. I’m not talking about large versus small companies but about the question of how viable the company is. There are plenty of small, innovative viable companies with unique and excellent products. The thing to watch is the stability of the execs at a company and the earnings reports. For example, if the company loses their CTO, COO and CEO within a month – watch out. If they are a diverse public company losing money on storage – again red flag. If they are focused on storage, have only a few products and are losing money on storage. Another red flag. These are as clear a red flag as can be. Is the company in heavy debt with investors wanting to part it out or sell it? Or are they debt free ? Or are they a large company with a long history in storage ?
If you are interested in pursuing this topic further you may be interested in specifically the article, Future-Proofing Your Cloud’s Flash Storage – Evaluate Your Cloud’s Needs. In addition, you can look at the features of a number of flash arrays at Comparison: SSD-Based Arrays Show Advantages with Wide Range of Features; Can Violin Memory Catch Up ?
Go to more posts on storage and flash storage at http://digitalcld.com/cld/category/storage.