SlideShare une entreprise Scribd logo
1  sur  50
▪ You will be on mute for the duration of the event
▪ 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)
▪ If you have questions during the session, please submit
them on the Q&A bar on your GoToWebinar dashboard
and we will address them at the end
▪ A recording of the full webinar will be put up online
Before we Begin
Yaniv Yehuda
Co-Founder & CTO at DBmaestro
Spent the last years raising awareness about the challenges around database
development and deployment, and how to support database Continuous Delivery.
Joined NessPRO as a product manager for the line of SAP complementary products and
DevOps solutions for the DB.
Shachar Furman
Product Manager, Central Systems, NessPRO
About the presenters
Outline
▪ The Adoption of Continuous Delivery
▪ The Reasons why the Database is Often Left Behind
▪ Single Source of Truth for your Database
▪ Best Practices for Including the Database in CD
▪ The Bigger Picture – Automation and Stopping the Line
▪ Q&A
NessPRO is Ness Technologies’ products group and the sole representative in
Israel of more than 30 international and Israeli organizations which develop
software products designated for the enterprise market.
About NessPRO
About DBmaestro
The leading provider of DevOps for Database
Database development and deployment automation
Media Coverage
OperationsDevelopment
Smoother Effort
Less Risk
Effort Peaks
High Risk
Agile & DevOps
The pain–Fortune 1000 by IDC
Application
Downtime Cost $2B/Y
Deployments/month 2x
Growth
Accelerate Delivery by 20% Compliance & Audit
Enforcement
Infra Failure
Hourly Cost $100K
IDC DevOps Best Practices metrics: Fortune 1000 Survey, December 2014
Loss of
Reputation
▪ Recently Conducted Survey
Continuous Delivery moving ahead!
▪ Every business is an IT business
▪ Customers demand that you deliver new features faster
− Agile Development
− Process Automation
− DevOps
▪ Can’t wait 6 months for that next waterfall release…
▪ If you don’t, your competitor probably will
DevOps & CD: a must for every company
Continuous Integration
Continuous Delivery
Continuous Deployment
Continuous Processes
▪ More rapid changes
▪ Fewer changes backed out
▪ Better collaboration
▪ Fewer defects
▪ Ultimately better service
▪ Happy customers
▪ Profitability
How Do I Measure Success?
Why Continuous Delivery?
15
But…
what about the database?
Only 13% are actually performing basic CD practices for the DB!!!
Manual work:
cant scale, cant match CD frequency
not repeatable, prone to error
Continuous Delivery is big and getting bigger, but...
Manual steps lead to Chaos in Emergency Times
90%
Rate this as a risk factor, but
53%
Break the process and test urgent hot-fixes in pre-
production
 Old adage but true
– The database is often neglected and therefore can become the
weakest link
– Manual processes
 Database/Code Silos exist…
– Don’t always communicate effectively
– Need to follow same procedures & best practices
 Essential from a compliance and business point of view
 Should be the strongest link
Is the database the Weakest link in a chain ???
The Database is a constraint
Only 13% automate…
the rest do manual steps…
What is the problem?
▪ Root Causes for issues:
− Challenging manual source control process
− Static deployments code overrides and configuration drift
− Dynamic deployments tools unaware of version control
− No release automation red-flags – don’t know when to stop the line…
File Version Control Process
Today: Two isolated processes
DB Development Process
Check-Out
Script
Modify Script
Get updated
Script from DB
Check-In
Script
Compile
Script
in DB
Debug Script
in DB
?
?
?
?
A
A’
Version control is out of sync from the database and cannot act as
a Single Source of Truth
90%Rate this as a risk factor, yet
72%Admit database may not be in sync with the source repository
▪ Challenges:
■ Code-overrides
■ Working on the wrong revisions
■ Scripts do not always find their way to the version control solution
■ Out of process updates go unnoticed
■ Hard to locate outdated update scripts
▪ Playing safe? What we really need:
■ The upgrade script
■ The actual code of the object
■ A roll-back script
Scripts & version control
X
1.11.1.11.11.21.31.41.51.61.7
Int QA Stage Prod
Database Deploy Script
Dev
Dev
Dev
Model
1.1 1.2
1.2 1.3
1.3 1.4
1.4 1.5
1.5 1.6
1.6 1.7
1.11.11.41.7
1.1 1.2
1.2 1.3
1.3 1.4
1.4 1.5
1.5 1.6
1.6 1.7
1.1 1.2
1.2 1.3
1.3 1.4
1.4 1.5
1.5 1.6
1.6 1.7
Out of Process
Change
X
X
X
X
X
? 1.1.1
X
Challenge with static scripts…
Configuration drift…
60%Of those manually building scripts have to fix or tweak them regularly as part of a deployment process
80%
Rate this as a risk factor, yet
71%
Follow manual processes to create their database deploy scripts
▪ Scripts
− Hard to test in their entirely (holistically)
− Hard to test due to colliding dependencies
− Need to run in a specific order…
− Much harder to deal with project scope changes
▪ Scripts, unless super sophisticated:
− Unaware of changes made in the target environment
− Time passed from their coding to the time they are run
− Potentially overriding production hot-fixes or work done in parallel by another team
Scripts are static…
Test cases using compare & sync tools:
An index exists in source (QA) but not in target (Production)
What should we do? Add the index or not?
Using tools
Safe to automate?
Sure… (?)
Challenge with ‘Compare & Sync’
Safe to automate?
No. Requires manual inspection…
Challenge with ‘Compare & Sync’
70%of those using compare & sync tools have to review and fix the results as they can't always trust them to automatically deploy
correctly
A compare & sync tool:
▪ Is unaware of any changes that occurred before the time it ran
▪ Has no knowledge of changes that took place at the target environment
▪ Does not leverage version control for more information
▪ Unable to deal with conflicts & merges between different teams
▪ Requires manual inspection
▪ Requires detailed knowledge regarding
each change as part of the process
So…no automation…
We fear for automating problems into
production and a major risk!!!
Challenges
The Solution to the challenges
Modern VC integrated DB process
Revision
history
Actions
Standard IDE
Change
management
Enforced and integrated to existing
process
Leverage
Version control knowledge
into
Deployment decisions
1.11.21.31.41.51.61.7
*
Int QA Stage Prod
Dev
Dev
Dev
Model
1.1 1.2
1.2 1.3
1.3 1.4
1.1 1.7
1.1.1 1.7
1.1 1.1 1.11.41.7
Out of Process
Change
1.1.11.7 1.1.11.7
Validate
1.4 1.5
1.5 1.6
1.6 1.7
Configuration Drift prevention / conflict identification
and Validated execution
1.4 1.5
1.5 1.6
1.6 1.7
OR
Baseline aware analysis
Validated execution / Build & deploy on demand
Validate
■ Understand the nature of the changes
■ Raise red flags on conflicts
■ Support out-of-process changes
■ Utilize baseline aware analysis
Safety Net Deployment Automation
If we had the index in the baseline (previous version) and no longer in Dev (i.e. - removed)
=> we should take it down from production…
(Deploy Change)
Deploying changes if needed
Development Baseline
Previous Label /
Production Golden Copy
Production
Development Baseline
Previous Label /
Production Golden Copy
Production
BUT… If no index in baseline => someone else added it to Production…
we should protect the NEW index on production!!!
(Protect Target)
Or protecting target environment…
Dealing with conflicts => merging changes
Conflict Resolving – Meta Data/Content
Continuous Delivery Pipeline Builder
• Define a process
• Automate the process
• Prevent/Alert out of process changes
Raise red flags to stop the line…
if requires human intervention
Impact Analysis! Not Damage Control…
 Automate “everything”
– Package the deployment of database changes along with all your other
application components to give a unified picture
 Move the process upstream
– Easily promote the same package (including database changes!) from one
environment to the next, handling environment-specific differences automatically
 Create the deployment pipeline
For successful CD:
▪ Requited integrations into entire continuous delivery pipeline:
■ IDEs (Oracle, Microsoft, MySQL in dev)
■ Source control (MsTFS, Git, Subversion etc.)
■ Task based development and ticketing systems (Jira, MsTFS, IBM RTC
etc.)
■ Build tools (Jenkins, bamboo etc.)
■ ARA tools (IBM uDeploy, CA release automation, Chef etc.)
Integrated CD world…
▪ Focusing on changes rather than managing changes and
dealing with re-work, boosted overall productivity of 250
developers. We estimate we were able to do 15% more with the
same resources.
▪We went from several fix-centric deployments a day, to one
feature-centric deployment a week.
▪The amount of incidents in production has declined as well. We
had 20% less incidents.
▪CIO @ Credit Card company
“
Testimonials - Efficiency
“
▪ Regulation requirement - SOX and derived 357
▪Auditing - change management approach with change
management auditing. You have to do it anyway, do it
automatically and efficiently.
▪Change management in production itself is regulatory
required (ITIL). But you cannot ensure it without managing
the whole process starting at Dev.
▪We have to comply with regulation - but the business
benefits from it.
▪CIO @ Credit Card company
“
Testimonials - Regulation
Thank you!
Q & A
Shachar Furman Yaniv Yehuda
Shachar.Furman@ness-tech.co.il yanivy@dbmaestro.com
www.ness-tech.co.il www.dbmaestro.com

Contenu connexe

Tendances

Iltam database version control
Iltam database version controlIltam database version control
Iltam database version controluridbmaestro
 
Continuous Integration for Oracle Database Development
Continuous Integration for Oracle Database DevelopmentContinuous Integration for Oracle Database Development
Continuous Integration for Oracle Database DevelopmentVladimir Bakhov
 
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...Serena Software
 
Database continuous integration, unit test and functional test
Database continuous integration, unit test and functional testDatabase continuous integration, unit test and functional test
Database continuous integration, unit test and functional testHarry Zheng
 
Redgate database DevOps demo webinar (with Git & Jenkins)
Redgate database DevOps demo webinar (with Git & Jenkins)Redgate database DevOps demo webinar (with Git & Jenkins)
Redgate database DevOps demo webinar (with Git & Jenkins)Red Gate Software
 
The future of DevOps: fully left-shifted deployments with version control and...
The future of DevOps: fully left-shifted deployments with version control and...The future of DevOps: fully left-shifted deployments with version control and...
The future of DevOps: fully left-shifted deployments with version control and...Red Gate Software
 
Automate Database Deployment - SQL In The City Workshop
Automate Database Deployment - SQL In The City WorkshopAutomate Database Deployment - SQL In The City Workshop
Automate Database Deployment - SQL In The City WorkshopRed Gate Software
 
Continuous delivery for databases
Continuous delivery for databasesContinuous delivery for databases
Continuous delivery for databasesDevOpsGroup
 
Building an Automated Database Deployment Pipeline
Building an Automated Database Deployment PipelineBuilding an Automated Database Deployment Pipeline
Building an Automated Database Deployment PipelineGrant Fritchey
 
Continuous Integration - Oracle Database Objects
Continuous Integration - Oracle Database ObjectsContinuous Integration - Oracle Database Objects
Continuous Integration - Oracle Database ObjectsPrabhu Ramasamy
 
Microsoft SQL Server Continuous Integration
Microsoft SQL Server Continuous IntegrationMicrosoft SQL Server Continuous Integration
Microsoft SQL Server Continuous IntegrationMark Ginnebaugh
 
What Is Slowing My Application Releases?
What Is Slowing My Application Releases?What Is Slowing My Application Releases?
What Is Slowing My Application Releases?Datical
 
Workshop: Delivering chnages for applications and databases
Workshop: Delivering chnages for applications and databasesWorkshop: Delivering chnages for applications and databases
Workshop: Delivering chnages for applications and databasesEduardo Piairo
 
Using Redgate, AKS and Azure to bring DevOps to your Database
Using Redgate, AKS and Azure to bring DevOps to your DatabaseUsing Redgate, AKS and Azure to bring DevOps to your Database
Using Redgate, AKS and Azure to bring DevOps to your DatabaseRed Gate Software
 
Security Implications for a DevOps Transformation
Security Implications for a DevOps TransformationSecurity Implications for a DevOps Transformation
Security Implications for a DevOps TransformationDeborah Schalm
 
Common Challenges in DevOps Change Management
Common Challenges in DevOps Change ManagementCommon Challenges in DevOps Change Management
Common Challenges in DevOps Change ManagementMatt Ray
 
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
 
Moving from application automation to true DevOps by including the database
Moving from application automation to true DevOps by including the databaseMoving from application automation to true DevOps by including the database
Moving from application automation to true DevOps by including the databaseRed Gate Software
 

Tendances (20)

Unlocking the Potential of Database Automation
Unlocking the Potential of Database AutomationUnlocking the Potential of Database Automation
Unlocking the Potential of Database Automation
 
Iltam database version control
Iltam database version controlIltam database version control
Iltam database version control
 
Continuous Integration for Oracle Database Development
Continuous Integration for Oracle Database DevelopmentContinuous Integration for Oracle Database Development
Continuous Integration for Oracle Database Development
 
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
 
Database continuous integration, unit test and functional test
Database continuous integration, unit test and functional testDatabase continuous integration, unit test and functional test
Database continuous integration, unit test and functional test
 
Version Control meets Database Control
Version Control meets Database ControlVersion Control meets Database Control
Version Control meets Database Control
 
Redgate database DevOps demo webinar (with Git & Jenkins)
Redgate database DevOps demo webinar (with Git & Jenkins)Redgate database DevOps demo webinar (with Git & Jenkins)
Redgate database DevOps demo webinar (with Git & Jenkins)
 
The future of DevOps: fully left-shifted deployments with version control and...
The future of DevOps: fully left-shifted deployments with version control and...The future of DevOps: fully left-shifted deployments with version control and...
The future of DevOps: fully left-shifted deployments with version control and...
 
Automate Database Deployment - SQL In The City Workshop
Automate Database Deployment - SQL In The City WorkshopAutomate Database Deployment - SQL In The City Workshop
Automate Database Deployment - SQL In The City Workshop
 
Continuous delivery for databases
Continuous delivery for databasesContinuous delivery for databases
Continuous delivery for databases
 
Building an Automated Database Deployment Pipeline
Building an Automated Database Deployment PipelineBuilding an Automated Database Deployment Pipeline
Building an Automated Database Deployment Pipeline
 
Continuous Integration - Oracle Database Objects
Continuous Integration - Oracle Database ObjectsContinuous Integration - Oracle Database Objects
Continuous Integration - Oracle Database Objects
 
Microsoft SQL Server Continuous Integration
Microsoft SQL Server Continuous IntegrationMicrosoft SQL Server Continuous Integration
Microsoft SQL Server Continuous Integration
 
What Is Slowing My Application Releases?
What Is Slowing My Application Releases?What Is Slowing My Application Releases?
What Is Slowing My Application Releases?
 
Workshop: Delivering chnages for applications and databases
Workshop: Delivering chnages for applications and databasesWorkshop: Delivering chnages for applications and databases
Workshop: Delivering chnages for applications and databases
 
Using Redgate, AKS and Azure to bring DevOps to your Database
Using Redgate, AKS and Azure to bring DevOps to your DatabaseUsing Redgate, AKS and Azure to bring DevOps to your Database
Using Redgate, AKS and Azure to bring DevOps to your Database
 
Security Implications for a DevOps Transformation
Security Implications for a DevOps TransformationSecurity Implications for a DevOps Transformation
Security Implications for a DevOps Transformation
 
Common Challenges in DevOps Change Management
Common Challenges in DevOps Change ManagementCommon Challenges in DevOps Change Management
Common Challenges in DevOps Change Management
 
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
 
Moving from application automation to true DevOps by including the database
Moving from application automation to true DevOps by including the databaseMoving from application automation to true DevOps by including the database
Moving from application automation to true DevOps by including the database
 

Similaire à Challenges and Best Practices of Database Continuous Delivery

Geek Sync I In Database Automation We Trust
Geek Sync I In Database Automation We TrustGeek Sync I In Database Automation We Trust
Geek Sync I In Database Automation We TrustIDERA Software
 
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
 
How Financial Institutions Must Enforce DevOps Organizational Policy
How Financial Institutions Must Enforce DevOps Organizational PolicyHow Financial Institutions Must Enforce DevOps Organizational Policy
How Financial Institutions Must Enforce DevOps Organizational PolicyTamir Belzer
 
JUC Europe 2015: Making Strides towards Enterprise-Scale DevOps...with Jenkin...
JUC Europe 2015: Making Strides towards Enterprise-Scale DevOps...with Jenkin...JUC Europe 2015: Making Strides towards Enterprise-Scale DevOps...with Jenkin...
JUC Europe 2015: Making Strides towards Enterprise-Scale DevOps...with Jenkin...CloudBees
 
Pay pal paypal continuous performance as a self-service with fully-automated...
Pay pal  paypal continuous performance as a self-service with fully-automated...Pay pal  paypal continuous performance as a self-service with fully-automated...
Pay pal paypal continuous performance as a self-service with fully-automated...Dynatrace
 
Webinar: Demonstrating Business Value for DevOps & Continuous Delivery
Webinar: Demonstrating Business Value for DevOps & Continuous DeliveryWebinar: Demonstrating Business Value for DevOps & Continuous Delivery
Webinar: Demonstrating Business Value for DevOps & Continuous DeliveryXebiaLabs
 
The Continuous delivery value - Funaro
The Continuous delivery value - FunaroThe Continuous delivery value - Funaro
The Continuous delivery value - FunaroCodemotion
 
The Continuous delivery Value @ codemotion 2014
The Continuous delivery Value @ codemotion 2014The Continuous delivery Value @ codemotion 2014
The Continuous delivery Value @ codemotion 2014David Funaro
 
The Challenges & Pitfalls of Database Continuous Delivery
The Challenges & Pitfalls of Database Continuous DeliveryThe Challenges & Pitfalls of Database Continuous Delivery
The Challenges & Pitfalls of Database Continuous DeliveryPerforce
 
Webinar: “Mai sentito parlare di Continuous Delivery per il database? Ecco co...
Webinar: “Mai sentito parlare di Continuous Delivery per il database? Ecco co...Webinar: “Mai sentito parlare di Continuous Delivery per il database? Ecco co...
Webinar: “Mai sentito parlare di Continuous Delivery per il database? Ecco co...Emerasoft, solutions to collaborate
 
Tools and practices to use in a Continuous Delivery pipeline
Tools and practices to use in a Continuous Delivery pipelineTools and practices to use in a Continuous Delivery pipeline
Tools and practices to use in a Continuous Delivery pipelineMatteo Emili
 
The Role of Automation in the Journey to Continuous Delivery
The Role of Automation in the Journey to Continuous DeliveryThe Role of Automation in the Journey to Continuous Delivery
The Role of Automation in the Journey to Continuous DeliveryXebiaLabs
 
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
 
Webinar: "DBMaestro: Database Enforced Change Management (DECM) tool"
Webinar: "DBMaestro: Database Enforced Change Management (DECM) tool"Webinar: "DBMaestro: Database Enforced Change Management (DECM) tool"
Webinar: "DBMaestro: Database Enforced Change Management (DECM) tool"Emerasoft, solutions to collaborate
 
DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)Nitin Bhide
 
Delivering Better Software Faster (Without Breaking Everything)
Delivering Better Software Faster (Without Breaking Everything)Delivering Better Software Faster (Without Breaking Everything)
Delivering Better Software Faster (Without Breaking Everything)XebiaLabs
 
Continuous delivery
Continuous deliveryContinuous delivery
Continuous deliveryMasas Dani
 
Introducing Serena Release Manager v5 - Briefing Presentation
Introducing Serena Release Manager v5 - Briefing PresentationIntroducing Serena Release Manager v5 - Briefing Presentation
Introducing Serena Release Manager v5 - Briefing PresentationSerena Software
 

Similaire à Challenges and Best Practices of Database Continuous Delivery (20)

Geek Sync I In Database Automation We Trust
Geek Sync I In Database Automation We TrustGeek Sync I In Database Automation We Trust
Geek Sync I In Database Automation We Trust
 
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
 
Enterprise scale continuous delivery
Enterprise scale continuous deliveryEnterprise scale continuous delivery
Enterprise scale continuous delivery
 
How Financial Institutions Must Enforce DevOps Organizational Policy
How Financial Institutions Must Enforce DevOps Organizational PolicyHow Financial Institutions Must Enforce DevOps Organizational Policy
How Financial Institutions Must Enforce DevOps Organizational Policy
 
JUC Europe 2015: Making Strides towards Enterprise-Scale DevOps...with Jenkin...
JUC Europe 2015: Making Strides towards Enterprise-Scale DevOps...with Jenkin...JUC Europe 2015: Making Strides towards Enterprise-Scale DevOps...with Jenkin...
JUC Europe 2015: Making Strides towards Enterprise-Scale DevOps...with Jenkin...
 
Webinar: "In database automation we trust"
Webinar: "In database automation we trust"Webinar: "In database automation we trust"
Webinar: "In database automation we trust"
 
Pay pal paypal continuous performance as a self-service with fully-automated...
Pay pal  paypal continuous performance as a self-service with fully-automated...Pay pal  paypal continuous performance as a self-service with fully-automated...
Pay pal paypal continuous performance as a self-service with fully-automated...
 
Webinar: Demonstrating Business Value for DevOps & Continuous Delivery
Webinar: Demonstrating Business Value for DevOps & Continuous DeliveryWebinar: Demonstrating Business Value for DevOps & Continuous Delivery
Webinar: Demonstrating Business Value for DevOps & Continuous Delivery
 
The Continuous delivery value - Funaro
The Continuous delivery value - FunaroThe Continuous delivery value - Funaro
The Continuous delivery value - Funaro
 
The Continuous delivery Value @ codemotion 2014
The Continuous delivery Value @ codemotion 2014The Continuous delivery Value @ codemotion 2014
The Continuous delivery Value @ codemotion 2014
 
The Challenges & Pitfalls of Database Continuous Delivery
The Challenges & Pitfalls of Database Continuous DeliveryThe Challenges & Pitfalls of Database Continuous Delivery
The Challenges & Pitfalls of Database Continuous Delivery
 
Webinar: “Mai sentito parlare di Continuous Delivery per il database? Ecco co...
Webinar: “Mai sentito parlare di Continuous Delivery per il database? Ecco co...Webinar: “Mai sentito parlare di Continuous Delivery per il database? Ecco co...
Webinar: “Mai sentito parlare di Continuous Delivery per il database? Ecco co...
 
Tools and practices to use in a Continuous Delivery pipeline
Tools and practices to use in a Continuous Delivery pipelineTools and practices to use in a Continuous Delivery pipeline
Tools and practices to use in a Continuous Delivery pipeline
 
The Role of Automation in the Journey to Continuous Delivery
The Role of Automation in the Journey to Continuous DeliveryThe Role of Automation in the Journey to Continuous Delivery
The Role of Automation in the Journey to Continuous Delivery
 
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
 
Webinar: "DBMaestro: Database Enforced Change Management (DECM) tool"
Webinar: "DBMaestro: Database Enforced Change Management (DECM) tool"Webinar: "DBMaestro: Database Enforced Change Management (DECM) tool"
Webinar: "DBMaestro: Database Enforced Change Management (DECM) tool"
 
DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)
 
Delivering Better Software Faster (Without Breaking Everything)
Delivering Better Software Faster (Without Breaking Everything)Delivering Better Software Faster (Without Breaking Everything)
Delivering Better Software Faster (Without Breaking Everything)
 
Continuous delivery
Continuous deliveryContinuous delivery
Continuous delivery
 
Introducing Serena Release Manager v5 - Briefing Presentation
Introducing Serena Release Manager v5 - Briefing PresentationIntroducing Serena Release Manager v5 - Briefing Presentation
Introducing Serena Release Manager v5 - Briefing Presentation
 

Plus de DBmaestro - Database DevOps

Plus de DBmaestro - Database DevOps (8)

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
 
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
 
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
 
manage databases like codebases
manage databases like codebasesmanage databases like codebases
manage databases like codebases
 
Tui Travel - Overcoming the Challenges of Agile Methods
Tui Travel - Overcoming the Challenges of Agile MethodsTui Travel - Overcoming the Challenges of Agile Methods
Tui Travel - Overcoming the Challenges of Agile Methods
 
DevOps for Database webinar
DevOps for Database webinarDevOps for Database webinar
DevOps for Database webinar
 

Dernier

"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 

Dernier (20)

"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 

Challenges and Best Practices of Database Continuous Delivery

  • 1.
  • 2. ▪ You will be on mute for the duration of the event ▪ 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) ▪ If you have questions during the session, please submit them on the Q&A bar on your GoToWebinar dashboard and we will address them at the end ▪ A recording of the full webinar will be put up online Before we Begin
  • 3. Yaniv Yehuda Co-Founder & CTO at DBmaestro Spent the last years raising awareness about the challenges around database development and deployment, and how to support database Continuous Delivery. Joined NessPRO as a product manager for the line of SAP complementary products and DevOps solutions for the DB. Shachar Furman Product Manager, Central Systems, NessPRO About the presenters
  • 4. Outline ▪ The Adoption of Continuous Delivery ▪ The Reasons why the Database is Often Left Behind ▪ Single Source of Truth for your Database ▪ Best Practices for Including the Database in CD ▪ The Bigger Picture – Automation and Stopping the Line ▪ Q&A
  • 5. NessPRO is Ness Technologies’ products group and the sole representative in Israel of more than 30 international and Israeli organizations which develop software products designated for the enterprise market. About NessPRO
  • 6. About DBmaestro The leading provider of DevOps for Database Database development and deployment automation
  • 9. The pain–Fortune 1000 by IDC Application Downtime Cost $2B/Y Deployments/month 2x Growth Accelerate Delivery by 20% Compliance & Audit Enforcement Infra Failure Hourly Cost $100K IDC DevOps Best Practices metrics: Fortune 1000 Survey, December 2014 Loss of Reputation
  • 10. ▪ Recently Conducted Survey Continuous Delivery moving ahead!
  • 11. ▪ Every business is an IT business ▪ Customers demand that you deliver new features faster − Agile Development − Process Automation − DevOps ▪ Can’t wait 6 months for that next waterfall release… ▪ If you don’t, your competitor probably will DevOps & CD: a must for every company
  • 12. Continuous Integration Continuous Delivery Continuous Deployment Continuous Processes
  • 13. ▪ More rapid changes ▪ Fewer changes backed out ▪ Better collaboration ▪ Fewer defects ▪ Ultimately better service ▪ Happy customers ▪ Profitability How Do I Measure Success?
  • 16. Only 13% are actually performing basic CD practices for the DB!!! Manual work: cant scale, cant match CD frequency not repeatable, prone to error Continuous Delivery is big and getting bigger, but...
  • 17. Manual steps lead to Chaos in Emergency Times 90% Rate this as a risk factor, but 53% Break the process and test urgent hot-fixes in pre- production
  • 18.  Old adage but true – The database is often neglected and therefore can become the weakest link – Manual processes  Database/Code Silos exist… – Don’t always communicate effectively – Need to follow same procedures & best practices  Essential from a compliance and business point of view  Should be the strongest link Is the database the Weakest link in a chain ???
  • 19. The Database is a constraint
  • 20. Only 13% automate… the rest do manual steps…
  • 21. What is the problem? ▪ Root Causes for issues: − Challenging manual source control process − Static deployments code overrides and configuration drift − Dynamic deployments tools unaware of version control − No release automation red-flags – don’t know when to stop the line…
  • 22. File Version Control Process Today: Two isolated processes DB Development Process Check-Out Script Modify Script Get updated Script from DB Check-In Script Compile Script in DB Debug Script in DB ? ? ? ? A A’ Version control is out of sync from the database and cannot act as a Single Source of Truth
  • 23. 90%Rate this as a risk factor, yet 72%Admit database may not be in sync with the source repository
  • 24. ▪ Challenges: ■ Code-overrides ■ Working on the wrong revisions ■ Scripts do not always find their way to the version control solution ■ Out of process updates go unnoticed ■ Hard to locate outdated update scripts ▪ Playing safe? What we really need: ■ The upgrade script ■ The actual code of the object ■ A roll-back script Scripts & version control
  • 25. X 1.11.1.11.11.21.31.41.51.61.7 Int QA Stage Prod Database Deploy Script Dev Dev Dev Model 1.1 1.2 1.2 1.3 1.3 1.4 1.4 1.5 1.5 1.6 1.6 1.7 1.11.11.41.7 1.1 1.2 1.2 1.3 1.3 1.4 1.4 1.5 1.5 1.6 1.6 1.7 1.1 1.2 1.2 1.3 1.3 1.4 1.4 1.5 1.5 1.6 1.6 1.7 Out of Process Change X X X X X ? 1.1.1 X Challenge with static scripts… Configuration drift…
  • 26. 60%Of those manually building scripts have to fix or tweak them regularly as part of a deployment process
  • 27. 80% Rate this as a risk factor, yet 71% Follow manual processes to create their database deploy scripts
  • 28. ▪ Scripts − Hard to test in their entirely (holistically) − Hard to test due to colliding dependencies − Need to run in a specific order… − Much harder to deal with project scope changes ▪ Scripts, unless super sophisticated: − Unaware of changes made in the target environment − Time passed from their coding to the time they are run − Potentially overriding production hot-fixes or work done in parallel by another team Scripts are static…
  • 29. Test cases using compare & sync tools: An index exists in source (QA) but not in target (Production) What should we do? Add the index or not? Using tools
  • 30. Safe to automate? Sure… (?) Challenge with ‘Compare & Sync’
  • 31. Safe to automate? No. Requires manual inspection… Challenge with ‘Compare & Sync’
  • 32. 70%of those using compare & sync tools have to review and fix the results as they can't always trust them to automatically deploy correctly
  • 33. A compare & sync tool: ▪ Is unaware of any changes that occurred before the time it ran ▪ Has no knowledge of changes that took place at the target environment ▪ Does not leverage version control for more information ▪ Unable to deal with conflicts & merges between different teams ▪ Requires manual inspection ▪ Requires detailed knowledge regarding each change as part of the process So…no automation… We fear for automating problems into production and a major risk!!! Challenges
  • 34. The Solution to the challenges
  • 35. Modern VC integrated DB process
  • 38. 1.11.21.31.41.51.61.7 * Int QA Stage Prod Dev Dev Dev Model 1.1 1.2 1.2 1.3 1.3 1.4 1.1 1.7 1.1.1 1.7 1.1 1.1 1.11.41.7 Out of Process Change 1.1.11.7 1.1.11.7 Validate 1.4 1.5 1.5 1.6 1.6 1.7 Configuration Drift prevention / conflict identification and Validated execution 1.4 1.5 1.5 1.6 1.6 1.7 OR Baseline aware analysis Validated execution / Build & deploy on demand Validate
  • 39. ■ Understand the nature of the changes ■ Raise red flags on conflicts ■ Support out-of-process changes ■ Utilize baseline aware analysis Safety Net Deployment Automation
  • 40. If we had the index in the baseline (previous version) and no longer in Dev (i.e. - removed) => we should take it down from production… (Deploy Change) Deploying changes if needed Development Baseline Previous Label / Production Golden Copy Production
  • 41. Development Baseline Previous Label / Production Golden Copy Production BUT… If no index in baseline => someone else added it to Production… we should protect the NEW index on production!!! (Protect Target) Or protecting target environment…
  • 42. Dealing with conflicts => merging changes
  • 43. Conflict Resolving – Meta Data/Content
  • 44. Continuous Delivery Pipeline Builder • Define a process • Automate the process • Prevent/Alert out of process changes
  • 45. Raise red flags to stop the line… if requires human intervention Impact Analysis! Not Damage Control…
  • 46.  Automate “everything” – Package the deployment of database changes along with all your other application components to give a unified picture  Move the process upstream – Easily promote the same package (including database changes!) from one environment to the next, handling environment-specific differences automatically  Create the deployment pipeline For successful CD:
  • 47. ▪ Requited integrations into entire continuous delivery pipeline: ■ IDEs (Oracle, Microsoft, MySQL in dev) ■ Source control (MsTFS, Git, Subversion etc.) ■ Task based development and ticketing systems (Jira, MsTFS, IBM RTC etc.) ■ Build tools (Jenkins, bamboo etc.) ■ ARA tools (IBM uDeploy, CA release automation, Chef etc.) Integrated CD world…
  • 48. ▪ Focusing on changes rather than managing changes and dealing with re-work, boosted overall productivity of 250 developers. We estimate we were able to do 15% more with the same resources. ▪We went from several fix-centric deployments a day, to one feature-centric deployment a week. ▪The amount of incidents in production has declined as well. We had 20% less incidents. ▪CIO @ Credit Card company “ Testimonials - Efficiency “
  • 49. ▪ Regulation requirement - SOX and derived 357 ▪Auditing - change management approach with change management auditing. You have to do it anyway, do it automatically and efficiently. ▪Change management in production itself is regulatory required (ITIL). But you cannot ensure it without managing the whole process starting at Dev. ▪We have to comply with regulation - but the business benefits from it. ▪CIO @ Credit Card company “ Testimonials - Regulation
  • 50. Thank you! Q & A Shachar Furman Yaniv Yehuda Shachar.Furman@ness-tech.co.il yanivy@dbmaestro.com www.ness-tech.co.il www.dbmaestro.com

Notes de l'éditeur

  1. נספרו הינה קבוצת מוצרי התוכנה של נס טכנולוגיות והנציגה הבלעדית בישראל של למעלה מ-30 חברות בינלאומיות וישראליות המפתחות מוצרי תוכנה המיועדים לשוק הארגוני. הקבוצה פעילה בשוק הישראלי למעלה מ-40 שנה ומשרתת מאות לקוחות. בנוסף למכירת מוצרי התוכנה במודלים עסקיים שונים. מתמחה נספרו גם באינטגרציה, שיווק, שירות, הדרכה ותחזוקה של מוצרים אלו. אנחנו מייצגים פתרונות ממגוון רחב של תחומים – DevOps, Cloud solutions, Mobile, אבטחת מידע, שיווק דיגיטלי, משלימים עבור SAP, העולם הפיננסי, ניהול ידע ועוד. להלן חלק מהיצרנים אותם נספרו מייצגת. בין החברות אותנו אנו מייצגים ניתן למצוא את DBmaestro, EPI-USE, CA, דוקומנטום של EMC, Evolven, Sybase ועוד רבים נוספים.
  2. הצלחה עסקית - מוכרים בהצלחה ליותר מלקוחות 500 - 2000 הגדולים בעולם
  3. IT organizations that have tried to custom adjust current tools to meet DevOps practices have a failure rate of 80%, thus making tool replacement and/or addition a critical requirement The average cost percentage (per year) of a single application's development, testing, deployment, and operations life cycle considered wasteful and unnecessary is 25% Development teams are the leading sponsors of DevOps teams, with operations and architecture teams close behind There are significant acceleration advantages for IT leaders that decide to create a DevOps team or center of excellence versus a less-organized DevOps organizational approach
  4. Average total cost of unplanned application downtime per year is $1.25b - $2.5b Hourly cost of an infrastructure failure is $100K/hour to $500K – $1 M Average number of deployments/month is expected to double in two years DevOps-led projects will accelerate the delivery of capabilities to the customer by 15%–20% Over the next two years, DevOps will adopt security, compliance, and audit The average cost percentage (per year) of a single application's development, testing, deployment, and operations life cycle considered wasteful and unnecessary is 25% Development teams are the leading sponsors of DevOps teams, with operations and architecture teams close behind There are significant acceleration advantages for IT leaders that decide to create a DevOps team or center of excellence versus a less-organized DevOps organizational approach
  5. הצלחה עסקית - מוכרים בהצלחה ליותר מלקוחות 500 - 2000 הגדולים בעולם