US 11,693,748 B2
Systems and methods for provisioning and decoupled maintenance of cloud-based database systems
Vitaliy Mogilevskiy, Bellevue, WA (US); Abhishek Chanda, Bellevue, WA (US); Norberto Leite, Bellevue, WA (US); Maryame Boulhajat, Bellevue, WA (US); and Miguel Pilar, Bellevue, WA (US)
Filed by Auth0, Inc., Bellevue, WA (US)
Filed on May 26, 2021, as Appl. No. 17/331,369.
Prior Publication US 2021/0279150 A1, Sep. 9, 2021
Int. Cl. G06F 11/20 (2006.01); G06F 16/21 (2019.01); G06F 11/14 (2006.01); G06F 9/455 (2018.01); G06F 11/36 (2006.01)
CPC G06F 11/203 (2013.01) [G06F 9/45512 (2013.01); G06F 11/1471 (2013.01); G06F 11/366 (2013.01); G06F 16/211 (2019.01); G06F 2201/80 (2013.01)] 14 Claims
OG exemplary drawing
 
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;
modifying the database system based on the experiment;
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;
modifying a first server to point live traffic to the standby database system;
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
either:
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
in response to 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.