I was perusing my RSS Feeds this morning, and came across an article by Steve Jones (b|t) about Changing Times. In this post Steve talks about Microsoft not having any DBAs in their cloud team, and that it is all managed by DevOps folks. This message came from a talk that was given at SQLBits and summarized by Victoria Holt.
Wow, this looks amazing, and really seems to ring the death knell for the DBA…or does it?
Let’s consider what we are looking at here, and for the purposes of this, I am going to focus on Azure SQL Database (or whatever we’re calling it this week).
There are 1.7 million production databases that do not have DBAs. Well, that’s flat out wrong, there might not be DBAs at Microsoft, but you can be pretty sure that there are DBAs out there managing a portion of those. I guess we should really focus on the Microsoft side of things.
So there are 1.7 million databases, what is Microsoft’s role in these databases? Other than keeping up the infrastructure that the databases are based upon not much really. They have no posted performance metrics to which they must aspire. They are not going to be in the business of ensuring that your backups are taken, your HA requirements are based upon you setting up the services and regions correctly, and they don’t care how fast or slow your query is. There is an SLA for uptime, and don’t worry, if it gets below 99% you get a 25% discount.
Given that there are no requirements to perform any work that a typical DBA would be required to do why would they need a DBA at all? They wouldn’t. It is this kind of information that makes people who work as DBAs question their existence and future, and frankly, there is no need to do that.
As a DBA you will find that the cloud will become a significant part of your future (if it is not already), and your role will shift, but there will always be a place for the on-premises products (for as long as it is made), and that means DBAs to manage it. Heck if you want to see what the world without DBAs looks like just skim through dba.stackexchange sometime.
I feel that a lot of messaging coming out of Microsoft puts a not insignificant level of fear into some people, as they attempt to set an example where the only people that really matter are developers, and developers sitting in a DevOps role. Is Microsoft going to change their tune around any of this? Nope, I don’t see that happening at any point. One thing you could question is, given that there are all these Azure databases that don’t have DBAs why is it that Microsoft has any DBAs working for them at all? Surely DevOps people would be all that they need.
3 thoughts on “Who Needs a DBA?”
This attitude against DBAs has been at MS for around 2 decades now. They’ve always favored devs and it shows in their tools. And yeah, they may have DevOps running everything, but if they’re doing all the things a DBA would do, then they’re still DBAs regardless of the title you give them. They’re splitting hairs. They could say we don’t have DBAs, we have Cloud DB Operations… whatever man. It’s what DBAs usually do, so it’s still a DBA function. Because notice they didn’t say they don’t have DBA functions happening, they just don’t have official DBAs.
Now, that said, yes, a lot of DBAs are getting scared, but it’s for good reason. A LOT of CEOs listen to the MS rhetoric and are likely to put their DBs in the cloud and fire their DBAs. Stuff will eventually fall to crap, but that doesn’t do their DBAs any good. And they’ll never notice it as being an effect of getting rid of them either. They’ll just think that one more thing is going wrong. Companies are great at putting up blinders and ignoring what’s going on. They don’t realize what DBAs really do. And all too often they think that just anyone will be able to do an equal job in the DBA role.
This will make a good show topic.
Yes and no. I hear you that MS isn’t really “managing data ” here. There may be someone acting as a data manager at the clients, or their may not be. I suspect a large portion of these aren’t real data, just testing places, or even small databases for dev work, but still, there are real workloads there.
They do handle backups, and you get PIT restore, but someone else has to manage those. Even a manager can perform those, but reconciling data or moving it around to recover something, you need a DBA-type person.
They are doing stuff with query tuning. The Query Store and Adaptive Query Processing will remove quite a bit from the need for a DBA. Won’t help you write good SQL, but so many people don’t do that now, and they survive with minimal or limited DBA support.
I think there will be less call for DBAs, and a little less call for some DBA skills. Not an elimination, but perhaps a need to find ways to provide other value. Or maybe it will be each DBA’s skills be amplified tremendously, which also could be less DBAs.
I’ve seen the results of companies who don’t believe in DBAs at my wife’s company. 15 year old Oracle database full of corruption. Not concerned in the slightest if it fails, they believe they can call Oracle. The heads of IT at that organization are all ex-Devs, who put a C# dev in charge of creating a single collection of data encompassing 6 different ERPs. Needless to say that resulted in a failed project because no thought was given to data storage, or how to tie the data together in a readable manner.
There is always going to be a place for DBAs, but I do think DBAs should be working on their skill sets a bit. Adding some development languages such as C# and Python, as well as a baseline understanding of R, can only add value.