SlideShare a Scribd company logo
ABCDs of Database Development
(Always Be Continuously Delivering)
Elizabeth Ayer, Redgate
Continuous Lifecycle London
May the 4th
@ElizAyer #ConLifecycleLon
1.What it is
2.Why you want it
3.Why you can’t have it
@ElizAyer #ConLifecycleLon
Continuous Delivery in 3 minutes
Continuous Delivery is a set of software
development practices which ensure that
software remains releasable at all times. It is
based on continuous integration, and
automated build, test and deployment.
@ElizAyer #ConLifecycleLon
Don’t stockpile pain.
@ElizAyer #ConLifecycleLon
www.freerepublic.com/focus/news/2658403/posts
@ElizAyer #ConLifecycleLon
Version
Control
Build
Release
Management
Validation Production
Dev, Test, Review
@ElizAyer #ConLifecycleLon
Source: 2015 State of DevOps Report, Puppet Labs
https://puppet.com/resources/white-paper/2015-state-of-devops-report
@ElizAyer #ConLifecycleLon
Why the business wants DevOps
@ElizAyer #ConLifecycleLon
Why you want CD
Databases as a bottleneck
3 reasons why databases have traditionally slowed down
deployments:
Technology lag
 SQL
 CI systems
DBA paranoia
 Frankly…
1 2 3
@ElizAyer #ConLifecycleLon
Data persistence
 Data outlives
applications
 Data can’t be
replaced
Version control becomes the source of truth
~~~~
Development uses production-like environments
~~~~
Changes are reviewed at design time
~~~~
Nobody changes the database by hand
Database CD: the rules
@ElizAyer #ConLifecycleLon
Application vs Database CD
Application Database
What you check in: Code Migrations
(or database state)
What ‘build’ means: Compile, link, etc. Validate by running
migrations
What you test in CI: Unit test Upgrade data checks
(and unit test db logic)
When you deploy: Replace application Run migrations
More like infrastructure code than application code….
@ElizAyer #ConLifecycleLon
Demo!
@ElizAyer #ConLifecycleLon
Scenario
@ElizAyer #ConLifecycleLon
Continuous
Integration
TicketDeskDev1 TicketDeskMyTest TicketDeskCI
Version
Control
1. Design change:
table split
2. Validate change
locally: table split
3. Validate change
on CI database
Scenario
@ElizAyer #ConLifecycleLon
Jenkins
TicketDeskDev1 TicketDeskMyTest TicketDeskCI
Git
1. Design change:
table split
2. Validate change
locally: table split
3. Validate change
on CI database
Flyway
Alternative approaches
1. Application controls database
2. Desired state
@ElizAyer #ConLifecycleLon
FAQs
Hotfixes?
Spinning up environments from scratch?
Zero-downtime?
…Wait, isn’t this scary?
@ElizAyer #ConLifecycleLon
@ElizAyer #ConLifecycleLon
or
?
Thank you!
@ElizAyer #ConLifecycleLon
Original Abstract
• Databases often sit outside Continuous Delivery for a variety of reasons,
good and bad. But if you want fast and reliable deployments, the
database cannot remain separate. We’ll talk through the challenges and
look at tools to automate database delivery, highlighting open source
options. I’ll live demo a database change flowing to ‘production,’ giving
a clear picture of a fully automated process. The session is for
developers, ops people, and managers, who will come out
understanding how to customise practices and toolsets, building a
pipeline suited to their environment. The result will accelerate database
delivery, while protecting the organisation’s most valuable asset: its
data.
Image Credits
Slide 5: Kudzu picture via www.freerepublic.com/focus/news/2658403/posts
Slides 6, 13, 14: Icons made by Dave Gandy and Freepik from
www.flaticon.com, CC BY 3.0 license
Slide 7: Data table from 2015 State of DevOps Report, Puppet Labs
https://puppet.com/resources/white-paper/2015-state-of-devops-report
Slide 8: Screenshot of https://www.gov.uk/service-manual/agile/continuous-
delivery.html
Slide 17: Plutonium handling picture from http://www.dsnews.ua/future/pyat-
innovatsiy-proshloy-nedeli-kotorye-vy-mogli-propustit-27122015201700
Simpsons picture from http://showbizgeek.com/the-simpsons-final-episode-
the-perfect-ending/

More Related Content

PDF
TEST SMARTER AND GAIN SOME TIME BACK
PDF
Testing in the 21st Century
PDF
Validations 101
PDF
Is This Election Really That Important?
PDF
Adopting a security attitude in DevOps via DevOpsSec
PDF
Active Components as a Method for Coupling Data and Services – A Database-Dri...
PDF
Relational Database CI/CD
PPTX
The Science of database CICD - UKOUG Breakthrough
TEST SMARTER AND GAIN SOME TIME BACK
Testing in the 21st Century
Validations 101
Is This Election Really That Important?
Adopting a security attitude in DevOps via DevOpsSec
Active Components as a Method for Coupling Data and Services – A Database-Dri...
Relational Database CI/CD
The Science of database CICD - UKOUG Breakthrough

Similar to ABCDs of Database Development (20)

PPTX
Continuous delivery for databases
PPTX
Automate Database Deployment - SQL In The City Workshop
PDF
Workshop: Delivering chnages for applications and databases
PPTX
Database Deployment Pipeline - SQL In The City Workshop 2014
PDF
Continuous delivery for databases - Bristol DevOps Edition
PPTX
Continuous Database Delivery - 7/12/2018
PDF
Our DevOps Journey is Incomplete Without Data
PPTX
Building an automated database deployment pipeline
PDF
ADDO 2021: Why and how to include database changes in the deployment pipeline
PDF
Adopting Continuous Delivery: Adjusting your Architecture
PPTX
Challenges and Best Practices of Database Continuous Delivery
PPTX
Continuous Business: Jenkins User Conference 2015
PPTX
From Continuous Integration to Continuous Delivery and DevOps
PPTX
Continuous Database Delivery
PDF
Our continuous delivery journey
PPTX
Challenges and best practices of database continuous delivery
PPTX
Continuous Delivery: why ? where to start ? how to scale ?
PDF
Continues delivery - Introduction
PDF
We thought we were doing continuous delivery and then...
PDF
Geek Sync | Is Your Database Environment Ready for DevOps?
Continuous delivery for databases
Automate Database Deployment - SQL In The City Workshop
Workshop: Delivering chnages for applications and databases
Database Deployment Pipeline - SQL In The City Workshop 2014
Continuous delivery for databases - Bristol DevOps Edition
Continuous Database Delivery - 7/12/2018
Our DevOps Journey is Incomplete Without Data
Building an automated database deployment pipeline
ADDO 2021: Why and how to include database changes in the deployment pipeline
Adopting Continuous Delivery: Adjusting your Architecture
Challenges and Best Practices of Database Continuous Delivery
Continuous Business: Jenkins User Conference 2015
From Continuous Integration to Continuous Delivery and DevOps
Continuous Database Delivery
Our continuous delivery journey
Challenges and best practices of database continuous delivery
Continuous Delivery: why ? where to start ? how to scale ?
Continues delivery - Introduction
We thought we were doing continuous delivery and then...
Geek Sync | Is Your Database Environment Ready for DevOps?
Ad

More from Elizabeth Ayer (14)

PDF
Beyond Transparency - Elizabeth Ayer - Agile Cambridge.pdf
PDF
ETLS - Strategic Sourcing and Team Topologies - shared.pdf
PDF
Too many cooks or not enough kitchens?
PDF
Ethics of Influence
PDF
Remote work a year on (FCW)
PDF
Managing Remote Teams
PDF
Agile Traps: Common practices that wreck teams (Lesbians Who Tech 2020)
PDF
FlowCon 2019 - Beyond the Black Hole: Product Management for Continuous Delivery
PDF
Continuous Product Management (Industry 2019)
PDF
DevSecOps at Agile 2019
PDF
The A-word Agile and Beyond 2019
PDF
Uncle Sam's Recipe (Mile High Agile)
PDF
Aitc2018 ux impact - elizabeth ayer
PDF
Zen and the Art of Continuous Delivery - Elizabeth Ayer
Beyond Transparency - Elizabeth Ayer - Agile Cambridge.pdf
ETLS - Strategic Sourcing and Team Topologies - shared.pdf
Too many cooks or not enough kitchens?
Ethics of Influence
Remote work a year on (FCW)
Managing Remote Teams
Agile Traps: Common practices that wreck teams (Lesbians Who Tech 2020)
FlowCon 2019 - Beyond the Black Hole: Product Management for Continuous Delivery
Continuous Product Management (Industry 2019)
DevSecOps at Agile 2019
The A-word Agile and Beyond 2019
Uncle Sam's Recipe (Mile High Agile)
Aitc2018 ux impact - elizabeth ayer
Zen and the Art of Continuous Delivery - Elizabeth Ayer
Ad

Recently uploaded (20)

PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
A comparative analysis of optical character recognition models for extracting...
PPTX
Spectroscopy.pptx food analysis technology
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Empathic Computing: Creating Shared Understanding
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPT
Teaching material agriculture food technology
PDF
Encapsulation theory and applications.pdf
PPTX
A Presentation on Artificial Intelligence
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Reach Out and Touch Someone: Haptics and Empathic Computing
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Mobile App Security Testing_ A Comprehensive Guide.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
A comparative analysis of optical character recognition models for extracting...
Spectroscopy.pptx food analysis technology
The Rise and Fall of 3GPP – Time for a Sabbatical?
Empathic Computing: Creating Shared Understanding
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Teaching material agriculture food technology
Encapsulation theory and applications.pdf
A Presentation on Artificial Intelligence
Advanced methodologies resolving dimensionality complications for autism neur...
Building Integrated photovoltaic BIPV_UPV.pdf
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
The AUB Centre for AI in Media Proposal.docx
Encapsulation_ Review paper, used for researhc scholars
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...

ABCDs of Database Development

  • 1. ABCDs of Database Development (Always Be Continuously Delivering) Elizabeth Ayer, Redgate Continuous Lifecycle London May the 4th @ElizAyer #ConLifecycleLon
  • 2. 1.What it is 2.Why you want it 3.Why you can’t have it @ElizAyer #ConLifecycleLon Continuous Delivery in 3 minutes
  • 3. Continuous Delivery is a set of software development practices which ensure that software remains releasable at all times. It is based on continuous integration, and automated build, test and deployment. @ElizAyer #ConLifecycleLon
  • 7. Source: 2015 State of DevOps Report, Puppet Labs https://puppet.com/resources/white-paper/2015-state-of-devops-report @ElizAyer #ConLifecycleLon Why the business wants DevOps
  • 9. Databases as a bottleneck 3 reasons why databases have traditionally slowed down deployments: Technology lag  SQL  CI systems DBA paranoia  Frankly… 1 2 3 @ElizAyer #ConLifecycleLon Data persistence  Data outlives applications  Data can’t be replaced
  • 10. Version control becomes the source of truth ~~~~ Development uses production-like environments ~~~~ Changes are reviewed at design time ~~~~ Nobody changes the database by hand Database CD: the rules @ElizAyer #ConLifecycleLon
  • 11. Application vs Database CD Application Database What you check in: Code Migrations (or database state) What ‘build’ means: Compile, link, etc. Validate by running migrations What you test in CI: Unit test Upgrade data checks (and unit test db logic) When you deploy: Replace application Run migrations More like infrastructure code than application code…. @ElizAyer #ConLifecycleLon
  • 13. Scenario @ElizAyer #ConLifecycleLon Continuous Integration TicketDeskDev1 TicketDeskMyTest TicketDeskCI Version Control 1. Design change: table split 2. Validate change locally: table split 3. Validate change on CI database
  • 14. Scenario @ElizAyer #ConLifecycleLon Jenkins TicketDeskDev1 TicketDeskMyTest TicketDeskCI Git 1. Design change: table split 2. Validate change locally: table split 3. Validate change on CI database Flyway
  • 15. Alternative approaches 1. Application controls database 2. Desired state @ElizAyer #ConLifecycleLon
  • 16. FAQs Hotfixes? Spinning up environments from scratch? Zero-downtime? …Wait, isn’t this scary? @ElizAyer #ConLifecycleLon
  • 19. Original Abstract • Databases often sit outside Continuous Delivery for a variety of reasons, good and bad. But if you want fast and reliable deployments, the database cannot remain separate. We’ll talk through the challenges and look at tools to automate database delivery, highlighting open source options. I’ll live demo a database change flowing to ‘production,’ giving a clear picture of a fully automated process. The session is for developers, ops people, and managers, who will come out understanding how to customise practices and toolsets, building a pipeline suited to their environment. The result will accelerate database delivery, while protecting the organisation’s most valuable asset: its data.
  • 20. Image Credits Slide 5: Kudzu picture via www.freerepublic.com/focus/news/2658403/posts Slides 6, 13, 14: Icons made by Dave Gandy and Freepik from www.flaticon.com, CC BY 3.0 license Slide 7: Data table from 2015 State of DevOps Report, Puppet Labs https://puppet.com/resources/white-paper/2015-state-of-devops-report Slide 8: Screenshot of https://www.gov.uk/service-manual/agile/continuous- delivery.html Slide 17: Plutonium handling picture from http://www.dsnews.ua/future/pyat- innovatsiy-proshloy-nedeli-kotorye-vy-mogli-propustit-27122015201700 Simpsons picture from http://showbizgeek.com/the-simpsons-final-episode- the-perfect-ending/