online application upgrade using edition-based redefinition
DESCRIPTION
Online Application Upgrade Using Edition-Based Redefinition. Alan Choi PL/SQL, Database Sever Technology http://www.oracle.com/technology/products/database/index.html. - PowerPoint PPT PresentationTRANSCRIPT
Online Application Upgrade Using Edition-Based Redefinition
Alan ChoiPL/SQL, Database Sever Technologyhttp://www.oracle.com/technology/products/database/index.html
The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions.The development, release, and timing of any features or functionality described for Oracle’s products remain at the sole discretion of Oracle.
<Insert Picture Here>
“…for the past 30 years, online upgrades have been a solution in
search of a problem...”
Tudor Dumitras
Industrial Demand for Online Application Upgrade
• Electricity Utility Management System• Support System for Global Company• Manufacturing Industry – assembly line • Online Business• Banking System
Online Application Upgrade – the final piece of the High Availability jigsaw puzzle
High Availability
Survivehardware failure
Make planned changes to software
Change infrastructure:Operating systemOracle Database
Change application’s database objects
Change objects’ physical characteristics
Change objects’ meaning:
patching and upgrading
Online Application Upgrade
• Oracle Database 11g Release 2 introduces revolutionary new capabilities that allow online application upgrade with uninterrupted availability of the application
• The pre-upgrade application and the post-upgrade application can be used at the same time
• End-user sessions therefore enjoy hot rollover
The Challenge
• Essence of data must be consistent between pre-upgrade and post-upgrade applications
– Existing data must be visible to both applications
– Transactions done by the users of the pre-upgrade application must by reflected in the post-upgrade application
– For hot rollover, transactions done by the users of the post-upgrade application must by reflected in the pre-upgrade application
• The installation of the upgrade into the production database must not perturb live users of thepre-upgrade application– Many objects must be changed in concert. The changes must
be made in privacy
The solution: edition-based redefinition
• 11.2 brings these revolutionary new features: the edition, the editioning view, and the crossedition trigger
– Changes in stored procedures and views are installed in the privacy of a new edition
– Data changes are made safely by writing only to new columns or new tables not seen by the old edition
• An editioning view exposes a different projection of a table into each edition to allow each to see just its own columns
• A crossedition trigger propagates data changes made by the old edition into the new edition’s columns, or (in hot-rollover) vice-versa
<Insert Picture Here>
Case study
Case study
• The HR sample schema, as shipped by Oracle Corp, still thinks that the USA is the only countryin the world
– Diana Lorentz 590.423.5567– John Russell 011.44.1344.429268
Case study
<Insert Picture Here>
Case study –The edition-based redefinition exercise proper
Show_ EmployeesEmployees
Pre_Upgrade
ID Ph. …
Employees_
Starting point.Pre-upgrade app in normal use.
Post_Upgrade
Pre_Upgrade
Employees Show_ Employees
Start the edition-based redefinition exercise.
Create the new edition as the child of the existing one.
ID Ph. …
Employees_
Show_ EmployeesEmployees
Pre_Upgrade
ID Ph. …
Employees_
Cntry #
Create the replacement columns in the underlying table.
The editioning view shieldsthe pre-upgrade app from this change.
Post_Upgrade
Employees Show_ Employees
Show_ EmployeesEmployees
Post_Upgrade
Pre_Upgrade
Show_ EmployeesEmployees
ID Ph. …
Employees_
Cntry #
Change Employees to selectthe new columns.
Change Show_Employeess to implement the new behavior.
Show_ EmployeesEmployees
ID Ph. …
Employees_
Cntry #
Post_Upgrade
Pre_Upgrade
Show_ EmployeesEmployees
Fwd Xed
Create the forward crossedition trigger.
Show_ EmployeesEmployees
ID Ph. …
Employees_
Cntry #
Post_Upgrade
Pre_Upgrade
Show_ EmployeesEmployees
Fwd XedRvrs Xed
Create the reverse crossedition trigger.
Show_ EmployeesEmployees
Rvrs Xed
ID Ph. …
Employees_
Cntry #
Post_Upgrade
Pre_Upgrade
Show_ EmployeesEmployees
Fwd Xed
Apply the transform to the data for the new app to use
Show_ EmployeesEmployees
Post_Upgrade
Pre_Upgrade
Show_ EmployeesEmployees
Fwd XedRvrs Xed
ID Ph. …
Employees_
Cntry #
Hot rollover period.
Show_ EmployeesEmployees
Show_EmployeesEmployees
Post_Upgrade
Pre_Upgrade
Show_ EmployeesEmployees
ID Ph. …
Employees_
Cntry #
The Pre_Upgrade editionis retired.
The edition-based redefinition exercise is complete.
Conclusion
• Large, mission critical applications can now be continuously available while a patch or an upgrade is installed
– The pre-upgrade application and the post-upgrade application can be used at the same time
• Beta customers tested it, declare it fit for their purpose, and hope to enable online application upgrade through EBR
• White paper available at http://www.oracle.com/technology/deploy/availability/pdf/edition_based_redefinition.pdf
<Insert Picture Here>
AQ&