Patent ID: 9503542
Filing Date: 2016-11-22
CPC Classification: H04L

Claim Text:
1. A method comprising: receiving a request from a client to read a file wherein the request includes at least one file offset range, wherein a file offset range references file data of the file beginning at a file offset location that spans an offset length; determining whether the file is a stub file; in response to determining the file is a stub file, determining a set of cloud objects associated with the at least one file offset range based on a mapping associated with the stub file; determining whether cloud objects in the set of cloud objects are stored within a local cache; in response to determining at least one cloud object in the set of cloud objects is not stored within the local cache, retrieving the at least one cloud object from a cloud storage location and storing the at least one cloud object in the local cache wherein the cloud storage location is associated with the stub file; returning the set of cloud objects to the client as the file, wherein returning the set of cloud objects as the file is transparent to the client; in response to returning the set of cloud objects to the client as the file, receiving a write request from the client associated with the file wherein the write request includes a write offset range and a write data; activating a data lock on the stub file; flagging the write offset range as dirty; writing the write data to the local cache based on the write offset range; adding the file to a sync queue; and deactivating the data lock on the stub file.