SlideShare a Scribd company logo
1 of 52
Download to read offline
How to Upgrade Your Application
with no Downtime
(and no Additional Costs!)
Oren Nakdimon
www.db-oriented.com
 oren@db-oriented.com
 +972-54-4393763
@DBoriented
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
WHO AM I?
A CHRONOLOGY BY “ORACLE YEARS”
Where: IAF
When: Oracle 6/7 [1991-1997]
What: Developer Where: Golden Screens
When: Oracle 8 [1997-1998]
What: Server Group Manager
Where: TELEknowledge
When: Oracle 8i/9i [1998-2003]
What: DBA Group Manager
Where: Olista
When: Oracle 10g/11g [2004-2011]
What: VP R&D + Israel Site Manager
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
WHO AM I?
A CHRONOLOGY BY “ORACLE YEARS”
Database Architect /
Developer / DBA
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
@DBORIENTED
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
HTTP://DB-ORIENTED.COM
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
SHARING EXPERIENCE FROM…
 A 24x7 system
 Millions of end-users
 Thousands of concurrent end-users
 All around the world
 Lots of PL/SQL code
 Frequent upgrades
 Intensive use of EBR
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
THE BOTTOM LINE
 I think EBR is great!
 It is quite a big and complex feature, but…
 It is very easy to start using it
 It may take some time to know all the details
and nuances
 Warning: as with any other feature, make sure
to test it thoroughly before you decide to apply
it in production
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
AGENDA
 Application upgrades
 Scenarios
 Methods
 EBR introduction
 Upgrade use cases
 Requirements
 Challenges with online upgrade
 Solving with EBR
 Tips
APPLICATION UPGRADES
Scenarios
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
APPLICATION UPGRADES
Application X
Application X
+ some change(s)
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
APPLICATION UPGRADES
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
APPLICATION UPGRADES
 Upgrades are inherent to every application
lifecycle
 They may be:
 Small or big
 Frequent or rare
 Simple or complex
 With or without schema changes
 Introducing new functionality, changing existing
functionality, or removing functionality
APPLICATION UPGRADES
Methods
EDITION-BASED REDEFINITION
Introduction
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
EDITION BASED REDEFINITION
 EBR is a feature set that lets you upgrade the
database component of an application while it is
in use, thereby minimizing or eliminating
downtime
 Introduced in 11gR2
 EBR is supported in all editions, and requires no
special license
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
 The fundamental ability is that different copies
of the same object may coexist
 Not all objects are editionable
EDITION BASED REDEFINITION
Edition1
Edition2
PKG_A
JERRYTOM
PKG_A
PKG_A
MY_VIEW
MY_VIEW
MY_OBJ
MY_OBJ
TABLE_X TABLE_Y
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
EDITIONS
 Edition is a non-schema object
 There must be at least one edition in the
database
 The initial edition is ORA$BASE
 There is always one database-level default
edition
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
EDITIONS – CONT.
 Every new edition is created as a
child of an existing edition
 Currently (11.2, 12.*), each edition
may have at most one child
edition
Edition1
Edition2
Edition3Edition3b
UPGRADE USE CASES
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
PEOPLE
(table)
PEOPLE_DL
(package)
add | remove
APP_MGR
(package)
do_something
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
S B S B Table
APP_MGR PEOPLE_DL
@people_setup
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
USE CASE 1 – THE REQUIREMENTS
 A package body should be changed
 No change in package spec
 No change in table structure
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
USE CASE 1 – THE CHALLENGES
 Blocking
 Compilation is blocked by active clients
 Clients are blocked during compilation
begin
p;
end;
/
alter procedure p compile;
begin
p;
end;
/
begin
p;
end;
/
begin
p;
end;
/
begin
p;
end;
/
begin
p;
end;
/
begin
p;
end;
/
begin
p;
end;
/
begin
p;
end;
/
Session 1
Session 2
Session 3
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
Tip
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
EDITIONS AND USERS
 To be able to own editioned objects
 Editioning must be enabled for the user
ALTER USER user ENABLE EDITIONS [FOR type…];
 This is an irreversible operation
 This is a retroactive operation
@enable
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
EDITIONS AND USERS – CONT.
 To be able to use a specific edition
 Users must be granted the USE privilege on the
edition
GRANT USE ON EDITION edition TO user;
 PUBLIC is always granted the database default edition
@grant
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
SESSION EDITION
 Each session uses one edition at a time
 The current session edition:
 SHOW EDITION (SQL*Plus)
 SYS_CONTEXT('userenv', 'session_edition_name')
 To change the session edition:
ALTER SESSION SET EDITION = edition;
 Must be the first statement of a transaction
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
EDITIONED OBJECTS
 An editioned object in an edition is either:
 Inherited
or
 Actual
 Note: actualization is irreversible!
@end_user_session
@use_case_1
p edition1
edition2
edition3p
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
S B S B
Table
ora$base
APP_MGR PEOPLE_DL
V1 B
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
USE CASE 2 – THE REQUIREMENTS
 A package spec should be changed
 No change in table structure
S B S B
Table
ora$base
APP_MGR PEOPLE_DL
V1 B
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
USE CASE 2 – THE CHALLENGES
 Invalidation
 Compilation errors (hopefully not…)
 Object dependency
 Revalidation occurs automatically when an object is
referenced
 Multiple interrelated objects need to be
changed
S B S B
Table
APP_MGR PEOPLE_DL
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
USE CASE 2
 A package spec should be changed
 No change in table structure
S B S Bora$base
APP_MGR PEOPLE_DL
V1 B
V2 S
Table
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
USE CASE 2
 A package spec should be changed
 No change in table structure
@use_case_2
S B S Bora$base
APP_MGR PEOPLE_DL
V1 B
V2 S
Table
B B
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
A VERY IMPORTANT FOOTNOTE
 Source:
http://www.oracle.com/technetwork/database/features/availabilit
y/ebr-455513.html
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
Tip
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
USE CASE 3 – THE REQUIREMENTS
 A new column should be added
 It represents a new logic
 An existing package should be changed
accordingly
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
USE CASE 3 – THE CHALLENGES
 Invalidation
 Code dependent on the table is invalidated (!)
S B S B
Table
ora$base
APP_MGR PEOPLE_DL
V1 B
V2 SB B
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
ViewProgram
Unit
ELIMINATING INVALIDATION
Table
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
EDITIONING VIEWS
 Editioning Views are:
 Views (hence editionable)
 Deliberately limited:
 One per table
 May contain only the SELECT and FROM clauses
 The FROM clause refers to a single table
 The SELECT list may contain only columns and aliases (no
expressions), and each column may appear only once
 Or in short: the view subquery may only project columns of
its base table and aliasing the projected columns
 DML triggers can be defined on them
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
Editioning Views are
the Interface
between the
Application and the
Tables
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
@use_case_3
Tip
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
Tip
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
USE CASE 4 – THE REQUIREMENTS
 A new column should be added
 It replaces an existing column
 Cutover
@use_case_4
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
USE CASE 4 – THE CHALLENGES
 Keeping the old representation and new
representation in sync until the cutover
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
CROSSEDITION TRIGGERS
 A crossedition trigger is a “bridge” for moving
data between editions
 Temporary in nature
 Forward crossedition triggers transform pre-
upgrade representation to post-upgrade
representation
@fce_trigger
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
Tip
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
Tip
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
USE CASE 5
 A new column should be added
 It replaces an existing column
 Rollover
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
REVERSE CROSSEDITION TRIGGERS
 Reverse crossedition triggers transform post-
upgrade representation to pre-upgrade
representation
@rce_trigger
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
Tip
This presentation is available in http://db-oriented.com/presentations
©OrenNakdimon
EXPOSING THE NEW VERSION
 Database-level:
ALTER DATABASE DEFAULT EDITION = edition;
 Session level
 Statement level – using
DBMS_SQL.PARSE
 Service level
THANK YOU
Oren Nakdimon
www.db-oriented.com
 oren@db-oriented.com
 +972-54-4393763
@DBoriented

More Related Content

What's hot

06 Using More Package Concepts
06 Using More Package Concepts06 Using More Package Concepts
06 Using More Package Conceptsrehaniltifat
 
09 Managing Dependencies
09 Managing Dependencies09 Managing Dependencies
09 Managing Dependenciesrehaniltifat
 
02 Writing Executable Statments
02 Writing Executable Statments02 Writing Executable Statments
02 Writing Executable Statmentsrehaniltifat
 
03 Writing Control Structures, Writing with Compatible Data Types Using Expli...
03 Writing Control Structures, Writing with Compatible Data Types Using Expli...03 Writing Control Structures, Writing with Compatible Data Types Using Expli...
03 Writing Control Structures, Writing with Compatible Data Types Using Expli...rehaniltifat
 
08 Dynamic SQL and Metadata
08 Dynamic SQL and Metadata08 Dynamic SQL and Metadata
08 Dynamic SQL and Metadatarehaniltifat
 
CommonMark: Markdown Done Right - ZendCon 2017
CommonMark: Markdown Done Right - ZendCon 2017CommonMark: Markdown Done Right - ZendCon 2017
CommonMark: Markdown Done Right - ZendCon 2017Colin O'Dell
 
05 Creating Stored Procedures
05 Creating Stored Procedures05 Creating Stored Procedures
05 Creating Stored Proceduresrehaniltifat
 
Java 12 - New features in action
Java 12 -   New features in actionJava 12 -   New features in action
Java 12 - New features in actionMarco Molteni
 
The latest features coming to Java 12
The latest features coming to Java 12The latest features coming to Java 12
The latest features coming to Java 12NexSoftsys
 
Controllers and context programming
Controllers and context programmingControllers and context programming
Controllers and context programmingKranthi Kumar
 
07 Using Oracle-Supported Package in Application Development
07 Using Oracle-Supported Package in Application Development07 Using Oracle-Supported Package in Application Development
07 Using Oracle-Supported Package in Application Developmentrehaniltifat
 
JAX RS and CDI bike the reactive bridge
JAX RS and CDI bike the reactive bridgeJAX RS and CDI bike the reactive bridge
JAX RS and CDI bike the reactive bridgeJosé Paumard
 
Controlling execution plans 2014
Controlling execution plans   2014Controlling execution plans   2014
Controlling execution plans 2014Enkitec
 
JAX-RS and CDI Bike the (Reactive) Bridge
JAX-RS and CDI Bike the (Reactive) BridgeJAX-RS and CDI Bike the (Reactive) Bridge
JAX-RS and CDI Bike the (Reactive) BridgeJosé Paumard
 
04 Handling Exceptions
04 Handling Exceptions04 Handling Exceptions
04 Handling Exceptionsrehaniltifat
 

What's hot (20)

MODELS'16 - RESTalk
MODELS'16 - RESTalkMODELS'16 - RESTalk
MODELS'16 - RESTalk
 
06 Using More Package Concepts
06 Using More Package Concepts06 Using More Package Concepts
06 Using More Package Concepts
 
09 Managing Dependencies
09 Managing Dependencies09 Managing Dependencies
09 Managing Dependencies
 
02 Writing Executable Statments
02 Writing Executable Statments02 Writing Executable Statments
02 Writing Executable Statments
 
03 Writing Control Structures, Writing with Compatible Data Types Using Expli...
03 Writing Control Structures, Writing with Compatible Data Types Using Expli...03 Writing Control Structures, Writing with Compatible Data Types Using Expli...
03 Writing Control Structures, Writing with Compatible Data Types Using Expli...
 
08 Dynamic SQL and Metadata
08 Dynamic SQL and Metadata08 Dynamic SQL and Metadata
08 Dynamic SQL and Metadata
 
PLSQL Advanced
PLSQL AdvancedPLSQL Advanced
PLSQL Advanced
 
CommonMark: Markdown Done Right - ZendCon 2017
CommonMark: Markdown Done Right - ZendCon 2017CommonMark: Markdown Done Right - ZendCon 2017
CommonMark: Markdown Done Right - ZendCon 2017
 
05 Creating Stored Procedures
05 Creating Stored Procedures05 Creating Stored Procedures
05 Creating Stored Procedures
 
Java 12 - New features in action
Java 12 -   New features in actionJava 12 -   New features in action
Java 12 - New features in action
 
The latest features coming to Java 12
The latest features coming to Java 12The latest features coming to Java 12
The latest features coming to Java 12
 
Controllers and context programming
Controllers and context programmingControllers and context programming
Controllers and context programming
 
07 Using Oracle-Supported Package in Application Development
07 Using Oracle-Supported Package in Application Development07 Using Oracle-Supported Package in Application Development
07 Using Oracle-Supported Package in Application Development
 
JAX RS and CDI bike the reactive bridge
JAX RS and CDI bike the reactive bridgeJAX RS and CDI bike the reactive bridge
JAX RS and CDI bike the reactive bridge
 
plsql les06
 plsql les06 plsql les06
plsql les06
 
Plsql guide 2
Plsql guide 2Plsql guide 2
Plsql guide 2
 
Controlling execution plans 2014
Controlling execution plans   2014Controlling execution plans   2014
Controlling execution plans 2014
 
JAX-RS and CDI Bike the (Reactive) Bridge
JAX-RS and CDI Bike the (Reactive) BridgeJAX-RS and CDI Bike the (Reactive) Bridge
JAX-RS and CDI Bike the (Reactive) Bridge
 
04 Handling Exceptions
04 Handling Exceptions04 Handling Exceptions
04 Handling Exceptions
 
plsql les01
 plsql les01 plsql les01
plsql les01
 

Viewers also liked

People Analytics: State of the Market - Top Ten List
People Analytics:  State of the Market - Top Ten ListPeople Analytics:  State of the Market - Top Ten List
People Analytics: State of the Market - Top Ten ListJosh Bersin
 
The Inevitability of a Mobile-Only Customer Experience
The Inevitability of a Mobile-Only Customer ExperienceThe Inevitability of a Mobile-Only Customer Experience
The Inevitability of a Mobile-Only Customer ExperienceBrian Solis
 
The Change Manifesto: Leading Transformation & Captivating Communities
The Change Manifesto: Leading Transformation & Captivating Communities The Change Manifesto: Leading Transformation & Captivating Communities
The Change Manifesto: Leading Transformation & Captivating Communities Brian Solis
 
Everything Is Digital: Ten HR and Talent Predictions for 2020
Everything Is Digital: Ten HR and Talent Predictions for 2020Everything Is Digital: Ten HR and Talent Predictions for 2020
Everything Is Digital: Ten HR and Talent Predictions for 2020Josh Bersin
 
25 Disruptive Technology Trends 2015 - 2016
25 Disruptive Technology Trends 2015 - 201625 Disruptive Technology Trends 2015 - 2016
25 Disruptive Technology Trends 2015 - 2016Brian Solis
 
The Future of Corporate Learning - Ten Disruptive Trends
The Future of Corporate Learning - Ten Disruptive TrendsThe Future of Corporate Learning - Ten Disruptive Trends
The Future of Corporate Learning - Ten Disruptive TrendsJosh Bersin
 
26 Disruptive & Technology Trends 2016 - 2018
26 Disruptive & Technology Trends 2016 - 201826 Disruptive & Technology Trends 2016 - 2018
26 Disruptive & Technology Trends 2016 - 2018Brian Solis
 
The Future of Everything
The Future of EverythingThe Future of Everything
The Future of EverythingCharbel Zeaiter
 
Edition Based Redefinition
Edition Based RedefinitionEdition Based Redefinition
Edition Based RedefinitionAlex Nuijten
 
Tales from a Parallel Universe: Using Oracle 11gR2's Edition Based Redefiniti...
Tales from a Parallel Universe: Using Oracle 11gR2's Edition Based Redefiniti...Tales from a Parallel Universe: Using Oracle 11gR2's Edition Based Redefiniti...
Tales from a Parallel Universe: Using Oracle 11gR2's Edition Based Redefiniti...Roel Hartman
 
Presentation online application upgrade of oracle's bug db with edition-ba...
Presentation    online application upgrade of oracle's bug db with edition-ba...Presentation    online application upgrade of oracle's bug db with edition-ba...
Presentation online application upgrade of oracle's bug db with edition-ba...xKinAnx
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShareSlideShare
 
Database Migration – Simple, Cross-Engine and Cross-Platform Migration
Database Migration – Simple, Cross-Engine and Cross-Platform MigrationDatabase Migration – Simple, Cross-Engine and Cross-Platform Migration
Database Migration – Simple, Cross-Engine and Cross-Platform MigrationAmazon Web Services
 
Aphorisms on Information Technology & Systems
Aphorisms on Information Technology & SystemsAphorisms on Information Technology & Systems
Aphorisms on Information Technology & SystemsPrasad Chitta
 
All (that i know) about exadata external
All (that i know) about exadata externalAll (that i know) about exadata external
All (that i know) about exadata externalPrasad Chitta
 
Install and upgrade Oracle grid infrastructure 12.1.0.2
Install and upgrade Oracle grid infrastructure 12.1.0.2Install and upgrade Oracle grid infrastructure 12.1.0.2
Install and upgrade Oracle grid infrastructure 12.1.0.2Biju Thomas
 
Oracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats newOracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats newNassyam Basha
 
Oracle Exadata 1Z0-485 Certification
Oracle Exadata 1Z0-485 CertificationOracle Exadata 1Z0-485 Certification
Oracle Exadata 1Z0-485 CertificationExadatadba
 
PDoolan Oracle Overview PPT Version
PDoolan Oracle Overview PPT VersionPDoolan Oracle Overview PPT Version
PDoolan Oracle Overview PPT VersionPeter Doolan
 

Viewers also liked (20)

People Analytics: State of the Market - Top Ten List
People Analytics:  State of the Market - Top Ten ListPeople Analytics:  State of the Market - Top Ten List
People Analytics: State of the Market - Top Ten List
 
The Inevitability of a Mobile-Only Customer Experience
The Inevitability of a Mobile-Only Customer ExperienceThe Inevitability of a Mobile-Only Customer Experience
The Inevitability of a Mobile-Only Customer Experience
 
The Change Manifesto: Leading Transformation & Captivating Communities
The Change Manifesto: Leading Transformation & Captivating Communities The Change Manifesto: Leading Transformation & Captivating Communities
The Change Manifesto: Leading Transformation & Captivating Communities
 
Everything Is Digital: Ten HR and Talent Predictions for 2020
Everything Is Digital: Ten HR and Talent Predictions for 2020Everything Is Digital: Ten HR and Talent Predictions for 2020
Everything Is Digital: Ten HR and Talent Predictions for 2020
 
25 Disruptive Technology Trends 2015 - 2016
25 Disruptive Technology Trends 2015 - 201625 Disruptive Technology Trends 2015 - 2016
25 Disruptive Technology Trends 2015 - 2016
 
The Future of Corporate Learning - Ten Disruptive Trends
The Future of Corporate Learning - Ten Disruptive TrendsThe Future of Corporate Learning - Ten Disruptive Trends
The Future of Corporate Learning - Ten Disruptive Trends
 
26 Disruptive & Technology Trends 2016 - 2018
26 Disruptive & Technology Trends 2016 - 201826 Disruptive & Technology Trends 2016 - 2018
26 Disruptive & Technology Trends 2016 - 2018
 
The Future of Everything
The Future of EverythingThe Future of Everything
The Future of Everything
 
Edition based redefinition joords
Edition based redefinition joordsEdition based redefinition joords
Edition based redefinition joords
 
Edition Based Redefinition
Edition Based RedefinitionEdition Based Redefinition
Edition Based Redefinition
 
Tales from a Parallel Universe: Using Oracle 11gR2's Edition Based Redefiniti...
Tales from a Parallel Universe: Using Oracle 11gR2's Edition Based Redefiniti...Tales from a Parallel Universe: Using Oracle 11gR2's Edition Based Redefiniti...
Tales from a Parallel Universe: Using Oracle 11gR2's Edition Based Redefiniti...
 
Presentation online application upgrade of oracle's bug db with edition-ba...
Presentation    online application upgrade of oracle's bug db with edition-ba...Presentation    online application upgrade of oracle's bug db with edition-ba...
Presentation online application upgrade of oracle's bug db with edition-ba...
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShare
 
Database Migration – Simple, Cross-Engine and Cross-Platform Migration
Database Migration – Simple, Cross-Engine and Cross-Platform MigrationDatabase Migration – Simple, Cross-Engine and Cross-Platform Migration
Database Migration – Simple, Cross-Engine and Cross-Platform Migration
 
Aphorisms on Information Technology & Systems
Aphorisms on Information Technology & SystemsAphorisms on Information Technology & Systems
Aphorisms on Information Technology & Systems
 
All (that i know) about exadata external
All (that i know) about exadata externalAll (that i know) about exadata external
All (that i know) about exadata external
 
Install and upgrade Oracle grid infrastructure 12.1.0.2
Install and upgrade Oracle grid infrastructure 12.1.0.2Install and upgrade Oracle grid infrastructure 12.1.0.2
Install and upgrade Oracle grid infrastructure 12.1.0.2
 
Oracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats newOracle12c data guard farsync and whats new
Oracle12c data guard farsync and whats new
 
Oracle Exadata 1Z0-485 Certification
Oracle Exadata 1Z0-485 CertificationOracle Exadata 1Z0-485 Certification
Oracle Exadata 1Z0-485 Certification
 
PDoolan Oracle Overview PPT Version
PDoolan Oracle Overview PPT VersionPDoolan Oracle Overview PPT Version
PDoolan Oracle Overview PPT Version
 

Similar to Upgrade Apps with No Downtime Using EBR

Editioning use in ebs
Editioning use in  ebsEditioning use in  ebs
Editioning use in ebspasalapudi123
 
EBS-technical_upgrade_best_practices 12.1 or 12.2
EBS-technical_upgrade_best_practices 12.1 or 12.2EBS-technical_upgrade_best_practices 12.1 or 12.2
EBS-technical_upgrade_best_practices 12.1 or 12.2Berry Clemens
 
Oracle Database Cloud Fleet Maintenance
Oracle Database Cloud Fleet MaintenanceOracle Database Cloud Fleet Maintenance
Oracle Database Cloud Fleet MaintenanceHari Srinivasan
 
2015 owb2 odi converter - white paper_owb_to_odi_migration_service_d&t
2015 owb2 odi converter - white paper_owb_to_odi_migration_service_d&t2015 owb2 odi converter - white paper_owb_to_odi_migration_service_d&t
2015 owb2 odi converter - white paper_owb_to_odi_migration_service_d&tDatabase & Technology s.r.l.
 
Edition Based Redefinition - Continuous Database Application Evolution with O...
Edition Based Redefinition - Continuous Database Application Evolution with O...Edition Based Redefinition - Continuous Database Application Evolution with O...
Edition Based Redefinition - Continuous Database Application Evolution with O...Lucas Jellema
 
What’s New in Oracle E-Business Suite R12.2 for Database Administrators?
What’s New in Oracle E-Business Suite R12.2 for Database Administrators?What’s New in Oracle E-Business Suite R12.2 for Database Administrators?
What’s New in Oracle E-Business Suite R12.2 for Database Administrators?vasuballa
 
Jmorrow rtv den_auto_config_rapidclone
Jmorrow rtv den_auto_config_rapidcloneJmorrow rtv den_auto_config_rapidclone
Jmorrow rtv den_auto_config_rapidcloneMlx Le
 
Oracle New Function.ppt
Oracle New Function.pptOracle New Function.ppt
Oracle New Function.pptAshitPradhan3
 
Con7724 ebs technical-upgrade_best_practices_oow14(1)
Con7724 ebs technical-upgrade_best_practices_oow14(1)Con7724 ebs technical-upgrade_best_practices_oow14(1)
Con7724 ebs technical-upgrade_best_practices_oow14(1)Krishna Garaga
 
Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...
Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...
Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...Andrejs Prokopjevs
 
Introducing and Demonstrating Oracle Database 11gR2's Killer Feature – Editio...
Introducing and Demonstrating Oracle Database 11gR2's Killer Feature – Editio...Introducing and Demonstrating Oracle Database 11gR2's Killer Feature – Editio...
Introducing and Demonstrating Oracle Database 11gR2's Killer Feature – Editio...Lucas Jellema
 
ITU - MDD - Eclipse Plug-ins
ITU - MDD - Eclipse Plug-insITU - MDD - Eclipse Plug-ins
ITU - MDD - Eclipse Plug-insTonny Madsen
 
Oracle DBA interview_questions
Oracle DBA interview_questionsOracle DBA interview_questions
Oracle DBA interview_questionsNaveen P
 
Oracle Applications R12 architecture
Oracle Applications R12 architectureOracle Applications R12 architecture
Oracle Applications R12 architectureSekhar Byna
 
4392091081755796971 emea10 zero_downtimeoperations
4392091081755796971 emea10 zero_downtimeoperations4392091081755796971 emea10 zero_downtimeoperations
4392091081755796971 emea10 zero_downtimeoperationsLocuto Riorama
 
Deployment Strategy PowerPoint Presentation Slides
Deployment Strategy PowerPoint Presentation SlidesDeployment Strategy PowerPoint Presentation Slides
Deployment Strategy PowerPoint Presentation SlidesSlideTeam
 

Similar to Upgrade Apps with No Downtime Using EBR (20)

New Enhancements + Upgrade Path to Oracle EBS R12.1.3
New Enhancements + Upgrade Path to Oracle EBS R12.1.3New Enhancements + Upgrade Path to Oracle EBS R12.1.3
New Enhancements + Upgrade Path to Oracle EBS R12.1.3
 
Editioning use in ebs
Editioning use in  ebsEditioning use in  ebs
Editioning use in ebs
 
Editioning use in ebs
Editioning use in  ebsEditioning use in  ebs
Editioning use in ebs
 
EBS-technical_upgrade_best_practices 12.1 or 12.2
EBS-technical_upgrade_best_practices 12.1 or 12.2EBS-technical_upgrade_best_practices 12.1 or 12.2
EBS-technical_upgrade_best_practices 12.1 or 12.2
 
Oracle Database Cloud Fleet Maintenance
Oracle Database Cloud Fleet MaintenanceOracle Database Cloud Fleet Maintenance
Oracle Database Cloud Fleet Maintenance
 
2015 owb2 odi converter - white paper_owb_to_odi_migration_service_d&t
2015 owb2 odi converter - white paper_owb_to_odi_migration_service_d&t2015 owb2 odi converter - white paper_owb_to_odi_migration_service_d&t
2015 owb2 odi converter - white paper_owb_to_odi_migration_service_d&t
 
Ebr the key_to_online_application_upgrade at amis25
Ebr the key_to_online_application_upgrade at amis25Ebr the key_to_online_application_upgrade at amis25
Ebr the key_to_online_application_upgrade at amis25
 
Edition Based Redefinition - Continuous Database Application Evolution with O...
Edition Based Redefinition - Continuous Database Application Evolution with O...Edition Based Redefinition - Continuous Database Application Evolution with O...
Edition Based Redefinition - Continuous Database Application Evolution with O...
 
What’s New in Oracle E-Business Suite R12.2 for Database Administrators?
What’s New in Oracle E-Business Suite R12.2 for Database Administrators?What’s New in Oracle E-Business Suite R12.2 for Database Administrators?
What’s New in Oracle E-Business Suite R12.2 for Database Administrators?
 
Jmorrow rtv den_auto_config_rapidclone
Jmorrow rtv den_auto_config_rapidcloneJmorrow rtv den_auto_config_rapidclone
Jmorrow rtv den_auto_config_rapidclone
 
Oracle New Function.ppt
Oracle New Function.pptOracle New Function.ppt
Oracle New Function.ppt
 
Con7724 ebs technical-upgrade_best_practices_oow14(1)
Con7724 ebs technical-upgrade_best_practices_oow14(1)Con7724 ebs technical-upgrade_best_practices_oow14(1)
Con7724 ebs technical-upgrade_best_practices_oow14(1)
 
Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...
Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...
Optimize DR and Cloning with Logical Hostnames in Oracle E-Business Suite (OA...
 
Upgrading Em13c Collaborate 2016
Upgrading Em13c Collaborate 2016Upgrading Em13c Collaborate 2016
Upgrading Em13c Collaborate 2016
 
Introducing and Demonstrating Oracle Database 11gR2's Killer Feature – Editio...
Introducing and Demonstrating Oracle Database 11gR2's Killer Feature – Editio...Introducing and Demonstrating Oracle Database 11gR2's Killer Feature – Editio...
Introducing and Demonstrating Oracle Database 11gR2's Killer Feature – Editio...
 
ITU - MDD - Eclipse Plug-ins
ITU - MDD - Eclipse Plug-insITU - MDD - Eclipse Plug-ins
ITU - MDD - Eclipse Plug-ins
 
Oracle DBA interview_questions
Oracle DBA interview_questionsOracle DBA interview_questions
Oracle DBA interview_questions
 
Oracle Applications R12 architecture
Oracle Applications R12 architectureOracle Applications R12 architecture
Oracle Applications R12 architecture
 
4392091081755796971 emea10 zero_downtimeoperations
4392091081755796971 emea10 zero_downtimeoperations4392091081755796971 emea10 zero_downtimeoperations
4392091081755796971 emea10 zero_downtimeoperations
 
Deployment Strategy PowerPoint Presentation Slides
Deployment Strategy PowerPoint Presentation SlidesDeployment Strategy PowerPoint Presentation Slides
Deployment Strategy PowerPoint Presentation Slides
 

More from Oren Nakdimon

Write Less (Code) With More (Features) [UKOUG 22]
Write Less (Code) With More (Features) [UKOUG 22]Write Less (Code) With More (Features) [UKOUG 22]
Write Less (Code) With More (Features) [UKOUG 22]Oren Nakdimon
 
Design Patterns in PLSQL and SQL [UKOUG 22]
Design Patterns in PLSQL and SQL [UKOUG 22]Design Patterns in PLSQL and SQL [UKOUG 22]
Design Patterns in PLSQL and SQL [UKOUG 22]Oren Nakdimon
 
Oren nakdimon - Write Less With More - UKOUGtogether21
Oren nakdimon - Write Less With More - UKOUGtogether21Oren nakdimon - Write Less With More - UKOUGtogether21
Oren nakdimon - Write Less With More - UKOUGtogether21Oren Nakdimon
 
Oren nakdimon - Design Patterns for PL/SQL and SQL - UKOUGtogether21
Oren nakdimon - Design Patterns for PL/SQL and SQL - UKOUGtogether21Oren nakdimon - Design Patterns for PL/SQL and SQL - UKOUGtogether21
Oren nakdimon - Design Patterns for PL/SQL and SQL - UKOUGtogether21Oren Nakdimon
 
Oren Nakdimon - Oracle SQL Pattern Matching Made Easy
Oren Nakdimon - Oracle SQL Pattern Matching Made EasyOren Nakdimon - Oracle SQL Pattern Matching Made Easy
Oren Nakdimon - Oracle SQL Pattern Matching Made EasyOren Nakdimon
 
Oren nakdimon - Oracle 12c SQL Pattern Matching Made Easy
Oren nakdimon - Oracle 12c SQL Pattern Matching Made EasyOren nakdimon - Oracle 12c SQL Pattern Matching Made Easy
Oren nakdimon - Oracle 12c SQL Pattern Matching Made EasyOren Nakdimon
 

More from Oren Nakdimon (6)

Write Less (Code) With More (Features) [UKOUG 22]
Write Less (Code) With More (Features) [UKOUG 22]Write Less (Code) With More (Features) [UKOUG 22]
Write Less (Code) With More (Features) [UKOUG 22]
 
Design Patterns in PLSQL and SQL [UKOUG 22]
Design Patterns in PLSQL and SQL [UKOUG 22]Design Patterns in PLSQL and SQL [UKOUG 22]
Design Patterns in PLSQL and SQL [UKOUG 22]
 
Oren nakdimon - Write Less With More - UKOUGtogether21
Oren nakdimon - Write Less With More - UKOUGtogether21Oren nakdimon - Write Less With More - UKOUGtogether21
Oren nakdimon - Write Less With More - UKOUGtogether21
 
Oren nakdimon - Design Patterns for PL/SQL and SQL - UKOUGtogether21
Oren nakdimon - Design Patterns for PL/SQL and SQL - UKOUGtogether21Oren nakdimon - Design Patterns for PL/SQL and SQL - UKOUGtogether21
Oren nakdimon - Design Patterns for PL/SQL and SQL - UKOUGtogether21
 
Oren Nakdimon - Oracle SQL Pattern Matching Made Easy
Oren Nakdimon - Oracle SQL Pattern Matching Made EasyOren Nakdimon - Oracle SQL Pattern Matching Made Easy
Oren Nakdimon - Oracle SQL Pattern Matching Made Easy
 
Oren nakdimon - Oracle 12c SQL Pattern Matching Made Easy
Oren nakdimon - Oracle 12c SQL Pattern Matching Made EasyOren nakdimon - Oracle 12c SQL Pattern Matching Made Easy
Oren nakdimon - Oracle 12c SQL Pattern Matching Made Easy
 

Recently uploaded

Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 

Recently uploaded (20)

Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 

Upgrade Apps with No Downtime Using EBR

  • 1. How to Upgrade Your Application with no Downtime (and no Additional Costs!) Oren Nakdimon www.db-oriented.com  oren@db-oriented.com  +972-54-4393763 @DBoriented
  • 2. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon WHO AM I? A CHRONOLOGY BY “ORACLE YEARS” Where: IAF When: Oracle 6/7 [1991-1997] What: Developer Where: Golden Screens When: Oracle 8 [1997-1998] What: Server Group Manager Where: TELEknowledge When: Oracle 8i/9i [1998-2003] What: DBA Group Manager Where: Olista When: Oracle 10g/11g [2004-2011] What: VP R&D + Israel Site Manager
  • 3. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon WHO AM I? A CHRONOLOGY BY “ORACLE YEARS” Database Architect / Developer / DBA
  • 4. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon @DBORIENTED
  • 5. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon HTTP://DB-ORIENTED.COM
  • 6. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon SHARING EXPERIENCE FROM…  A 24x7 system  Millions of end-users  Thousands of concurrent end-users  All around the world  Lots of PL/SQL code  Frequent upgrades  Intensive use of EBR
  • 7. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon THE BOTTOM LINE  I think EBR is great!  It is quite a big and complex feature, but…  It is very easy to start using it  It may take some time to know all the details and nuances  Warning: as with any other feature, make sure to test it thoroughly before you decide to apply it in production
  • 8. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon AGENDA  Application upgrades  Scenarios  Methods  EBR introduction  Upgrade use cases  Requirements  Challenges with online upgrade  Solving with EBR  Tips
  • 10. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon APPLICATION UPGRADES Application X Application X + some change(s)
  • 11. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon APPLICATION UPGRADES
  • 12. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon APPLICATION UPGRADES  Upgrades are inherent to every application lifecycle  They may be:  Small or big  Frequent or rare  Simple or complex  With or without schema changes  Introducing new functionality, changing existing functionality, or removing functionality
  • 15. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon EDITION BASED REDEFINITION  EBR is a feature set that lets you upgrade the database component of an application while it is in use, thereby minimizing or eliminating downtime  Introduced in 11gR2  EBR is supported in all editions, and requires no special license
  • 16. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon  The fundamental ability is that different copies of the same object may coexist  Not all objects are editionable EDITION BASED REDEFINITION Edition1 Edition2 PKG_A JERRYTOM PKG_A PKG_A MY_VIEW MY_VIEW MY_OBJ MY_OBJ TABLE_X TABLE_Y
  • 17. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon EDITIONS  Edition is a non-schema object  There must be at least one edition in the database  The initial edition is ORA$BASE  There is always one database-level default edition
  • 18. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon EDITIONS – CONT.  Every new edition is created as a child of an existing edition  Currently (11.2, 12.*), each edition may have at most one child edition Edition1 Edition2 Edition3Edition3b
  • 20. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon PEOPLE (table) PEOPLE_DL (package) add | remove APP_MGR (package) do_something
  • 21. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon S B S B Table APP_MGR PEOPLE_DL @people_setup
  • 22. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon USE CASE 1 – THE REQUIREMENTS  A package body should be changed  No change in package spec  No change in table structure
  • 23. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon USE CASE 1 – THE CHALLENGES  Blocking  Compilation is blocked by active clients  Clients are blocked during compilation begin p; end; / alter procedure p compile; begin p; end; / begin p; end; / begin p; end; / begin p; end; / begin p; end; / begin p; end; / begin p; end; / begin p; end; / Session 1 Session 2 Session 3
  • 24. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon Tip
  • 25. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon EDITIONS AND USERS  To be able to own editioned objects  Editioning must be enabled for the user ALTER USER user ENABLE EDITIONS [FOR type…];  This is an irreversible operation  This is a retroactive operation @enable
  • 26. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon EDITIONS AND USERS – CONT.  To be able to use a specific edition  Users must be granted the USE privilege on the edition GRANT USE ON EDITION edition TO user;  PUBLIC is always granted the database default edition @grant
  • 27. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon SESSION EDITION  Each session uses one edition at a time  The current session edition:  SHOW EDITION (SQL*Plus)  SYS_CONTEXT('userenv', 'session_edition_name')  To change the session edition: ALTER SESSION SET EDITION = edition;  Must be the first statement of a transaction
  • 28. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon EDITIONED OBJECTS  An editioned object in an edition is either:  Inherited or  Actual  Note: actualization is irreversible! @end_user_session @use_case_1 p edition1 edition2 edition3p
  • 29. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon S B S B Table ora$base APP_MGR PEOPLE_DL V1 B
  • 30. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon USE CASE 2 – THE REQUIREMENTS  A package spec should be changed  No change in table structure S B S B Table ora$base APP_MGR PEOPLE_DL V1 B
  • 31. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon USE CASE 2 – THE CHALLENGES  Invalidation  Compilation errors (hopefully not…)  Object dependency  Revalidation occurs automatically when an object is referenced  Multiple interrelated objects need to be changed S B S B Table APP_MGR PEOPLE_DL
  • 32. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon USE CASE 2  A package spec should be changed  No change in table structure S B S Bora$base APP_MGR PEOPLE_DL V1 B V2 S Table
  • 33. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon USE CASE 2  A package spec should be changed  No change in table structure @use_case_2 S B S Bora$base APP_MGR PEOPLE_DL V1 B V2 S Table B B
  • 34. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon A VERY IMPORTANT FOOTNOTE  Source: http://www.oracle.com/technetwork/database/features/availabilit y/ebr-455513.html
  • 35. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon Tip
  • 36. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon USE CASE 3 – THE REQUIREMENTS  A new column should be added  It represents a new logic  An existing package should be changed accordingly
  • 37. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon USE CASE 3 – THE CHALLENGES  Invalidation  Code dependent on the table is invalidated (!) S B S B Table ora$base APP_MGR PEOPLE_DL V1 B V2 SB B
  • 38. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon ViewProgram Unit ELIMINATING INVALIDATION Table
  • 39. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon EDITIONING VIEWS  Editioning Views are:  Views (hence editionable)  Deliberately limited:  One per table  May contain only the SELECT and FROM clauses  The FROM clause refers to a single table  The SELECT list may contain only columns and aliases (no expressions), and each column may appear only once  Or in short: the view subquery may only project columns of its base table and aliasing the projected columns  DML triggers can be defined on them
  • 40. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon Editioning Views are the Interface between the Application and the Tables
  • 41. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon @use_case_3 Tip
  • 42. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon Tip
  • 43. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon USE CASE 4 – THE REQUIREMENTS  A new column should be added  It replaces an existing column  Cutover @use_case_4
  • 44. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon USE CASE 4 – THE CHALLENGES  Keeping the old representation and new representation in sync until the cutover
  • 45. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon CROSSEDITION TRIGGERS  A crossedition trigger is a “bridge” for moving data between editions  Temporary in nature  Forward crossedition triggers transform pre- upgrade representation to post-upgrade representation @fce_trigger
  • 46. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon Tip
  • 47. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon Tip
  • 48. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon USE CASE 5  A new column should be added  It replaces an existing column  Rollover
  • 49. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon REVERSE CROSSEDITION TRIGGERS  Reverse crossedition triggers transform post- upgrade representation to pre-upgrade representation @rce_trigger
  • 50. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon Tip
  • 51. This presentation is available in http://db-oriented.com/presentations ©OrenNakdimon EXPOSING THE NEW VERSION  Database-level: ALTER DATABASE DEFAULT EDITION = edition;  Session level  Statement level – using DBMS_SQL.PARSE  Service level
  • 52. THANK YOU Oren Nakdimon www.db-oriented.com  oren@db-oriented.com  +972-54-4393763 @DBoriented