Shadowing storage gateway
First Claim
1. A method, comprising:
- initiating, by a storage gateway on a customer network, a process that registers the storage gateway with a remote service provider that provides a remote data store to customers of the service provider;
receiving, by the storage gateway, configuration information that specifies that the storage gateway is to serve as a shadowing gateway on the customer network that shadows data stored on a local data store within the customer network to the remote data store, wherein the local data store serves as a primary data store for the customer data;
the storage gateway configuring as the shadowing gateway on the customer network in response to the configuration information;
uploading at least a portion of the data stored on the local data store to the service provider to make a snapshot of the primary data store on the remote data store consistent with the primary data store on the customer network;
receiving, by the storage gateway from one or more processes on the customer network, read requests and write requests directed to the primary data store, wherein the storage gateway receives the read and write requests from the one or more processes on the customer network via a block storage protocol;
for the read requests, passing the read requests to the primary data store; and
for the write requests;
passing the write requests to the primary data store; and
sending write data indicated by the write requests to the service provider to update the snapshot of the primary data store on the remote data store with the write data.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, apparatus, and computer-accessible storage media for shadowing data stored on a local store to a remote store provided by a service provider. A gateway may be configured as a shadowing gateway on a customer network in response to receiving configuration information. The shadowing gateway may receive reads and writes to the local store. The gateway passes the requests to the local store, and also uploads write data indicated by the writes to the service provider to update a snapshot of the local store maintained by the service provider on the remote store. The write data may be buffered to a write log for uploading, and may be uploaded as blocks according to a block storage format used by the service provider. The shadowing process may be transparent to processes on the customer network. The shadowed data may be used to recover data on the local store.
-
Citations
27 Claims
-
1. A method, comprising:
-
initiating, by a storage gateway on a customer network, a process that registers the storage gateway with a remote service provider that provides a remote data store to customers of the service provider; receiving, by the storage gateway, configuration information that specifies that the storage gateway is to serve as a shadowing gateway on the customer network that shadows data stored on a local data store within the customer network to the remote data store, wherein the local data store serves as a primary data store for the customer data; the storage gateway configuring as the shadowing gateway on the customer network in response to the configuration information; uploading at least a portion of the data stored on the local data store to the service provider to make a snapshot of the primary data store on the remote data store consistent with the primary data store on the customer network; receiving, by the storage gateway from one or more processes on the customer network, read requests and write requests directed to the primary data store, wherein the storage gateway receives the read and write requests from the one or more processes on the customer network via a block storage protocol; for the read requests, passing the read requests to the primary data store; and for the write requests; passing the write requests to the primary data store; and sending write data indicated by the write requests to the service provider to update the snapshot of the primary data store on the remote data store with the write data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A device, comprising:
-
at least one processor; and a memory comprising program instructions, wherein the program instructions are executable by the at least one processor to implement a gateway process operable to; upload at least a portion of data stored on a local data store on a customer network to a service provider to make a snapshot of the local data store on a remote data store consistent with the local data store on the customer network; receive, from one or more processes on the customer network, read requests and write requests directed to the local data store on the customer network, wherein the gateway process receives the read and write requests from the one or more processes on the customer network via a block storage protocol; pass the read requests and the write requests to the local data store; and send write data indicated by the write requests to the service provider to update the snapshot of the local data store maintained on the remote data store by the service provider with the write data. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A non-transitory computer-accessible storage medium storing program instructions computer-executable to implement a gateway process operable to:
-
configure as a shadowing gateway on a customer network according to configuration information received from a service provider, wherein a shadowing gateway shadows data stored on a local data store to a remote data store maintained by the service provider; upload at least a portion of the data stored on the local data store to the service provider to make a snapshot of the local data store on the remote data store consistent with the local data store; wherein, to shadow data stored on the local data store to the remote data store, the gateway process is operable to; receive write requests directed to the local data store from the one or more processes on the customer network, wherein the gateway process receives the write requests from the one or more processes on the customer network via a block storage protocol; and upload write data indicated by the write requests to the service provider to update the snapshot of the local data store maintained on the remote data store by the service provider with the write data. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27)
-
Specification