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
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
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
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.
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 )