Gateway for cloud-based secure storage
AssigneeSecurity First Innovations, LLC
InventorsMark S. O'Hare, Rick L. Orsini
Life of this patent
Estimating the term…
Abstract
The systems and methods disclosed herein transparently provide an improved scalable cloud-based dynamically adjustable or configurable storage volume. In one aspect, a gateway provides a dynamically or configurably adjustable storage volume, including a local cache. The storage volume may be transparently adjusted for the amount of data that needs to be stored using available local or cloud-based storage. The gateway may use caching techniques and block clustering to provide gains in access latency compared to existing gateway systems, while providing scalable off-premises storage.
Claims20
A method of providing storage for a client computer, the method comprising:
- receiving a data storage request associated with a data file;
- provisioning a storage volume for the client computer as a virtual disk, the provisioned storage volume including (1) a cache memory communicatively coupled to the client computer, and (2) a plurality of cloud storage devices in one or more clouds, the storage volume being adjustable by transparently including or excluding a subset of the plurality of cloud storage devices, wherein storage locations of the provisioned storage volume are hidden from the client computer;
- including the data file in one or more cluster blocks, at least one cluster block of the one or more cluster blocks having a plurality of different data blocks;
- storing the plurality of different data blocks to the storage volume over a plurality of channels;
- and
- while storing the plurality of different data blocks to the storage volume over the plurality of channels, dynamically and transparently controlling a size of the cache memory to avoid overflowing the cache memory or freeing up space in the cache memory;
- wherein storing the plurality of different data blocks to the storage volume over the plurality of channels is performed simultaneously and includes causing the plurality of different data blocks to be distributed in a plurality of data shares located in the plurality of cloud storage devices.
A computer system for providing storage for a client computer, the computer system comprising:
- a hardware processor configured to:
- receive a data storage request associated with a data file;
- provision a storage volume for the client computer as a virtual disk, the provisioned storage volume including (1) a cache memory communicatively coupled to the client computer, and (2) a plurality of cloud storage devices in one or more clouds, the storage volume being adjustable by transparently including or excluding a subset of the plurality of cloud storage devices, wherein storage locations of the provisioned storage volume are hidden from the client computer;
- include the data file in one or more cluster blocks, at least one cluster block of the one or more cluster blocks having a plurality of different data blocks;
- store the plurality of different data blocks to the storage volume over a plurality of channels;
- and
- while storing the plurality of different data blocks to the storage volume over a plurality of channels, dynamically and transparently control a size of the cache memory to avoid overflowing the cache memory or freeing up space in the cache memory;
- wherein storing the plurality of different data blocks to the storage volume over the plurality of channels is performed simultaneously and includes causing the plurality of different data blocks to be distributed in a plurality of data shares located in the plurality of cloud storage devices.
Dependencies are inferred from the claim text.