Multiple quality of service file system using performance bands of storage devices
First Claim
1. A multiQoS file system, comprising:
- a multiQoS file system including a plurality of files, wherein each file has an attribute, a current QoS, and data blocks; and
a host coupled to the multiQoS file system adapted to;
receive a migration rule,determine if each data block is identified for migration and if not compute a new QoS by comparing the migration rule to the attribute,compare the current QoS to the new QoS,migrate each data block from a current QoS VLUN to a new QoS VLUN,write each data block to a performance band of a storage device that corresponds to the new QoS VLUN, andupdate the current QoS to the new QoS.
1 Assignment
0 Petitions
Accused Products
Abstract
The invention relates to a multiple QoS file system and methods of processing files at different QoS. The file system allocates VLUNs and using rules chooses an initial QoS for a file when created and moves files to different QoS using rules. Users see a single unified space of files, while administrators place files on storage according to file attributes. A file system enhances the descriptive information for each file to contain the chosen QoS for the file. The invention classifies volumes (e.g., file systems or LUNs) according to application requirements and allocates space for volumes. An IT administrator configures volumes specifying size, type and priority. The host schedules I/O requests in priority queues using the volume definition to match applications and reduce seek time between volumes of different priorities. The data storage system therefore places data on the performance band of a storage device that best supports needs.
-
Citations
37 Claims
-
1. A multiQoS file system, comprising:
-
a multiQoS file system including a plurality of files, wherein each file has an attribute, a current QoS, and data blocks; and a host coupled to the multiQoS file system adapted to; receive a migration rule, determine if each data block is identified for migration and if not compute a new QoS by comparing the migration rule to the attribute, compare the current QoS to the new QoS, migrate each data block from a current QoS VLUN to a new QoS VLUN, write each data block to a performance band of a storage device that corresponds to the new QoS VLUN, and update the current QoS to the new QoS. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method of file migration between different QoS in a multiQoS file system, comprising:
-
(a) testing if a file of an i-node is identified for migration and if not, computing a new QoS of the file by comparing a migration rule to a rule attribute of the file, wherein the file has data blocks, wherein each data block has a block address that encodes a QoS and addresses the data block; and (b) testing if a current QoS of the file equals the new QoS computed at step (a) and if not, migrating the file from the current QoS to the new QoS; (c) writing each file to a performance band of a storage device that corresponds to the new QoS VLUN; and (d) updating the current QoS to the new QoS. - View Dependent Claims (14, 15, 16)
-
-
17. A method of migration of files from a current QoS VLUN to a new QoS VLUN in a multiQoS file system containing i-nodes, comprising:
-
(a) assigning a first i-node of a file of the multiQoS file system to a variable I; (b) testing if the variable I is greater than a last i-node of the multiQoS file system, and if greater, waiting for the next scan of all of the i-nodes of the multiQoS file system, and if not greater, testing if the file is identified for migration and if not, computing a new QoS for the file using migration rule(s); (c) testing if the current QoS of the file equals the new QoS of the file and if not, identifying the file for migration; (d) migrating the file from the current QoS VLUN to the new QoS VLUN; (e) writing each file to a performance band of a storage device that corresponds to the new QoS VLUN, wherein the file has an attribute and data blocks, wherein each data block has a block address that includes bits to encode a current QoS and bits to address the data block; (f) assigning a next i-node of the next file of the multiQoS file system to the variable I; and (g) updating the current QoS to the new QoS. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
-
24. A method of migrating extents of a file between QoS of a multiQoS file system, comprising:
-
(a) testing if the file is identified for migration, and if not, performing the following steps; (b) testing if the extent is part of the file and if so, performing the following steps; (c) computing a new QoS of the extent using a migration rule; (d) testing if the current QoS equals the new QoS, and if not, identifying the extent as in migration; (e) migrating the extent of the file from the current QoS VLUN to the new QoS VLUN; (f) writing each extent of the file to a performance band of a storage device that corresponds to the new QoS VLUN, wherein the extent of the file can be accessed on the new QoS VLUN; and (g) updating the current QoS to the new QoS. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
-
-
35. A system, comprising:
-
a multiQoS file system including a plurality of files, wherein each file has an attribute, a current QoS, a migration flag, and data blocks, and wherein each data block has a block address that includes bits to encode a QoS and bits to address the data block; a processor; and a memory including program instructions executable by the processor to configure the multiQoS file system to receive a migration rule, to determine if a file is identified for migration and if not compute a new QoS by comparing the migration rule to the attribute, to compare the current QoS to the new QoS and if not equal set the migration flag, to migrate the file from a current QoS VLUN to a new QoS VLUN, to write the file to a performance band of a storage device that corresponds to the new QoS VLUN, and to update the current QoS to the new QoS.
-
-
36. A computer-readable medium storing program instructions that cause a computer to perform steps, comprising:
-
configuring a multiQoS file system including a plurality of files, wherein each file has an attribute, a current QoS, a migration flag, and data blocks, and wherein each data block has a block address that includes bits to encode a QoS and bits to address the data block; receiving a migration rule; determining if a file is identified for migration and if not computing a new QoS by comparing the migration rule to the attribute; comparing the current QoS to the new QoS and if not equal set the migration flag; migrating the file from a current QoS VLUN to a new QoS VLUN; writing the file to a performance band of a storage device that corresponds to the new QoS VLUN; and updating the current QoS to the new QoS. - View Dependent Claims (37)
-
Specification