Legal claims defining the scope of protection, as filed with the USPTO.
1. A computer-implemented method of creating and managing aspects of a relational database instance using a self-service Web service, comprising: under control of one or more computer systems configured with executable instructions, providing a plurality of application programming interfaces (APIs) each enabling a user to submit a Web service request to a control environment, each API corresponding to a desired action to be performed with respect to a relational database for the user in a data environment that is separate from the control environment; in response to receiving a first Web service request to the control environment through a first API of the plurality of APIs, causing at least one task to be performed to provision a data instance of a relational database in the data environment, the request specifying one of a plurality of relational database engines to use in provisioning the data instance to implement the relational database; and in response to receiving a second Web service request to the control environment through a second API of the plurality of APIs, causing at least one task to be performed in the separate data environment to perform a desired action with respect to the provisioned data instance, the request specifying the desired action, wherein the user is able to create and manage aspects of provisioning the relational database by submitting Web services calls to the control environment, and wherein the user is able to access the provisioned data instance to access data in the relational database using a data interface of the data environment, the data interface configured to operate independent of the control environment.
2. The computer-implemented method of claim 1 , wherein: the desired action includes at least one of deleting, backing up, scaling, replicating, hibernating, cloning, provisioning, or modifying the data instance in the data environment.
3. The computer-implemented method of claim 1 , wherein: at least one of the tasks is selected from the group consisting of creating a data instance, setting a storage volume of a data instance, modifying a data instance, downloading binaries for a selected engine, backup and recovery of a data instance, data replication and failover, creating and managing a security group, managing user credentials, managing key rotation and credential management, and attaching to hardware to support the data instance.
4. A system for managing aspects of a relational database using a control environment, comprising: at least one processor; and memory including instructions that, when executed by the at least one processor, cause the system to provide: a plurality of application programming interfaces (APIs) each enabling a user to submit a Web service request to the control environment, each API corresponding to a desired action to be performed with respect to a relational database for the user in a data environment, the data environment being separate from the control environment; and a workflow component in the control environment operable to cause at least one task to be performed in the data environment in response to receiving a Web service request through one of the plurality of APIs, the at least one task corresponding to the desired action to be performed, wherein the user is able to manage provisioning aspects of the relational database through the control environment, and wherein the user is able to access data in the relational database using a data interface of the data environment, the data interface configured to operate independent of the control environment.
5. The system of claim 4 , further comprising: a set of Web services components for analyzing a request received to one of the plurality of APIs and extract information needed to perform the desired action.
6. The system of claim 5 , further comprising: a job queue for storing job information for the desired action in response to the request.
7. The system of claim 6 , further comprising: a sweeper component operable to poll the job queue for job information and, upon locating job information, pass the job information to the workflow component.
8. The system of claim 7 , wherein: the set of Web services components is further operable to perform at least one task selected from the group consisting of authenticating users based on credentials, authorizing users, throttling user requests, user input validation, and marshalling or unmarshalling requests and responses.
9. The system of claim 4 , wherein: the workflow component is further operable to generate a workflow for the determined action comprising the at least one task to be performed in the data environment with respect to the determined action.
10. The system of claim 4 , wherein: the desired action includes at least one of creating, deleting, backing up, scaling, replicating, provisioning, or modifying a data instance in the data environment.
11. The system of claim 4 , wherein: at least one of the tasks is selected from the group consisting of creating a data instance, setting a storage volume of a data instance, modifying a data instance, downloading binaries for a selected engine, backup and recovery of a data instance, data replication and failover, creating and managing a security group, managing user credentials, managing key rotation and credential management, and attaching to hardware to support the data instance.
12. The system of claim 4 , wherein: the workflow component is further operable to select tasks based at least in part upon a database engine corresponding to the request.
13. The system of claim 4 , wherein: the user is able to provision instances of any of a plurality of database engine types by submitting a Web service request to an appropriate API of the control environment, the Web service request specifying the database engine type to be used for each data instance.
14. A computer-implemented method of managing aspects of a relational database using a control environment, comprising: under control of one or more computer systems configured with executable instructions, providing a plurality of application programming interfaces (APIs) each enabling a user to submit a Web service request to the control environment, each API corresponding to a desired action to be performed with respect to a relational database for the user in a data environment, the data environment being separate from the control environment; and in response to receiving a Web service request to the control environment through one of the plurality of APIs, causing at least one task to be performed in the data environment corresponding to the desired action, wherein the user is able to manage provisioning aspects of the relational database through the control environment using Web service requests, and wherein the user is able to access data in the relational database using a data interface of the data environment, the data interface configured to operate independent of the control environment.
15. The computer-implemented method of claim 14 , further comprising: in response to the Web service request, determining a workflow to be executed in the control environment to perform the desired action in the data environment; and executing the determined workflow in the control environment, the workflow including the at least one task to be performed in the data environment in order to provide the desired action with respect to the relational database.
16. The computer-implemented method of claim 15 , further comprising: assembling the workflow using tasks selected based at least in part upon a database engine used for the data component corresponding to the request.
17. The computer-implemented method of claim 14 , further comprising: providing the user with a domain name system (DNS) address and port information enabling the user to access the relational database using the data interface.
18. The computer-implemented method of claim 14 , wherein: at least one of the tasks is selected from the group consisting of creating a data instance, setting a storage volume of a data instance, modifying a data instance, downloading binaries for a selected engine, backup and recovery of a data instance, data replication and failover, creating and managing a security group, managing user credentials, managing key rotation and credential management, and attaching to hardware to support the data instance.
19. The computer-implemented method of claim 14 , wherein: the request is received to an API in a Web services layer of the control environment, the Web services layer further comprising components operable to perform at least one task selected from the group consisting of authenticating users based on credentials, authorizing users, throttling user requests, user input validation, and marshalling or unmarshalling requests and responses.
20. The computer-implemented method of claim 14 wherein: causing at least one task to be performed in the data environment includes sending a request to a host manager for a host machine in the data environment, the host manager being operable to perform the tasks in the data environment and further operable to collect and monitor health information for at least one aspect of the data environment.
21. A computer-implemented method of using Web services to manage resources, comprising: under control of one or more computer systems configured with executable instructions, providing a plurality of application programming interfaces (APIs) each enabling a user to submit a Web service request to a control environment, each API corresponding to a desired action to be performed with respect to a resource for the user in a resource environment that is separate from the control environment; and in response to receiving a Web service request to the control environment through one of the plurality of APIs, causing at least one task to be performed in the resource environment corresponding to the desired action, wherein the user is able to manage provisioning aspects of resources, including the resource, in the resource environment through the control environment using Web service requests, and wherein the user is able to directly access each resource using a resource interface of the separate environment, the resource interface configured to operate independent of the control environment.
22. The computer-implemented method of claim 21 , further comprising: in response to the Web service request, determining a workflow to be executed in the control environment to perform the desired action in the resource environment; and executing the determined workflow in the control environment, the workflow including the at least one task to be performed in the resource environment in order to provide the desired action with respect to the resource.
23. The computer-implemented method of claim 22 , further comprising: assembling the workflow using tasks selected based at least in part upon a type of resource corresponding to the request.
24. The computer-implemented method of claim 21 , further comprising: providing the user with a domain name system (DNS) address and port information enabling the user to access the resource environment using the data interface.
25. The computer-implemented method of claim 21 , wherein: at least one of the tasks is selected from the group consisting of creating a resource instance, modifying a resource, and deleting a resource.
Unknown
November 6, 2012
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.