The DBA Plate for 2016

Four years ago I wrote about the DBA Plate, which was a reference to the food plate that replaced the food pyramid right about the time the U.S. Congress declared pizza to be a vegetable. I had every intention of keeping the plate updated annually but never got around to doing so because reasons. Well, today is the day. You’re welcome.

Let’s have a quick review of the driving force behind the need for a DBA Plate:

Many people have no idea what a DBA does for daily work.

[And most of the time these people are also put in charge of DBAs. No, I’m not bitter.]

Sadly, most new DBAs also have no idea what they are supposed to be doing. Often they have no mentor to help them along the way. This is especially true in Microsoft shops, where the installation and use of SQL Server is so easy that many forget the fact that you need someone to administer what has been installed.

Most people learn better through visualizations so that’s why I created the DBA Plate:

The DBA Plate rz

Everything is there, really. Backups should be the biggest part of your plate, followed by maintenance. Monitoring and tuning come next, and you should have a side plate of training as well. I hope this clears up everything. What’s that? You need more details? OK then, how about this…

Backup

The number one responsibility for any DBA is the ability to recover. If you cannot recover you need to find a different career. And that word (“recover”) can mean a lot of different things. It could be your ability to recover as the result of a large scale disaster. It could be your ability to recover the piece of data that was updated inside of one row, in one table, in one database, in some obscure instance of SQL hundreds of miles away. And it could also be everything in between those two events.

And you can’t do any of that without having backups in place, having them running in a consistent manner, the ability to check that they are running, and even testing that they are valid by doing some periodic restores.

Maintain

This part of your plate is for things like the rebuild/reorganizing of indexes, or the updating of statistics. Essentially, anything that helps to maintain the current performance levels for your end users are what I consider to be “maintenance”. However there is also administrative maintenance, such as the removal of logins that are no longer used, or running DBCC CHECKDB. If you are looking for some help on getting started with maintenance I would point you to Ola Hallengren’s scripts as well as Jen and Sean McCown’s Minionware.

Monitor

This part of your plate is for the items you want to be alerted and take action upon. For example, running low on disk space, or seeing a spike in CPU utilization, or having one of your SQL Agent jobs fail. As a DBA we are keen to collect all sorts of details about our instances and databases because we never know which particular piece of data is going to help us diagnose and resolve an issue. But you should only collect the pieces of information that help you to take action. If you try to monitor everything possible then you may find that the biggest performance impact on your system is yourself! With SQL Server 2016 coming around the corner you should also look at the SQL Server Query Store, as that looks to be a promising solution. And Query Store is also available in Azure SQL Database, serving as the backbone for the Query Performance Insights offering.

Tune

This part of your plate is when you roll up your sleeves and make adjustments to your instances in some way. Tuning could be the rewriting of T-SQL statements, it could be adding memory to a server, or it could be altering the configuration settings between a virtual host and guest. In essence, anything that goes beyond the traditional maintenance tasks is what I would consider to be tuning. There are lots of tools and scripts available online to assist you with performance tuning, but of course I have my favorite.

Train

This is the little side plate to everything else that you do. Think of it like having a few strips of bacon with your meal. You need to be constantly keeping up to date with the latest trends in technology. Most of this training is a lot of self-help, but you can also attend events such as SQL Saturdays or the PASS Summit. Just make certain that you reinforce whatever you have been taught by taking the time to lay your hands on the product or piece of functionality.

For 2016 I would suggest that you get some training in one or more of the following areas:

Microsoft Azure – Get familiar with what Azure can offer and start thinking about how you can transition from DBA to Cloud DBA in the next 2-3 years. Hybrid IT is a thing, and the traditioonal tasks for DBAs will change. Start getting used to the shiny new things Azure offers.

Data analytics – No, I’m not saying you need to drop everything and call yourself a data scientist. What I am saying is that you should become familiar with the industry trend towards data analytics so that you can help architect and build proper solutions with your end users. SQL Server 2016 will come with R Services embedded, that alone should be a big hint.

Speaking – Hard skills have a salary cap. Soft skills do not. You should find ways to get better at making presentations. Being able to communicate effectively and work well within a team is a good way to keep being employed. Go and find a local user group or SQL Saturday and submit a topic. Organizers are always looking for speakers.

Happy Thanksgiving.

15 thoughts on “The DBA Plate for 2016”

    • Thanks for the reminder. But everyone is responsible for security, not just the DBA. But the DBA is responsible for making certain the databases are backed up, or indexes maintained, etc. I could certainly add in a side dish of security for next year, no question. But an ideal enterprise would have security handled by a dedicated security team, and they would have their own plate.

      Reply
      • I agree 100% that everyone is responsible for security and that security should be handled as much as possible by a dedicated security team but that still leaves a portion of it the DBA’s responsibility. I’d say that if your DBA messes up the database security it completely undermines anything the security team might do. (vice versa of course)

        Reply
  1. Wow. This was a great article. As a recent “Jr. DBA” this really help me nail down what my core functions should really be and what I need to have the most focus on. Thank you. I am excited for 2016!

    Reply
  2. Thank you for this useful article. As for me the most important part in this plate is scheduled backups. The opportunity to restore the database is very important thing in the DBA’s life. What do you think about third party tools – are they useful?

    Reply

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.