Caching device and method thereof for integration with a cloud storage system
First Claim
Patent Images
1. A network attached storage device for performing network attached storage operations with cloud storage services, comprising:
- at least one network controller for communicating with a plurality of clients over a local area network (LAN) and with the cloud storage service (CSS) over a wide area network (WAN);
a cache memory for locally caching data of the CSS in the device; and
a virtual cloud drive (VCD) for enabling the plurality of clients to perform file-based operations on data stored in the CSS using at least one file sharing protocol, wherein the device is further configured to;
receive a request, from a client of the plurality of clients, to read a byte range of a file in the VCD;
determine a set of data blocks required for reconstructing the byte range;
determine if a first set of data blocks of the set of data blocks is maintained in the cache memory;
fetch the first set of data blocks from the cache memory, upon determining that the first set of data blocks is maintained in the cache memory;
retrieve a second set of data blocks from the CSS, wherein the second set of data blocks are data blocks within the byte range that are not maintained in the cache memory; and
return a reconstructed byte range to the client based on the first and second data blocks.
4 Assignments
0 Petitions
Accused Products
Abstract
A network attached storage device and method for performing network attached storage operations with cloud storage services are provided. The device includes at least one network controller for communicating with a plurality of clients over a local area network (LAN) and with the cloud storage service (CSS) over a wide area network (WAN); a cache memory for locally caching data of the CSS in the device; and a virtual cloud drive (VCD) for enabling the plurality of clients to perform file-based operations on data stored in the CSS using at least one file sharing protocol.
50 Citations
9 Claims
-
1. A network attached storage device for performing network attached storage operations with cloud storage services, comprising:
-
at least one network controller for communicating with a plurality of clients over a local area network (LAN) and with the cloud storage service (CSS) over a wide area network (WAN); a cache memory for locally caching data of the CSS in the device; and a virtual cloud drive (VCD) for enabling the plurality of clients to perform file-based operations on data stored in the CSS using at least one file sharing protocol, wherein the device is further configured to; receive a request, from a client of the plurality of clients, to read a byte range of a file in the VCD; determine a set of data blocks required for reconstructing the byte range; determine if a first set of data blocks of the set of data blocks is maintained in the cache memory; fetch the first set of data blocks from the cache memory, upon determining that the first set of data blocks is maintained in the cache memory; retrieve a second set of data blocks from the CSS, wherein the second set of data blocks are data blocks within the byte range that are not maintained in the cache memory; and return a reconstructed byte range to the client based on the first and second data blocks. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for performing network attached storage operations with cloud storage services, comprising:
-
receiving a request from a client of a plurality of clients to read a byte range of a file in a virtual cloud drive (VCD); determining a set of data blocks required for reconstructing the byte range; determining if a first set of data blocks of the set of data blocks is maintained in a cache memory; fetching the first set of data blocks from the cache memory, upon determining that the first set of data blocks is maintained in the cache memory; retrieving a second set of data blocks from at least one cloud storage service (CSS), wherein the second set of data blocks are data blocks within the byte range that are not maintained in the cache memory; reconstructing the byte range from the first set and second set of data blocks; returning the reconstructed data to the client; enabling, by the VCD, the plurality of clients to perform file-based operations on data stored in the at least one CSS using at least one file sharing protocol; and exposing, by the VCD, files stored in the CSS. - View Dependent Claims (7, 8, 9)
-
Specification