Apparatus and method for building a file system index
First Claim
1. A method of providing an index associated with a policy used by a policy engine to a subset of files in a file system stored on a computer readable medium, wherein each index is associated with a key attribute and wherein the method includes the steps of:
- receiving, at the file server, a request by the policy engine to build the index to characterize files for the policy enforcement, the request including the key attribute associated with the index, wherein the policy engine evaluates a metadata of the file system wherein the metadata includes attributes associated with the files in the file system and based on the evaluation with regard to the criteria associated with a policy migrates the files in a file system from one storage device to another to enforce the policy; and
for each file in the file system;
retrieving a file identifier and a key attribute value of the file; and
storing the file identifier in the index in order of key attribute value.
10 Assignments
0 Petitions
Accused Products
Abstract
An improved policy enforcement architecture includes several components that improve the performance of policy enforcement in a hierarchical storage environment. A File System Query instruction permits a richer set of queries to be expressed by a policy engine, thereby permitting more complex policies to be implemented with ease. The File System result is generated at the file server, and only files of interest are forwarded to the policy engine. The file system query advantageously may be applied against a pre-generated index having one more characterizing attributes to further reduce the processing required to retrieve policy data. An Index Build instruction, added to a programming interface, allows a policy engine generate the characterizing indices in advance of use. Index maintenance techniques maintain consistency between the index and the file system to ensure that the policy can be enforced using accurate file information.
48 Citations
26 Claims
-
1. A method of providing an index associated with a policy used by a policy engine to a subset of files in a file system stored on a computer readable medium, wherein each index is associated with a key attribute and wherein the method includes the steps of:
-
receiving, at the file server, a request by the policy engine to build the index to characterize files for the policy enforcement, the request including the key attribute associated with the index, wherein the policy engine evaluates a metadata of the file system wherein the metadata includes attributes associated with the files in the file system and based on the evaluation with regard to the criteria associated with a policy migrates the files in a file system from one storage device to another to enforce the policy; and for each file in the file system; retrieving a file identifier and a key attribute value of the file; and storing the file identifier in the index in order of key attribute value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method of providing an index associated with a policy used by a policy engine to a subset of files in a file system stored on a computer readable medium, wherein each index is associated with a key attribute and wherein the method includes the steps of:
-
receiving, at the file server, a request by the policy engine to build the index to characterize files for the policy enforcement, the request including the key attribute associated with the index as well as a selector which defines a shared attribute characteristic for the files of interest to the index, wherein the policy engine evaluates a metadata of the file system wherein the metadata includes attributes associated with the files in the file system and based on the evaluation with regard to the criteria associated with a policy migrates the files in a file system from one storage device to another to enforce the policy; and for each file in the file system; retrieving a file identifier and a key attribute value of the file; determining if the file shares the attribute characteristic defined by the selector; and responsive to the file sharing the attribute characteristic defined by the selector, storing the file identifier in the index in order of key attribute value.
-
-
11. An application programming interface, stored in a computer readable medium of a file server, includes:
program code operable when executed in response to a build index request by a policy engine to generate an index associated with a policy used by the policy engine to characterize files for the policy enforcement to a subset of files in a file system served by the file server, wherein the index is associated with a key attribute and lists files in the file system in order of key attribute value and wherein the policy engine evaluates a metadata of the file system wherein the metadata includes attributes associated with the files in the file system and based on the evaluation with regard to the criteria associated with a policy migrates the files in a file system from one storage device to another to enforce the policy. - View Dependent Claims (12)
-
13. A file server including:
-
an application programming interface for receiving policy communications from a policy engine including a build index request, wherein the policy engine evaluates a metadata of the file system wherein the metadata includes attributes associated with the files in the file system and based on the evaluation with regard to the criteria associated with a policy migrates the files in a file system from one storage device to another to enforce the policy; an index generator, coupled to application programming interface, for generating an index associated with a policy used by the policy engine to characterize files for the policy enforcement to a subset of files in a file system served by the file server in response to receipt of the build index request from the application programming interface, wherein the index is associated with a key attribute and lists files in the file system in order of key attribute value; and storage for storing the index. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A file system stored on a computer readable medium comprising:
an index data structure associated with a key attribute and at least one shared attribute characteristic of files in a file system, the index data structure including a list of files of the file system having the at least one shared attribute characteristic to characterize files according to a policy used by a policy engine, the list of files being stored in key attribute value order, wherein the policy engine evaluates a metadata of the file system wherein the metadata includes attributes associated with the files in the file system and based on the evaluation with regard to the criteria associated with a policy migrates the files in a file system based on the policy from one storage device to another to enforce the policy. - View Dependent Claims (23)
-
24. A file server comprising a computer readable medium having program code stored thereon, the program code including:
a file system build index instruction associated with a policy used by a policy engine, the file system build index instruction comprising a command and a key attribute, the file system build index instruction operable when executed by the policy engine evaluating a metadata of the file system wherein the metadata includes attributes associated with the files in the file system and based on the evaluation with regard to the criteria associated with a policy migrating the files in a file system from one storage device to another to cause the file server to; retrieve a file identifier and a key attribute value of the file; and store the file identifier in the index in order of key attribute value.
-
25. A file server comprising a computer readable medium having program code stored thereon, the program code including:
a file system build index instruction associated with a policy used by a policy engine, the file system build index instruction operable when executed by the policy engine to build an index to characterize files for the policy enforcement, the build index instruction comprising a command, a key attribute and a selector which defines a shared attribute characteristic for file of interest to the index, the file system build index instruction operable when executed to cause the file server to build an index by, for each file in the file system, wherein the policy engine evaluates a metadata of the file system wherein the metadata includes attributes associated with the files in the file system and based on the evaluation with regard to the criteria associated with a policy migrates the files in a file system from one storage device to another to enforce the policy; retrieving a file identifier and a key attribute value of the file; determining if the file shares the attribute characteristic defined by the selector; and responsive to the file sharing the attribute characteristic defined by the selector, storing the file identifier in the index in order of key attribute value. - View Dependent Claims (26)
Specification