IP Library Granted Patent US 10,922,300
Granted Patent B2
US 10,922,300 · App. 15/655,188 · Granted Feb 16, 2021

Updating schema of a database

Inventors: Sudipto Mukhopadhyay (Pleasanton, CA); Mao Ye (San Jose, CA); Naveen Chandra Gorijala (Sunnyvale, CA)
Assignee: VMware, Inc.
G06F16/23G06F9/45533G06F16/122G06F16/213
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 10,922,300
App. No.
15/655,188
Filed
Jul 20, 2017
Granted
Feb 16, 2021
Kind
B2
Art Unit
2162
USPC
707/732
Abstract

In a computer-implemented method for updating schema of a database, execution of an application in a computing environment is initiated, where the application persists data in a database, and where the schema of the database is updatable responsive to an update of the application. Responsive to determining that the schema is updated, a first instance of the schema executing in the database is received, a second instance of the schema maintained in the application is received, the first instance of the schema is compared to the second instance of the schema, a difference between the first instance of the schema and the second instance of the schema is determined, and the first instance of the schema is updated to incorporate the difference between the first instance of the schema and the second instance of the schema.

Claims (62)

1. A method for updating schema of a database, the method comprising:

initiating execution of an application in a computing environment, wherein the application persists data in a database, wherein the schema of the database is updatable responsive to an update of the application;

during the initiating execution of the application, determining whether the schema is updated, the determining whether the schema is updated comprising:

comparing a version of the schema executing in the database to a version of the schema maintained in the application, wherein the version of the schema executing in the database is in code of the database and the version of the schema maintained in the application is in code of the application; and

provided the version of the schema executing in the database is different than the version of the schema maintained in the application, determining that the schema is updated;

responsive to the determining that the schema is updated:

receiving a first instance of the schema executing in the database;

receiving a second instance of the schema maintained in the application;

comparing the first instance of the schema to the second instance of the schema;

determining a difference between the first instance of the schema and the second instance of the schema; and

updating the first instance of the schema to incorporate the difference between the first instance of the schema and the second instance of the schema.

2. The method of claim 1 , wherein the receiving the first instance of the schema executing in the database comprises:

discovering the first instance of the schema by accessing at least one table of the database; and

converting the at least one table of the database to a corresponding at least one first data object.

3. The method of claim 2 , wherein the database comprises annotations for identifying components of the at least one table for use in converting the at least one table to at least one data object.

4. The method of claim 2 , wherein the second instance of the schema comprises at least one second data object.

5. The method of claim 4 , wherein the comparing the first instance of the schema to the second instance of the schema comprises:

comparing the at least one first data object of the first instance of the schema to the at least one second data object of the second instance of the schema.

6. The method of claim 5 , wherein the determining a difference between the first instance of the schema and the second instance of the schema comprises:

generating a delta between the at least one first data object of the first instance of the schema and the at least one second data object of the second instance of the schema, wherein the delta comprises at least one data object.

7. The method of claim 6 , wherein the updating the first instance of the schema to incorporate the difference between the first instance of the schema and the second instance of the schema comprises:

applying the delta to the first instance of the schema.

8. The method of claim 7 , further comprising:

converting the first instance of the schema comprising the at least one data object of the delta to the at least one table of the database.

9. The method of claim 1 , wherein the computing environment comprises a pre-configured hyper-converged computing device.

10. A non-transitory computer readable storage medium having computer readable program code stored thereon for causing a computer system to perform a method for updating schema of a database, the method comprising:

initiating execution of an application in a computing environment, wherein the application persists data in a database, wherein the schema of the database is updatable responsive to an update of the application;

during the initiating execution of the application, determining whether the schema is updated, the determining whether the schema is updated comprising:

comparing a version of the schema executing in the database to a version of the schema maintained in the application, wherein the version of the schema executing in the database is in code of the database and the version of the schema maintained in the application is in code of the application; and

provided the version of the schema executing in the database is different than the version of the schema maintained in the application, determining that the schema is updated;

responsive to the determining that the schema is updated:

receiving a first instance of the schema executing in the database;

receiving a second instance of the schema maintained in the application;

comparing the first instance of the schema to the second instance of the schema;

determining a difference between the first instance of the schema and the second instance of the schema; and

updating the first instance of the schema to incorporate the difference between the first instance of the schema and the second instance of the schema.

11. The non-transitory computer readable storage medium of claim 10 , wherein the receiving the first instance of the schema executing in the database comprises:

discovering the first instance of the schema by accessing at least one table of the database; and

converting the at least one table of the database to a corresponding at least one first data object.

12. The non-transitory computer readable storage medium of claim 11 , wherein the database comprises annotations for identifying components of the at least one table for use in converting the at least one table to at least one data object.

13. The non-transitory computer readable storage medium of claim 11 , wherein the second instance of the schema comprises at least one second data object.

14. The non-transitory computer readable storage medium of claim 13 , wherein the comparing the first instance of the schema to the second instance of the schema comprises:

comparing the at least one first data object of the first instance of the schema to the at least one second data object of the second instance of the schema.

15. The non-transitory computer readable storage medium of claim 14 , wherein the determining a difference between the first instance of the schema and the second instance of the schema comprises:

generating a delta between the at least one first data object of the first instance of the schema and the at least one second data object of the second instance of the schema, wherein the delta comprises at least one data object.

16. The non-transitory computer readable storage medium of claim 15 , wherein the updating the first instance of the schema to incorporate the difference between the first instance of the schema and the second instance of the schema comprises:

applying the delta to the first instance of the schema.

17. The non-transitory computer readable storage medium of claim 16 , the method further comprising:

converting the first instance of the schema comprising the at least one data object of the delta to the at least one table of the database.

18. A computer system comprising:

a data storage unit; and

a processor coupled with the data storage unit, the processor configured to:

initiate execution of an application at the computer system, wherein the application persists data in a database, wherein schema of the database is updatable responsive to an update of the application;

during the initiating execution of the application, determine whether the schema is updated:

compare a version of the schema executing in the database to a version of the schema maintained in the application, wherein the version of the schema executing in the database is in code of the database and the version of the schema maintained in the application is in code of the application; and

provided the version of the schema executing in the database is different than the version of the schema maintained in the application, determine that the schema is updated;

responsive to determining that the schema is updated:

receive a first instance of the schema executing in the database;

receive a second instance of the schema maintained in the application;

compare the first instance of the schema to the second instance of the schema;

determine a difference between the first instance of the schema and the second instance of the schema; and

update the first instance of the schema to incorporate the difference between the first instance of the schema and the second instance of the schema.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067103/0030 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 25, 2017
From: MUKHOPADHYAY, SUDIPTO; YE, MAO; GORIJALA, NAVEEN CHANDRA
To: VMWARE, INC.
Reel/Frame 043094/0514 →
Continuity (1)
Related Publication 20190026321A1 · Jan 24, 2019