US2023126892A1PendingUtilityA1

Zero downtime evolution of database schemas for cloud applications

Assignee: SAP SEPriority: Jul 26, 2018Filed: Sep 29, 2022Published: Apr 27, 2023
Est. expiryJul 26, 2038(~12 yrs left)· nominal 20-yr term from priority
G06F 16/213G06F 16/25G06F 16/21
57
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

In an example embodiment, a first version of a cloud-based application is deployed. The first version of the cloud-based application contains references, based on a first schema, to a first database. Then a second version of the cloud-based application, different than the first version, is deployed. The second version of the cloud-based application contains references, based on a second schema, to the first database. Then access to the second version of the cloud-based application to one or more user devices is prevented while permitting testing devices to have access to the second version of the cloud-based application, while migrating data from the first schema of the first database to the second schema of the first database. Then access to the second version of the cloud-based application to the one or more user devices is permitted once the migrating of the data is complete.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A system comprising:
 one or more processors; and   a multi-schema-version database management system comprising:
 an upper layer containing multiple logical schema versions; 
 a lower layer containing materialized tables containing data; 
 a middle layer containing a catalog connecting the upper layer and the lower layer by maintaining a genealogy of different schema versions in the multi-schema-version database management system; and 
 a delta code generation component containing code that, when executed, creates the different schema versions based on the materialized tables. 
   
     
     
         2 . The system of  claim 1 , wherein the code, when executed, processes a sequence of schema modification operations (SMOs). 
     
     
         3 . The system of  claim 2 , wherein each of a plurality of table versions is created by exactly one SMO. 
     
     
         4 . The system of  claim 3 , wherein at least one table version is modified by another SMO. 
     
     
         5 . The system of  claim 1 , wherein the code, when executed, splits a table into two tables. 
     
     
         6 . The system of  claim 5 , wherein the table is split by distributing columns of the table into two new target table versions. 
     
     
         7 . The system of  claim 6 , wherein the code, when executed, further generates a new foreign key between two tables corresponding to the two new target table versions. 
     
     
         8 . A method comprising:
 creating an upper layer of a multi-schema-version database management system, the upper layer containing multiple logical schema versions;   creating a lower layer of the multi-schema-version database management system, the lower layer containing materialized tables containing data;   creating a middle layer of the multi-schema-version database management system, the middle layer containing a catalog connecting the upper layer and the lower layer by maintaining a genealogy of different schema versions in the multi-schema-version database management system; and   using a delta code generation component to create the different schema versions based on the materialized tables.   
     
     
         9 . The method of  claim 8 , further comprising:
 using the delta code generation component to processes a sequence of schema modification operations (SMOs).   
     
     
         10 . The method of  claim 9 , wherein each of a plurality of table versions is created by exactly one SMO. 
     
     
         11 . The method of  claim 10 , wherein at least one table version is modified by another SMO. 
     
     
         12 . The method of  claim 8 , further comprising using the delta code generation component to split a table into two tables. 
     
     
         13 . The method of  claim 12 , wherein the table is split by distributing columns of the table into two new target table versions. 
     
     
         14 . The method of  claim 13 , further comprising using the delta code generation component to generate a new foreign key between two tables corresponding to the two new target table versions. 
     
     
         15 . A non-transitory machine-readable medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform operations comprising:
 creating an upper layer of a multi-schema-version database management system, the upper layer containing multiple logical schema versions;   creating a lower layer of the multi-schema-version database management system, the lower layer containing materialized tables containing data;   creating a middle layer of the multi-schema-version database management system, the middle layer containing a catalog connecting the upper layer and the lower layer by maintaining a genealogy of different schema versions in the multi-schema-version database management system; and   using a delta code generation component to create the different schema versions based on the materialized tables.   
     
     
         16 . The non-transitory machine-readable medium of  claim 15 , further comprising:
 using the delta code generation component to processes a sequence of schema modification operations (SMOs).   
     
     
         17 . The non-transitory machine-readable medium of  claim 16 , wherein each of a plurality of table versions is created by exactly one SMO. 
     
     
         18 . The non-transitory machine-readable medium of  claim 17 , wherein at least one table version is modified by another SMO. 
     
     
         19 . The non-transitory machine-readable medium of  claim 15 , further comprising using the delta code generation component to split a table into two tables. 
     
     
         20 . The non-transitory machine-readable medium of  claim 19 , wherein the table is split by distributing columns of the table into two new target table versions.

Join the waitlist — get patent alerts

Track US2023126892A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.