IP Library Granted Patent US 12,244,672
Granted Patent B2
US 12,244,672 · App. 17/450,335 · Granted Mar 4, 2025

Cloud data ingestion system

Inventors: Prashant Parekh (McLean, VA); Ramesh Chandra (McLean, VA)
Assignee: Capital One Services, LLC
H04L67/34G06F9/45558H04L41/08H04L41/20H04L41/40
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,244,672
App. No.
17/450,335
Granted
Mar 4, 2025
Kind
B2
Abstract

A computing system identifies a plurality of virtualization elements executing on a cloud computing environment. The computing system retrieves a first set of data related to software resources executing across the plurality of virtualization elements. The computing system retrieves a second set of data related to hardware resources associated with the plurality of virtualization elements. The computing system retrieves delta updates to the first set of data, wherein the delta updates are retrieved in real-time. The computing system generates a first database. The first database includes the first set of data related to the software resources, the second set of data related to the hardware resources associated with the plurality of virtualization elements, and the delta updates. The computing system generates a configuration management database hosted by a configuration management database system.

Claims (79)

1. A method comprising:

identifying, by a computing system, a plurality of virtualization elements executing on a cloud computing environment, the plurality of virtualization elements comprising one or more of a plurality of containers or a plurality of virtual machines;

retrieving, by the computing system, a first set of data related to software resources executing across the plurality of containers or the plurality of virtual machines;

retrieving, by the computing system, a second set of data related to hardware resources allocated to the plurality of virtualization elements;

retrieving, by the computing system, delta updates to the first set of data, wherein the delta updates are retrieved in real-time;

generating, by the computing system, a first database comprising the first set of data related to the software resources, the second set of data related to the hardware resources associated with the plurality of virtualization elements, and the delta updates;

transmitting the first set of data, the second set of data, and the delta updates to a data lake separate from the first database,

wherein the delta updates are transmitted to the data lake in real-time, and

wherein the data lake is user-accessible through one or more application programming interfaces; and

generating, by the computing system, a configuration management database separate from the first database and the data lake, the configuration management database hosted by a configuration management database system to present information associated with the first database by:

causing a representation of the first database to exist within the configuration management database system in a form of a staging table, and

causing the representation to be translated via a transform map from the staging table into a configuration management database format compatible with the configuration management database system.

2. The method of claim 1 , further comprising:

interfacing, by the computing system, with one or more streaming data platforms to present the information associated with the data lake to one or more end users.

3. The method of claim 1 , wherein interfacing, by the computing system, with the configuration management database system to present information associated with the first database comprises:

establishing a connection between the computing system and the configuration management database system via a Java database connectivity (JDBC) connection.

4. The method of claim 1 , wherein retrieving, by the computing system, the first set of data related to software resources executing across the plurality of virtualization elements comprises:

periodically pulling software package data from the software resources executing across the plurality of virtualization elements.

5. The method of claim 1 , wherein generating, by the computing system, the first database comprises:

filtering the first set of data related to the software resources to include information requested by a user.

6. The method of claim 1 , further comprising:

retrieving, by the computing system, a new delta update related to the hardware resources associated with the plurality of virtualization elements; and

pushing, by the computing system, data in the new delta update to the configuration management database.

7. The method of claim 6 , wherein pushing, by the computing system, the data in the new delta update to the configuration management database comprises:

updating the first database with the data contained in the new delta update; and

causing the data contained in the new delta update to be translated and included in the configuration management database.

8. A non-transitory computer readable medium comprising one or more sequences of instructions, which, when executed by one or more processors, causes a computing system to perform operations comprising:

identifying, by the computing system, a plurality of virtualization elements executing on a cloud computing environment, the plurality of virtualization elements comprising one or more of a plurality of containers or a plurality of virtual machines;

retrieving, by the computing system, a first set of data related to software resources executing across the plurality of containers or the plurality of virtual machines;

retrieving, by the computing system, a second set of data related to hardware resources allocated to the plurality of virtualization elements;

retrieving, by the computing system, delta updates to the first set of data, wherein the delta updates are retrieved in real-time;

generating, by the computing system, a first database comprising the first set of data related to the software resources, the second set of data related to the hardware resources associated with the plurality of virtualization elements, and the delta updates;

transmitting the first set of data, the second set of data, and the delta updates to a data lake separate from the first database,

wherein the delta updates are transmitted to the data lake in real-time, and

wherein the data lake is user-accessible through one or more application programming interfaces; and

generating, by the computing system, a configuration management database separate from the first database and the data lake, the configuration management database hosted by a configuration management database system to present information associated with the first database by:

causing a representation of the first database to exist within the configuration management database system in a form of a staging table, and

causing the representation to be translated via a transform map from the staging table into a configuration management database format compatible with the configuration management database system.

9. The non-transitory computer readable medium of claim 8 , further comprising:

interfacing, by the computing system, with one or more streaming data platforms to present the information associated with the data lake to one or more end users.

10. The non-transitory computer readable medium of claim 8 , wherein interfacing, by the computing system, with the configuration management database system to present information associated with the first database comprises:

establishing a connection between the computing system and the configuration management database system via a Java database connectivity (JDBC) connection.

11. The non-transitory computer readable medium of claim 8 , wherein retrieving, by the computing system, the first set of data related to software resources executing across the plurality of virtualization elements comprises:

periodically pulling software package data from the software resources executing across the plurality of virtualization elements.

12. The non-transitory computer readable medium of claim 8 , wherein generating, by the computing system, the first database comprises:

filtering the first set of data related to the software resources to include information requested by a user.

13. The non-transitory computer readable medium of claim 8 , further comprising:

retrieving, by the computing system, a new delta update related to the hardware resources associated with the plurality of virtualization elements; and

pushing, by the computing system, data in the new delta update to the configuration management database.

14. The non-transitory computer readable medium of claim 13 , wherein pushing, by the computing system, the data in the new delta update to the configuration management database comprises:

updating the first database with the data contained in the new delta update; and

causing the data contained in the new delta update to be translated and included in the configuration management database.

15. A system, comprising:

a processor; and

a memory having programming instructions stored thereon, which, when executed by the processor, causes the system to perform operations, comprising:

identifying a plurality of virtualization elements executing on a cloud computing environment, the plurality of virtualization elements comprising one or more of a plurality of containers or a plurality of virtual machines;

retrieving a first set of data related to software resources executing across the plurality of containers or the plurality of virtual machines;

retrieving a second set of data related to hardware resources allocated to the plurality of virtualization elements;

retrieving delta updates to the first set of data, wherein the delta updates are retrieved in real-time;

generating a first database comprising the first set of data related to the software resources, the second set of data related to the hardware resources associated with the plurality of virtualization elements, and the delta updates;

transmitting the first set of data, the second set of data, and the delta updates to a data lake separate from the first database,

wherein the delta updates are transmitted to the data lake in real-time, and

wherein the data lake is user-accessible through one or more application programming interfaces; and

generating a configuration management database separate from the first database and the data lake, the configuration management database hosted by a configuration management database system to present information associated with the first database by:

causing a representation of the first database to exist within the configuration management database system in a form of a staging table, and

causing the representation to be translated via a transform map from the staging table into a configuration management database format compatible with the configuration management database system.

16. The system of claim 15 , wherein the operations further comprise:

interfacing with one or more streaming data platforms to present the information associated with the data lake to one or more end users.

17. The system of claim 15 , wherein interfacing with the configuration management database system to present information associated with the first database comprises:

establishing a connection between the system and the configuration management database system via a Java database connectivity (JDBC) connection.

18. The system of claim 15 , wherein retrieving the first set of data related to software resources executing across the plurality of virtualization elements comprises:

periodically pulling software package data from software resources executing across the plurality of virtualization elements.

19. The system of claim 15 , wherein generating the first database comprises:

filtering the first set of data related to the software resources to include information requested by a user.

20. The system of claim 15 , wherein the operations further comprise:

retrieving a new delta update related to the hardware resources associated with the plurality of virtualization elements; and

pushing data in the new delta update to the configuration management database by:

updating the first database with the data contained in the new delta update; and

causing the data contained in the new delta update to be translated and included in the configuration management database.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 8, 2021
From: PAREKH, PRASHANT; CHANDRA, RAMESH
To: CAPITAL ONE SERVICES, LLC
Reel/Frame 057742/0084 →
Continuity (1)
Related Publication 20230114321A1 · Apr 13, 2023
References Cited (19)
US 10810055B1 · Walker · 2020 [cited by examiner]
US 20060004832A1 · Langsford · 2006 [cited by examiner]
US 20070100712A1 · Kilpatrick · 2007 [cited by examiner]
US 20070100892A1 · Kephart · 2007 [cited by examiner]
US 20110012902A1 · Rajagopalan · 2011 [cited by examiner]
US 20120096163A1 · Tai · 2012 [cited by examiner]
US 20170093639A1 · Dabbagh · 2017 [cited by examiner]
US 20170214588A1 · Murthy · 2017 [cited by examiner]
US 20180011741A1 · Jayanthi · 2018 [cited by examiner]
US 20180146049A1 · Africa · 2018 [cited by examiner]
US 20180262410A1 · Chou · 2018 [cited by examiner]
US 20190102477A1 · Mayers · 2019 [cited by examiner]
US 20200233870A1 · Goyal · 2020 [cited by examiner]
US 20200314191A1 · Madhavan · 2020 [cited by examiner]
US 20200336378A1 · De Peuter · 2020 [cited by examiner]
US 20200403862A1 · Erblat · 2020 [cited by examiner]
US 20210075704A1 · Chan · 2021 [cited by examiner]
US 20210168150A1 · Ross · 2021 [cited by examiner]
US 20220207151A1 · Gupta · 2022 [cited by examiner]