Applying DevOps practices to advance digital transformation is top of mind for many enterprises, but there can be questions about whether it makes sense for every aspect of the IT landscape. The possibility of introducing DevOps to database deployments is a relatively new notion that is emerging and trying to cement its place in the process.
Redgate Software, provider of solutions that include database DevOps, recently released its annual report on the pace of such adoption with input gathered from some 2,000 database management and other IT professionals. The report includes perspectives from enterprise organizations on challenges and conflicts they face on this front. Many respondents typically use databases that are some version of Microsoft SQL Server, Oracle, MySQL, MariaDB, or PostgreSQL on-prem or in the cloud.
Kendra Little, primary author of this year’s report and DevOps advocate for Redgate Software, says database DevOps is no different from “standard” DevOps. The basics of improving software development through agile and DevOps principles remain the same but applied to deployments for databases. Some longstanding concerns may have prevented databases from being treated as code in the past, she says, or managed with the same practices as software development. “All of that is fear of changing the database,” Little says.
The potential of treating databases as code with DevOps principles to streamline deployment is starting to be considered by some organizations. Of the respondents from enterprises, 17% indicated DevOps had been adopted for all projects within their organizations, not solely databases. Collectively, 36% of respondents from organizations of all sizes indicated DevOps had been introduced for at least some projects. While that indicates the presence of DevOps is not insignificant, it does show substantial room remains before adoption could be called widespread or universal.
At the very least, early trials of DevOps seem to be happening. The report indicates 72% of respondents from enterprises said experimentation, if not adoption of DevOps, was under way in their organizations.
Implementing DevOps for database deployment, Little says, can be a way to break down barriers between dev and IT. She also says it might alleviate fears of introducing errors when making alterations to databases by identifying safe ways to proceed. Flawed handling of a database could have catastrophic results, Little says. “If you lose data, it can put your company out of business.”
If organizations want to treat databases as code and start to deploy to their databases more frequently, she says there is a need to safely manage those practices. Speed of delivery and stability can start to reinforce each other with DevOps enabling both, Little says, citing the work of DORA (DevOps Research and Assessment), which was acquired in 2018 by Google. “If you are delivering frequently that means you’re not redoing your work over and over again,” Little says. “We saw in our report that those who adopted DevOps fully across all projects recorded lower amounts of production defects that required hot fixes when compared to other groups in the report.”
The Redgate report indicated that there are areas where organizations are slow to change even if their current procedures leave the door open to potential issues. For example, the report shows enterprises have lagged in adopting dedicated database environments. A small segment of just 26% of respondents from enterprises indicated their organizations dedicated environments for their business-critical database. This contrasts with the trend of allotting dedicated space for app developers to create. “These days, no one would ever use a shared environment for application development,” Little says. “Every app developer has their own space to build their application code.”
The concern with shared environments, she says, is developers might step on each other’s code or make changes to what another developer is actively working on. The rise of containerization in the database realm, she says, is hoped to make self-service more easily embraced -- but there is some trickiness dealing with larger datasets.
Database DevOps could be a step in the process of improving understanding within organizations that want to transform, Little says, including those that face heavy regulation. She says financial services and the insurance industry are seeing high rates of DevOps adoption that may help enterprises resolve longtime communication issues. “The lack of alignment between development and operations is a top concern,” Little says.
For more on DevOps, follow up with these articles: