As organizations invest in DevOps to release more frequently, there’s a need to treat the database tier as an integral part of your automated delivery pipeline—to build, test, and deploy database changes just like any other part of your application.
However, databases (particularly RDBMS) are different from source code and pose unique challenges to continuous delivery, especially in the context of deployments. Often, code changes require updating or migrating the database before the application can be deployed. A deployment method that works for installing a small database or a green-field application may not be suitable for industrial-scale databases. Updating the database can be more demanding than updating the app layer: database changes are more difficult to test, and rollbacks are harder. Furthermore, for organizations that strive to minimize service interruption to end users, database updates with no downtime are a laborious operation.
Your database stores your organization’s most mission-critical and sensitive data (transaction data, business data, user information, etc.). As you update your database, you want to ensure data integrity, ACID, and data retention and have a solid rollback strategy in case things go wrong.
Avan Mathur shares strategies for database deployments and rollbacks as well as some patterns and best practices for reliably deploying databases as part of your CD pipeline, safely rolling back database code, ensuring data integrity, handling advanced scenarios and backend processes (such as scheduled tasks, ETL routines, replication architecture, and linked databases across distributed infrastructure), and handling legacy database and more modern data management solutions.
Avan (Avantika) Mathur is the product manager for ElectricFlow. Previously, Avan was the global technical account manager at Electric Cloud, helping large enterprises across the finserv, retail, and embedded industries accelerate their DevOps adoptions. Prior to Electric Cloud, she worked as a Linux kernel developer at IBM. Avan has worked with customers to design complex automation solutions and optimize their delivery pipeline, speed up software-driven innovation, and increase Agile throughput. She holds a degree in computer science.
©2017, O'Reilly Media, Inc. • (800) 889-8969 or (707) 827-7019 • Monday-Friday 7:30am-5pm PT • All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners. • email@example.com