CPC G06F 11/1469 (2013.01) [G06F 11/1451 (2013.01); G06F 11/1464 (2013.01); G06F 11/1471 (2013.01); G06F 11/3409 (2013.01); G06F 11/3476 (2013.01); G06F 2201/80 (2013.01); G06F 2201/81 (2013.01); G06F 2201/815 (2013.01); G06F 2201/84 (2013.01); G06F 2201/875 (2013.01)] | 20 Claims |
1. A system, comprising:
at least one processor; and
a memory, storing program instructions that when executed by the at least one processor cause the at least one processor to implement a database service of a cloud service provider, wherein the database service is configured to:
receive, at a web service layer implemented in a control plane of the cloud service provider, an API request for an operation that creates a new database from an existing snapshot of an existing database associated with a first unique identifier;
determine, at the control plane of the cloud service provider and based on the API request, state information comprising point in time information and configuration information that is distinct from either the existing database or the existing snapshot;
provide the state information to a data plane of the cloud service provider having access to database resources of the cloud service provider; and
responsive to the state information being received by the data plane, execute a plurality of tasks at the data plane to create the new database from the existing snapshot of the existing database, the plurality of tasks comprising:
determining the existing snapshot of the existing database, according to the point in time information provided in the state information, from a plurality of existing snapshots of the existing database, wherein the determined existing snapshot is stored in data storage of the data plane and is not an active database, wherein the existing database comprises a plurality of data items, and wherein individual ones of the plurality of existing snapshots replicate the existing database at different respective points in time;
provisioning, based at least in part on the configuration information, a new instance on which to create the new database, distinct from either the existing database or the existing snapshot, wherein the new database is associated with a second unique identifier different from the first unique identifier; and
copying the determined existing snapshot of the existing database to the new instance to create the new database.
|