SlideShare a Scribd company logo
1 of 24
Oracle Database 12c SQL and
PL/SQL New features and
Development Best Practices
Ami Aharonovich
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
Ami Aharonovich
• Oracle ACE & OCP
• Founder & CEO of DBAces
• President of ilOUG (Israel Oracle User
Group)

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%

4
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
Why Manage Change?

80%
More than

50%

of unplanned
downtime is
due to
Change

of this, half is
due human
errors

40% of changes fail
Copyright@2008, Juniper Networks, Inc.

6
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

7
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…)
8
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

9
Poll – What do you utilize
• Which Method your organization utilize?
• Application Version Control
• Database Version Control
• Application Lifecycle Management
• Agile
• DevOps

10
What is DBmaestro TeamWork
• Database Enforced Change Management
•
•
•
•

Database version control
Plugs into the ALM (change request, tickets & work items)
Database change impact analysis
Database deployment automation

• DevOps Solution for databases
• Deployment, rollback & recovery
• Plugs into release management

11
Two isolated Processes
Development Process

Version Control Process
(file based)
Check-Out
Script

?
Check-In
Script

?

A

Modify Script

Get updated
Script from DB

?

12

?

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!!!
13
With DECM - One Enforced Process
Database & Version Control Process

14
Version Control Demo

If a Picture is Worth a
Thousand Words…

15
Poll – Level of automation
• How much do you automate your database
deployment?
• None, script is written manually
• Generating script automatically, review
manually
• Internally within development
• Development -> QA
• Development -> QA -> Pre prod

16
Database Deployment Methods
• Build Once Deploy Many
•
•
•
•

Execute same script across all environments
Saved in file-based version control
Check-In is done before change being tested
Not aware to changes made out of process

• Build & Deploy On Demand (best practice)
•
•
•
•

Aware of out of process changes
Handles the same script challenges
Alerts on conflicts between environments
Up-to-date script
17
Build Once Deploy Many
Out of Process
Change

Model

Dev
Dev
Dev

Int

QA

Stage

Prod

1.7
1.6
1.5
1.4
1.3
1.2
1.1

1.1
1.7
1.4

?
1.1.1
1.1

1.1
1.1.1

1.1

1.2

1.1

1.2

1.1

1.2

1.3

1.2

1.3

1.2

1.3

1.4

1.3

1.4

1.3

1.4

1.5

1.4

1.5

1.4

1.5

1.6

1.5

1.6

1.5

1.6

1.7

1.6

1.7

1.6

Database Deploy Script

1.2

X
X

1.3

X
X
X

1.5

1.4

1.6
1.7

Re-Base (due to defects)
Environment
18

X
Build & Deploy On Demand
Out of Process
Change

Dev
Dev
Dev

Model

Int

1.3

1.3

1.6

1.6

1.1.1
1.1
1.7

1.7
1.1.1
1.1

1.5

1.5

1.1
1.7
1.4

1.4

1.4

Prod

1.2

1.2

Stage

1.7
1.6
1.5
1.4
1.3
1.2
1.1
1.1

QA

1.7

1.1

1.4

1.1

1.4

*

1.7

1.7

File Based
Version Control

Database Deploy Script

*

Re-Base (due to defects)

Execute the same script
being executed at the
Stage environment

Environment
19
Deployment Automation Safety Net
Simple Compare & Sync
Source vs.
Target
=
≠

Baseline Aware Deployment
Source vs.
Baseline

Action
No Action

Target vs.
Baseline

Action

=

=

Take Source

=

≠

Keep Target

≠

You do not have all
of the information

No Action

≠

?

=

≠

Merge Conflict

With Baselines and 3 way
analysis the unknown is now
known

20
Baseline Deployment Demo

Real Life Deployment…

21
Your Benefits
• All changes are documented
• Eliminate out-of-process changes
• Support sandbox, shared, mixed and
branch methodologies
• Enforce development best practices methods
• Have a bullet-proof deployment automation
• Leverage baseline-based impact analysis
• Enable database continuous delivery

22
Q&A

23
Oracle database 12c sql and plsql new features and development best practices

More Related Content

More from 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
 
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 MethodsDBmaestro - 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
 

More from DBmaestro - Database DevOps (20)

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
 
In (database) automation we trust
In (database) automation we trustIn (database) automation we trust
In (database) automation we trust
 
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
 
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
 
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
 

Recently uploaded

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
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
 
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
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
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
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 

Recently uploaded (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
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
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
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...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 

Oracle database 12c sql and plsql new features and development best practices

  • 1. Oracle Database 12c SQL and PL/SQL New features and Development Best Practices Ami Aharonovich Uri Margalit
  • 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 Ami Aharonovich • Oracle ACE & OCP • Founder & CEO of DBAces • President of ilOUG (Israel Oracle User Group) 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% 4
  • 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. Why Manage Change? 80% More than 50% of unplanned downtime is due to Change of this, half is due human errors 40% of changes fail Copyright@2008, Juniper Networks, Inc. 6
  • 7. 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 7
  • 8. 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…) 8
  • 9. 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 9
  • 10. Poll – What do you utilize • Which Method your organization utilize? • Application Version Control • Database Version Control • Application Lifecycle Management • Agile • DevOps 10
  • 11. What is DBmaestro TeamWork • Database Enforced Change Management • • • • Database version control Plugs into the ALM (change request, tickets & work items) Database change impact analysis Database deployment automation • DevOps Solution for databases • Deployment, rollback & recovery • Plugs into release management 11
  • 12. Two isolated Processes Development Process Version Control Process (file based) Check-Out Script ? Check-In Script ? A Modify Script Get updated Script from DB ? 12 ? Compile Script in DB A’ Debug Script in DB
  • 13. 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!!! 13
  • 14. With DECM - One Enforced Process Database & Version Control Process 14
  • 15. Version Control Demo If a Picture is Worth a Thousand Words… 15
  • 16. Poll – Level of automation • How much do you automate your database deployment? • None, script is written manually • Generating script automatically, review manually • Internally within development • Development -> QA • Development -> QA -> Pre prod 16
  • 17. Database Deployment Methods • Build Once Deploy Many • • • • Execute same script across all environments Saved in file-based version control Check-In is done before change being tested Not aware to changes made out of process • Build & Deploy On Demand (best practice) • • • • Aware of out of process changes Handles the same script challenges Alerts on conflicts between environments Up-to-date script 17
  • 18. Build Once Deploy Many Out of Process Change Model Dev Dev Dev Int QA Stage Prod 1.7 1.6 1.5 1.4 1.3 1.2 1.1 1.1 1.7 1.4 ? 1.1.1 1.1 1.1 1.1.1 1.1 1.2 1.1 1.2 1.1 1.2 1.3 1.2 1.3 1.2 1.3 1.4 1.3 1.4 1.3 1.4 1.5 1.4 1.5 1.4 1.5 1.6 1.5 1.6 1.5 1.6 1.7 1.6 1.7 1.6 Database Deploy Script 1.2 X X 1.3 X X X 1.5 1.4 1.6 1.7 Re-Base (due to defects) Environment 18 X
  • 19. Build & Deploy On Demand Out of Process Change Dev Dev Dev Model Int 1.3 1.3 1.6 1.6 1.1.1 1.1 1.7 1.7 1.1.1 1.1 1.5 1.5 1.1 1.7 1.4 1.4 1.4 Prod 1.2 1.2 Stage 1.7 1.6 1.5 1.4 1.3 1.2 1.1 1.1 QA 1.7 1.1 1.4 1.1 1.4 * 1.7 1.7 File Based Version Control Database Deploy Script * Re-Base (due to defects) Execute the same script being executed at the Stage environment Environment 19
  • 20. Deployment Automation Safety Net Simple Compare & Sync Source vs. Target = ≠ Baseline Aware Deployment Source vs. Baseline Action No Action Target vs. Baseline Action = = Take Source = ≠ Keep Target ≠ You do not have all of the information No Action ≠ ? = ≠ Merge Conflict With Baselines and 3 way analysis the unknown is now known 20
  • 21. Baseline Deployment Demo Real Life Deployment… 21
  • 22. Your Benefits • All changes are documented • Eliminate out-of-process changes • Support sandbox, shared, mixed and branch methodologies • Enforce development best practices methods • Have a bullet-proof deployment automation • Leverage baseline-based impact analysis • Enable database continuous delivery 22

Editor's Notes

  1. Hi everybody and welcome to our webinar, thank you for taking the time to be here with us. Today we will be hearing from Bob Aiello and Yaniv Yehuda, who will be discussing DevOps for Database. But first I would like to go over a few details:Please note you will be on mute during the event. If you can't hear me now, please check your speakers and GoToWebinar audio settings.We will have a Q&A session at the end of the presentation, but you can start submitting you questions on twitter, using the hashtag #DevOps4db or the Q&A bar on your gotowebinar dashboard.
  2. 80%of outages impacting mission-critical services caused by people and process issues thru 2015, with the majority of those outages (50%+) caused by change/configuration/release integration and hand-off issues (Gartner RAS Core Research Note G00208328 Ronni J. Colville, George Spafford [October 27, 2010] – Strategic Planning Assumption(s) “Top Seven Considerations for Configuration Management for Virtual and Cloud )