Rule based aggregation of files and transactions in a switched file system
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.
Claims
exact text as granted — not AI-modified1 . 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; obtaining a user file storage rule applicable to the specified user file that defines storage instructions for the user file among a group of file servers; and performing one or more operations specified by the user file storage rule including storing a modified user file in one or more of the file servers.
2 . The method of claim 1 wherein the user storage rule applicable to the specified user file is obtained from a group of rules and 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.
3 . The method of claim 2 wherein each rule in the group of rules includes a striping parameter specifying a maximum size of file portions into which the user file is divided and wherein each rule in the group of rules includes a mirroring parameter specifying a number of instances of the user file to be stored on the file servers.
4 . The method of claim 2 further comprising 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 when the specified operation changes the size of the specified user file
5 . The method of claim 2 wherein the range of files for a particular rule in the group of rules is specified by at least one of files not falling within the range of any higher order rule and having a file path matching a specified file path, files not falling within the range of any higher order rule and comprising a file of a specified file type, and files not falling within the range of any higher order rule and having a specified owner.
6 . The method of claim 2 wherein each rule in the group of rules includes a cashing parameter selected from at least one of a read ahead cashing parameter specifying whether read ahead cashing is enabled for files to which the rule is applicable and a maximum cache size for cashing any particular file to which the rule is applicable.
7 . 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;
obtaining a user file storage rule applicable to the specified user file that defines storage instructions for the user file among a group of file servers; and
performing one or more operations specified by the user file storage rule including storing a modified user file in one or more of the file servers.
8 . The apparatus of claim 7 wherein the user storage rule applicable to the specified user file is obtained from a group of rules and 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.
9 . The apparatus of claim 8 wherein each rule in the group of rules includes a striping parameter specifying a maximum size of file portions into which the user file is divided and wherein each rule in the group of rules includes a mirroring parameter specifying a number of instances of the user file to be stored on the file servers.
10 . The apparatus of claim 8 further including 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 when the specified operation changes the size of the specified user file
11 . The apparatus of claim 8 wherein the range of files for a particular rule in the group of rules is specified by at least one of files not falling within the range of any higher order rule and having a file path matching a specified file path, files not falling within the range of any higher order rule and comprising a file of a specified file type, and files not falling within the range of any higher order rule and having a specified owner.
12 . The apparatus of claim 8 wherein each rule in the group of rules includes a cashing parameter selected from at least one of a read ahead cashing parameter specifying whether read ahead cashing is enabled for files to which the rule is applicable and a maximum cache size for cashing any particular file to which the rule is applicable.
13 . 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; obtaining a user file storage rule applicable to the specified user file that defines storage instructions for the user file among a group of file servers; and performing one or more operations specified by the user file storage rule including storing a modified user file in one or more of the file servers.
14 . The medium of claim 13 wherein the user storage rule applicable to the specified user file is obtained from a group of rules and 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.
15 . The medium of claim 14 wherein each rule in the group of rules includes a striping parameter specifying a maximum size of file portions into which the user file is divided and wherein each rule in the group of rules includes a mirroring parameter specifying a number of instances of the user file to be stored on the file servers.
16 . The medium of claim 14 further including 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 when the specified operation changes the size of the specified user file
17 . The medium of claim 14 wherein the range of files for a particular rule in the group of rules is specified by at least one of files not falling within the range of any higher order rule and having a file path matching a specified file path, files not falling within the range of any higher order rule and comprising a file of a specified file type, and files not falling within the range of any higher order rule and having a specified owner.
18 . The medium of claim 14 wherein each rule in the group of rules includes a cashing parameter selected from at least one of a read ahead cashing parameter specifying whether read ahead cashing is enabled for files to which the rule is applicable and a maximum cache size for cashing any particular file to which the rule is applicable.Join the waitlist — get patent alerts
Track US2012036107A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.