IP Library › Granted Patent US 12,013,851
Granted Patent B2
US 12,013,851 · App. 17/838,117 · Granted Jun 18, 2024

Methods of data sharing across cloud regions and cloud platforms of cloud-based data warehousing systems

Inventors: Hiren Shah (Stafford, VA); Ganesh Bharathan (Henrico, VA); Sridhar Maramreddy (Glen Allen, VA); Naga Venkata Sriram Vadakattu (Frisco, TX); Naveen Kumar Kilaru (McLean, VA)
Assignee: Capital One Services, LLC
G06F16/24532G06F16/252G06F16/283
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,013,851
App. No.
17/838,117
Granted
Jun 18, 2024
Kind
B2
Abstract

Methods, systems, devices, and computer-readable media for sharing data between accounts that are hosted by a cloud-based data warehousing system on different cloud platforms or in different cloud regions of a cloud platform, and where such accounts may be associated with different organizations. Sharing of data in the multi-cloud platform and/or multi-cloud region environments may be facilitated by the on-demand creation of one or more data collection accounts.

Claims (94)

1. A method comprising:

receiving, by a first computing device, a request for a first account, of a first cloud-based data warehouse located in a first cloud region, to access data associated with a client account, wherein the first cloud-based data warehouse comprises one or more databases for storing data received from a plurality of other cloud-based data warehouses;

determining, by the first computing device, that a first portion of the data associated with the client account is stored in a second cloud-based data warehouse located in the first cloud region and that a second portion of the data associated with the client account is stored in a third cloud-based data warehouse located in a second cloud region;

sending, by the first computing device and to a second computing device associated with the second cloud-based data warehouse, first instructions to share the first portion of the data with the first account;

sending, by the first computing device and to a third computing device associated with the third cloud-based data warehouse, second instructions to share the second portion of the data with a second account of a fourth cloud-based data warehouse located in the second cloud region;

sending, by the first computing device and to a fourth computing device associated with the fourth cloud-based data warehouse, third instructions to:

persist the second portion of the data shared with the second account; and

replicate, to the first account of the first cloud-based data warehouse, the persisted second portion of the data;

accessing, by the first computing device, the first portion of the data shared from the second cloud-based data warehouse;

receiving, by the first computing device, the second portion of the data replicated from the fourth cloud-based data warehouse; and

storing, by the first computing device, in the first account of the first cloud-based data warehouse:

the first portion of the data shared from the second cloud-based data warehouse, and

the second portion of the data replicated from the fourth cloud-based data warehouse.

2. The method of claim 1 , wherein a sharing protocol associated with the first cloud-based data warehouse prevents sharing of data between cloud-based data warehouses located in different cloud regions, and

wherein the second cloud region is different from the first cloud region.

3. The method of claim 1 , wherein a sharing protocol associated with the first cloud-based data warehouse prevents sharing of data between cloud-based data warehouses located on different cloud platforms, and

wherein the first cloud region is associated with a first cloud platform and the second cloud region is associated with a second cloud platform different from the first cloud platform.

4. The method of claim 1 , further comprising:

determining that the client account comprises a plurality of sub-accounts having sub-account data stored on the second cloud-based data warehouse; and

identifying a primary sub-account of the plurality of sub-accounts, wherein remaining sub-accounts, of the plurality of sub-accounts, comprise one or more secondary sub-accounts, and

wherein the first instructions cause:

the one or more secondary sub-accounts to share their respective secondary sub-account data with the primary sub-account; and

the primary sub-account to share, with the first account, primary sub-account data and the secondary sub-account data.

5. The method of claim 1 , wherein one or more of the first cloud-based data warehouse, the second cloud-based data warehouse, the third cloud-based data warehouse, and the fourth cloud-based data warehouse comprise virtual data warehouses.

6. The method of claim 1 , further comprising:

after accessing to the first portion of the data shared from the second cloud-based data warehouse, persisting the first portion of the data,

wherein storing the first portion of the data comprises storing the persisted first portion of the data.

7. The method of claim 1 , wherein storing the first portion of the data and the second portion of the data comprises:

aggregating the first portion of the data and the second portion of the data; and

inserting, into one or more tables of the first cloud-based data warehouse, the aggregated data.

8. A first computing device associated with a first cloud-based data warehouse located in a first cloud region, wherein the first cloud-based data warehouse comprises one or more databases for storing data received from a plurality of other cloud-based data warehouses, and wherein the first computing device comprises:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the first computing device to:

receive a request for a first account, of the first cloud-based data warehouse, to access data associated with a client account;

determine that a first portion of the data associated with the client account is stored in a second cloud-based data warehouse located in the first cloud region and that a second portion of the data associated with the client account is stored in a third cloud-based data warehouse located in a second cloud region;

send, to a second computing device associated with the second cloud-based data warehouse, instructions to share the first portion of the data with the first account;

send, to a third computing device associated with the third cloud-based data warehouse, instructions to share the second portion of the data with a second account of a fourth cloud-based data warehouse located in the second cloud region;

send, to a fourth computing device associated with the fourth cloud-based data warehouse, instructions to:

persist the second portion of the data shared with the second account; and

replicate, to the first account of the first cloud-based data warehouse, the persisted second portion of the data;

access the first portion of the data shared from the second cloud-based data warehouse;

receive the second portion of the data replicated from the fourth cloud-based data warehouse; and

store in the first account of the first cloud-based data warehouse:

the first portion of the data shared from the second cloud-based data warehouse, and

the second portion of the data replicated from the fourth cloud-based data warehouse.

9. The first computing device of claim 8 , wherein a sharing protocol associated with the first cloud-based data warehouse prevents sharing of data between cloud-based data warehouses located in different cloud regions, and

wherein the second cloud region is different from the first cloud region.

10. The first computing device of claim 8 , wherein a sharing protocol associated with the first cloud-based data warehouse prevents sharing of data between cloud-based data warehouses located on different cloud platforms, and

wherein the first cloud region is associated with a first cloud platform and the second cloud region is associated with a second cloud platform different from the first cloud platform.

11. The first computing device of claim 8 , wherein the instructions, when executed by the one or more processors, further cause the first computing device to:

determine that the client account comprises a plurality of sub-accounts having sub-account data stored on the second cloud-based data warehouse; and

identify a primary sub-account of the plurality of sub-accounts, wherein remaining sub-accounts, of the plurality of sub-accounts, comprise one or more secondary sub-accounts, and

wherein the first instructions cause:

the one or more secondary sub-accounts to share their respective secondary sub-account data with the primary sub-account; and

the primary sub-account to share, with the first account, primary sub-account data and the secondary sub-account data.

12. The first computing device of claim 8 , wherein one or more of the first cloud-based data warehouse, the second cloud-based data warehouse, the third cloud-based data warehouse, and the fourth cloud-based data warehouse comprise virtual data warehouses.

13. The first computing device of claim 8 , wherein the instructions, when executed by the one or more processors, further cause the first computing device to:

after accessing to the first portion of the data shared from the second cloud-based data warehouse, persist the first portion of the data; and

store the first portion of the data by causing the first computing device to store the persisted first portion of the data.

14. The first computing device of claim 8 , wherein the instructions, when executed by the one or more processors, further cause the first computing device to store the first portion of the data and the second portion of the data by causing the first computing device to:

aggregate the first portion of the data and the second portion of the data; and

insert, into one or more tables of the first cloud-based data warehouse, the aggregated data.

15. A cloud-based data warehousing system comprising:

a first computing device associated with a first cloud-based data warehouse located in a first cloud region, wherein the first-cloud warehouse comprises one or more databases for storing data received from a plurality of other cloud-based data warehouses;

a second computing device associated with a second cloud-based data warehouse located in the first cloud region;

a third computing device associated with a third cloud-based data warehouse located in a second cloud region; and

a fourth computing device associated with a fourth cloud-based data warehouse located in the second cloud region,

wherein the first computing device is configured to:

receive a request for a first account, of the first cloud-based data warehouse, to access data associated with a client account;

determine that a first portion of the data associated with the client account is stored in the second cloud-based data warehouse and that a second portion of the data associated with the client account is stored in the third cloud-based data warehouse;

send, to the second computing device associated with the second cloud-based data warehouse, first instructions to share the first portion of the data with the first account;

send, to the third computing device associated with the third cloud-based data warehouse, second instructions to share the second portion of the data with a second account of the fourth cloud-based data warehouse;

send, to the fourth computing device associated with the fourth cloud-based data warehouse, third instructions to:

persist the second portion of the data shared with the second account; and

replicate, to the first account of the first cloud-based data warehouse, the persisted second portion of the data;

access the first portion of the data shared from the second cloud-based data warehouse;

receive the second portion of the data replicated from the fourth cloud-based data warehouse; and

store in the first account of the first cloud-based data warehouse:

the first portion of the data shared from the second cloud-based data warehouse, and

the second portion of the data replicated from the fourth cloud-based data warehouse.

16. The cloud-based data warehousing system of claim 15 , wherein a sharing protocol associated with the first cloud-based data warehouse prevents sharing of data between cloud-based data warehouses located in different cloud regions, and

wherein the second cloud region is different from the first cloud region.

17. The cloud-based data warehousing system of claim 15 , wherein a sharing protocol associated with the first cloud-based data warehouse prevents sharing of data between cloud-based data warehouses located on different cloud platforms, and

wherein the first cloud region is associated with a first cloud platform and the second cloud region is associated with a second cloud platform different from the first cloud platform.

18. The cloud-based data warehousing system of claim 15 , wherein the first computing device is further configured to:

determine that the client account comprises a plurality of sub-accounts having sub-account data stored on the second cloud-based data warehouse; and

identify a primary sub-account of the plurality of sub-accounts, wherein remaining sub-accounts, of the plurality of sub-accounts, comprise one or more secondary sub-accounts, and

wherein the first instructions cause:

the one or more secondary sub-accounts to share their respective secondary sub-account data with the primary sub-account; and

the primary sub-account to share, with the first account, primary sub-account data and the secondary sub-account data.

19. The cloud-based data warehousing system of claim 15 , wherein one or more of the first cloud-based data warehouse, the second cloud-based data warehouse, the third cloud-based data warehouse, and the fourth cloud-based data warehouse comprise virtual data warehouses.

20. The cloud-based data warehousing system of claim 15 , wherein the first computing device is configured to:

after accessing to the first portion of the data shared from the second cloud-based data warehouse, persist the first portion of the data; and

store the first portion of the data by causing the first computing device to store the persisted first portion of the data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 15, 2022
From: SHAH, HIREN; BHARATHAN, GANESH; MARAMREDDY, SRIDHAR; VADAKATTU, SRIRAM; KILARU, NAVEEN KUMAR
To: CAPITAL ONE SERVICES, LLC
Reel/Frame 060209/0925 →
Continuity (1)
Related Publication 20230401205A1 · Dec 14, 2023