Context-aware durability of file variants
First Claim
1. A non-transitory computer-readable medium embodying at least one program executable in at least one computing device, the at least one program having instructions that perform a method comprising:
- maintaining, by the at least one computing device, a plurality of file systems for a plurality of users, each of the file systems including a plurality of files and at least one folder, each of the files including a respective unique identifier and a respective reference to a primary data object stored in a first data store;
generating, by the at least one computing device, a variant of one of the files, the variant including the unique identifier of the one of files and a reference to a secondary data object that is derived from the primary data object referenced by the one of the files, the variant being customized for a client associated with the corresponding one of the users that is associated with the one of the files, the secondary data object being stored in a reduced durability data store;
obtaining, by the at least one computing device, a request for the one of the files from the client;
sending, by the at least one computing device, the secondary data object to the client in response to the request instead of the primary data object when the secondary data object is available;
regenerating, by the at least one computing device, the secondary data object from the primary data object when the secondary data object is unavailable and sending the secondary data object to the client in response to the request instead of the primary data object; and
wherein the reduced durability data store is associated with a lower level of data durability than the first data store.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed are various embodiments for context-aware durability of variants of files. A first data store is associated with a first level of data durability, and a second data store is associated with a second level of data durability that is lower than the first level of data durability. A data object is stored in the second data store when the data object is a derivative of another data object stored in the first data store. A data object is stored in the first data store when the data object is not a derivative of another data object stored in the first data store.
8 Citations
21 Claims
-
1. A non-transitory computer-readable medium embodying at least one program executable in at least one computing device, the at least one program having instructions that perform a method comprising:
-
maintaining, by the at least one computing device, a plurality of file systems for a plurality of users, each of the file systems including a plurality of files and at least one folder, each of the files including a respective unique identifier and a respective reference to a primary data object stored in a first data store; generating, by the at least one computing device, a variant of one of the files, the variant including the unique identifier of the one of files and a reference to a secondary data object that is derived from the primary data object referenced by the one of the files, the variant being customized for a client associated with the corresponding one of the users that is associated with the one of the files, the secondary data object being stored in a reduced durability data store; obtaining, by the at least one computing device, a request for the one of the files from the client; sending, by the at least one computing device, the secondary data object to the client in response to the request instead of the primary data object when the secondary data object is available; regenerating, by the at least one computing device, the secondary data object from the primary data object when the secondary data object is unavailable and sending the secondary data object to the client in response to the request instead of the primary data object; and wherein the reduced durability data store is associated with a lower level of data durability than the first data store. - View Dependent Claims (2, 3)
-
-
4. A system, comprising:
-
a first data store that is associated with a first level of data durability; a reduced-durability data store that is associated with a second level of data durability that is lower than the first level of data durability; and at least one computing device configured to perform a method comprising; obtaining a request to store a data object; determining if the data object is a derivative of another data object stored in the first data store; storing the data object in the reduced-durability data store when the data object is the derivative of the another data object stored in the first data store; and storing the data object in the first data store when the data object is not the derivative of the another data object stored in the first data store. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method, comprising:
-
obtaining, by at least one computing device, a request to store a data object from a user; generating, by the at least one computing device, a variant of the data object that is customized for delivery to a client associated with the user, the variant being generated from the data object; communicating, by the at least one computing device, responsive to a request for the data object, the variant of the data object instead of the data object to the client; deleting, by the at least one computing device, the variant of the data object; and regenerating, by the at least one computing device, the variant of the data object from the data object. - View Dependent Claims (17, 18, 19, 20, 21)
-
Specification