Mention ‘the cloud’ to a SQL Server DBA and odds are you’ll get a look of worry, disdain, or worse. Perhaps a grimace as you read the title of this piece even! As DBA’s we worry about performance, availability, restrictions, missing features, and more, because we’re the ones that are tasked with making it work, regardless of where it’s hosted. Right now it appears to me that SQL in the cloud makes sense in a few scenarios, but without feature and management tool parity it’s hard for us to recommend for the common cases that most businesses have.
You might think I’m pessimistic about the cloud; I’m not. We’ve been moving that way for years. When I started learning SQL Server back in 1998 I spent a lot of time learning storage and hardware. Today it’s a pretty good bet that your storage is on a SAN and your ‘server’ is a VM, leaving you to mostly just ‘do SQL’ with the occasional argument with the storage team about how your disks are provisioned. What that means for me is that I can focus on SQL; design, performance, maintenance, documentation, and leave the relatively dull (to me) plumbing to those that specialize in it.
Moving to a true cloud mentality – even if you end up hosting the cloud – means letting go of the hardware, and also largely moving away from scaling up and moving to scale out. We’ll get a moderately fast machine with moderately fast storage and we’ll do a lot with it. But when we hit the wall, we’re going to have to move to sharding (cross server partitions) and queries that execute against multiple servers in parallel to get the needed performance, because we can’t get a bigger server. We’re not ready yet, and the tools aren’t either, but start thinking about how you might do things differently if you could scale out easily.
At the end of the day I don’t go to the server room, whether it’s down the hall or across the world. I connect using tools I know and I solve interesting problems. When I can connect to the cloud and do the same without having to account for missing features I think I’ll have a lot fewer reasons to say no to it. It won’t always be the right fit, but it will be a lot more often.
SQL Server has matured over the years, and while it’s gotten easier to manage, it’s not necessarily easy. It’s ok for us to worry, to lobby for better tools, and to be cautiously (and fairly) pessimistic about the gains that might be made from moving to the cloud.