The adoption of highly scriptable cloud-based technologies, along with the emergence of continuous integration (CI) and continuous deployment (CD) tools, has created an environment in which every operations process should be scriptable and all manual processes targeted for database automation. Organizations with a DevOps approach to application lifecycle management should automate every process imaginable, but they often hit a wall when they reach the persistence layer. Emerging technologies have the potential to make that limitation disappear.
“Database release automation is a real problem,” Datical CTO Robert Reeves says. “You’ve got lots of great ways of automating the application and provisioning servers. But we are still asking DBAs [database administrators] to just work faster, work harder, as they do manual updates.”
So, why can’t we take the lessons we learned from Agile or the progress DevOps has made and apply them to the persistence layer?
“Because of state,” Reeves explains. Unlike applications, a database can’t simply be deleted and recreated on the fly as though you were deploying and undeploying a microservice packaged in a Docker container. “You can’t just zap it.” Continue reading