Source: https://patents.google.com/patent/JP2013012146A/en
Timestamp: 2020-01-18 00:39:07
Document Index: 470833956

Matched Legal Cases: ['art 2', 'art 2', 'art 2', 'art 3', 'art 11', 'art 12', 'art 13', 'art 14', 'art 14', 'art 141', 'art 142', 'art 20']

JP2013012146A - Controller, control method, and storage device - Google Patents
Controller, control method, and storage device Download PDF
JP2013012146A
JP2013012146A JP2011145829A JP2011145829A JP2013012146A JP 2013012146 A JP2013012146 A JP 2013012146A JP 2011145829 A JP2011145829 A JP 2011145829A JP 2011145829 A JP2011145829 A JP 2011145829A JP 2013012146 A JP2013012146 A JP 2013012146A
JP2011145829A
JP5729173B2 (en
Kunihiko Kasai
邦彦 葛西
2011-06-30 Application filed by Fujitsu Ltd, 富士通株式会社 filed Critical Fujitsu Ltd
2011-06-30 Priority to JP2011145829A priority Critical patent/JP5729173B2/en
2013-01-17 Publication of JP2013012146A publication Critical patent/JP2013012146A/en
2015-06-03 Publication of JP5729173B2 publication Critical patent/JP5729173B2/en
PROBLEM TO BE SOLVED: To suppress the production of volume having excessive data storage areas.SOLUTION: A counting portion 2a counts the number of files stored in a first volume 3a having a data memory area in which an upper limit is set to the number of files that can be stored. A determining portion 2b determines an increase tendency of the use capacity of the files stored in the first volume 3a, when the number of files which is counted by the counting portion 2a is larger than a predetermined number. A volume control portion 2c produces a second volume 3b when the determining portion 2b determines that the use capacity of the files increases by a predetermined amount during a predetermined period.
The present invention relates to a control device, a control method, and a storage device.
A technology is known in which multiple RAID (Redundant Arrays of Inexpensive / Independent Disks) groups are integrated to create one storage pool, and one or more logical volumes (flex volumes) are created as needed. ing.
ETRNUS NR1000F Series [online] FUJITSU Corporation, [retrieved on 2011-03-31]. Retrieved from the Internet: <http://storage-system.fujitsu.com/jp/products/nwdiskarray/feature/hard090/>
In recent years, it has become possible to create a 64-bit flex volume using 64 bits as a unit for managing addresses of stored data in a storage pool. For example, a 64-bit flex volume can have a larger storage capacity than a 32-bit flex volume that uses 32 bits as a unit for managing addresses of stored data. In addition, the 64-bit flex volume can reduce the proportion of the parity disk in the flex volume when the same storage capacity is secured compared to the 32-bit flex volume. Can do.
There is a case where an upper limit of files that can be stored in one 64-bit flex volume is determined. In this case, when the upper limit of the file that can be stored in the 64-bit flex volume is reached, it becomes impossible to write a new file even though an unused data storage area remains.
The present invention has been made in view of these points, and an object thereof is to provide a control device, a control method, and a storage device that suppress the creation of a volume having an excessive data storage area.
In order to achieve the above object, a disclosed control device is provided. This control apparatus includes a counting unit, a determination unit, and a volume control unit.
The counting unit counts the number of files stored in the first volume having a data storage area in which an upper limit is set for the number of files that can be stored.
The determining unit determines an increasing tendency of the used capacity of the file stored in the first volume when the number of files counted by the counting unit is larger than a predetermined number.
The volume control unit creates the second volume when the determination unit determines that the file usage capacity has increased by a predetermined amount or more in a predetermined period.
Creation of a volume having an excessive data storage area can be suppressed.
It is a figure which shows the storage apparatus of 1st Embodiment. It is a block diagram which shows the storage system of 2nd Embodiment. It is a block diagram which shows the function of the control part of 2nd Embodiment. It is a figure explaining a volume information management table. It is a figure explaining a file information management table. It is a flowchart which shows the process of an aggregate control part. It is a figure explaining the transfer process to a 64-bit aggregate volume. It is a figure explaining the transfer process to a 64-bit aggregate volume.
Hereinafter, a storage apparatus according to an embodiment will be described in detail with reference to the drawings. In the first embodiment, an embodiment of the disclosed storage apparatus will be described, and then, in the second embodiment, the disclosed storage apparatus will be described more specifically.
FIG. 1 illustrates a storage apparatus according to the first embodiment.
The storage device 1 according to the first embodiment includes a control device 2 and a storage pool 3. The storage pool 3 is a virtual storage area composed of one or a plurality of drive devices (HDD (Hard Disk Drive), SSD (Solid State Drive), etc.). In the storage pool 3, a logical first volume 3 a configured by a part of the data storage area of the drive device is created by the control device 2. The first volume 3 a has a storage area (for example, 16 TB (Tera Byte)) in which an upper limit is set for the number of files to be written by the control device 2. In addition to the first volume 3a, the storage pool 3 has a data storage area in which a plurality of logical volumes can be created.
The control device 2 is connected to the first volume 3a via a communication line. The control device 2 controls file access from the server device 4 used for business or the like to the first volume 3a. That is, the control device 2 controls the writing of the data received from the server device 4 to the first volume 3a and the reading of the data stored in the first volume 3a received from the server device 4. The control device 2 includes a counting unit 2a, a determination unit 2b, a volume control unit 2c, and a migration processing unit 2d. The counting unit 2a, the determination unit 2b, the volume control unit 2c, and the migration processing unit 2d can be realized by functions provided in a CPU (Central Processing Unit) included in the control device 2.
The counting unit 2a counts the number of files stored in the first volume 3a.
When the number of files counted by the counting unit 2a is larger than a predetermined number (for example, 90% of the upper limit), the determining unit 2b uses the file usage capacity (used for storing data) stored in the first volume 3a. The increasing tendency of storage capacity) is determined. As a method for the determination unit 2b to determine the increasing tendency of the file usage capacity, for example, it is determined whether or not the file usage capacity has increased by a predetermined ratio or more within a predetermined period.
Even when the number of files counted by the counting unit 2a is greater than the predetermined number, the volume control unit 2c determines that the first volume is used when the file usage capacity has increased by a predetermined percentage or more within a predetermined period. A second volume 3b (for example, 100 TB) is created by expanding the data storage area 3a. The processing of the volume control unit 2c is based on the fact that it is predicted that the possibility of an increase in file capacity is relatively high based on the determination of the determination unit 2b. The second volume 3b may be created by expanding the first volume 3a, or a new second volume 3b may be created separately from the first volume 3a. By creating the second volume 3b, the volume control unit 2c avoids the creation of a new volume even if the use capacity of the file stored in the second volume 3b increases, and is accompanied by the volume migration process. The processing load on the control device 2 can be reduced.
The migration processing unit 2d copies the file stored in the first volume 3a to the second volume 3b created by the volume control unit 2c, so that the server device 4 performs file access to the created second volume 3b. Perform processing that enables.
On the other hand, the volume control unit 2c avoids the creation of the second volume 3b when the determination unit 2b determines that the used capacity of the file has not increased by a predetermined amount or more during a predetermined period. The processing of the volume control unit 2c is based on the fact that it is predicted that the possibility of an increase in file capacity is relatively low based on the determination of the determination unit 2b. By avoiding the creation of the second volume 3b that is unlikely to increase the usage rate of the data storage area, creation of a volume having an excessive data storage area can be suppressed.
The volume control unit 2c can create a new third volume 3c when the number of files stored in the first volume 3a reaches the upper limit. The capacity of the third volume 3c is not particularly limited.
According to this storage apparatus 1, when the volume control unit 2c determines that the file usage capacity of the first volume 3a has not increased by a predetermined amount or more in a predetermined period, the data storage area of the first volume 3a is allocated. Creation of the expanded second volume 3b is avoided. For this reason, it is possible to suppress the creation of a volume having an excessive data storage area, compared to the case where the second volume 3b is uniquely created when the number of files counted by the counting unit 2a is larger than a predetermined number. As a result, the storage area of the storage pool 3 can be saved.
FIG. 2 is a block diagram illustrating a storage system according to the second embodiment.
The storage system illustrated in FIG. 2 includes server apparatuses 41, 42, and 43, and a storage apparatus 100 that is connected to the server apparatuses 41, 42, and 43 via a LAN (Local Area Network).
The storage apparatus 100 is a NAS (Network Attached Storage), and includes a drive enclosure (DE) 20a including a plurality of HDDs 20, and a control unit 10 that manages a physical storage area of the drive enclosure 20a by RAID. Yes. The control unit 10 is an example of a control device. In the present embodiment, the HDD 20 is exemplified as the storage medium included in the drive enclosure 20a. However, the storage medium is not limited to the HDD 20, and other storage media such as an SSD may be used. Hereinafter, when the plurality of HDDs 20 included in the drive enclosure 20a are not distinguished, they are referred to as “HDD 20 group”.
The number of control units included in the storage apparatus 100 is not limited to one, and redundancy of control of the HDD 20 group may be ensured by two or more control units. In the present embodiment, the NAS storage apparatus 100 is described. However, the function of the control unit 10 can be applied to other storage apparatuses such as a SAN (Storage Area Network).
Data access between the storage apparatus 100 and the server apparatuses 41, 42, and 43 is performed in units of files. Data access from the server apparatuses 41, 42, and 43 to the storage apparatus 100 is performed using a name that identifies a file, such as a file name or a share name. The control unit 10 controls file access to the physical storage area of the HDD 20 included in the drive enclosure 20a according to RAID in response to file access requests from the server devices 41, 42, and 43, respectively.
The control unit 10 includes a CPU 101, a RAM (Random Access Memory) 102, a flash ROM 103, a cache memory 104, a LAN interface 105, and a device interface (DI: Device Interface) 106.
The CPU 101 comprehensively controls the entire control unit 10 by executing a program stored in the flash ROM 103 or the like. The RAM 102 temporarily stores at least part of an OS (Operating System) program and application programs to be executed by the CPU 101 and various data necessary for processing by the program. The flash ROM 103 is a non-volatile memory, and stores an OS program executed by the CPU 101, an application program, various data necessary for executing the program, and the like.
The flash ROM 103 serves as a save destination for data stored in the cache memory 104 when the storage apparatus 100 is powered down.
The cache memory 104 temporarily stores files written in the HDD 20 group and files read from the HDD 20 group.
Then, for example, when receiving a file read command from the server devices 41, 42, and 43, the control unit 10 determines whether or not the file to be read is stored in the cache memory 104. If the read target file is stored in the cache memory 104, the control unit 10 sends the read target file stored in the cache memory 104 to the server devices 41, 42, and 43. The file can be sent to the server devices 41, 42, and 43 more quickly than when the file to be read is read from the HDD 20 group.
The cache memory 104 may temporarily store files necessary for processing by the CPU 101. Examples of the cache memory 104 include volatile semiconductor devices such as SRAM and DRAM. The storage capacity of the cache memory 104 is not particularly limited, but is about 2 to 64 GB as an example.
The LAN interface 105 is connected to the LAN 50 and is connected to the server devices 41, 42, and 43 via the LAN 50. The LAN interface 105 transmits and receives files between the server apparatuses 41, 42, and 43 and the control unit 10 using protocols such as NFS (Network File System), CIFS (Common Internet File System), and HTTP (HyperText Transfer Protocol). To do.
The device interface 106 is connected to the drive enclosure 20a. The device interface 106 provides an interface function for transmitting and receiving files between the HDD 20 group included in the drive enclosure 20 a and the cache memory 104. The control unit 10 transmits and receives files to and from the HDD 20 group included in the drive enclosure 20 a via the device interface 106.
The drive enclosure 20a is formed with one or a plurality of HDDs 20 included in the drive enclosure 20a.
FIG. 2 shows RAID groups 21 and 22 constituting RAID-DP (Double Parity) (registered trademark), which is one of the implementations of RAID 6 and in which two parity disks are installed in the RAID group. The RAID configuration of the RAID groups 21 and 22 is an example, and is not limited to the illustrated RAID configuration. For example, the RAID groups 21 and 22 can have an arbitrary number of HDDs 20. Further, the RAID groups 21 and 22 can be configured by any RAID system such as RAID5. Next, functions of the control unit 10 will be described.
FIG. 3 is a block diagram illustrating functions of the control unit according to the second embodiment.
The control unit 10 includes an aggregate 20b that handles the RAID groups 21 and 22 as one virtual storage area. One or more logical volumes can be created in the aggregate 20b. Hereinafter, a volume created in the aggregate 20b is referred to as an “aggregate volume”. FIG. 3 illustrates two aggregate volumes 31 and 32.
The control unit 10 includes a network control unit 11, a protocol control unit 12, an access control unit 13, an aggregate control unit 14, and a disk control unit 15.
The network control unit 11 constructs a network with each of the server devices 41, 42, and 43 via the LAN 50.
The protocol control unit 12 communicates with the server devices 41 to 43 using the above-described protocol such as NFS or CIFS.
The access control unit 13 confirms the access authority from the server apparatuses 41, 42, 43 to the aggregate volumes 31, 32, performs authentication, and the like.
The aggregate control unit 14 is an example of a counting unit, a determination unit, and a volume control unit. The aggregate control unit 14 controls access between the server apparatuses 41, 42, and 43 and the aggregate volumes 31 and 32. Further, the aggregate control unit 14 has a function of creating an aggregate volume. The aggregate control unit 14 can create the storage capacity of the aggregate volume to be created in units of 20 MB to 4 KB, for example, and can change the storage capacity of the aggregate volumes 31 and 32 that have already been created. Further, the aggregate control unit 14 monitors and manages the volume information management table created for managing the aggregate volume created in the aggregate 20b. For example, the aggregate control unit 14 uses the volume information management table to control aggregate volume creation and deletion and aggregate volume migration processing. Here, the migration process of the aggregate volume includes a process for creating a new aggregate volume, a process for copying a file stored in an existing aggregate volume to the created aggregate volume, and server devices 41, 42, And a process of switching the access path between the existing aggregate volume 43 and the existing aggregate volume to the created aggregate volume.
By the way, the flash ROM 103 stores a first version OS that supports aggregate volumes 31 and 32 using 32 bits as an address for managing the data storage area of the HDD 20. The aggregate control unit 14 can create aggregate volumes 31 and 32 with an upper limit of storage capacity of 16 TB by executing the first version of OS stored in the flash ROM 103.
The first version OS stored in the flash ROM 103 can be revised to the second version OS by the revision process of the administrator of the storage apparatus 100 (hereinafter simply referred to as “administrator”). The second version of the OS supports an aggregate volume using 64 bits as an address for managing the data storage area of the HDD 20. When the CPU 101 executes the second version of OS stored in the flash ROM 103, the aggregate control unit 14 can create an aggregate volume with an upper limit of storage capacity of 100 TB. However, the upper limit of the number of files that can be stored in both 32-bit aggregate volumes and 64-bit aggregate volumes is set equal. An administrator can set an upper limit on the number of files.
The aggregate control unit 14 includes a volume management unit 14a and a file management unit 14b.
The volume management unit 14a manages a volume information management table that is created for each aggregate volume and stores information related to the aggregate 20b.
The file management unit 14b manages a file information management table that is set for each file and stores information about the file. The volume information management table and the file information management table are stored in the RAM 102.
The disk control unit 15 accesses the aggregate volumes 31 and 32 and the HDD 20 group that constructs the created 64-bit aggregate volume in response to a request from the aggregate control unit 14.
Next, the contents of the volume information management table will be described.
FIG. 4 is a diagram for explaining the volume information management table.
The volume information management table 141 includes columns for aggregate volume number, aggregate volume name, aggregate volume size, used capacity, number of storage volumes, number of constituent disks, RAID type, and number of stored files. Information arranged in the horizontal direction is associated with each other.
In the column of aggregate volume number, a number for managing the volume information management table 141 is set.
In the aggregate volume name column, a name for identifying the aggregate volume is set.
In the column of the aggregate volume size, the storage capacity (Byte) provided for the aggregate volume is set.
In the used capacity column, the storage capacity (Byte) used for storing the data of the aggregate volume is set.
In the column for the number of storage volumes, the number of logical volumes (hereinafter referred to as “sub-volumes”) created in the aggregate volume is set. In this way, it is possible to create a more logical subvolume in the aggregate volume.
In the column of the number of constituent disks, the number of HDDs 20 for constructing the aggregate volume is set.
In the RAID type column, the RAID type of the aggregate volume is set.
The number of files stored in the aggregate volume is set in the storage file number column.
Next, the contents of the file information management table will be described.
FIG. 5 is a diagram for explaining the file information management table.
The file information management table 142 includes columns for file name, file storage volume name, file storage location, file creation date, original file size, update count, last file update date, and current file size. Information arranged in the horizontal direction is associated with each other.
In the file name column, a name for identifying the file is set.
In the file storage volume name column, a name for identifying the volume name of the aggregate 20b storing the file is set.
In the file storage location column, information for identifying the location in the aggregate 20b where the file is stored is set.
In the file creation date column, the date when the file was first created is set. This date does not change even if the file is overwritten.
In the original file size column, the file capacity when the file is first created is set.
In the update number column, the number of times the file has been updated is set.
In the last file update date column, the date when the file was last updated is set.
In the current file size column, the current capacity of the file (capacity when the file was last updated) is set.
Next, after the OS stored in the flash ROM 103 is revised from the first version OS to the second version OS, the process of the aggregate control unit 14 when the control unit 10 is first activated is performed. explain.
FIG. 6 is a flowchart showing the processing of the aggregate control unit.
[Step S1] The aggregate control unit 14 acquires all the volume information management tables 141 managed by the volume management unit 14a. Thereafter, the process proceeds to step S2.
[Step S2] The aggregate control unit 14 refers to the aggregate volume size column and the used capacity column of each volume information management table 141 acquired in step S1, and determines the ratio of the used capacity to the aggregate volume size. Calculate. Then, a 32-bit aggregate volume having a usage rate of 75% or more is searched. 75% is an example of a value preset by the administrator, and 75% can be changed to an arbitrary value. When the search ends, the process proceeds to step S3.
[Step S3] As a result of the search in step S2, the aggregate control unit 14 determines whether there is a 32-bit aggregate volume having a usage rate of 75% or more. If a volume with a usage rate of 75% or more exists (Yes in step S3), the process proceeds to step S4. If there is no volume with a usage rate of 75% or more (No in step S3), the processing in FIG. 6 is terminated. That is, when there is no volume with a usage rate of 75% or more, none of the 32-bit aggregate volumes is transferred to the 64-bit aggregate volume described later.
[Step S4] The aggregate control unit 14 acquires the number of files stored in the volume information management table 141 of a 32-bit aggregate volume (hereinafter referred to as “corresponding volume”) having a usage rate of 75% or more. In addition, the aggregate control unit 14 refers to the file creation date and the last file update date in the file information management table 142 of each corresponding volume, and the number of files whose last file update date is within six months of the file creation date. That is, the number of files updated within six months from the present (hereinafter referred to as the number of updated files) is counted. The period within 6 months is an example of a period set in advance by the administrator, and the period within 6 months can be changed to an arbitrary period. When the acquisition of the number of stored files and the number of updated files is completed, the process proceeds to step S5.
[Step S5] The aggregate control unit 14 divides the number of update files acquired in step S4 by the number of stored files to calculate the ratio of the number of update files to the number of stored files. Then, the process proceeds to step S6.
[Step S6] The aggregate control unit 14 determines whether or not the number of stored files acquired in step S4 is close to the upper limit. For example, the aggregate control unit 14 can determine that the number of stored files is close to the upper limit when the upper limit is equal to or greater than a preset ratio or when the upper limit is equal to or greater than the preset number of files. The administrator can determine the upper limit ratio and the number of files. When it is determined that the number of stored files acquired in step S4 is close to the upper limit (Yes in step S6), the process proceeds to step S8. When it is determined that it is not near (No in step S6), the process proceeds to step S7.
[Step S7] The aggregate control unit 14 sorts the sub-volumes in the corresponding volume in descending order of the update rate and the used capacity calculated in step S2. By this sort processing, it is possible to improve the access efficiency to the files stored in the 64-bit aggregate volume subjected to the migration processing described later. Then, the process proceeds to step S11.
[Step S8] The aggregate control unit 14 adds up the current file sizes of the update files. Specifically, the aggregate control unit 14 refers to all the file information management tables 142. Then, the current file sizes of the file information management table 142 in which the volume name matches the corresponding volume name in the file storage volume name column are totaled. Thereafter, the process proceeds to operation S9.
[Step S9] The aggregate control unit 14 adds up the original file sizes of the update files. Specifically, the aggregate control unit 14 refers to all the file information management tables 142. Then, the original file sizes of the file information management table 142 in which the corresponding volume names are set are summed in the file storage volume name column. Then, the process proceeds to step S10. Note that the process of step S8 and the process of step S9 may be performed in parallel.
[Step S10] The aggregate control unit 14 determines whether or not the total of the current file sizes of the update files calculated in step S8 is 1.3 times or more than the total of the original file sizes of the update files calculated in step S9. Judging. Note that 1.3 times is an example of a value preset by the administrator, and 1.3 times can be changed to an arbitrary value larger than 1 time. When the total of the current file sizes of the update files calculated in step S9 is 1.3 times or more of the total of the original file sizes of the update files calculated in step S8 (Yes in step S10), the process proceeds to step S11. To do. When the process proceeds to step S11, in addition to the condition of step S10, the corresponding volume is a volume with a usage rate of 75% or more (see step S3), and the total number of files is close to the upper limit (step (See S6). For this reason, it can be determined that the increase in the file size of the corresponding volume is relatively high in the proportion of files updated within six months.
When the total of the current file sizes of the update files calculated in step S9 is less than 1.3 times the total of the original file sizes of the update files calculated in step S8 (No in step S10), the process proceeds to step S12. To do. When the process proceeds to step S12, in addition to the condition of step S10, the corresponding volume is a volume with a usage rate of 75% or more (see step S3), and the total number of files is close to the upper limit (step Therefore, it can be determined that the increase in the file size of the corresponding volume is relatively low in the file updated within 6 months.
[Step S11] The aggregate control unit 14 creates a 64-bit aggregate volume, and copies the files stored in the volume to the created 64-bit aggregate volume. Then, the aggregate control unit 14 switches the access path between the server apparatuses 41, 42, and 43 and the corresponding volume to the created 64-bit aggregate volume. Then, the process of FIG. 6 is complete | finished. The intention of executing the process of step S11 is to predict that the capacity of the file will continue to increase in the future even when the total number of files stored in the migration source 32-bit aggregate volume reaches the upper limit. There is a transition to the gate volume. By performing the processing in step S11, the 32-bit aggregate volume in which files that are approaching the upper limit of the total number of files but have a relatively high update frequency within 6 months is stored is transferred to the 64-bit aggregate volume. can do. Therefore, for example, it is possible to cope with an increase in file size.
[Step S12] The aggregate control unit 14 notifies the administrator of an alarm prompting the creation of a new aggregate volume. Examples of the notification method include a method of blinking an LED (not shown), a method of generating a warning sound, and the like. By notifying the alarm, it is possible to notify the administrator that the total number of files stored in the volume is close to the upper limit value (see step S6). Then, the process of FIG. 6 is complete | finished. This is the end of the description of FIG. A part of the procedure of the flowchart shown in FIG. 6 (for example, step S8 and step S9) may be interchanged. In FIG. 6, the processing of the aggregate control unit 14 when the control unit 10 is activated for the first time has been described. However, the aggregate control unit 14 continues to perform processing in FIG. The state of the bit aggregate volume may be checked periodically, and the process of FIG. 6 may be executed at an arbitrary timing.
Next, the migration process from the 32-bit aggregate volume to the 64-bit aggregate volume in step S11 will be described in more detail.
FIG. 7 is a diagram for explaining the migration process to a 64-bit aggregate volume.
The aggregate control unit 14 newly creates a 64-bit aggregate volume 34 using the unused HDD 20 in the aggregate 20b. Although not shown in FIG. 7, a sub-volume having a storage capacity equal to or larger than the 32-bit aggregate volume 33 serving as the migration source may be created in the existing 64-bit aggregate volume. Thereafter, the aggregate control unit 14 copies the metadata 33 a and all the files 33 b in the 32-bit aggregate volume 33 to the 64-bit aggregate volume 34. The metadata 33a includes the creation date and time of the file 33b stored in the migration source 32-bit aggregate volume 33, creator, file format, title, annotation, and the like. When the file copy is completed, the aggregate control unit 14 determines the access path P1 between the server apparatuses 41, 42, 43 and the 32-bit aggregate volume 33, and the server apparatuses 41, 42, 43 and the 64-bit aggregate volume 34. Switch to the access path P2.
By the way, when a 64-bit aggregate volume is newly created, the HDD 20 that constructs the 64-bit aggregate volume cannot be secured in the aggregate 20b, and all the data stored in the migration source 32-bit aggregate volume are stored. When there is no existing 64-bit aggregate volume that can store the file, the migration process to the 64-bit aggregate volume is performed by the following method.
FIG. 8 is a diagram for explaining the migration process to a 64-bit aggregate volume.
The aggregate control unit 14 refers to the column of aggregate volume size and the column of used capacity in the volume information management table 141 for managing each aggregate volume, and refers to the unused (file is not written) of each aggregate volume. ) Check the storage capacity. Then, the aggregate control unit 14 checks whether there is an existing aggregate volume having an unused storage capacity that is equal to or greater than the storage capacity of the migration source 32-bit aggregate volume 33. If there is an existing aggregate volume with an unused storage capacity that is greater than or equal to the storage capacity of the migration source 32-bit aggregate volume 33, the aggregate 33 is temporarily stored as a file 33b stored in the 32-bit aggregate volume. To the volume to be copied (hereinafter referred to as temporary copy destination volume). The temporary copy destination volume may be a 32-bit aggregate volume or a 64-bit aggregate volume. Further, the number of temporary copy destination volumes may be one, or two or more. FIG. 8 shows three temporary copy destination volumes 35, 36, and 37 as an example. The sum of the unused storage capacities of the three temporary copy destination volumes 35, 36, and 37 is equal to or greater than the storage capacity of the 32-bit aggregate volume 33.
The aggregate control unit 14 copies the metadata 33 a to the temporary copy destination volume 35. When the copying of the metadata 33a to the temporary copy destination volume 35 is completed, the aggregate control unit 14 distributes and copies the file 33b stored in the 32-bit aggregate volume 33 to the temporary copy destination volumes 36 and 37. . Thereafter, the 32-bit aggregate volume 33 is released, and a 64-bit aggregate volume 38 having a storage capacity larger than the storage capacity of the 32-bit aggregate volume 33 is created. Then, the metadata 33a stored in the temporary copy destination volume 35 and the file 33b stored in the temporary copy destination volumes 36 and 37 are copied to the created 64-bit aggregate volume 38. The aggregate control unit 14 updates the data stored in the metadata 33a for the migrated 64-bit aggregate volume 38 when copying the metadata 33a. For example, the access path between the server apparatuses 41, 42, 43 and the 32-bit aggregate volume 33 stored in the metadata 33a is updated to the access path between the server apparatuses 41, 42, 43 and the 64-bit aggregate volume 38. . Thereafter, the metadata 33a stored in the temporary copy destination volume 35 and the file 33b stored in the temporary copy destination volumes 36 and 37 are deleted.
Note that resources such as the CPU 101 and the cache memory 104 are used when performing volume migration processing. For this reason, when there are a plurality of 32-bit aggregate volumes that are migration sources, the aggregate control unit 14 adjusts these 32-bit aggregate volumes so that they are migrated step by step to 64-bit aggregate volumes one by one. Is preferred.
As described above, according to the storage apparatus 100, the aggregate control unit 14 performs the process of step S11 in FIG. 6, but the update frequency within 6 months is approaching the upper limit of the total number of files. A 32-bit aggregate volume that stores relatively high files can be migrated to a 64-bit aggregate volume. By shifting to a 64-bit aggregate volume, it is possible to cope with an increase in the capacity of an existing file. Therefore, it is possible to suppress the recreation of the aggregate volume and to suppress the load associated with the migration process. Further, as shown in step S12 of FIG. 6, the aggregate control unit 14 stores a 32-bit aggregate in which files that are approaching the upper limit of the total number of files but have a relatively low update frequency within six months are stored. There is a high possibility that the expanded storage capacity is not used even when the volume is expanded to a 64-bit aggregate volume and the storage capacity is expanded. For this reason, it does not shift to a 64-bit aggregate volume. Therefore, it is possible to save the storage area of the aggregate 20b as compared with the case of uniquely shifting to a 64-bit aggregate volume.
In addition, with the revision of the OS from the first version to the second version, the processing shown in FIG. 6 is executed for each 32-bit aggregate volume, and automatically changes to a 64-bit aggregate volume according to the usage status. The migration process is performed. For this reason, the migration process to the 64-bit aggregate volume can be easily performed. In addition, the migration process is performed earlier than when the user manually migrates. For this reason, the influence that the file access from the server apparatus 41, 42, 43 to the storage apparatus 100 is delayed can be reduced.
The control device, the control method, and the storage device of the present invention have been described based on the illustrated embodiment. However, the present invention is not limited to this, and the configuration of each unit is an arbitrary function having the same function. It can be replaced with the configuration of Moreover, other arbitrary structures and processes may be added to the present invention.
Further, the present invention may be a combination of any two or more configurations (features) of the above-described embodiments.
The above processing functions can be realized by a computer. In that case, a program describing the processing contents of the functions of the control device 2 and the control unit 10 is provided. By executing the program on a computer, the above processing functions are realized on the computer. The program describing the processing contents can be recorded on a computer-readable recording medium. Examples of the computer-readable recording medium include a magnetic storage device, an optical disk, a magneto-optical recording medium, and a semiconductor memory. Examples of the magnetic storage device include a hard disk drive, a flexible disk (FD), and a magnetic tape. Examples of the optical disc include DVD (Digital Versatile Disc), DVD-RAM, CD-ROM (Compact Disc Read Only Memory) / RW (ReWritable), and the like. Examples of the magneto-optical recording medium include an MO (Magneto-Optical disk).
Further, at least a part of the above processing functions can be realized by an electronic circuit such as a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), or a PLD (Programmable Logic Device).
Regarding the above first to second embodiments, the following additional notes are further disclosed.
(Supplementary Note 1) A counting unit that counts the number of files stored in the first volume having a data storage area in which an upper limit is set for the number of storable files;
A determination unit that determines an increasing tendency of a used capacity of a file stored in the first volume when the number of files counted by the counting unit is greater than a predetermined number;
A volume control unit that creates a second volume when the determination unit determines that the used capacity of the file has increased by a predetermined amount or more in a predetermined period;
(Supplementary Note 2) The second volume control unit expands the data storage area of the first volume when the determination unit determines that the used capacity of the file has not increased by a predetermined amount or more in a predetermined period. The control apparatus according to appendix 1, characterized in that the creation of a volume is avoided.
(Supplementary Note 3) The number of bits used for the management unit of the address indicating the data storage area by the second volume is larger than the number of bits used for the management unit of the address indicating the data storage area by the first volume. The control apparatus according to appendix 2, characterized by:
(Additional remark 4) The said volume control part operate | moves at the time of the update of the operation system of the said control apparatus, The control apparatus in any one of Additional remark 1 thru | or 3 characterized by the above-mentioned.
(Additional remark 5) The said 1st volume and the 2nd volume are comprised by a part of data storage area in the storage pool provided with a some disk, Any one of Additional remark 1 thru | or 4 characterized by the above-mentioned. The control device described.
(Supplementary note 6) The control apparatus according to supplementary note 1, further comprising a migration processing unit that copies a file stored in the first volume to the second volume created by the volume control unit. .
Count the number of files stored in the first volume having a data storage area with an upper limit set on the number of files that can be stored,
When the counted number of files is greater than a predetermined number, determine the increasing tendency of the used capacity of the file stored in the first volume,
Creating a second volume when it is determined that the used capacity of the file has increased by a predetermined amount or more in a predetermined period;
(Supplementary note 8) a first volume having a data storage area in which an upper limit is set for the number of files that can be stored;
A counting unit for counting the number of files stored in the first volume, and a used capacity of the file stored in the first volume when the number of files counted by the counting unit is greater than a predetermined number And a volume control unit that creates a second volume when the determination unit determines that the used capacity of the file has increased by a predetermined amount or more during a predetermined period. Equipment,
DESCRIPTION OF SYMBOLS 1,100 Storage apparatus 2 Control apparatus 2a Counting part 2b Judgment part 2c Volume control part 2d Migration process part 3 Storage pool 3a 1st volume 3b 2nd volume 3c 3rd volume 4, 41, 42, 43 Server apparatus DESCRIPTION OF SYMBOLS 10 Control part 11 Network control part 12 Protocol control part 13 Access control part 14 Aggregate control part 14a Volume management part 141 Volume information management table 14b File management part 142 File information management table 15 Disk control part 20 HDD
20a Device enclosure 20b Aggregate 21, 22 RAID group 31, 32 Aggregate volume 33 32-bit aggregate volume 34, 38 64-bit aggregate volume 35, 36, 37 Temporary copy destination volume 103 Flash ROM
A counting unit for counting the number of files stored in the first volume having a data storage area in which an upper limit is set for the number of storable files;
The volume control unit creates the second volume by expanding the data storage area of the first volume when the determination unit determines that the used capacity of the file has not increased by a predetermined amount or more in a predetermined period. The control apparatus according to claim 1, wherein:
The control device according to claim 1, wherein the volume control unit operates when an operation system of the control device is updated.
A first volume having a data storage area with an upper limit set on the number of files that can be stored;
JP2011145829A 2011-06-30 2011-06-30 Control device, control method, and storage device Expired - Fee Related JP5729173B2 (en)
JP2011145829A JP5729173B2 (en) 2011-06-30 2011-06-30 Control device, control method, and storage device
US13/447,476 US20130007363A1 (en) 2011-06-30 2012-04-16 Control device and control method
JP2013012146A true JP2013012146A (en) 2013-01-17
JP5729173B2 JP5729173B2 (en) 2015-06-03
ID=47391854
JP2011145829A Expired - Fee Related JP5729173B2 (en) 2011-06-30 2011-06-30 Control device, control method, and storage device
US (1) US20130007363A1 (en)
JP (1) JP5729173B2 (en)
JP2005011208A (en) * 2003-06-20 2005-01-13 Hitachi Ltd Volume size change device and change method
JP2005196496A (en) * 2004-01-07 2005-07-21 Yamaha Corp Electronic music apparatus and computer program applied to the apparatus
JP2007164674A (en) * 2005-12-16 2007-06-28 Toshiba Corp Logical disk capacity expansion method for disk array device
2011-06-30 JP JP2011145829A patent/JP5729173B2/en not_active Expired - Fee Related
2012-04-16 US US13/447,476 patent/US20130007363A1/en not_active Abandoned
US20130007363A1 (en) 2013-01-03
JP5729173B2 (en) 2015-06-03
US8856489B2 (en) 2014-10-07 Logical sector mapping in a flash storage array
Ref document number: 5729173