SlideShare ist ein Scribd-Unternehmen logo
1 von 31
Database Continuous Delivery
Yaniv Yehuda
Uri Margalit
Before We Begin
• You will be on mute for the duration of the event

• We are now talking so please type a message
in the Questions box in the Control Panel if you can’t
hear us (please check your speakers and
GoToWebinar audio settings first)
• There will be a Q+A session at the end, you can start
submitting you questions on the Q&A bar on your
gotowebinar dashboard.

• A recording of the full webinar will be put up online

2
Presenters
Yaniv Yehuda
• CTO, Co-Founder at DBmaestro

Uri Margalit
• Director of Products at DBmaestro

3
DBmaestro: DevOps for Database
Streamline Database
Development Process
Reduce Database
Development Costs
Instill Change Policy Enforcement

Mitigate Deployment Risks

Automate Deployment Process

Reduce Deployment
cost by 95%

YY
Agile world…
• Doing better with less
• Reacting quickly to market needs
• Getting ahead of competition
• Just can’t wait 6 months for that next
release…
• Agile Development
• Process Automation
• DevOps
5
Continuous *what*?

Continuous Integration
!

Continuous Delivery
?

Continuous Deployment
6
What is Continuous Integration?
• Principles and practices
• Been around for a while
• Focus on streamlining development
•
•
•
•
•

Developers integrate code into shared repository
Each check-in is verified
Automated builds
Automated tests
High visibility

• Easier & quicker to find problems, less back
tracks => short integrations
7
And Continuous Delivery?
• Next step after continuous integration
• Becoming lean, and even more Agile
• Make sure each change is releasable
• Develop-> build-> test-> move to staging-> acceptance test

• Build a process to release with a push of a button
• Deploy to production-> test production

• Actual deployment to production in manually
actuated
=> Ensure risk mitigation and high efficiency
8
Continuous Delivery

Fail
Pass

Image from Wikipedia

9
Continuous Deployment
• Automating changes all the way to production
• Develop-> build-> test-> move to staging-> acceptance test->
deploy to production-> test production

• Makes sense for Facebook, Amazon, i.e. - for
large SAAS solutions.
• A/B test new features
• Stream traffic to new releases etc…

• Not for everyone…
10
How Do I Measure Success?
•
•
•
•

More rapid changes
Fewer changes backed out
Better collaboration
Fewer defects

• Ultimately better service
• Happy customers
• Profitability

11
To summarize…
• Automate “everything”
• Move the process upstream
• Create the deployment pipeline

12
But…

13
Database is a Key Component
• The database holds your essential
information
• Changes can impact the entire system
• Need to be synchronized with other changes
• Often overlooked

14
The Weakest Link In a Chain
• Old adage but true
• The database is often “forgotten” and
therefore can become the weakest link
• Essential from a compliance point of view
• Should be the strongest link
• “Using NoSQL can eliminate the step of data migrations and
schema changes, often manual steps or exceptions to a continuous
delivery workflow” http://en.wikipedia.org/wiki/Continuous_delivery

(Rarely a practical option…)
15
Reaching Inside the Database
• There is more to a database than SQL scripts
•
•
•
•
•

Schema structure
Code
Content and meta-content
Internal dependencies
…

• Ensure that changes are not made without
authorization
• Ensure no out-of-process changes

16
Developers and DBAs
•
•
•
•

Silos exist…
Don’t always communicate effectively
Need to share knowledge
Need to follow same procedures & best
practices

17
Two isolated Processes
Development Process

Version Control Process
(file based)
Check-Out
Script

?
Check-In
Script

?

A

Modify Script

Get updated
Script from DB

?

18

?

Compile
Script
in DB
A’

Debug Script
in DB
Database deployment automation
• Major challenge…
• Risky if done incorrectly…
• Conflicts & Merges
• Code overrides
• Outdated update scripts

• Need Impact analysis processes
• Traceability and transparency
• Audit and compliance
• Automating problems into production is a major
risk!!!
19
Where Do We Start
•
•
•
•
•
•

Start in the beginning
Build quality in from the beginning
Incremental steps
Move to QA next…
Take a complete lifecycle approach
Iterative approach to improving process

20
Traceability

Coordinated Process

Well Defined Processes

Impact Analysis

Dealing with challenges…
Task Based Development

Start in the Beginning

No Out-of-Process Changes

Automation
21
Version Control - One Enforced Process

22
Development Methods

Dev
Dev
Dev

Int

QA

Deploy
Re-Base (due to defects)
Environment

23

Stage

Prod
Built Proof Deployment Automation
Simple Compare & Sync
Source vs.
Target
=
≠

Baseline Aware Deployment
Source vs.
Baseline

Action
No Action

Target vs.
Baseline

Action

=

=

Override

=

≠

Ignore

≠

You do not have all
of the information

No Action

≠

?

=

≠

Merge

With Baselines and 3 way
analysis the unknown is now
known

24
If a Picture is Worth a
Thousand Words…

25
Demo flow
Starting Point
• 3 environments: PROD, Critical Bug Fix Branch, UAT

Flow
• Make critical fixes
•
•
•
•

Change the dedicate branch
Test
Promote to PROD
Test PROD

• Promote the UAT to PROD
• Test
• Promote to PROD
• Test PROD
26
Summary
Dev…
• Enforce best practices for database development
• Closely manage your database development
• Know who can do what, where, when & why

…Ops
• Build a safety net to catch problems early
• Reduce deployment issues
• Enable automated deployments
27
Q&A

28
Links
• http://www.thoughtworks.com/continuous-integration
• http://www.thoughtworks.com/continuous-delivery

• http://martinfowler.com/articles/continuousIntegration.html
• http://puppetlabs.com/blog/continuous-delivery-vs-continuousdeployment-whats-diff
• http://refcardz.dzone.com/refcardz/continuous-delivery-patterns

• http://en.wikipedia.org/wiki/Continuous_integration
• http://en.wikipedia.org/wiki/Application_release_automation
• http://en.wikipedia.org/wiki/Continuous_delivery

29
If we broadcast the recording, then is it possible to pause
and add a poll? Who will handle it?

A Quick Poll 

30
Database continuous delivery

Weitere ähnliche Inhalte

Andere mochten auch

Software Configuration Management Problemas e Soluções
Software Configuration Management Problemas e SoluçõesSoftware Configuration Management Problemas e Soluções
Software Configuration Management Problemas e Soluçõeselliando dias
 
How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?Michael Elder
 
Go2Group_secrets of high-performing software teams_EAD event_san jose_Doug Bass
Go2Group_secrets of high-performing software teams_EAD event_san jose_Doug BassGo2Group_secrets of high-performing software teams_EAD event_san jose_Doug Bass
Go2Group_secrets of high-performing software teams_EAD event_san jose_Doug BassGo2Group, Inc.
 
Trustworthy Transparency and Lean Traceability
Trustworthy Transparency and Lean TraceabilityTrustworthy Transparency and Lean Traceability
Trustworthy Transparency and Lean TraceabilityBrad Appleton
 
Continuous delivery made possible
Continuous delivery made possibleContinuous delivery made possible
Continuous delivery made possiblemimmozzo_
 
Delphix modernization whitepaper
Delphix  modernization whitepaperDelphix  modernization whitepaper
Delphix modernization whitepaperFranco_Dagosto
 
Delphix and DBmaestro
Delphix and DBmaestroDelphix and DBmaestro
Delphix and DBmaestroKyle Hailey
 
DBTA Data Summit : Eliminating the data constraint in Application Development
DBTA Data Summit : Eliminating the data constraint in Application DevelopmentDBTA Data Summit : Eliminating the data constraint in Application Development
DBTA Data Summit : Eliminating the data constraint in Application DevelopmentKyle Hailey
 
Agile Configuration Management Environments
Agile Configuration Management EnvironmentsAgile Configuration Management Environments
Agile Configuration Management EnvironmentsBrad Appleton
 
Test case management and requirements traceability
Test case management and requirements traceabilityTest case management and requirements traceability
Test case management and requirements traceabilityGo2Group, Inc.
 
Delphix Workflow for SQL Server
Delphix Workflow for SQL ServerDelphix Workflow for SQL Server
Delphix Workflow for SQL Serverrcaccia
 
Preventing the Next Deployment Issue with Continuous Performance Testing and ...
Preventing the Next Deployment Issue with Continuous Performance Testing and ...Preventing the Next Deployment Issue with Continuous Performance Testing and ...
Preventing the Next Deployment Issue with Continuous Performance Testing and ...Correlsense
 
MuleSoft Connect 2015 - Go2Group presentation
MuleSoft Connect 2015 - Go2Group presentationMuleSoft Connect 2015 - Go2Group presentation
MuleSoft Connect 2015 - Go2Group presentationGo2Group, Inc.
 
Nyoug delphix slideshare
Nyoug delphix slideshareNyoug delphix slideshare
Nyoug delphix slideshareKyle Hailey
 
SCM Patterns for Agile Architectures
SCM Patterns for Agile ArchitecturesSCM Patterns for Agile Architectures
SCM Patterns for Agile ArchitecturesBrad Appleton
 
Five Pain Points of Agile Development (And How Software Version Management Ca...
Five Pain Points of Agile Development (And How Software Version Management Ca...Five Pain Points of Agile Development (And How Software Version Management Ca...
Five Pain Points of Agile Development (And How Software Version Management Ca...Perforce
 

Andere mochten auch (18)

Software Configuration Management Problemas e Soluções
Software Configuration Management Problemas e SoluçõesSoftware Configuration Management Problemas e Soluções
Software Configuration Management Problemas e Soluções
 
How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?
 
Faking Hell
Faking HellFaking Hell
Faking Hell
 
Go2Group_secrets of high-performing software teams_EAD event_san jose_Doug Bass
Go2Group_secrets of high-performing software teams_EAD event_san jose_Doug BassGo2Group_secrets of high-performing software teams_EAD event_san jose_Doug Bass
Go2Group_secrets of high-performing software teams_EAD event_san jose_Doug Bass
 
Trustworthy Transparency and Lean Traceability
Trustworthy Transparency and Lean TraceabilityTrustworthy Transparency and Lean Traceability
Trustworthy Transparency and Lean Traceability
 
Continuous delivery made possible
Continuous delivery made possibleContinuous delivery made possible
Continuous delivery made possible
 
In (database) automation we trust
In (database) automation we trustIn (database) automation we trust
In (database) automation we trust
 
Delphix modernization whitepaper
Delphix  modernization whitepaperDelphix  modernization whitepaper
Delphix modernization whitepaper
 
Delphix and DBmaestro
Delphix and DBmaestroDelphix and DBmaestro
Delphix and DBmaestro
 
DBTA Data Summit : Eliminating the data constraint in Application Development
DBTA Data Summit : Eliminating the data constraint in Application DevelopmentDBTA Data Summit : Eliminating the data constraint in Application Development
DBTA Data Summit : Eliminating the data constraint in Application Development
 
Agile Configuration Management Environments
Agile Configuration Management EnvironmentsAgile Configuration Management Environments
Agile Configuration Management Environments
 
Test case management and requirements traceability
Test case management and requirements traceabilityTest case management and requirements traceability
Test case management and requirements traceability
 
Delphix Workflow for SQL Server
Delphix Workflow for SQL ServerDelphix Workflow for SQL Server
Delphix Workflow for SQL Server
 
Preventing the Next Deployment Issue with Continuous Performance Testing and ...
Preventing the Next Deployment Issue with Continuous Performance Testing and ...Preventing the Next Deployment Issue with Continuous Performance Testing and ...
Preventing the Next Deployment Issue with Continuous Performance Testing and ...
 
MuleSoft Connect 2015 - Go2Group presentation
MuleSoft Connect 2015 - Go2Group presentationMuleSoft Connect 2015 - Go2Group presentation
MuleSoft Connect 2015 - Go2Group presentation
 
Nyoug delphix slideshare
Nyoug delphix slideshareNyoug delphix slideshare
Nyoug delphix slideshare
 
SCM Patterns for Agile Architectures
SCM Patterns for Agile ArchitecturesSCM Patterns for Agile Architectures
SCM Patterns for Agile Architectures
 
Five Pain Points of Agile Development (And How Software Version Management Ca...
Five Pain Points of Agile Development (And How Software Version Management Ca...Five Pain Points of Agile Development (And How Software Version Management Ca...
Five Pain Points of Agile Development (And How Software Version Management Ca...
 

Mehr von DBmaestro - Database DevOps

Continuous delivery best practices and essential tools
Continuous delivery best practices and essential toolsContinuous delivery best practices and essential tools
Continuous delivery best practices and essential toolsDBmaestro - Database DevOps
 
Webinar - Devops platform for the evolving enterprise
Webinar - Devops platform for the evolving enterpriseWebinar - Devops platform for the evolving enterprise
Webinar - Devops platform for the evolving enterpriseDBmaestro - Database DevOps
 
Challenges and Best Practices of Database Continuous Delivery
Challenges and Best Practices of Database Continuous DeliveryChallenges and Best Practices of Database Continuous Delivery
Challenges and Best Practices of Database Continuous DeliveryDBmaestro - Database DevOps
 
Challenges and best practices of database continuous delivery
Challenges and best practices of database continuous deliveryChallenges and best practices of database continuous delivery
Challenges and best practices of database continuous deliveryDBmaestro - Database DevOps
 
Continuous Delivery & the Database- The Final Frontier
Continuous Delivery & the Database- The Final FrontierContinuous Delivery & the Database- The Final Frontier
Continuous Delivery & the Database- The Final FrontierDBmaestro - Database DevOps
 
Protect your Database with Data Masking & Enforced Version Control
Protect your Database with Data Masking & Enforced Version Control	Protect your Database with Data Masking & Enforced Version Control
Protect your Database with Data Masking & Enforced Version Control DBmaestro - Database DevOps
 
Why retail companies can't afford database downtime
Why retail companies can't afford database downtimeWhy retail companies can't afford database downtime
Why retail companies can't afford database downtimeDBmaestro - Database DevOps
 
DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings RevealedDBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings RevealedDBmaestro - Database DevOps
 
The challenges and pitfalls of database deployment automation
The challenges and pitfalls of database deployment automationThe challenges and pitfalls of database deployment automation
The challenges and pitfalls of database deployment automationDBmaestro - Database DevOps
 
The Future of Change Management and DevOps for Dummies
The Future of Change Management and DevOps for DummiesThe Future of Change Management and DevOps for Dummies
The Future of Change Management and DevOps for DummiesDBmaestro - Database DevOps
 

Mehr von DBmaestro - Database DevOps (19)

Unlocking the Potential of Database Automation
Unlocking the Potential of Database AutomationUnlocking the Potential of Database Automation
Unlocking the Potential of Database Automation
 
Continuous delivery best practices and essential tools
Continuous delivery best practices and essential toolsContinuous delivery best practices and essential tools
Continuous delivery best practices and essential tools
 
Webinar - Devops platform for the evolving enterprise
Webinar - Devops platform for the evolving enterpriseWebinar - Devops platform for the evolving enterprise
Webinar - Devops platform for the evolving enterprise
 
Enterprise scale continuous delivery
Enterprise scale continuous deliveryEnterprise scale continuous delivery
Enterprise scale continuous delivery
 
Challenges and Best Practices of Database Continuous Delivery
Challenges and Best Practices of Database Continuous DeliveryChallenges and Best Practices of Database Continuous Delivery
Challenges and Best Practices of Database Continuous Delivery
 
Challenges and best practices of database continuous delivery
Challenges and best practices of database continuous deliveryChallenges and best practices of database continuous delivery
Challenges and best practices of database continuous delivery
 
DevOps for Database Solution
DevOps for Database SolutionDevOps for Database Solution
DevOps for Database Solution
 
State of Database Continuous Delivery 2014
State of Database Continuous Delivery 2014State of Database Continuous Delivery 2014
State of Database Continuous Delivery 2014
 
DevOps for Database 2015 Survey Infographic
DevOps for Database 2015 Survey InfographicDevOps for Database 2015 Survey Infographic
DevOps for Database 2015 Survey Infographic
 
Continuous Delivery & the Database- The Final Frontier
Continuous Delivery & the Database- The Final FrontierContinuous Delivery & the Database- The Final Frontier
Continuous Delivery & the Database- The Final Frontier
 
Protect your Database with Data Masking & Enforced Version Control
Protect your Database with Data Masking & Enforced Version Control	Protect your Database with Data Masking & Enforced Version Control
Protect your Database with Data Masking & Enforced Version Control
 
Why retail companies can't afford database downtime
Why retail companies can't afford database downtimeWhy retail companies can't afford database downtime
Why retail companies can't afford database downtime
 
DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings RevealedDBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
DBmaestro's State of the Database Continuous Delivery Survey- Findings Revealed
 
Taking Database Development to the 21st Century
Taking Database Development to the 21st CenturyTaking Database Development to the 21st Century
Taking Database Development to the 21st Century
 
The challenges and pitfalls of database deployment automation
The challenges and pitfalls of database deployment automationThe challenges and pitfalls of database deployment automation
The challenges and pitfalls of database deployment automation
 
manage databases like codebases
manage databases like codebasesmanage databases like codebases
manage databases like codebases
 
The Future of Change Management and DevOps for Dummies
The Future of Change Management and DevOps for DummiesThe Future of Change Management and DevOps for Dummies
The Future of Change Management and DevOps for Dummies
 
DevOps for Database webinar
DevOps for Database webinarDevOps for Database webinar
DevOps for Database webinar
 
Version Control meets Database Control
Version Control meets Database ControlVersion Control meets Database Control
Version Control meets Database Control
 

Kürzlich hochgeladen

Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 

Kürzlich hochgeladen (20)

Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 

Database continuous delivery

  • 2. Before We Begin • You will be on mute for the duration of the event • We are now talking so please type a message in the Questions box in the Control Panel if you can’t hear us (please check your speakers and GoToWebinar audio settings first) • There will be a Q+A session at the end, you can start submitting you questions on the Q&A bar on your gotowebinar dashboard. • A recording of the full webinar will be put up online 2
  • 3. Presenters Yaniv Yehuda • CTO, Co-Founder at DBmaestro Uri Margalit • Director of Products at DBmaestro 3
  • 4. DBmaestro: DevOps for Database Streamline Database Development Process Reduce Database Development Costs Instill Change Policy Enforcement Mitigate Deployment Risks Automate Deployment Process Reduce Deployment cost by 95% YY
  • 5. Agile world… • Doing better with less • Reacting quickly to market needs • Getting ahead of competition • Just can’t wait 6 months for that next release… • Agile Development • Process Automation • DevOps 5
  • 6. Continuous *what*? Continuous Integration ! Continuous Delivery ? Continuous Deployment 6
  • 7. What is Continuous Integration? • Principles and practices • Been around for a while • Focus on streamlining development • • • • • Developers integrate code into shared repository Each check-in is verified Automated builds Automated tests High visibility • Easier & quicker to find problems, less back tracks => short integrations 7
  • 8. And Continuous Delivery? • Next step after continuous integration • Becoming lean, and even more Agile • Make sure each change is releasable • Develop-> build-> test-> move to staging-> acceptance test • Build a process to release with a push of a button • Deploy to production-> test production • Actual deployment to production in manually actuated => Ensure risk mitigation and high efficiency 8
  • 10. Continuous Deployment • Automating changes all the way to production • Develop-> build-> test-> move to staging-> acceptance test-> deploy to production-> test production • Makes sense for Facebook, Amazon, i.e. - for large SAAS solutions. • A/B test new features • Stream traffic to new releases etc… • Not for everyone… 10
  • 11. How Do I Measure Success? • • • • More rapid changes Fewer changes backed out Better collaboration Fewer defects • Ultimately better service • Happy customers • Profitability 11
  • 12. To summarize… • Automate “everything” • Move the process upstream • Create the deployment pipeline 12
  • 14. Database is a Key Component • The database holds your essential information • Changes can impact the entire system • Need to be synchronized with other changes • Often overlooked 14
  • 15. The Weakest Link In a Chain • Old adage but true • The database is often “forgotten” and therefore can become the weakest link • Essential from a compliance point of view • Should be the strongest link • “Using NoSQL can eliminate the step of data migrations and schema changes, often manual steps or exceptions to a continuous delivery workflow” http://en.wikipedia.org/wiki/Continuous_delivery (Rarely a practical option…) 15
  • 16. Reaching Inside the Database • There is more to a database than SQL scripts • • • • • Schema structure Code Content and meta-content Internal dependencies … • Ensure that changes are not made without authorization • Ensure no out-of-process changes 16
  • 17. Developers and DBAs • • • • Silos exist… Don’t always communicate effectively Need to share knowledge Need to follow same procedures & best practices 17
  • 18. Two isolated Processes Development Process Version Control Process (file based) Check-Out Script ? Check-In Script ? A Modify Script Get updated Script from DB ? 18 ? Compile Script in DB A’ Debug Script in DB
  • 19. Database deployment automation • Major challenge… • Risky if done incorrectly… • Conflicts & Merges • Code overrides • Outdated update scripts • Need Impact analysis processes • Traceability and transparency • Audit and compliance • Automating problems into production is a major risk!!! 19
  • 20. Where Do We Start • • • • • • Start in the beginning Build quality in from the beginning Incremental steps Move to QA next… Take a complete lifecycle approach Iterative approach to improving process 20
  • 21. Traceability Coordinated Process Well Defined Processes Impact Analysis Dealing with challenges… Task Based Development Start in the Beginning No Out-of-Process Changes Automation 21
  • 22. Version Control - One Enforced Process 22
  • 23. Development Methods Dev Dev Dev Int QA Deploy Re-Base (due to defects) Environment 23 Stage Prod
  • 24. Built Proof Deployment Automation Simple Compare & Sync Source vs. Target = ≠ Baseline Aware Deployment Source vs. Baseline Action No Action Target vs. Baseline Action = = Override = ≠ Ignore ≠ You do not have all of the information No Action ≠ ? = ≠ Merge With Baselines and 3 way analysis the unknown is now known 24
  • 25. If a Picture is Worth a Thousand Words… 25
  • 26. Demo flow Starting Point • 3 environments: PROD, Critical Bug Fix Branch, UAT Flow • Make critical fixes • • • • Change the dedicate branch Test Promote to PROD Test PROD • Promote the UAT to PROD • Test • Promote to PROD • Test PROD 26
  • 27. Summary Dev… • Enforce best practices for database development • Closely manage your database development • Know who can do what, where, when & why …Ops • Build a safety net to catch problems early • Reduce deployment issues • Enable automated deployments 27
  • 29. Links • http://www.thoughtworks.com/continuous-integration • http://www.thoughtworks.com/continuous-delivery • http://martinfowler.com/articles/continuousIntegration.html • http://puppetlabs.com/blog/continuous-delivery-vs-continuousdeployment-whats-diff • http://refcardz.dzone.com/refcardz/continuous-delivery-patterns • http://en.wikipedia.org/wiki/Continuous_integration • http://en.wikipedia.org/wiki/Application_release_automation • http://en.wikipedia.org/wiki/Continuous_delivery 29
  • 30. If we broadcast the recording, then is it possible to pause and add a poll? Who will handle it? A Quick Poll  30