IP Library › Granted Patent US 11,829,335
Granted Patent B1
US 11,829,335 · App. 17/840,720 · Granted Nov 28, 2023

Using machine learning to provide a single user interface for streamlines deployment and management of multiple types of databases

Inventors: Veda Kumari Guggulla (Round Rock, TX); Janardhan Korapala (Round Rock, TX)
G06F16/21G06F8/61G06F9/44526G06F9/541G06F16/23G06F16/248G06F16/2455G06F16/24556G06F21/44
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 11,829,335
App. No.
17/840,720
Filed
Jun 15, 2022
Granted
Nov 28, 2023
Kind
B1
Art Unit
2194
USPC
719/317
Abstract

In some aspects, a device receives, via a user interface, an instruction to install a particular database on a plurality of target servers comprising a first target server and a second target server. The device identifies a first server near the first target server and a second server near the second target server. The device causes a first plug-in module to be installed on the first server and causes a second plug-in module to be installed on the second server. The device concurrently sends a database install command to the first plug-in module and to the second plug-in module, causing the first plug-in module to initiate a first installation of the particular database on the first target server and causing the second plug-in module to initiate a second installation of the particular database on the second target server concurrently with the first installation.

Claims (107)

1. A computing device comprising:

one or more processors; and

one or more non-transitory computer-readable storage media to store instructions executable by the one or more processors to perform operations comprising:

receiving, via a user interface, an instruction to install a particular database on a plurality of target servers comprising at least a first target server and a second target server;

identifying a plurality of servers near the plurality of target servers, the plurality of servers comprising at least a first server and a second server, the first server near the first target server and the second server near the second target server;

causing a first plug-in module to be installed on the first server;

causing a second plug-in module to be installed on the second server; and

concurrently sending a database install command to the first plug-in module and to the second plug-in module, the database install command causing:

the first plug-in module to initiate a first installation of the particular database on the first target server,

the second plug-in module to initiate a second installation of the particular database on the second target server concurrently with the first installation.

2. The computing device of claim 1 , wherein the first server near the first target server and the second server near the second target server comprises:

the first server being less than a threshold number of hops from the first target server and the second server being less than the threshold number of hops from the second target server;

the first server having less than a threshold latency communicating with the first target server and the second server having less than the threshold latency communicating with the second target server; or

any combination thereof.

3. The computing device of claim 1 , wherein:

the first plug-in module creates a first persistent authentication session with the first target server before initiating the first installation of the particular database on the first target server; and

the second plug-in module creates a second persistent authentication session with the second target server before initiating the second installation of the particular database on the second target server.

4. The computing device of claim 1 , wherein the operations further comprise:

receiving, via a user interface, user input comprising one or more commands;

performing natural language processing on the user input to:

determine a user intent; and

identify one or more databases associated with the one or more commands;

determining one or more plug-ins associated with the one or more databases;

converting the one or more commands into a set of generic commands; and

concurrently sending the set of generic commands to each of the one or more plug-ins associated with the one or more databases.

5. The computing device of claim 4 , wherein individual plug-ins of the one or more plug-ins:

receive the set of generic commands;

convert the set of generic commands to particular commands to be executed by a particular database of the one or more databases;

send the particular commands for execution to the particular database; and

receive a result of performing the particular commands to the particular database.

6. The computing device of claim 4 , wherein the operations further comprise:

receiving one or more results, each result of the one or more results received from each plug-in of the one or more plug-ins;

converting each result into a standardized format to create standardized results;

merging the standardized results to create a merged result; and

displaying the merged result via the user interface.

7. The computing device of claim 4 , wherein the one or more databases comprise:

a first database associated with a first database provider; and

a second database associated with a second database provider that is different from the first database provider.

8. A memory device to store instructions executable by one or more processors to perform operations comprising:

receiving, via a user interface, an instruction to install a particular database on a plurality of target servers comprising at least a first target server and a second target server;

identifying a plurality of servers near the plurality of target servers, the plurality of servers comprising at least a first server and a second server, the first server near the first target server and the second server near the second target server;

causing a first plug-in module to be installed on the first server;

causing a second plug-in module to be installed on the second server; and

concurrently sending a database install command to the first plug-in module and to the second plug-in module, the database install command causing:

the first plug-in module to initiate a first installation of the particular database on the first target server,

the second plug-in module to initiate a second installation of the particular database on the second target server concurrently with the first installation.

9. The memory device of claim 8 , wherein the first server near the first target server and the second server near the second target server comprises:

the first server being less than a threshold number of hops from the first target server and the second server being less than the threshold number of hops from the second target server;

the first server having less than a threshold latency communicating with the first target server and the second server having less than the threshold latency communicating with the second target server; or

any combination thereof.

10. The memory device of claim 8 , wherein:

the first plug-in module creates a first persistent authentication session with the first target server before initiating the first installation of the particular database on the first target server; and

the second plug-in module creates a second persistent authentication session with the second target server before initiating the second installation of the particular database on the second target server.

11. The memory device of claim 8 , wherein the operations further comprise:

receiving one or more logs from at least one target server of the plurality of target servers, the one or more logs comprising at least one of an informational message or an error message;

performing an analysis of the one or more logs using a machine learning algorithm;

determining, using the machine learning algorithm, one or more suggestions to address the one or more logs; and

displaying, via the user interface, the one or more suggestions.

12. The memory device of claim 8 , wherein the operations further comprise:

determining that an update is available for the particular database from a provider of the particular database;

downloading the update from the provider of the particular database; and

instructing the first plug-in module to apply the update to the first installation of the particular database.

13. The memory device of claim 8 , wherein the operations further comprise:

receiving a first plurality of results from the first plug-in module;

receiving a second plurality of results from the second plug-in module;

converting the first plurality of results into first standardized results;

converting the second plurality of results into second standardized results;

merging the first standardized results and the second standardized results to create a merged result; and

displaying the merged result via the user interface.

14. The memory device of claim 8 , wherein the operations further comprise:

receiving one or more logs from the first target server;

determining, using a machine learning algorithm, an issue causing at least one log of the one or more logs;

determining, using a knowledgebase, that the issue causing the at least one log has a solution comprising a software update;

obtaining the software update; and

instructing the first plug-in module to apply the software update to the first target server.

15. A computer-implemented method comprising:

receiving, via a user interface, an instruction to install a particular database on a plurality of target servers comprising at least a first target server and a second target server;

identifying a plurality of servers near the plurality of target servers, the plurality of servers comprising at least a first server and a second server, the first server near the first target server and the second server near the second target server;

causing a first plug-in module to be installed on the first server;

causing a second plug-in module to be installed on the second server; and

concurrently sending, by the one or more processors, a database install command to the first plug-in module and to the second plug-in module, the database install command causing:

the first plug-in module to initiate a first installation of a first database on the first target server,

the second plug-in module to initiate a second installation of a second database on the second target server concurrently with the first installation.

16. The computer-implemented method of claim 15 , wherein the first server near the first target server and the second server near the second target server comprises:

the first server being less than a threshold number of hops from the first target server and the second server being less than the threshold number of hops from the second target server;

the first server having less than a threshold latency communicating with the first target server and the second server having less than the threshold latency communicating with the second target server; or

any combination thereof.

17. The computer-implemented method of claim 15 , wherein:

the first plug-in module creates a first persistent authentication session with the first target server before initiating the first installation of the particular database on the first target server; and

the second plug-in module creates a second persistent authentication session with the second target server before initiating the second installation of the particular database on the second target server.

18. The computer-implemented method of claim 15 , wherein:

the first database is associated with a first database provider; and

the second database is associated with a second database provider that is different from the first database provider.

19. The computer-implemented method of claim 18 , further comprising:

receiving a first plurality of results from the first plug-in module;

receiving a second plurality of results from the second plug-in module;

converting the first plurality of results into first standardized results;

converting the second plurality of results into second standardized results;

merging the first standardized results and the second standardized results to create a merged result; and

displaying the merged result via the user interface.

20. The computer-implemented method of claim 18 , further comprising:

receiving a first log from the first database, the first log comprising a first informational log or a first error log;

receiving a second log from the second database, the second log comprising a second informational log or a second error log;

performing, using a machine learning algorithm, an analysis of the first log and the second log;

determining, using the machine learning algorithm, an issue causing at least one of the first log or the second log;

determining, using the machine learning algorithm, one or more possible solutions to address the issue; and

displaying, via the user interface, the one or more possible solutions.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 8, 2023
From: KORAPALA, JANARDHAN
To: VJ SOLUTIONS LLC, DBA DBAASNOW
Reel/Frame 064847/0719 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 15, 2022
From: GUGGULLA, VEDA KUMARI
To: VJ SOLUTIONS LLC, DBA DBAASNOW
Reel/Frame 060213/0187 →
Cited By (2)
US 12,238,101 US 12,638,960