# US 2021/0279150 A1 · Systems and Methods for Provisioning and Decoupled Maintenance of Cloud-based Database Systems

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0279150 A1
- Document ID: US20210279150A1
- Status: Published application
- Kind: A1
- Application number: 17/331,369
- Filed: 2021-05-26
- Published: 2021-09-09
- Earliest claimed: 2021-05-26
- Assignees: Auth0, Inc.
- Applicants: Auth0, Inc.
- Inventors: Vitaliy Mogilevskiy; Abhishek Chanda; Norberto Leite; Maryame Boulhajat; Miguel Pilar
- Web page: https://patentgrep.com/patent/US20210279150A1

## CPC

- G06F 11/203: {using migration}
- G06F 11/2092: {Techniques of failing over between control units}
- G06F 9/45512: {Command shells}
- G06F 11/1464: {for networked environments}
- G06F 11/1471: involving logging of persistent data for recovery
- G06F 11/2094: {Redundant storage or storage space (G06F11/2056 takes precedence)}
- G06F 11/366: {using diagnostics (G06F11/0703 takes precedence)}
- G06F 16/211: {Schema design and management}
- G06F 16/256: {in federated or virtual databases}
- G06F 11/3668: Testing of software
- G06F 11/3698: Environments for analysis, debugging or testing of software
- G06F 2201/80: Database-specific techniques
- G06F 2201/81: Threshold
- G06N 3/084: Backpropagation, e.g. using gradient descent
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS

## Abstract

Methods and systems are described for provisioning cloud-based database systems and performing decoupled maintenance. For example, conventional systems may rely on database management systems to provision and modify databases hosted by a service provider. However, for entities operating complex database systems with the need for highly customized cloud infrastructure, database management systems fail to provide the granular customization and the control necessary to create and service these systems. In contrast, the described solutions provide an improvement over conventional database management system architecture by providing direct communication between an entity and its cloud-based database systems via command line prompts or API calls, decoupling database system maintenance from database system provisioning process to increase the speed and granular customization of the database system. Moreover, the disclosed solution leverages machine learning to predict optimal database system provisioning and maintenance processes and resources.

## Claims

### Claim 1

A server system for provisioning and modifying database systems such that a database management system may be bypassed using a single line command prompt and an API call comprising:
one or more storage devices storing instructions; and
one or more processors configured to execute the instructions for:
receiving, at a first point in time, a first request to provision a database system;
in response to receiving the first request, generating a single command line prompt command or a single API call to a service provider, wherein the service provider hosts the database system;
in response to the first request, determining, by querying a metadata repository, whether a first metadata associated with the database system exists;
based on determining whether the first metadata associated with the database system exists, generating database system resources;
in response to generating the database system resources, generating the database system;
in response to generating the database system, generating user access credentials;
storing, in the metadata repository, a second metadata associated with the database system;
receiving a second request to modify the database system, wherein the second request includes one or more modification parameters and the user access credentials, and wherein the second request is further received at a second point in time subsequent to the first point in time;
in response to the second request, determining a set of pre-determined modification protocols;
in response to the second request and based on the set of pre-determined modification protocols, determining whether to create a standby database system;
transmitting a third request, wherein the third request includes instructions for conducting an experiment on the database system based at least on the set of pre-determined modification protocols and by executing the one or more modification parameters; and
modifying the database system based on the experiment.

### Claim 2 (depends on 1)

The server system of claim 1, further comprising:
determining whether metadata associated with the database system exists, in response to receiving an indication that authentication associated with the single command line prompt command or single API call was accepted.

### Claim 3 (depends on 1)

The server system of claim 1, wherein generating database system resources further comprises:
determining whether a legacy instance or virtual private cloud is generated, based on determining whether metadata associated with the database system exists; and
generating a virtual private cloud including subnets in response to determining whether a legacy or virtual private cloud is generated.

### Claim 4 (depends on 1)

The server system of claim 1, wherein generating user access credentials further comprises:
creating one or more of:
a username and password;
multifactor authentication protocols;
one or more certificates; and
a token; and
providing the user access credentials to an entity that sent the first request to provision the database system.

### Claim 5 (depends on 1)

The server system of claim 1, further comprising:
initiating a failover protocol;
generating the standby database system based on the failover protocol and the determination as to whether to create the standby database system; and
modifying a first server to point live traffic to the standby database system.

### Claim 6 (depends on 5)

The server system of claim 5, further comprising:
converting and labeling the standby database system to a primary database system, in response to modifying the first server to point live traffic to the standby database system;
determining whether the database system failed in response to conducting the experiment;
in response to:
determining that that the experiment was successful, converting and labeling the database system as the primary database system and modifying the first server to point live traffic to the database system; or
determining that the experiment was unsuccessful, identifying errors associated with the experiment, continuing to point live traffic to the standby database system, and conducting a second experiment, wherein the second experiment includes at least solutions to the identified errors.

### Claim 7 (depends on 6)

The server system of claim 6, wherein initiating the failover protocol further comprises:
determining a first geographical region for the database system and generating the standby database system in a second geographical region different than the first geographical region; and
determining a recovery point threshold and a recovery time threshold associated with an entity.

### Claim 8

A computer-implemented method for provisioning and modifying database systems such that a database management system may be bypassed using a single line command prompt and an API call comprising:
receiving, at a first point in time, a first request to provision a database system;
in response to receiving the first request, generating a single command line prompt command or a single API call to a service provider, wherein the service provider hosts the database system;
in response to the first request, determining, by querying a metadata repository, whether a first metadata associated with the database system exists;
based on determining whether the first metadata associated with the database system exists, generating database system resources;
in response to generating the database system resources, generating the database system;
in response to generating the database system, generating user access credentials;
storing, in the metadata repository, a second metadata associated with the database system;
receiving a second request to modify the database system, wherein the second request includes one or more modification parameters and the user access credentials, and wherein the second request is further received at a second point in time subsequent to the first point in time;
in response to the second request, determining a set of pre-determined modification protocols;
in response to the second request and based on the set of pre-determined modification protocols, determining whether to create a standby database system;
transmitting a third request, wherein the third request includes instructions for conducting an experiment on the database system based at least on the set of pre-determined modification protocols and by executing the one or more modification parameters; and
modifying the database system based on the experiment.

### Claim 9 (depends on 8)

The computer-implemented method of claim 8, further comprising:
determining whether metadata associated with the database system exists, in response to receiving an indication that authentication associated with the single command line prompt command or single API call was accepted.

### Claim 10 (depends on 8)

The computer-implemented method of claim 8, wherein generating database system resources further comprises:
determining whether a legacy instance or virtual private cloud is generated, based on determining whether metadata associated with the database system exists; and
generating a virtual private cloud including subnets in response to determining whether a legacy or virtual private cloud is generated.

### Claim 11 (depends on 8)

The computer-implemented method of claim 8, wherein generating user access credentials further comprises:
creating one or more of:
a username and password;
multifactor authentication protocols;
one or more certificates; and
a token; and
providing the user access credentials to an entity that sent the first request to provision the database system.

### Claim 12 (depends on 8)

The computer-implemented method of claim 8, further comprising:
initiating a failover protocol;
generating the standby database system based on the failover protocol and the determination as to whether to create the standby database system; and
modifying a first server to point live traffic to the standby database system.

### Claim 13 (depends on 12)

The computer-implemented method of claim 12, further comprising:
converting and labeling the standby database system to a primary database system, in response to modifying the first server to point live traffic to the standby database system;
determining whether the database system failed in response to conducting the experiment; and
in response to:
determining that that the experiment was successful, converting and labeling the database system as a primary database system and modifying the first server to point live traffic to the database system; or
determining that the experiment was unsuccessful, identifying errors associated with the experiment, continuing to point live traffic to the standby database system, and conducting a second experiment, wherein the second experiment includes at least solutions to the identified errors.

### Claim 14 (depends on 13)

The computer-implemented method of claim 13, wherein initiating the failover protocol further comprises:
determining a first geographical region for the database system and generating the standby database system in a second geographical region different than the first geographical region; and
determining a recovery point threshold and a recovery time threshold associated with an entity.

### Claim 15

A non-transitory computer-readable medium, storing instructions for provisioning and modifying database systems such that a database management system may be bypassed using a single line command prompt and an API call that when executed by one or more processors perform a method comprising:
receiving, at a first point in time, a first request to provision a database system;
in response to receiving the first request, generating a single command line prompt command or a single API call to a service provider, wherein the service provider hosts the database system;
in response to the first request, determining, by querying a metadata repository, whether a first metadata associated with the database system exists;
based on determining whether the first metadata associated with the database system exists, generating database system resources;
in response to generating the database system resources, generating the database system;
in response to generating the database system, generating user access credentials;
storing, in the metadata repository, a second metadata associated with the database system;
receiving a second request to modify the database system, wherein the second request includes one or more modification parameters and the user access credentials, and wherein the second request is further received at a second point in time subsequent to the first point in time;
in response to the second request, determining a set of pre-determined modification protocols;
in response to the second request and based on the set of pre-determined modification protocols, determining whether to create a standby database system;
transmitting a third request, wherein the third request includes instructions for conducting an experiment on the database system based at least on the set of pre-determined modification protocols and by executing the one or more modification parameters; and
modifying the database system based on the experiment.

### Claim 16 (depends on 15)

The non-transitory computer-readable medium of claim 15, further comprising:
determining whether metadata associated with the database system exists, in response to receiving an indication that authentication associated with the single command line prompt command or single API call was accepted.

### Claim 17 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein generating database system resources further comprises:
determining whether a legacy instance or virtual private cloud is generated, based on determining whether metadata associated with the database system exists; and
generating a virtual private cloud including subnets in response to determining whether a legacy or virtual private cloud is generated.

### Claim 18 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein generating user access credentials further comprises:
creating one or more of:
a username and password;
multifactor authentication protocols;
one or more certificates; and
a token; and
providing the user access credentials to an entity that sent the first request to provision the database system.

### Claim 19 (depends on 15)

The non-transitory computer-readable medium of claim 15, further comprising:
initiating a failover protocol, wherein initiating a failover protocol further includes:
determining a first geographical region for the database system and generating the standby database system in a second geographical region different than the first geographical region;
determining a recovery point threshold and a recovery time threshold associated with an entity;
generating the standby database system based on the failover protocol and the determination as to whether to create the standby database system; and
modifying a first server to point live traffic to the standby database system.

### Claim 20 (depends on 19)

The non-transitory computer-readable medium of claim 19, further comprising:
converting and labeling the standby database system to a primary database system, in response to modifying the first server to point live traffic to the standby database system;
determining whether the database system failed in response to conducting the experiment; and
in response to:
determining that that the experiment was successful, converting and labeling the database system as a primary database system and modifying the first server to point live traffic to the database system; or
determining that the experiment was unsuccessful, identifying errors associated with the experiment, continuing to point live traffic to the standby database system, and conducting a second experiment, wherein the second experiment includes at least solutions to the identified errors.
