Patent ID: 8370302

Claim:
In a system including a storage system coupled via a network to a storage service which has one or more HTTP (Hypertext Transfer Protocol) file servers, the storage system comprising: a processor; a memory; a volume-based snapshot control module configured to create a snapshot volume of data at a certain time, the snapshot volume being a block-based volume which is divided into a plurality of portions; and a copy control module configured to read each portion of the snapshot volume and send said each portion as HTTP file data of an HTTP request to the storage service via the network, and to generate mapping information between an address of said each portion in the storage system and an HTTP URL (Uniform Resource Locator) of the HTTP file data of said each portion in the storage service, so as to allow said each portion of the snapshot volume to be read by the HTTP request using said mapping information; wherein the volume-based snapshot control module is configured to create a next generation snapshot volume at a next time after the certain time, the next generation snapshot volume being a block-based volume which is divided into a plurality of next portions, the plurality of next portions including one or more updated portions at the next time which are updated from corresponding one or more of the portions of the snapshot volume at the certain time; wherein, for each updated portion of the next generation snapshot volume, the copy control module is configured to read the corresponding portion of the snapshot volume at the certain time prior to being updated to said each updated portion and send said corresponding portion as HTTP file data to the storage service via the network, and to generate new mapping information between an address of said corresponding portion in the storage system and an HTTP URL of the HTTP file data of said corresponding portion in the storage service; wherein the volume-based snapshot control module is configured to create a next generation snapshot volume at a next time after the certain time, the next generation snapshot volume being a block-based volume which is divided into a plurality of next portions, the plurality of next portions including one or more updated portions at the next time which are updated from corresponding one or more of the portions of the snapshot volume at the certain time; wherein the volume-based snapshot control module is configured to delete any of the portions of the snapshot volume which have been updated to the updated portions at the next time in the next generation snapshot volume; and wherein the storage system further comprises a resource allocation control module configured to delete the HTTP file data and HTTP URL for the deleted portion when a deleted portion of the snapshot volume has been sent to the storage service as HTTP file data with an HTTP URL.