Rule based aggregation of files and transactions in a switched file system
First Claim
1. A method of processing a user request to perform an operation on a user file, comprising:
- receiving one or more user requests to perform a specified operation on a specified user file;
selecting, from among a group of rules, a rule applicable to the specified user file, each rule in the group of rules including at least one parameter specifying, for files to which the rule is applicable, how to distribute storage of each such file over the file servers in a group of file servers;
performing the specified operation in accordance with the selected rule, including, when the specified operation changes the size of the specified user file, sending commands to a plurality of the file servers so as to continue to distribute storage of the specified user file in accordance with the selected rule;
wherein the rules in the group of rules are ordered and wherein each rule in the group of rules has an associated range of files to which the rule is applicable; and
wherein the range of files for a particular rule in the group of rules is specified by files not falling within the range of any higher order rule and having one or more characteristics.
5 Assignments
0 Petitions
Accused Products
Abstract
A switched file system, also termed a file switch, is logically positioned between client computers and file servers in a computer network. The file switch distributes user files among multiple file servers using aggregated file, transaction and directory mechanisms. The file switch distributes and aggregates the client data files in accordance with a predetermined set of aggregation rules. Each rule can be modified independently of the other rules. Different aggregation rules can be used for different types of files, thereby adapting the characteristics of the switched file system to the intended use and to the expected or historical access patterns for different data files.
283 Citations
9 Claims
-
1. A method of processing a user request to perform an operation on a user file, comprising:
-
receiving one or more user requests to perform a specified operation on a specified user file; selecting, from among a group of rules, a rule applicable to the specified user file, each rule in the group of rules including at least one parameter specifying, for files to which the rule is applicable, how to distribute storage of each such file over the file servers in a group of file servers; performing the specified operation in accordance with the selected rule, including, when the specified operation changes the size of the specified user file, sending commands to a plurality of the file servers so as to continue to distribute storage of the specified user file in accordance with the selected rule; wherein the rules in the group of rules are ordered and wherein each rule in the group of rules has an associated range of files to which the rule is applicable; and wherein the range of files for a particular rule in the group of rules is specified by files not falling within the range of any higher order rule and having one or more characteristics. - View Dependent Claims (2, 3)
-
-
4. An apparatus for use in a computer network having a plurality of file servers and a plurality of client computers, the apparatus comprising:
-
at least one processor; a memory coupled to the at least one processor wherein the at least one processor is configured to execute programmed instructions stored in the memory comprising; receiving one or more user requests to perform a specified operation on a specified user file; selecting, from among a group of rules, a rule applicable to the specified user file, each rule in the group of rules including at least one parameter specifying, for files to which the rule is applicable, how to distribute storage of each such file over the file servers in a group of file servers; and performing the specified operation in accordance with the selected rule, including, when the specified operation changes the size of the specified user file, sending commands to a plurality of the file servers so as to continue to distribute storage of the specified user file in accordance with the selected rule; wherein the rules in the group of rules are ordered and wherein each rule in the group of rules has an associated range of files to which the rule is applicable; and wherein the range of files for a particular rule in the group of rules is specified by files not falling within the range of any higher order rule and having one or more characteristics. - View Dependent Claims (5, 6)
-
-
7. A non-transitory computer readable medium having stored thereon instructions for processing a user request to perform an operation on a user file comprising machine executable code which when executed by at least one processor, causes the processor to perform steps comprising:
-
receiving one or more user requests to perform a specified operation on a specified user file; selecting, from among a group of rules, a rule applicable to the specified user file, each rule in the group of rules including at least one parameter specifying, for files to which the rule is applicable, how to distribute storage of each such file over the file servers in a group of file servers; performing the specified operation in accordance with the selected rule, including, when the specified operation changes the size of the specified user file, sending commands to a plurality of the file servers so as to continue to distribute storage of the specified user file in accordance with the selected rule; wherein the rules in the group of rules are ordered and wherein each rule in the group of rules has an associated range of files to which the rule is applicable; and wherein the range of files for a particular rule in the group of rules is specified by files not falling within the range of any higher order rule and having one or more characteristics. - View Dependent Claims (8, 9)
-
Specification