IP Library Granted Patent US 9,519,675
Granted Patent B2
US 9,519,675 · App. 14/504,241 · Granted Dec 13, 2016

Data access management during zero downtime upgrade

Inventors: Juergen Specht (Gerabronn, DE); Lars-Eric Biewald (Mannheim, DE); Heiko Konrad (Hockenheim, DE); Steffen Meissner (Heidelberg, DE); Wieland Hoprich (Mannheim, DE); Volker Driesen (Heidelberg, DE)
Assignee: SAP SE
G06F17/30377G06F8/65G06F8/67G06F17/30292
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,519,675
App. No.
14/504,241
Granted
Dec 13, 2016
Kind
B2
Abstract

A zero downtime upgrade procedure upgrading a source system to a target system is initiated that prepares software for the target system in parallel to the operation of the source system. As part of the upgrade procedure, source tables of the source system are renamed. Thereafter, the renamed source tables are cloned for the target system. Further, the renamed source tables are equipped with database triggers to transfer data from the renamed source tables to the cloned tables used by the source system according to a source database schema. Next, the target tables are generated that include updated software content for later use by the target system while the source tables are used via a bridge database schema. Tables can then be shared between the source database schema accessed via the bridge database schema and the target system.

Claims (64)

1. A method comprising:

initiating a zero downtime upgrade procedure upgrading a source system to a target system that prepares software for the target system in parallel to the operation of the source system;

renaming source tables of the source system;

cloning the renamed source tables for the target system;

equipping the renamed source tables with database triggers to transfer data from the renamed source tables to the cloned tables used by the source system according to a source database schema;

generating the target tables comprising updated software content for later use by the target system while the source tables are used via a bridge database schema; and

sharing tables between the source database schema accessed via the bridge database schema and the target system.

2. The method of claim 1 , wherein restricting access to at least one table other than the cloned tables comprises:

determining which of a plurality of a tables should have restricted access during the upgrade procedure;

generating a names table comprising runtime objects corresponding to those tables;

deleting runtime objects from the names table that cannot be accessed during the upgrade; and

adding runtime objects to the names table corresponding to those tables that are determined not to be able to be accessed during the upgrade after completion of the upgrade procedure.

3. The method of claim 2 , wherein the names table comprises a metadata declaration for each listed runtime object.

4. The method of claim 3 , wherein the names table comprises field names and information types for each listed runtime object.

5. The method of claim 1 , wherein the restricted access prevents both read and write accesses to the corresponding tables.

6. The method of claim 1 further comprising:

logging attempts to access the tables with restricted access in a logging table.

7. The method of claim 6 , wherein the logging comprises storing the corresponding database table name, the accessed key, and a current timestamp.

8. The method of claim 6 , wherein there is a dedicated logging table for each table for which access is requested.

9. The method of claim 6 , wherein there is a single logging table for each of a plurality of tables for which access is requested.

10. The method of claim 1 , wherein restricting access to at least one table other than the cloned tables comprises:

preventing both read and write access to the at least one table.

11. The method of claim 1 , wherein restricting access to at least one table other than the cloned tables comprises:

preventing write access to the at least one table while allowing read access to the at least one table.

12. The method of claim 11 , further comprising: testing the target system prior to completing the upgrade procedure.

13. The method of claim 1 , wherein restricting access to at least one table other than the cloned tables comprises:

determining which of a plurality of a tables should have restricted write access during the upgrade procedure;

generating, for each table for which it was determined that should have restricted write access, a database trigger which prevents write accesses to the table; and

removing the database triggers preventing write access to the tables after completion of the upgrade procedure.

14. A non-transitory computer program product storing instructions, which when executed by at least one data processor forming part of at least one computing system, result in operations comprising:

initiating a zero downtime upgrade procedure upgrading a source system to a target system that prepares software for the target system in parallel to the operation of the source system;

renaming source tables of the source system;

cloning the renamed source tables for the target system;

equipping the renamed source tables with database triggers to transfer data from the renamed source tables to the cloned tables used by the source system according to a source database schema;

generating the target tables comprising updated software content for later use by the target system while the source tables are used via a bridge database schema; and

sharing tables between the source database schema accessed via the bridge database schema and the target system.

15. The computer program product of claim 14 , wherein restricting access to at least one table other than the cloned tables comprises:

determining which of a plurality of a tables should have restricted access during the upgrade procedure;

generating a names table comprising runtime objects corresponding to those tables;

deleting runtime objects from the names table that cannot be accessed during the upgrade; and

adding runtime objects to the names table corresponding to those tables that are determined not to be able to be accessed during the upgrade after completion of the upgrade procedure.

16. The computer program product of claim 15 , wherein the names table comprises a metadata declaration for each listed runtime object and comprises field names and information types for each listed runtime object.

17. The computer program product of claim 14 , wherein restricting access to at least one table other than the cloned tables comprises:

determining which of a plurality of a tables should have restricted write access during the upgrade procedure;

generating, for each table for which it was determined that should have restricted write access, a database trigger which prevents write accesses to the table; and

removing the database triggers preventing write access to the tables after completion of the upgrade procedure.

18. A system comprising:

at least one data processor; and

memory storing instructions, which when executed by the at least one data processor, result in operations comprising:

initiating a zero downtime upgrade procedure upgrading a source system to a target system that prepares software for the target system in parallel to the operation of the source system;

renaming source tables of the source system;

cloning the renamed source tables for the target system;

equipping the renamed source tables with database triggers to transfer data from the renamed source tables to the cloned tables used by the source system according to a source database schema;

generating the target tables comprising updated software content for later use by the target system while the source tables are used via a bridge database schema; and

sharing tables between the source database schema accessed via the bridge database schema and the target system.

19. The system of claim 18 , wherein restricting access to at least one table other than the cloned tables comprises:

determining which of a plurality of a tables should have restricted access during the upgrade procedure;

generating a names table comprising runtime objects corresponding to those tables;

deleting runtime objects from the names table that cannot be accessed during the upgrade; and

adding runtime objects to the names table corresponding to those tables that are determined not to be able to be accessed during the upgrade after completion of the upgrade procedure.

20. The system of claim 19 , wherein restricting access to at least one table other than the cloned tables comprises:

determining which of a plurality of a tables should have restricted write access during the upgrade procedure;

generating, for each table for which it was determined that should have restricted write access, a database trigger which prevents write accesses to the table; and

removing the database triggers preventing write access to the tables after completion of the upgrade procedure.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 2, 2014
From: SPECHT, JUERGEN; BIEWALD, LARS-ERIC; KONRAD, HEIKO; MEISSNER, STEFFEN; HOPRICH, WIELAND; DRIESEN, VOLKER
To: SAP SE
Reel/Frame 033875/0665 →
Continuity (1)
Related Publication 20160098443A1 · Apr 7, 2016