Holy wars are a hallmark of the tech industry. Passionate partisans on either side of a debate ready to defend their platform, language, or protocol of choice to the end. This is a good thing. If people weren’t committed to improving the technology we depend on, chances are little progress would ever get made, and I probably wouldn’t have a job – much less a job as the CTO of an industry-leading cloud hosting provider.
Perhaps the most ubiquitous example of this is the battle between Apple and Google for smart phone market share. What’s interesting about this is that it isn’t simply a debate between two opposing platforms – it’s a fundamental debate over the platform itself. On one side is Apple with an integrated hardware and software solution (iOS running on the iPhone). On the other is Google with Android that can run on any piece of compatible hardware for free.
It occurs to me that a similar debate is brewing in the on-premise and cloud storage world. The advent of software-defined solutions is allowing vendors to rapidly push out feature-rich platforms that run on commodity hardware, and the ongoing decline in flash pricing is taking performance out of the equation – especially when compared to the old guard. This too is a good thing. It’s shaking up an industry that long suffered from a lack of disruption and it’s making enterprise storage a possibility for organizations that were priced out in the past.
Having said all that, there are caveats to a commodity hardware strategy that need to be well understood when considering this direction. In my opinion, the most critical is accountability. When your job is supporting your customers’ business-critical workload, downtime isn’t an option. When outages do occur you must be able to restore service quickly, determine root cause definitively, and take informed corrective action – three things that can be a heck of a lot more difficult when you get in the middle of a finger-pointing exercise between your hardware and software vendors.
The second consideration is sizing. Most commercial storage vendors have fairly solid mechanisms to help size a solution based on the variables involved with a given customers’ workload. This can become more challenging when you separate the hardware and software. There are plenty of open source tools to help you with this, but be prepared to become your own subject matter expert or find one when interpreting the output.
The final consideration is your time and that of your team. If your team is anything like ours, they’re not exactly casting about looking for extra things to do. They’re working hard to support their customers and putting in long hours to do it. They don’t have time to search mailing list archives for the fix to a given defect – they need a vendor that is a true partner; one to whom they can escalate without hesitation.
So where does this leave us? I wish I could say there was a right answer. Ultimately every organization’s use case is going to be different. The most important thing to do is to plan well. Understand your workload, your availability requirements, and above all your total cost of ownership. Make sure you understand your vendor’s technology backwards and forwards and get plenty of references before you commit. If I’ve learned anything over the years it’s that storage is sticky and a bad decision can be unbelievably costly.
Thanks for reading. I’d love to hear your thoughts on the subject. Leave a comment below if you have a story to share or drop me a note at darrell at hosting dot com.