IP Library Granted Patent US 12,056,101
Granted Patent B2
US 12,056,101 · App. 17/162,474 · Granted Aug 6, 2024

Cross-platform database migration management

Inventors: Bala Sunil Kandi (Dublin, CA); Eric Ray Chang (San Francisco, CA); William Edward Gurling (Madison, NC)
Assignee: Rubrik, Inc.
G06F16/214G06F3/0482G06F11/1451G06F11/1469G06F16/182G06F16/254G06F2201/80G06F2201/82G06F2201/84
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 12,056,101
App. No.
17/162,474
Granted
Aug 6, 2024
Kind
B2
Abstract

A cross-platform data migration method and a cross-platform data migration system include determining that a first database is compatible with a second database, receiving a user request associated with an instruction to migrate data from the first database to the second database, determining that backup data corresponding to a current state of the first database is available, mounting the backup data onto the second platform via a distributed file system protocol, converting the backup data from the source endian format to a target endian format, and restoring the backup data in the target endian format to the second platform.

Claims (67)

1. A method, comprising:

determining that a first database is compatible with a second database, the first database associated with a first platform in a source endian format, the second database associated with a second platform in a target endian format;

receiving a user request via a client device associated with the first platform, the user request including an instruction to migrate data from the first database to the second database;

determining that a first snapshot comprising initial backup data corresponding to a current state of the first database is available, the initial backup data associated with the source endian format;

mounting the initial backup data onto the second platform via a distributed file system protocol;

converting the initial backup data from the source endian format to the target endian format, wherein converting the initial backup data comprises converting the first snapshot from the source endian format of the first platform to the target endian format of the second platform;

generating, subsequent to mounting the initial backup data onto the second platform, a second snapshot of the first database, the second snapshot comprising updated backup data with respect to the initial backup data;

mounting the updated backup data onto the second platform via the distributed file system protocol;

converting the updated backup data from the source endian format to the target endian format, wherein converting the updated backup data comprises converting the second snapshot from the source endian format of the first platform to the target endian format of the second platform;

merging the initial backup data in the target endian format and the updated backup data in the target endian format to create a merged snapshot in the target endian format; and

restoring, using the merged snapshot in the target endian format, the initial backup data and the updated backup data in the target endian format to the second platform.

2. The method of claim 1 , further comprising:

upon determining that the initial backup data corresponding to the current state of the first database is unavailable, generating the initial backup data at least including generating a full snapshot of the first database and associated metadata of the first database, wherein determining that the first snapshot is available is based at least in part on generating the full snapshot, and wherein the full snapshot is the first snapshot.

3. The method of claim 2 , wherein restoring the initial backup data and the updated backup data in the target endian format to the second platform comprises:

restoring the merged snapshot and the associated metadata to the second platform.

4. The method of claim 1 , wherein determining that the first database is compatible with the second database comprises:

determining that a first tablespace in the first database associated with the user request is a non-system transportable tablespace;

determining a first character set associated with the first database matches a second character set associated with the second database; and

determining a first database version associated with the first database is compatible with a second database version associated with the second database version.

5. The method of claim 1 , further comprising:

upon determining the first database is incompatible with the second database, generate a shell script to be executed on the first database to solve an incompatibility issue.

6. The method of claim 1 , further comprising:

causing display of a plurality of selectable user interface elements each corresponding to an integrated step of a data migration workflow.

7. The method of claim 6 , wherein the plurality of selectable user interface elements includes a first selectable user interface element corresponding to a first step associated with a cross-platform compatibility check, and a second selectable user interface element corresponding to a second step associated with a current backup data availability check.

8. The method of claim 6 , wherein the plurality of selectable user interface elements further includes a third selectable user interface element corresponding to a third step associated with pre-cutover source database downtime operations, and a fourth selectable user interface element corresponding to a fourth step associated with cutover source database downtime operations.

9. A system, comprising:

a memory storing instructions; and

one or more processors communicatively coupled to the memory and configured by the instructions to perform operations comprising:

determining that a first database is compatible with a second database the first database associated with a first platform in a source endian format, the second database associated with a second platform in a target endian format;

receiving a user request via a client device associated with the first platform, the user request including an instruction to migrate data from the first database to the second database;

determining that a first snapshot comprising initial backup data corresponding to a current state of the first database is available, the initial backup data associated with the source endian format;

mounting the initial backup data onto the second platform via a distributed file system protocol;

converting the initial backup data from the source endian format to the target endian format, wherein converting the initial backup data comprises converting the first snapshot from the source endian format of the first platform to the target endian format of the second platform;

generating, subsequent to mounting the initial backup data onto the second platform, a second snapshot of the first database, the second snapshot comprising updated backup data with respect to the initial backup data;

mounting the updated backup data onto the second platform via the distributed file system protocol;

converting the updated backup data from the source endian format to the target endian format, wherein converting the updated backup data comprises converting the second snapshot from the source endian format of the first platform to the target endian format of the second platform;

merging the initial backup data in the target endian format and the updated backup data in the target endian format to create a merged snapshot in the target endian format; and

restoring, using the merged snapshot in the target endian format, the initial backup data and the updated backup data in the target endian format to the second platform.

10. The system of claim 9 , the one or more processors configured by the instructions to perform operations further comprising:

upon determining that the initial backup data corresponding to the current state of the first database is unavailable, generating the initial backup data at least including generating a full snapshot of the first database and associated metadata of the first database, wherein determining that the first snapshot is available is based at least in part on generating the full snapshot, and wherein the full snapshot is the first snapshot.

11. The system of claim 10 , the one or more processors configured by the instructions to perform operations of restoring the initial backup data and the updated backup data in the target endian format to the second platform comprising:

restoring the merged snapshot and the associated metadata to the second platform.

12. The system of claim 9 , the one or more processors configured by the instructions to perform operations of determining of the first database being compatible with the second database comprising:

determining that a first tablespace in the first database associated with the user request is a non-system transportable tablespace;

determining a first character set associated with the first database matches a second character set associated with the second database; and

determining a first database version associated with the first database is compatible with a second database version associated with the second database version.

13. The system of claim 9 , the one or more processors configured by the instructions to perform operations further comprising:

causing display of a plurality of selectable user interface elements each corresponding to an integrated step of a data migration workflow.

14. The system of claim 13 , wherein the plurality of selectable user interface elements includes a first selectable user interface element corresponding to a first step associated with a cross-platform compatibility check, and a second selectable user interface element corresponding to a second step associated with a current backup data availability check.

15. A non-transitory computer-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to perform operations comprising:

determining that a first database is compatible with a second database, the first database associated with a first platform in a source endian format, the second database associated with a second platform in a target endian format;

receiving a user request via a client device associated with the first platform, the user request including an instruction to migrate data from the first database to the second database;

determining that a first snapshot comprising initial backup data corresponding to a current state of the first database is available, the initial backup data associated with the source endian format;

mounting the initial backup data onto the second platform via a distributed file system protocol;

converting the initial backup data from the source endian format to the target endian format, wherein converting the initial backup data comprises converting the first snapshot from the source endian format of the first platform to the target endian format of the second platform;

generating, subsequent to mounting the initial backup data onto the second platform, a second snapshot of the first database, the second snapshot comprising updated backup data with respect to the initial backup data;

mounting the updated backup data onto the second platform via the distributed file system protocol;

converting the updated backup data from the source endian format to the target endian format, wherein converting the updated backup data comprises converting the second snapshot from the source endian format of the first platform to the target endian format of the second platform;

merging the initial backup data in the target endian format and the updated backup data in the target endian format to create a merged snapshot in the target endian format; and

restoring, using the merged snapshot in the target endian format, the initial backup data and the updated backup data in the target endian format to the second platform.

16. The method of claim 1 , wherein the source endian format is a big-endian format and the target endian format is a little-endian format, or wherein the source endian format is the little-endian format and the target endian format is the big-endian format.

17. The system of claim 14 , wherein the plurality of selectable user interface elements further includes a third selectable user interface element corresponding to a third step associated with pre-cutover source database downtime operations, and a fourth selectable user interface element corresponding to a fourth step associated with cutover source database downtime operations.

18. The system of claim 9 , wherein the source endian format is a big-endian format and the target endian format is a little-endian format, or wherein the source endian format is the little-endian format and the target endian format is the big-endian format.

19. The non-transitory computer-readable storage medium of claim 15 , wherein the instructions, when executed by the processing device, cause the processing device to perform further operations comprising:

upon determining that the initial backup data corresponding to the current state of the first database is unavailable, generating the initial backup data at least including generating a full snapshot of the first database and associated metadata of the first database, wherein determining that the first snapshot is available is based at least in part on generating the full snapshot, and wherein the full snapshot is the first snapshot.

20. The non-transitory computer-readable storage medium of claim 19 , wherein the instructions, wherein restoring the initial backup data and the updated backup data in the target endian format to the second platform comprises:

restoring, using the merged snapshot in the target endian format, the merged snapshot and the associated metadata to the second platform.

Assignments (3)
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 60333/0323 Recorded Jun 13, 2025
From: GOLDMAN SACHS BDC, INC., AS COLLATERAL AGENT
To: RUBRIK, INC.
Reel/Frame 071565/0602 →
GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 10, 2022
From: RUBRIK, INC.
To: GOLDMAN SACHS BDC, INC., AS COLLATERAL AGENT
Reel/Frame 060333/0323 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 3, 2021
From: KANDI, BALA SUNIL; CHANG, ERIC RAY; GURLING, WILLIAM EDWARD
To: RUBRIK, INC.
Reel/Frame 055132/0883 →
Continuity (1)
Related Publication 20220245100A1 · Aug 4, 2022