Scalable network file system
First Claim
1. A method for incrementally scaling a file system, comprising:
- adding a new file storage device to a file system having a storage space comprising at least one other file storage device having a plurality of directories and files stored thereon to form a new file system configuration; and
migrating a portion of the files from said at least one other file storage device to the new file storage device while hiding such migration from client applications that access files from the file system so as to not affect file access operations requested and performed by the client applications during the migration;
wherein the storage space of the file system is partitioned into fragments;
the files in the file system are assigned to corresponding fragments; and
files are assigned to corresponding fragments based on the directories the files are in.
12 Assignments
0 Petitions
Accused Products
Abstract
An incrementally-scalable file system and method. The system architecture enables file systems to be scaled by adding resources, such as additional filers and/or file servers, without requiring that the system be taken offline or being known to client applications. The system also provides for load balancing file accesses by distributing files across the various file storage resources in the system, as dictated by the relative capacities of said storage resources. The system provides one or more “virtual” file system volumes in a manner that makes it appear to client applications that all of the file system'"'"'s storage space resides on the virtual volume(s), while in reality the files may be stored on many more physical volumes on the filers and/or file servers in the system.
48 Citations
27 Claims
-
1. A method for incrementally scaling a file system, comprising:
-
adding a new file storage device to a file system having a storage space comprising at least one other file storage device having a plurality of directories and files stored thereon to form a new file system configuration; and migrating a portion of the files from said at least one other file storage device to the new file storage device while hiding such migration from client applications that access files from the file system so as to not affect file access operations requested and performed by the client applications during the migration; wherein the storage space of the file system is partitioned into fragments;
the files in the file system are assigned to corresponding fragments; and
files are assigned to corresponding fragments based on the directories the files are in. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A method for load balancing file access on a network file system having a storage space provided by a plurality of network storage devices in which a plurality of files are stored, comprising:
-
partitioning the storage space into a plurality of fragments, each fragment being mapped to one of said plurality of network storage devices; assigning files among said plurality of files to fragments such that each fragment, on average, comprises a substantially equal number of files; migrating files among said plurality of files from network storage devices on which they are initially stored to other network storage devices corresponding to the fragment they are assigned to in a manner such that the migration of files are undetectable to client applications that access the network file system; wherein each file is assigned to its corresponding fragment based upon the directory the file resides in. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27)
-
Specification