Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Incorporating the Database Into the DevOps Tool Chain

DZone's Guide to

Incorporating the Database Into the DevOps Tool Chain

With databases being perhaps one of the last great frontiers in the world of DevOps, what types of tools do you need to cross that expanse? Read on to find out.

· Database Zone
Free Resource

Check out the IT Market Clock report for recommendations on how to consolidate and replace legacy databases. Brought to you in partnership with MariaDB.

According to the 2016 Gartner Report, Avoid Failure by Developing a Toolchain That Enables DevOps, “DevOps tool chains emerge from the need to deliver applications in faster and more agile ways.” Correctly adopting and implementing these tools and practices are necessary to not only have a seamless shift to DevOps, but to successfully implement it. The report explains that “aid in the delivery, development, and management of applications throughout the software development lifecycle” can significantly shorten time to market, increase productivity and product quality, and reduce risk.

In the past, I have covered the 11 tools you must have in your DevOps toolchain. In this blog, I want to specifically focus on database tools, as I believe it has not gotten the attention it deserves from DevOps experts and advocates. Managing source code, tasks, configurations, and deployments are incomplete if the database is the weak link. Using specialized database tools such as enforced database source control, database build automation tools, and database verification processes will help ensure your database is a stable resource in your DevOps chain.

Enforced Database Source Control  

Adding a source control management functionality to your database, which covers database lifecycle management — from development through build and deployment - provide the following benefits:

  • Guarantee a single source of truth for your database development assets.
  • Enables teams to work safely and simultaneously within the same environment.
  • Eliminates the possibility of overriding critical changes made by another developer.
  • Rapidly implements changes without lengthy development cycles that include time-consuming, frustrating manual processes.
  • Enforces version control not only on database objects but relevant data as well.
  • Integrates with existing development tools, allowing your team to work within the environment they’re already comfortable with while taking advantage of advanced functionality.

Database Build Automation Tools

As continuous integration and delivery hasve become the norm for application code, particularly in today’s agile environment, databases are frequently being left behind. These automation tools bridge the gap between application code and database development, enabling true merge and build automation for the database. Benefits include:

  • A 95% reduction in deployment costs
  • The ability to deploy database changes in accordance with business requirements
  • Utilize impact analysis – not damage control – with three-way, baseline-aware analysis
  • Merge database code with unparalleled ease
  • Build a continuous integration environment containing all database changes
  • Deployment risk mitigation and substantially reduced downtime
  • Achieve true database release automation

Database Security and Regulatory Compliance 

Security and regulatory compliance are increasing concerns for companies in today’s complex business climate. In certain instances, this is a more substantial concern than in others, in which unauthorized database changes can spell disaster. Controlling and verifying changes to database objects helps enforce roles and responsibilities and enables you to:

  • Define and enforce database change policies through the assignment of roles and responsibilities. (for example, SQL Server and Oracle).
  • Prevent unauthorized and undocumented changes to the database, with the ability to define access levels down to the individual object and data level.
  • Get a complete, reliable audit trail while minimizing manual documentation requirements for your development team.
  • Prevent team members from straying from the defined, efficient process, ensuring smooth development and deployment.
  • Segregation of duties (SoD).

No implementation of the DevOps “culture of collaboration” is complete without the adoption of the tools described above. These tools provide transparent workflow — from development through operations — for the DBA and the database to integrate safely into DevOps.

Interested in reducing database costs by moving from Oracle Enterprise to open source subscription?  Read the total cost of ownership (TCO) analysis. Brought to you in partnership with MariaDB.

Topics:
devops ,database ,tool chains ,continuous integration

Published at DZone with permission of Yaniv Yehuda, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

THE DZONE NEWSLETTER

Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

X

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}