T-SQL Tuesday #48 – Cloudy? Whose Problem Is It?

Welcome to my first T-SQL Tuesday blog post! T-SQL Tuesday is a monthly blogging event, started by Adam Machanic (Blog|@AdamMachanic), where SQL Family collectively blogs about a topic. This month’s T-SQL is being hosted by Jorge Segarra (Blog|@SQLChicken). He has asked bloggers to share our thoughts on the cloud?

Thought I’d start with a quick bit of background. At this point in my career, I have not made use of Azure yet. Quite frankly, I’m resistant to the idea of it. And that’s very funny. Why? Because I’m using “the cloud” right now! I’m writing this blog post on a WordPress account, while listening to music via Google Play. I use cloud products like Google Drive, Dropbox, and Evernote. I’ve embraced the cloud in other aspects of my life, but why not the database realm? But I find myself asking questions like what is the benefit of moving our SQL Server databases to Azure? What’s wrong with our current data centers? And most importantly, can we trust our data in the hands of others? Can those who manage “the cloud” be trusted?

The day that this topic was announced, I was having a casual discussion with two colleagues about Azure. One was making a pro-Azure argument, but not for a reason that I would normally consider. He wants to use Azure because he wants to “make it someone else’s problem.” I found myself confounded at that. He pushed that if something goes wrong in “the cloud,” it is someone else’s problem to address and one less thing he had to worry about.

I strongly question that specific argument. My current company is a SaaS company. Let’s pretend that we were to shift everything to Azure. And let’s pretend that Azure suffered a catastrophic outage that also takes us down. As my colleague posits, it is up to a 3rd party to get us back up and running. It’s not our problem. But I would counter that in the eyes of our clients, it is most certainly still our problem. And moreso, I would argue that it is an even bigger problem because our hands are tied and we are reliant upon someone else external to our personnel, to resolve the problem. And can those in control be trusted to do the right thing?

Which brings us back to the theme of trust. Perhaps I’m too much of a “do it yourself if you want it done right” kind of guy, but I’d rather not trust nameless and faceless resources to resolve a problem. Who do I trust to get it done? Myself and my colleagues. I want to keep things in-house. I don’t want problems to be someone else’s problem to resolve – I want it to be my problem to solve.

There are numerous reasons and use cases to consider Azure and cloud-based solutions. But should “making it someone else’s problem” really be one of those arguments?