The Plight of the Modern DBA

This month, we are going to take a high-level look into the state of modern database administration. If you read the title of this article, you most certainly noticed the word “plight.” That word was chosen specifically for the situation modern DBAs find themselves in. If you look up that term, you’ll see words such as “difficult,” “trying,” and “unpleasant” in the definition. If you do not agree that DBAs are finding themselves in a plight, perhaps you will by the time you read through this column.

The Current Landscape

Let’s start by taking a quick look at the current DBMS landscape that DBAs must administer. The database world is in tumult these days. There are new requirements and new capabilities that organizations are adopting and integrating into their data persistence infrastructure all the time. The world is no longer relational/SQL- only. Organizations are adopting NoSQL database systems to support specific use cases and types of workloads. This is increasing the complexity of how data is managed.

Another related trend is what Gartner refers to as hybrid transactional analytical processing (HTAP). This enables multiple engines within a single DBMS to deliver both transaction processing and analytics without requiring a separate DBMS for each. But DBAs still must understand how to administer and optimize for each type of engine.

Even with HTAP and multi-model database systems, most organizations run multiple DBMSs. Organizations, on average, have between 100 and 500 database instances running across multiple platforms and products. And these instances are not a single brand, or even data model, of database system.

Polyglot Persistance

This brings us to the term “polyglot persistence” that came about as part of the NoSQL movement. It simply means that you should use the right database platform for each requirement or use case instead of trying to force fit them all into a single DBMS. There are many different underlying technologies and models, and each type of NoSQL data platform has its own pros and cons as well as different use cases. The DBA must understand each of these to be successful.

But it is not just NoSQL that is driving organizations to run multiple DBMSs. Many organizations have more than one relational DBMS. They may run Db2 on the mainframe and Linux, Oracle on UNIX, and SQL Server on Windows, and perhaps have a few MySQL instances, too.

And DBAs are managing a lot of different database instances. A study conducted by Unisphere Research showed that more than one-fourth of DBAs oversee in excess of 100 database instances! And not all of those instances will be from the same vendor. Consider the sheer number of DBMSs and vendors out there these days.

The bottom line is that the multi-DBMS organization is a de facto standard, and it is likely to stay that way well into the future. This means that things are getting more and more heterogeneous and, therefore, more complex.

But there are many additional factors that contribute to the plight of the modern DBA when you examine the modern IT infrastructure and application development trends. Consider that all of the following trends are currently impacting data and data management: AI and machine learning, big data and data growth, cloud computing, data breaches, DevOps and agile, IoT, and regulatory compliance. DBAs need to be knowledgeable about all of them because they impact the way data is stored, accessed, managed, and analyzed.

Combine those with the ongoing trend of tight IT budgets, and it is easy to see how DBAs could have difficulty adapting their capabilities to support all of the changes, while at the same time dealing with performance issues, designing and managing change for database structures, supporting developers, managing backup and recovery, and ensuring data availability. It really doesn’t leave a lot of time for keeping up with the new skills required to do a good job as a DBA.

Always Be Learning

What can a DBA do? The first step is to ensure that database administration is treated as a management discipline at your organization. Everybody, from developers to managers to DBAs, must understand what that management discipline is and what it entails, and then you should work to automate as much of the job as you can. Integrate and orchestrate DBA tasks into the DevOps toolchain and take advantage of AI and machine learning when possible to intelligently automate DBA. Embrace modern tools and utilities for managing databases that understand the new digital landscape, including hybrid multi-cloud scenarios. And. finally, always be learning about new technologies, trends, and really, everything. Then, perhaps, we can overcome the plight of the modern DBA.