DBmaestro’s 2018 Database DevOps Report, based on survey responses from 244 Information Technology (IT) professionals from around the world, reveals the growing use of DevOps to speed the delivery of database changes—though those changes are mostly not being deployed on a daily basis.
More often than not, the bottleneck in the process is that companies only allow changes to be made by Database Administrators (DBAs).
The report also offers insight into the latest challenges and best practices of companies already using or looking to implement DevOps for databases. While this blog highlights insight from a few key survey results, a complete look at all of the report findings is available by downloading the full 2018 Database DevOps Report.
One of the things uncovered in the report is that while drafting database changes is a common task for DBAs, consuming approximately 22% their time, deploying those changes is a process that comes with big risks. When done improperly, it can cause significant downtime, impact the database’s performance, and even result in data loss.
It doesn’t help matters that database crashes remain disconcertingly common—almost a third (28%) of survey respondents had a problem in the past month alone. Looking at the past three months, that number jumps to 48%. The report also shows that frequent database updates contribute to a high rate of crashes.
The good news is that many of the issues that can occur when database changes are made can be addressed through the use of release automation tools for databases, similar to what DevOps has done for years in code development.
Indeed, it’s not just a matter of preventing mistakes, but also of creating advantages, with companies bringing a more “DevOps-y” approach to the database, simultaneously accelerating the release management process and making it more resilient. The upshot being faster database change deployment and fewer database errors.
The 2018 Database DevOps Report sheds light on how IT professionals are using DevOps for their projects, what those projects are, and the biggest risks and errors they’re encountering when making database changes.
Also highlighted in the report is how database changes are made, by whom, with what frequency, and much more.
Another insight uncovered in the 2018 report is that more than half of the companies surveyed, 54%, are today actively using continuous delivery practices and tools for application development in 50% or more of their IT projects. The same cannot be said for databases. To date, only 37% of respondents have adopted continuous delivery for databases.
Interestingly enough, while the rate of continuous delivery adoption for databases clearly lags behind that of application development, it remains an area of great interest for companies in 2018. In fact, 17% of survey respondents indicated plans to adopt continuous delivery for just that purpose.
Another finding of the 2018 report concerns the main reasons why errors occur when deploying database changes. According to survey respondents, 19.3% attribute the biggest cause of errors to accidental overrides, followed closely at 19% by the use of invalid code. Rounding out the top three error causes, at 18%, are conflicts that occur between different teams.
What’s interesting is that each of these reasons has in the past been problematic in the world of application code development. In this case, the issues were effectively dealt with by implementing tools to manage version control, automate the application deployment process, and generally operate in line with release mangement best practices.
Similarly, for those companies looking to reduce or eliminate the main causes for database change errors, the key will be in finding a way to adopt release automation and version control for the database environment. In that regard, database release automation and database version control tools may be just the answer they’re after.
When changes are made to the database, more often than not it’s done by DBAs using one of three methods.
More than half of the survey respondents, 51%, cite execution of scripts as the main method employed for performing database changes. The process is manual in nature, involving hand-crafted scripts, time consuming and error prone.
While the use of automation tools offers a viable alternative—one that eliminates the manual effort, chance of human error, and time it takes to process changes—today only 34% of respondents are using such tools to build and submit scripts.
The remaining 15% of respondents say they execute SQL commands manually and directly to the database when implementing changes.
These numbers reveal a potential way companies can drive faster database releases—by finding ways to solve the tension between development needs and the DBAs being the bottleneck in the release management process.
The survey results also revealed that while DevOps has already been widely adopted to quickly deploy development changes, only 14% of respondents are using it when it comes to databases. With DBAs typically the only ones allowed to make database-related changes, implementing DevOps for databases, and in turn database release and automation functionality, will offer a clear path to simplifying the DBA’s day-to-day responsibilities. It will drive a faster, smoother, higher-quality database release cycle process that’s less error prone.
Another fascinating take away from the report can be found in the frequency with which database changes are occurring within companies, as compared to their last database crash. What isn’t all that surprising is that with most database changes being done manually, the amount of failures that occur increases as the frequency of deployments increases.
What this means is that for any company looking to increase its deployment frequency in 2018 and beyond, finding ways to automate database releases will be absolutely essential.
By automating this process, companies not only gain a way to accelerate the release management process by doing away with time-consuming manual work, but they also eliminate the human errors that may result in devastating and potentially costly crashes.
How to overcome release management challenges? Read more to find out.
Download the full 2018 DevOps for Database Report today and gain insight into your peers’ views on DevOps for database challenges and best practices. And, feel free to weigh in on our survey results by sharing your own experiences. You can even tell us what you would like to see in the survey next year. All you have to do is leave a comment here or contact us directly at DBmaestro.
If you enjoyed this post, check out our guide on DevOps release process.