Editioned Database Views for Zero-Downtime Schema Upgrades

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Legacy techniques for upgrading relational database systems incur significant downtime due to their inability to automatically determine the upgrade edition of relational database objects, especially in modern environments with large storage footprints, where the system is brought down for system-wide upgrades.

Innovation Solution

A method using a data dictionary to automatically determine an upgrade edition of a relational database table by creating editioned views, allowing both old and new editions to coexist, with cross-edition triggers to manage data transformations and access, thereby enabling concurrent operation of pre-upgrade and upgraded software applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Extent of automation

If legacy techniques are used to upgrade relational database systems, then system-wide upgrades can be performed, but significant downtime is incurred due to inability to automatically determine upgrade edition

Engineering Contradiction:
Improveautomatic determination of upgrade editionVSAvoidsystem downtime during upgrade
Core Design Contradiction:
Extent of automationVSLoss of time

Solution Approach 1:

The system performs preliminary actions by creating editioned views and determining upgrade editions before the actual upgrade is needed. The data dictionary is read to identify revision identifiers and determine the current and target editions in advance, allowing the system to be prepared for upgrade without requiring downtime when the upgrade is actually executed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces editioned views as an intermediary layer between the physical database tables and the applications. These views allow automatic determination of upgrade editions by mapping to different physical tables based on edition identifiers, enabling automated upgrade detection without bringing down the system.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the system is brought down for system-wide upgrades, then upgrades can be performed, but productivity is reduced due to long downtimes

Engineering Contradiction:
Improvesuccessful completion of upgradesVSAvoidsystem availability during upgrade
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the database into multiple editions, where each edition represents a different version of the database schema. This segmentation allows different applications to access different editions simultaneously, enabling upgrades to be performed on individual editions without affecting the entire system's availability and productivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically determines which edition to use based on revision identifiers found in the data dictionary. The editioned views are dynamically created or updated to point to the appropriate physical tables, allowing the system to adapt to upgrades without requiring a complete system shutdown, thus maintaining productivity.

Inventive Principle:
Principle #15Dynamics

3Measurement precision

If manual determination of upgrade edition is used, then accuracy can be maintained, but device complexity increases due to manual intervention requirements

Engineering Contradiction:
Improveaccuracy of upgrade edition identificationVSAvoidcomplexity of upgrade management system
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system performs self-service by automatically reading the data dictionary to identify revision identifiers and determining the current and target upgrade editions without manual intervention. The editioned views automatically map to the correct physical tables based on edition identifiers, maintaining measurement precision while reducing operational complexity.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent uses parameter changes in the form of edition identifiers and revision numbers stored in the data dictionary to automatically determine upgrade editions. By changing the edition parameter in the view definitions based on these identifiers, the system achieves accurate upgrade detection through automated parameter comparison rather than manual assessment.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10496399B2Using a data dictionary to determine an upgrade edition of a relational database table
Publication Date: 2019.12.03 ORACLE INT CORP
  • US10496399B2 patent drawing
  • US10496399B2 patent drawing
  • US10496399B2 patent drawing

AI summary

A method, system, and computer program product using a data dictionary to automatically determine an upgrade edition of relational database table in a database installation. The editioning method commences upon receiving a data dictionary of the database comprising at least entries corresponding to a first edition of the relational database table, then reading entries of the data dictionary to identify at least one relational database table column of the relational database table that has a revision identifier. The revision identifiers are used to determine a first edition (e.g., a run edition) and a second edition (e.g., an upgrade edition). Then, the method proceeds by creating at least a first relational database table view corresponding to the first edition of the relational database table; and creating at least a second relational database table view corresponding to the upgrade edition of the relational database table using the identified relational database table column.