Systems and methods for managing an upload of files in a shared cache storage system
First Claim
1. A method for managing files with a storage device, the method comprising:
- in a host to which a storage device is operatively coupled, wherein the storage device includes a cache for storing one or more discardable files;
identifying a file to be uploaded to an external location;
determining whether sufficient free space exists in the cache to pre-stage the file for upload to the external location;
determining that pre-staging the file for uploading to the external location requires more space than free space exists in the cache;
associating discarding criteria with the file;
determining whether one or more discardable files are stored in the cache that are associated with discarding criteria that is higher than that of the file to be pre-staged;
removing one or more discardable files from the cache that are associated with discarding criteria that is higher than that of the file to be pre-staged to free UP space in the cache for the file to be pre-staged for uploading, starting with the discardable file associated with the highest discarding criteria and proceeding with the discardable file associated with the next highest discarding criteria, in sequence, wherein no more discardable files are removed from the cache than are needed to free up space in the cache for the file to be pre-staged; and
storing the file in the cache upon determining that sufficient free space exists in the cache to pre-stage the file for upload to the external location, wherein pre-staging prepares a file for opportunistically uploading such file in accordance with an uploading policy.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for managing a storage device are disclosed. Generally, in a host to which a storage device is operatively coupled, wherein the storage device includes a cache for storing one or more discardable files, a file is identified to be uploaded to an external location. A determination is made whether sufficient free space exists in the cache to pre-stage the file for upload to the external location and the file is stored in the cache upon determining that sufficient free space exists in the cache to pre-stage the file for upload to the external location, wherein pre-stating prepares a file for opportunistically uploading such file in accordance with an uploading policy.
-
Citations
28 Claims
-
1. A method for managing files with a storage device, the method comprising:
in a host to which a storage device is operatively coupled, wherein the storage device includes a cache for storing one or more discardable files; identifying a file to be uploaded to an external location; determining whether sufficient free space exists in the cache to pre-stage the file for upload to the external location; determining that pre-staging the file for uploading to the external location requires more space than free space exists in the cache; associating discarding criteria with the file; determining whether one or more discardable files are stored in the cache that are associated with discarding criteria that is higher than that of the file to be pre-staged; removing one or more discardable files from the cache that are associated with discarding criteria that is higher than that of the file to be pre-staged to free UP space in the cache for the file to be pre-staged for uploading, starting with the discardable file associated with the highest discarding criteria and proceeding with the discardable file associated with the next highest discarding criteria, in sequence, wherein no more discardable files are removed from the cache than are needed to free up space in the cache for the file to be pre-staged; and storing the file in the cache upon determining that sufficient free space exists in the cache to pre-stage the file for upload to the external location, wherein pre-staging prepares a file for opportunistically uploading such file in accordance with an uploading policy. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
15. A storage system comprising:
-
a communication interface; a processor on a host for managing a cache of a storage device, wherein the cache is configured to store one or more discardable files and wherein the processor is configured to; identify a file to be uploaded over the communication interface to an external location; determine whether sufficient free space exists in the cache to pre-stage the file for upload to the external location; determine that pre-staging the file for upload to the external location requires more space than free space exists in the cache; associate discarding criteria with the file; determine whether one or more discardable files are stored in the cache that are associated with discarding criteria that is higher than that of the file to be pre-staged; remove one or more discardable files from the cache that are associated with discarding criteria that is higher than that of the file to be pre-staged to free UP space in the cache for the file to be pre-staged for uploading, starting with the discardable file associated with the highest discarding criteria and proceeding with the discardable file associated with the next highest discarding criteria, in sequence, wherein no more discardable files are removed from the cache than are needed to free up space in the cache for the file to be pre-staged; and store the file in the cache upon determining that sufficient free space exists in the cache to pre-stage the file for upload to the external location, wherein pre-staging prepares a file for opportunistically uploading such file in accordance with an uploading policy. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
Specification