Data storage application programming interface
First Claim
Patent Images
1. A computer-implemented method for providing cost-effective and durable archival data storage service, comprising:
- under the control of one or more computer systems of an archival data storage system that are configured with executable instructions,receiving, over a communications network from a requesting computer system, an electronic retrieval request to retrieve a data object from persistent storage, the electronic retrieval request encoding an identifier of the data object;
in response to receipt of the electronic retrieval request;
initiating a retrieval job to obtain the data object from persistent storage;
providing, to the requesting computer system, a retrieval job identifier for the retrieval job that is usable to obtain a status of the retrieval job and that, after the retrieval job is completed, is usable to retrieve the data object;
receiving, over the communications network, an electronic download request to download at least a portion of the data object, the electronic download request encoding the retrieval job identifier; and
in response to receipt of the electronic download request and as a result of the retrieval job having been completed, providing the at least a portion of the data object for download.
1 Assignment
0 Petitions
Accused Products
Abstract
An application programming interface for a data storage service provides a convenient mechanism for clients of the data storage service to access its various capabilities. An API call may be made to initiate a job and in response a job identifier may be provided. A separate API call specifying the job identifier may be made and a response providing information related to the job may result. Various API calls may be used to store data, retrieve data, obtain an inventory of stored data, and to obtain other information relating to stored data.
-
Citations
30 Claims
-
1. A computer-implemented method for providing cost-effective and durable archival data storage service, comprising:
-
under the control of one or more computer systems of an archival data storage system that are configured with executable instructions, receiving, over a communications network from a requesting computer system, an electronic retrieval request to retrieve a data object from persistent storage, the electronic retrieval request encoding an identifier of the data object; in response to receipt of the electronic retrieval request; initiating a retrieval job to obtain the data object from persistent storage; providing, to the requesting computer system, a retrieval job identifier for the retrieval job that is usable to obtain a status of the retrieval job and that, after the retrieval job is completed, is usable to retrieve the data object; receiving, over the communications network, an electronic download request to download at least a portion of the data object, the electronic download request encoding the retrieval job identifier; and in response to receipt of the electronic download request and as a result of the retrieval job having been completed, providing the at least a portion of the data object for download. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer-implemented method comprising:
-
under the control of one or more computer systems configured with executable instructions, receiving a first electronic message comprising a first identifier corresponding to data stored by a storage system; in response to receipt of the first electronic message, initiating a job in connection with the data; at a time after receiving the first electronic message, receiving a second electronic message comprising a second identifier corresponding to the job, where the second identifier is associated with the job and useable to retrieve the data corresponding to the first identifier; and in response to receipt of the second electronic message, providing information associated with the job; receiving a third electronic message comprising the second identifier; and in response to receipt of the third electronic message, providing at least a portion of the data for download. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A system, comprising:
-
one or more processors; and memory storing executable instructions that, when executed by the one or more processors, cause the system to; receive a first electronic message comprising a first identifier corresponding to data stored by a storage system; in response to receipt of the first electronic message, initiate a job in connection with the data; at a time after receiving the first electronic message, receive a second electronic message comprising a second identifier corresponding to the job, where the second identifier is associated with the job and useable to retrieve the data corresponding to the first identifier; and in response to receipt of the second electronic message, provide information associated with the job; receive a third electronic message comprising the second identifier; and in response to receipt of the third electronic message, provide at least a portion of the data for download. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A non-transitory computer-readable storage medium having stored thereon instructions that, when executed by one or more processors of a computer system, cause the computer system to:
-
in response to receipt of a first electronic message comprising a first identifier corresponding to data stored by a storage system, initiate a job in connection with the data; at a time after receiving the first electronic message, in response to receipt of a second electronic message comprising a second identifier corresponding to the job, where the second identifier is associated with the job and useable to retrieve the data corresponding to the first identifier, provide information associated with the job; and in response to receipt of a third electronic message comprising the second identifier, provide the at least a portion of the data for download. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30)
-
Specification