HYDRATION AND DEHYDRATION WITH PLACEHOLDERS
First Claim
Patent Images
1. A method implemented at least in part by a computer, the method comprising:
- receiving an indication of a file system object of a local file system of a client, the client structured to synchronize the local file system with a remote storage system;
evaluating one or more factors to determine an action to take with respect to the file system object, the action selected from actions that include;
to hydrate, to dehydrate, and to do nothing with respect to the file system object; and
if the action is to dehydrate the file system object, performing dehydration actions, the dehydration actions comprising;
creating or maintaining a placeholder to represent the file system object, the placeholder being stored on the local file system, the local file system structured to obtain metadata of the file system object from the placeholder, the metadata sufficient to allow the client, while offline with respect to the remote storage system, to obtain namespace information about the file system object from the placeholder, the placeholder including data that identifies the remote storage system from which content of the file is obtainable,updating the placeholder to indicate that the file system object is dehydrated, andpurging the content of the file system object from the local file system while maintaining the metadata of the file system object in the placeholder.
3 Assignments
0 Petitions
Accused Products
Abstract
Aspects of the subject matter described herein relate to file system placeholders. In aspects, placeholders may be used by a client to represent remote file system objects. The placeholders may include metadata and may also include none, some, or all of the content of the represented remote file system objects. In conjunction with placeholders and based on one or more factors, a client may hydrate or dehydrate file system objects of the client to follow user directives, inferred user intent, and storage policies of the client.
-
Citations
20 Claims
-
1. A method implemented at least in part by a computer, the method comprising:
-
receiving an indication of a file system object of a local file system of a client, the client structured to synchronize the local file system with a remote storage system; evaluating one or more factors to determine an action to take with respect to the file system object, the action selected from actions that include;
to hydrate, to dehydrate, and to do nothing with respect to the file system object; andif the action is to dehydrate the file system object, performing dehydration actions, the dehydration actions comprising; creating or maintaining a placeholder to represent the file system object, the placeholder being stored on the local file system, the local file system structured to obtain metadata of the file system object from the placeholder, the metadata sufficient to allow the client, while offline with respect to the remote storage system, to obtain namespace information about the file system object from the placeholder, the placeholder including data that identifies the remote storage system from which content of the file is obtainable, updating the placeholder to indicate that the file system object is dehydrated, and purging the content of the file system object from the local file system while maintaining the metadata of the file system object in the placeholder. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. In a computing environment, a system, comprising:
-
a store having computer storage elements that maintain file system metadata for local file system objects of a local file system and that maintain placeholders for remote file system objects of a remote storage system, the placeholders including metadata of the remote file system objects without requiring that content of the remote file system objects exist in the store; a placeholder manager structured to create, populate, and maintain the placeholders to ensure that a placeholder exists for each remote file system object in the namespace at least if the content of the remote file system object does not completely exist on the store; and a hydration/dehydration manager, hosted on a client, the hydration/dehydration manager structured to evaluate one or more factors to determine an action to take with respect to the local file system objects, the action selected from actions that include;
to hydrate, to partially hydrate, to dehydrate, and to do nothing with respect to the local file system object, the hydration/dehydration manager further structured to perform dehydration actions with respect to the local file system object, the dehydration actions comprising;causing a placeholder to be created or maintained on the store, the placeholder representing the local file system object, the local file system structured to obtain file metadata of the local file system object from the placeholder, the file metadata sufficient to allow the client, while offline with respect to the remote storage system, to obtain namespace information about the local file system object from the placeholder, the placeholder including data that identifies the remote storage system from which content of the local file system object is obtainable; updating the placeholder to indicate that the local file system object is dehydrated; and purging the content of the local file system object from the local file system while maintaining the file metadata of the local file system object in the placeholder. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. A computer storage medium having computer-executable instructions, which when executed perform actions, comprising:
-
receiving a request for content of a file system object indicated by a client, the client having a client file system, the client file system having file system objects in which all content is located on the client file system and file system objects in which less than all content is located on the client file system, the client having at least placeholders that represent the file system objects in which less than all content is located on the client file system, the client structured to evaluate one or more factors to determine an action to take with respect to a file system object, the action selected from actions that include;
to hydrate, to dehydrate, and to do nothing with respect to the file system object, the file system object being dehydrated on the client file system based on the one or more factors, the file system object being represented on the client file system via a placeholder at least while the file system object is dehydrated on the client file system; andproviding the content of the file system object from a remote storage system. - View Dependent Claims (20)
-
Specification