WO2014083620A1 - ストレージ装置及び階層制御方法 - Google Patents
ストレージ装置及び階層制御方法 Download PDFInfo
- Publication number
- WO2014083620A1 WO2014083620A1 PCT/JP2012/080651 JP2012080651W WO2014083620A1 WO 2014083620 A1 WO2014083620 A1 WO 2014083620A1 JP 2012080651 W JP2012080651 W JP 2012080651W WO 2014083620 A1 WO2014083620 A1 WO 2014083620A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- storage
- hierarchy
- area
- data
- access frequency
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Definitions
- the present invention relates to a storage apparatus and a tier control method, and is suitable for application to, for example, a storage apparatus equipped with a tier control function.
- the Thin Provisioning function presents a virtual volume (hereinafter referred to as a virtual volume) as a logical volume for reading and writing user data to the host device (host computer), and actually uses the virtual volume according to the usage status of the virtual volume.
- a virtual volume hereinafter referred to as a virtual volume
- This function dynamically allocates a physical storage area for storing user data to the virtual volume.
- the virtual volume is divided into a plurality of unit areas of a predetermined size (hereinafter referred to as virtual pages), and is installed in the storage device.
- the storage area provided by the storage device is managed as a collection of logical storage areas called one or a plurality of pools.
- the storage area in the pool is managed by dividing it into an area having the same size as the virtual page (hereinafter referred to as a logical page).
- the physical storage area provided by the storage device is also managed by dividing it into an area having the same size as the logical page (hereinafter referred to as a physical page).
- Each logical page is associated with a different physical page in a one-to-many, many-to-many or many-to-one manner.
- the storage device allocates a logical page from the pool to the virtual page, and Data is stored in a physical page associated with the logical page.
- Such a Thin Provisioning function has an advantage that the storage area in the storage apparatus can be used efficiently while presenting a volume having a capacity larger than the storage area in the storage apparatus to the host apparatus.
- one pool is composed of storage areas provided by multiple types of storage devices with different performances, and the access frequency is measured in units of virtual pages of a virtual volume.
- Data written to a virtual page with high access frequency is relocated to a storage area provided by a storage device with higher performance, and storage device with lower performance is provided for data written to a virtual page with low access frequency
- Patent Document 1 has also been proposed (referred to below as Patent Document 1).
- Patent Document 2 discloses that pages are arranged based on the weighted average of the number of I / Os in each of the first period and the second period.
- the measurement period Even for virtual pages where the access frequency for the entire measurement period has increased because the access frequency was high only for a part of the period within the access frequency measurement period (hereinafter referred to as the measurement period). There is a problem in that it is placed in a storage area with high performance even during a period in which the access frequency is not high.
- Patent Document 2 the number of I / Os is calculated based on past monitoring results, and there is a problem that the increase in the number of I / Os in the latest short span cannot be handled.
- the present invention has been made in view of the above points, and intends to propose a storage apparatus and a tier control method capable of preventing an increase in system operation workload while preventing a decrease in system performance.
- a virtual volume is provided to a higher-level device, and the virtual volume is divided into unit areas of a predetermined size and managed, and a write request for the virtual volume from the higher-level device is received.
- the storage area is configured from a plurality of storage hierarchies each having different performance, For each unit area in the virtual volume, an access frequency measuring unit that measures an access frequency for each of a plurality of measurement periods, and each unit area of the virtual volume based on a measurement result of the access frequency measuring unit A floor for determining the appropriate storage hierarchy as the location of the written data.
- a determination unit the storage tier to which the storage area storing data written in the unit area belongs, and the arrangement of the data determined by the tier determination unit
- a rearrangement unit that rearranges data written in the unit area in the storage area belonging to the storage hierarchy determined to be appropriate by the hierarchy determination unit for the unit area that is different from the appropriate storage hierarchy And so on.
- the virtual volume is provided to the host device, and the virtual volume is divided into unit areas of a predetermined size and managed, and the virtual volume is responded to a write request to the virtual volume from the host device.
- a tier control method in a storage device that allocates a storage area to the corresponding unit area in the storage area and stores data to be written in the storage area, wherein the storage area is composed of a plurality of storage tiers each having different performance
- the storage apparatus and tier control method of the present invention it is possible to determine the storage tier at which data is allocated from the viewpoint of a plurality of periods such as a long-term viewpoint, a medium-term viewpoint, and a short-term viewpoint. Therefore, it is possible to perform data arrangement in a more appropriate storage hierarchy without the system operator being conscious.
- the present invention it is possible to realize a storage apparatus and a tier control method capable of preventing an increase in the workload of system operation while preventing a decrease in system performance.
- FIG. 6 is a conceptual diagram for explaining a fixed storage area, a long-term storage area, and a temporary storage area of the first to third storage hierarchies according to the present embodiment.
- FIG. 5 is a conceptual diagram for explaining first to third time periods. It is a conceptual diagram with which it uses for description of each threshold value.
- reference numeral 1 denotes a computer system according to the present embodiment as a whole.
- the computer system 1 includes one or a plurality of business servers 3 and a storage device 4 connected via a network 2.
- the network 2 includes, for example, a SAN (Storage Area Network), a LAN (Local Area Network), the Internet, a public line, or a dedicated line.
- a SAN Storage Area Network
- LAN Local Area Network
- the Internet a public line
- a dedicated line For example, when the network 2 is a SAN, communication between the business server 3 and the storage device 4 via the network 2 is performed according to the fiber channel protocol.
- TCP / IP Transmission Control Protocol / Internet (Protocol) protocol.
- the business server 3 is a server device that reads and writes data from and to the storage device 4 and includes information processing resources such as a CPU 10, a memory 11, and an interface 12.
- the CPU 10 is a processor that controls the operation of the entire business server 3, and the memory 11 is mainly used to store various programs such as the application 13. When the CPU 10 executes the program stored in the memory 11, various processes such as reading and writing of data with respect to the storage apparatus 4 are executed.
- the interface 12 is composed of, for example, a NIC (Network Interface Card) or the like, and executes processing such as protocol conversion during communication with the storage apparatus 4.
- the storage device 4 includes a storage unit 21 that stores data, and a controller 22 that controls input / output of data to / from the storage unit 21.
- the storage unit 21 includes a plurality of types of storage devices 30 having different performance such as SSD (Solid State Attached SCSI) disks, SAS (Serial Attached SCSI) disks, and SATA (Serial AT Attachment) disks.
- SSD Solid State Attached SCSI
- SAS Serial Attached SCSI
- SATA Serial AT Attachment
- the controller 22 includes a CPU (Central Processing Unit) 31, a memory 32, a cache memory 33, a host interface 34, a disk interface 35, and a management device 36, which are connected to each other via an internal bus 37. ing.
- CPU Central Processing Unit
- the CPU 31 is a processor that controls the operation of the entire storage apparatus 4.
- the memory 32 is mainly used for storing various programs and various data. When the CPU 31 executes the program stored in the memory 32, the storage apparatus 4 as a whole executes various processes as described below.
- the cache memory 33 is used for temporarily storing and holding data read from and written to the storage device 30.
- the host interface 34 is an interface to the network 2 and is composed of, for example, a NIC.
- the CPU 31 sends and receives various commands such as read data or write data, and read commands or write commands to and from the business server 3 via the host interface 34.
- the disk interface 35 is an interface to the storage device 30.
- the disk interface 35 controls the corresponding storage device 30 according to the read command and write command from the business server 3 given via the host interface 34, thereby reading to the address position specified in the read command or write command. Read and write data and write data.
- the management device 36 includes, for example, a display device (not shown) made up of a liquid crystal panel and the like, and an input device (not shown) made up of a keyboard and a mouse, and is made up of, for example, a notebook personal computer.
- the management device 36 is used for maintaining and managing the storage device 4.
- FIG. 2 shows a logical configuration of the storage area in the storage apparatus 4.
- the controller 22 manages one or a plurality of storage devices 30 of the same type as one RAID (RedundantundArrays of IndependentsDisks) group RG. Then, one or a plurality of logical volumes VOL are created on the physical storage area provided by each storage device 30 constituting one RAID group RG.
- RAID RedundantundArrays of IndependentsDisks
- the controller 22 also has a storage area (logical volume VOL) provided by the RAID group RG composed of the storage device 30 with the highest performance (hereinafter referred to as SSD) among the storage devices 30 loaded in the storage apparatus 4.
- Volume VOL) is managed as the second storage tier ("Tier2"), and is composed of the storage devices 30 (hereinafter referred to as SATA disks) having the lowest performance among the storage devices 30 loaded in the storage apparatus 4.
- the storage area (logical volume VOL) provided by the RAID group RG is managed as the third storage hierarchy (“Tier3”).
- the controller 22 manages a plurality of types of logical volumes VOL belonging to the first to third storage tiers as a pool PL. That is, one or more logical volumes VOL belonging to the first storage hierarchy, one or more logical volumes VOL belonging to the second storage hierarchy, and one or more logical volumes VOL belonging to the third storage hierarchy.
- One pool PL is configured.
- one or a plurality of virtual volumes VVOL are created on the pool PL, and these virtual volumes VVOL are provided to the business server 3.
- the controller 22 and the virtual volume VVOL A logical page LP is allocated from the logical volume VOL belonging to one of the storage tiers (first to third storage tiers) in the associated pool PL to the virtual volume VVOL, and the write target data is assigned to the logical page LP. Is stored in the physical page PP associated with.
- the controller 22 when the controller 22 allocates the logical page LP to the virtual volume VVOL, the controller 22 allocates the logical page LP from the logical volume VOL belonging to the highest storage tier among the storage tiers to which the logical page LP can be allocated. assign.
- the hierarchical relationship of the storage tier is determined by the performance of the storage device 30 that provides the storage area that constitutes the storage tier, and the storage tier to which the logical volume VOL provided by the higher performance storage device 30 belongs is higher.
- Storage hierarchy Therefore, the second storage hierarchy is managed as a higher storage hierarchy than the third storage hierarchy, and the first storage hierarchy is managed as a higher storage hierarchy than the second storage hierarchy.
- the controller 22 accesses the virtual pages VP in all virtual volumes VVOL created in the storage apparatus 4 from the business server 3 to the virtual pages VP per second (hereinafter referred to as IOPS ( Always called Input Output per second). Then, for each virtual page VP in which data from the business server 3 is written, the controller 22 is appropriate as an arrangement destination of the data written in the virtual page VP based on the IOPS from the business server 3 for the virtual page VP. Appropriate tier determination processing is executed to determine each of the different storage tiers.
- IOPS always called Input Output per second
- the controller 22 thereafter stores the storage tier to which the logical page LP (exactly the physical page PP) in which the data written to the virtual page VP is stored among the virtual pages VP of the virtual volume VVOL, For the virtual page VP that is different from the appropriate storage hierarchy as the data placement destination determined by the above-described appropriate hierarchy determination process, the data written to the virtual page VP is determined to be appropriate by the appropriate hierarchy determination process. A rearrangement process for rearranging the physical page PP associated with the logical page LP belonging to the hierarchy is executed.
- the controller 22 of the storage apparatus 4 logically or physically stores the storage areas of the respective storage tiers (first to third storage tiers) in the pool, as shown in FIG.
- One area is managed as a fixed storage area (H1, M1, and L1 in FIG. 4), and one of the remaining two areas is a long-term storage area (H2, M2 in FIG. 4).
- L2 and the other is managed as a temporary storage area (H3, M3 and L3 in FIG. 4).
- the alphabets “H”, “M”, and “L” represent storage tiers (first, second, or third storage tiers, respectively), and “1”, “
- the numbers “2” and “3” represent the attributes of the corresponding areas in the corresponding storage hierarchy (fixed storage area, long-term storage area, or temporary storage area, respectively). The same applies to the following.
- the controller 22 measures the average value of IOPS for each of a plurality of measurement periods (hereinafter referred to as access frequency) for each virtual page VP of each virtual volume VVOL.
- access frequency a plurality of measurement periods
- such a plurality of measurement periods are defined as an X time period, a Y time period, and a Z time period, respectively, and among the X time, the Y time, and the Z time, the X time is the longest ( For example, 24 hours), Z time is long (for example, 2 hours), and Y time is shortest (for example, 1 hour).
- the controller 22 determines which storage hierarchy of the first to third storage hierarchies the data written in each preset virtual page VP should be stored in.
- a first threshold value (hereinafter referred to as a first access frequency threshold value) Ia and a second threshold value (hereinafter referred to as a second access frequency threshold value) Ib, which are reference values for determination, are stored in the memory 32 (FIG. 1) is stored in memory.
- the first access frequency threshold value Ia is a reference value for determining whether the data written in the virtual page VP should be stored in the logical page LP belonging to the first or second storage hierarchy.
- the second access frequency threshold Ib is a reference value for determining whether the data written in the virtual page VP should be stored in the logical page LP belonging to either the second or third storage hierarchy.
- first low-side access frequency threshold Iam that is lower in access frequency by a predetermined amount than the first access frequency threshold Ia and a first access frequency threshold Ia.
- a first high-side access frequency threshold value Iah having a high access frequency by a fixed amount is set, and a second access frequency that is lower than the second access frequency threshold value Ib by a predetermined amount before and after the second access frequency threshold value Ib.
- a second high-side access frequency threshold Ibm that is higher in access frequency by a predetermined amount than the second access frequency threshold Ib.
- the controller 22 determines an appropriate storage tier as an arrangement destination of data written in each virtual page VP in the virtual volume VVOL, for example, in the Y time cycle as the above-described appropriate tier determination processing.
- the controller 22 has the logical page LP belonging to the long-term storage area (H2, M2 or L2) of the first to third storage hierarchies among the virtual pages VP in which the data in the virtual volume VVOL is written.
- the access frequency (Ix) of the most recent X time is compared with the first and second access frequency threshold values Ia and Ib, and the access frequency (Iy) of the most recent Y time is Comparison is made with one high-side access frequency threshold Iah, the first low-side access frequency threshold Iam, the second high-side access frequency threshold Ibm, and / or the second low-side access frequency threshold Ibl.
- the access frequency (Ix) in the latest X time is equal to or higher than the first access frequency threshold Ia
- the access frequency (Iy) in the latest Y time is the first
- the controller 22 determines that the appropriate arrangement destination of the data written in the virtual page VP is the long-term storage area (H2) of the first storage hierarchy.
- the controller 22 determines that the appropriate arrangement destination of the data written in the virtual page VP is the temporary storage area (H3) of the second storage hierarchy.
- the access frequency (Ix) in the latest X time is less than the first access frequency threshold value Ia and greater than or equal to the second access frequency threshold value Ib, and the access frequency (Iy) in the latest Y time is the first high side.
- the access frequency threshold is higher than Iah, the access frequency for the corresponding virtual page VP is not so high from a long-term viewpoint, but is high from a short-term viewpoint, so the latest access frequency is temporarily high. It is estimated that Thus, at this time, the controller 22 determines that the appropriate arrangement destination of the data written in the corresponding virtual page VP is the temporary storage area (H3) of the first storage hierarchy.
- the access frequency (Ix) in the latest X time is less than the first access frequency threshold value Ia and greater than or equal to the second second access frequency threshold value Ib, and the access frequency (Iy) in the latest Y time is the first value. If the access frequency is lower than the high-side access frequency threshold Iah and greater than or equal to the second low-side access frequency threshold Ibl, the current access frequency is not so high from both the long-term and short-term viewpoints. It is estimated that the access frequency does not increase rapidly. Thus, at this time, the controller 22 determines that the appropriate arrangement destination of the data written in the corresponding virtual page VP is the long-term storage area (M2) of the second storage hierarchy.
- M2 long-term storage area
- the access frequency (Ix) at the latest X time is less than the first access frequency threshold value Ia and is equal to or higher than the second second access frequency threshold value Ib, and the access frequency (Iy) at the latest Y time. Is less than the second high-side access frequency threshold Iah, the access frequency is low from the short-term viewpoint, but the access frequency is not so low from the long-term viewpoint. It is estimated that there is a possibility of returning to a level that is neither high nor low. Thus, at this time, the controller 22 determines that the appropriate arrangement destination of the data written in the corresponding virtual page VP is the temporary storage area (L3) of the third storage hierarchy.
- the controller 22 determines that the appropriate arrangement destination of the data written in the corresponding virtual page VP is the temporary storage area (M3) of the second storage hierarchy.
- the controller 22 determines that the appropriate placement destination of the data written in the corresponding virtual page VP is the long-term storage area (L3) of the third storage hierarchy.
- the controller 22 is a logical page belonging to the temporary storage area (H3, M3 or L3) of the first to third storage hierarchies among the virtual pages VP in which the data in the virtual volume VVOL is written.
- the data is arranged in the long-term storage area (H2, M2 or L2) of the same storage hierarchy or the long-term storage area (H2, M2 or L2) of another storage hierarchy. Determine whether it should be.
- the controller 22 accesses the most recent Z time access frequency for the virtual page VP to which the logical page LP belonging to the temporary storage area (H3, M3, or L3) of the first to third storage hierarchies is assigned. (Iz) is compared with the first high-side access frequency threshold Iah, the first low-side access frequency threshold Iam, the second high-side access frequency threshold Ibm, or the second low-side access frequency threshold Ibl.
- the data written to the target virtual page VP is stored in the temporary storage area (H3) of the first storage hierarchy at the latest Z time.
- the access frequency (Iz) is equal to or higher than the first high-side access frequency threshold Iah, it is estimated that the access frequency for the corresponding virtual page VP will continue to be high from a medium-term viewpoint.
- the controller 22 determines that the data written in the virtual page VP should be arranged in the long-term storage area (H2) of the first storage hierarchy.
- data written to the target virtual page VP at that time is stored in the temporary storage area (H3) of the first storage hierarchy, and the access frequency (Iz) in the latest Z time is the first high level.
- the access frequency is less than the side access frequency threshold Iah, the access frequency to the corresponding virtual page VP is temporarily high in the short term, but is estimated to be likely to become low in the future from the medium-term viewpoint. .
- the controller 22 determines that the data written in the virtual page VP should be arranged in the long-term storage area (M2) of the second storage hierarchy.
- data written to the target virtual page VP is stored in the temporary storage area (M3) of the second storage hierarchy, and the access frequency (Iz) in the latest Z time is the first low.
- the side access frequency threshold Iam or more it is estimated that the access frequency for the corresponding virtual page VP may increase in the future from the short-term and medium-term viewpoints.
- the controller 22 determines that the data written in the virtual page VP should be arranged in the long-term storage area (H2) of the first storage hierarchy.
- data written to the target virtual page VP at that time is stored in the temporary storage area (M2) of the second storage hierarchy, and the access frequency (Iz) in the latest Z time is the first low.
- the access frequency is less than the second access frequency threshold Iam and greater than or equal to the second high access frequency threshold Ibm
- the access frequency for the corresponding virtual page VP is estimated to maintain a state that is neither high nor low in the future from a medium-term viewpoint. Is done.
- the controller 22 determines that the data written in the virtual page VP should be arranged in the long-term storage area (M2) of the second storage hierarchy.
- the data written in the target virtual page VP is stored in the temporary storage area (M3) of the second storage hierarchy, and the access frequency (Iz) in the latest Z time is the second high level.
- the access frequency for the corresponding virtual page VP is estimated to be lower in the future from a medium-term viewpoint.
- the controller 22 determines that the data written in the virtual page VP should be arranged in the long-term storage area (L2) of the third storage hierarchy.
- the data written in the target virtual page VP is stored in the temporary storage area (L3) of the third storage hierarchy, and the access frequency (Iz) in the latest Z time is the second low level.
- the access frequency for the corresponding virtual page VP is estimated to increase from the medium-term viewpoint.
- the controller 22 determines that the data written in the virtual page VP should be arranged in the long-term storage area (M2) of the second storage hierarchy.
- data written to the target virtual page VP is stored in the temporary storage area (L3) of the third storage hierarchy, and the access frequency (Iz) in the latest Z time is the second low level.
- the access frequency for the corresponding virtual page VP is estimated to be lower in the future from a medium-term viewpoint.
- the controller 22 determines that the data written in the virtual page VP should be arranged in the long-term storage area (L2) of the third storage hierarchy.
- the controller 22 performs the long-term storage area (H2, M2, L2) and the temporary storage area (H3) of each storage hierarchy among all the virtual pages VP into which the data in each virtual volume VVOL is thus written.
- M3, L3 when the appropriate placement destination of the data written to the virtual page VP is determined for each virtual page VP, the data written to each virtual page VP is determined according to the determination result.
- the logical pages LP belonging to the corresponding area (long-term storage area or temporary storage area) in the corresponding storage hierarchy are rearranged as necessary (relocation processing). .
- the user can specify that the data is fixedly arranged in a desired storage hierarchy in units of data, and for the data specified in this way, the specified storage hierarchy is fixed. It is stored in the storage area (H1, M1, L1). Then, the virtual page VP in which such data is written is not subjected to the proper hierarchy determination process and the rearrangement process. Accordingly, such data is not rearranged, and the state where it is always arranged in the designated storage hierarchy is maintained.
- the memory 32 (FIG. 1) of the storage apparatus 4 includes the page management table 40 shown in FIG. 9 and the hierarchical management table shown in FIG. 41 are stored.
- the page management table 40 is a table used for managing the logical page LP in each pool PL created in the storage apparatus 4, and as shown in FIG. 9, the pool number column 40A, the capacity column 40B, page number column 40C, virtual volume number column 40D, allocation column 40E, storage tier / area attribute column 40F, first access frequency column 40G, second access frequency column 40H, third access frequency column 40I, tier It consists of a fixed column 40J and a corresponding physical page column 40K.
- the identifier assigned to each pool PL created in the storage device 4 is stored in the pool number column 40A, and the capacity of the corresponding pool PL is stored in the capacity column 40B.
- the page number column 40C stores an identifier (page number) assigned to each logical page LP in the corresponding pool PL. Note that the page number assigned to each logical page LP in each pool PL is unique to that logical page LP in the storage apparatus 4, and does not overlap with the page number of any logical page LP in any pool PL. Is granted as follows.
- the assignment column 40E information indicating whether or not any virtual page VP in any virtual volume VVOL has already been assigned to the corresponding logical page LP (in the case of assignment, “done”, If the logical page VP is assigned to any virtual page VP, the virtual volume number column 40D stores the virtual page VP having the virtual page VP. The volume number (LUN: Logical : Unit Number) of the volume VVOL is stored. When the corresponding logical page LP is not assigned to any virtual page VP, information representing this (“not yet”) is stored in the virtual volume number column 40D. Further, the storage hierarchy / area attribute column 40F stores the storage hierarchy to which the corresponding logical page LP belongs and the identifiers (H1 to H3, M1 to M3, L1 to L3) representing the storage hierarchy.
- the first access frequency column 40G stores the access frequency (Ix) within the latest X hours for the virtual page VP to which the corresponding logical page LP is allocated
- the second access frequency column 40H stores the relevant access frequency (Ix).
- the third access frequency column 40I stores the access frequency (Iz) within the latest Z time for the virtual page VP.
- the access frequencies (Ix to Iz) stored in the first to third access frequency columns 40G to 40I are based on the IOPS for each virtual page VP measured by the measurement function of the storage device 4. Updated at intervals.
- the corresponding physical page column 40K stores the page number of the physical page PP associated with the corresponding logical page LP.
- the tier management table 41 is a table used for managing the configurations of the first to third storage tiers in one pool, and is created for each pool PL.
- the hierarchy management table 41 includes a storage hierarchy / area attribute column 41A, a RAID group column 41B, a RAID level column 41C, a storage device type column 41D, and an emulation type column 41E.
- an identifier fixed storage area, long-term storage area, or temporary storage area
- the RAID group column 41B contains identifiers of all RAID groups RG (FIG. 2) that provide areas of the corresponding area attributes in the corresponding storage hierarchy. Is stored.
- the RAID level column 41C includes a level column 41CA and a configuration column 41CB.
- the level column 41CA stores the RAID level of the corresponding RAID group RG
- the configuration column 41CB stores the RAID configuration of the corresponding RAID group RG.
- RAID levels include “RAID1” to “RAID6” and “RAID1 + 0”.
- the numerical value on the left side of “D” represents the number of storage devices 30 that store data
- the numerical value on the left side of “P” represents the number of storage devices 30 that store parity. Accordingly, for example, in “3D + 1P”, the corresponding RAID group RG is composed of four storage devices 30, of which three storage devices 30 are used for storing data, and one storage device 30 stores parity. It is used to do.
- the storage device type column 41D includes a type column 41DA and a capacity column 41DB.
- the type column 41DA stores the type (“SSD”, “SAS”, or “SATA”) of the storage device 30 that configures the corresponding RAID group RG
- the capacity column 41DB stores each type of the storage device 30.
- the storage capacity is stored.
- the emulation type column 41E stores the emulation type of the corresponding RAID group RG.
- the fixed storage area (“H1”) of the first storage hierarchy of the corresponding pool PL has two “1-1” or “1-2” identifiers, respectively.
- the RAID group RG is configured by a storage area (logical volume VOL) provided by the RAID group RG.
- the RAID group RG “1-1” has a RAID level “RAID5” composed of “200 GB” “SSD”, It is indicated that the RAID group RG has a RAID configuration “3D + 1” and the emulation type is “openV”.
- FIG. 11 is executed by the CPU 31 of the storage apparatus 4 when a pool creation instruction (hereinafter referred to as pool creation instruction) is input via the management apparatus 36 (FIG. 1). The processing procedure of the pool creation process is shown.
- pool creation instruction hereinafter referred to as pool creation instruction
- the CPU 31 obtains a negative result in this determination, the CPU 31 cancels the creation of the designated pool PL and displays a warning that the designated pool PL cannot be created on the display device of the management device 36 (SP7). Thereafter, the pool creation process is terminated.
- step SP2 determines whether the corresponding logical volume VOL is not provided to the business server 3 as it is. If the CPU 31 obtains a negative result in this determination, it proceeds to step SP7, processes this step SP7 in the same manner as described above, and ends this pool creation process.
- the CPU 31 obtains a positive result in the determination at step SP2, the total capacity of each logical volume VOL in the pool PL to be created at that time (that is, the capacity of the pool PL) is a predetermined limit value. It is determined whether it is less than (SP3). If the CPU 31 obtains a negative result in this determination, it proceeds to step SP7, processes this step SP7 in the same manner as described above, and ends this pool creation process.
- the CPU 31 If the CPU 31 obtains a positive result in the determination at step SP3, the CPU 31 confirms the type of the storage device 30 that provides each logical volume VOL designated as the logical volume VOL constituting the pool PL to be created at this time. (SP4).
- the CPU 31 determines in advance the number of types of storage devices 30 that provide each logical volume VOL designated as the logical volume VOL constituting the pool PL to be created based on the confirmation result of step SP4. It is determined whether or not it is less than the specified limit value (SP5).
- each pool PL it is not always necessary to configure each pool PL with the first to third storage hierarchies, and the storage hierarchy may be composed of only the first and second storage hierarchies. . Therefore, if the number of types of storage devices 30 that provide each logical volume VOL designated as the logical volume VOL constituting the pool PL to be newly created is three, a negative result is obtained in this step SP5. Will be obtained. Thus, if the CPU 31 obtains a negative result in this determination, it proceeds to step SP7, and processes this step SP7 in the same manner as described above, and then ends this pool creation process.
- the CPU 31 obtains a positive result in the determination at step SP5, it creates the designated pool PL. Specifically, the CPU 31 holds a table (not shown) (hereinafter referred to as a pool management table) for managing the logical volume VOL constituting each pool PL in the storage apparatus 4 in the memory 32 (FIG. 1). In this pool management table, a pool PL to be newly created and a logical volume VOL constituting the pool PL are registered (SP6).
- a pool management table for managing the logical volume VOL constituting each pool PL in the storage apparatus 4 in the memory 32
- FIG. 12 shows storage when a virtual volume VVOL creation instruction (hereinafter referred to as a virtual volume creation instruction) is input via the management device 36 (FIG. 1). The processing procedure of the virtual volume creation process executed by the CPU 31 of the device 4 is shown.
- a virtual volume creation instruction hereinafter referred to as a virtual volume creation instruction
- the CPU 31 is operated by the management device 36 to determine the number of virtual volumes VVOL to be created, the capacity of each virtual volume VVOL, the volume number of each virtual volume VVOL, the identification number of the pool PL to which the created virtual volume VVOL is to be associated, etc.
- creation virtual volume information information (hereinafter collectively referred to as creation virtual volume information) is input and a creation instruction for the virtual volume VVOL (virtual volume creation instruction) is input, this virtual volume creation processing is started. Based on the created virtual volume information input at this time, it is determined whether or not the capacity of each virtual volume VVOL to be created is less than a predetermined limit value (SP10).
- SP10 predetermined limit value
- the CP 31U obtains a negative result in this determination, it cancels the creation of the virtual volume VVOL and displays the reason for the stop on the display device of the management device 36 (SP14), and then ends this virtual volume creation processing. .
- the CPU 31 obtains a positive result in the determination at step SP10, the total value of the number of virtual volumes VVOL to be created at this time and the number of virtual volumes VVOL currently existing in the storage apparatus 4 is calculated in advance. It is determined whether or not the value is less than a predetermined limit value (SP11).
- step SP14 If the CPU 31 obtains a negative result in this determination, it proceeds to step SP14, and after processing this step SP14 in the same manner as described above, this virtual volume creation process ends.
- step SP14 If the CPU 31 obtains a negative result in this determination, it proceeds to step SP14, and after processing this step SP14 in the same manner as described above, this virtual volume creation process ends.
- the CPU 31 when it obtains a positive result in the determination at step SP12, it creates all designated virtual volumes VVOL based on the created virtual volume information (SP13). Specifically, the CPU 31 holds a management table (not shown) for managing the virtual volume VVOL (hereinafter referred to as a virtual volume management table) in the memory 32 (FIG. 1), and this virtual volume management table. The virtual volume VVOL is created by registering the information necessary for. The CPU 31 thereafter ends this virtual volume creation process.
- FIG. 13 shows specific processing contents of the appropriate tier determination processing executed by the CPU 31 in the Y time cycle in relation to the tiered storage control function according to the present embodiment described above.
- the CPU 31 determines an appropriate storage hierarchy as an arrangement destination of data written to each virtual page VP of the virtual volume VVOL.
- the CPU 31 first refers to the page management table 40 (FIG. 9), selects one virtual page VP that has not been processed in step SP31 and subsequent steps (SP30), and selects it. Based on the page management table 40, it is determined whether or not the storage tier of the placement destination is specified for the data written to the virtual page (hereinafter referred to as the selected virtual page) VP (SP31).
- the CPU 31 If the CPU 31 obtains an affirmative result in this determination, it writes the data written in the selected virtual page VP into the fixed storage area (H1, M1, or L1 in the designated first, second, or third storage hierarchy). If necessary, the corresponding storage device 30 is controlled so as to be rearranged (S32), and then the process proceeds to step SP47.
- the storage hierarchy and area attribute to which the logical page LP currently assigned to the selected virtual page VP belongs is referred to by referring to the page management table 40. It is determined whether it is any of “H2”, “M2” and “L2” (SP33).
- a management table (not shown) in which which logical page LP is allocated to each virtual page VP of each virtual volume VVOL is registered (hereinafter this is a logical page allocation destination management table).
- the page management table 40 it is determined whether or not the access frequency (Ix) within the latest X time for the selected virtual page VP is equal to or greater than the first access frequency threshold Ia (SP34). ). If the CPU 31 obtains an affirmative result in this determination, the access frequency (Iy) within the latest Y time for the selected virtual page VP is the first with reference to the logical page assignment destination management table and the page management table 40 described above. It is determined whether or not the low-side access frequency threshold Iam is greater than or equal to (SP35).
- step SP36 determines that the storage hierarchy and area attribute appropriate for the location of the data written to the selected virtual page VP is “H2” (SP36), and then proceeds to step SP60. move on. If the CPU 31 obtains a negative result in the determination at step SP35, it determines that the storage hierarchy and area attribute appropriate for the location of the data written to the selected virtual page VP is “M3” (SP37), and then step SP60. Proceed to
- the CPU 31 obtains a negative result in the determination at step SP34, it refers to the logical page assignment destination management table and the page management table 40 described above, and accesses frequency (Ix) within the latest X time for the selected virtual page VP. Is greater than or equal to the second access frequency threshold Ib (SP38).
- the access frequency (Iy) within the latest Y time for the selected virtual page VP is the first with reference to the logical page assignment destination management table and the page management table 40 described above. It is determined whether or not the access frequency threshold is higher than Iah (SP39). If the CPU 31 obtains a positive result in this determination, it determines that the appropriate storage hierarchy is “H3” as the placement destination of the data written to the selected virtual page VP (SP40), and then proceeds to step SP60.
- the access frequency (Iy) within the latest Y time for the selected virtual page VP is referred to with reference to the logical page assignment destination management table and the page management table 40 described above. It is determined whether or not it is equal to or higher than the second low-side access frequency threshold Ibl (SP41). If the CPU 31 obtains a positive result in this determination, it determines that the storage hierarchy and area attribute appropriate for the location of the data written to the selected virtual page VP is “M2” (SP42), and then proceeds to step SP60. . If the CPU 31 obtains a negative result in the determination at step SP41, it determines that the storage hierarchy and area attribute appropriate for the location of the data written to the selected virtual page VP is “L3” (SP43), and thereafter Proceed to SP60.
- Ibl second low-side access frequency threshold
- the CPU 31 obtains a negative result in the determination at step SP38, it refers to the logical page assignment destination management table and the page management table 40 described above, and accesses frequency (Iy) within the latest Y time for the selected virtual page VP. Is greater than or equal to the second high-side access frequency threshold Ibm (SP44). If the CPU 31 obtains an affirmative result in this determination, it determines that the storage hierarchy and area attribute appropriate for the location of the data stored in the selected virtual page VP is “M3” (SP45), and then proceeds to step SP60. . If the CPU 31 obtains a negative result in the determination at step SP44, it determines that the storage hierarchy and area attribute appropriate for the location of the data written to the selected virtual page VP is “L2” (SP46), and thereafter Proceed to SP60.
- Iy frequency within the latest Y time for the selected virtual page VP. Is greater than or equal to the second high-side access frequency threshold Ibm
- the CPU 31 obtains a negative result in the determination at step SP33, it refers to the logical page assignment destination management table and the page management table 40 described above, and the logical page LP currently assigned to the selected virtual page VP. It is determined whether or not the storage hierarchy and area attribute to which “H” belongs is “H3” (SP47).
- the access frequency (Iz) within the latest Z time with respect to the selected virtual page VP is the first with reference to the logical page assignment destination management table and the page management table 40 described above. It is determined whether or not it is equal to or higher than the higher access frequency threshold value Iah (SP48). If the CPU 31 obtains a positive result in this determination, it determines that the storage hierarchy and area attribute appropriate for the location of the data written to the selected virtual page VP is “H2” (SP49), and then proceeds to step SP60. . If the CPU 31 obtains a negative result in the determination at step SP48, it determines that the storage hierarchy and area attribute appropriate for the location of the data written to the selected virtual page VP is “M2” (SP50), and thereafter Proceed to SP60.
- the logical page LP currently assigned to the selected virtual page VP belongs with reference to the logical page assignment destination management table and the page management table 40 described above. It is determined whether or not the storage hierarchy and area attribute is “M3” (SP51).
- the access frequency (Iz) within the latest Z time with respect to the selected virtual page VP is the first with reference to the logical page assignment destination management table and the page management table 40 described above. It is determined whether or not the low-side access frequency threshold Iam is equal to or greater than (SP52). If the CPU 31 obtains an affirmative result in this determination, it determines that the storage hierarchy and area attribute appropriate for the location of the data written to the selected virtual page VP is “H2” (SP53), and then proceeds to step SP60. .
- the CPU 31 obtains a negative result in the determination at step SP52, it refers to the logical page assignment destination management table and the page management table 40 described above and accesses the selected virtual page VP within the latest Z time ( It is determined whether or not (Iz) is greater than or equal to the second high-side access frequency threshold Ibm (SP54). If the CPU 31 obtains a positive result in this determination, it determines that the storage hierarchy and area attribute appropriate for the location of the data written in the selected virtual page VP is “M2” (SP55), and then proceeds to step SP60. . If the CPU 31 obtains a negative result in the determination at step SP54, it determines that the storage hierarchy and area attribute appropriate for the location of the data written to the selected virtual page VP is “L2” (SP56), and thereafter Proceed to SP60.
- Iz second high-side access frequency threshold
- the CPU 31 when the CPU 31 obtains a negative result in the determination at step SP51, the CPU 31 refers to the logical page assignment destination management table and the page management table 40 described above, and accesses the selected virtual page VP within the latest Z time (Iz). Is greater than or equal to the second low-side access frequency threshold Ibl (SP57). If the CPU 31 obtains a positive result in this determination, it determines that the storage hierarchy and area attribute appropriate for the location of the data written to the selected virtual page VP is “M2” (SP58), and then proceeds to step SP60. . If the CPU 31 obtains a negative result in the determination at step SP57, it determines that the storage hierarchy and area attribute appropriate for the location of the data written to the selected virtual page VP is “L2” (SP59), and thereafter Proceed to SP60.
- Iz the latest Z time
- Ibl the second low-side access frequency threshold
- step SP60 the CPU 31 determines whether or not the processing after step SP31 has been completed for all virtual pages VP in which data in each virtual volume VVOL in the storage apparatus 4 has been written (SP60). .
- step SP30 When the CPU 31 obtains a negative result in this determination, it returns to step SP30, and thereafter repeats the processing of step SP30 to step SP60 while sequentially switching the virtual page VP selected in step SP30 to another virtual page VP.
- step SP60 When the CPU 31 eventually obtains an affirmative result in step SP60 by completing the processing after step SP31 for all virtual pages in which data in each virtual volume VVOL in the storage apparatus 4 has been written, this appropriate tier determination processing Exit.
- FIG. 14 shows a processing procedure for rearrangement processing executed by the CPU 31 following the above-described appropriate hierarchy determination processing.
- the CPU 31 is a virtual page in which the storage hierarchy and area attribute to which the currently assigned logical page LP belongs and the appropriate storage hierarchy and area attribute determined by the appropriate hierarchy determination process are different.
- the data written in the virtual page VP is rearranged in the physical page PP associated with the logical page LP belonging to the proper storage hierarchy and area attribute.
- the CPU 31 determines whether there is a virtual page VP that needs to be rearranged (SP70). This determination is made for the virtual page VP in which data in each virtual volume VVOL is written, the storage tier and area attribute to which the currently allocated logical page LP belongs, and the proper tier determined by the above-described proper tier determination process. It is a virtual page VP having a different storage hierarchy and area attribute, and steps SP71 and after are performed by determining whether or not an unprocessed virtual page VP exists.
- the CPU 31 If the CPU 31 obtains an affirmative result in this determination, it selects one virtual page VP that needs to be rearranged, and the above-mentioned appropriateness for the selected virtual page VP (hereinafter referred to as the corresponding virtual page VP). It is determined whether or not there is a free capacity in the appropriate storage hierarchy determined in the hierarchy determination process (SP71). If the CPU 31 obtains a negative result in this determination, the CPU 31 stops the rearrangement process for the virtual page VP and warns that there is no free space in the storage area in which the data written to the virtual page VP is to be stored. Is displayed on the management device 36 (FIG. 1) (SP76). The CPU 31 thereafter returns to step SP70.
- step SP71 when the CPU 31 obtains a positive result in the determination at step SP71, the unused logical page belonging to the appropriate area attribute in the appropriate storage hierarchy determined by the above-described appropriate hierarchy determination process for the virtual page VP. It is determined whether or not LP exists (SP72). If the CPU 31 obtains a negative result in this determination, it proceeds to step SP76, processes this step SP76 in the same manner as described above, and then returns to step SP70.
- the CPU 31 obtains a positive result in the determination at step SP72, the CPU 31 newly allocates the unused logical page LP selected at step SP70 to the corresponding virtual page VP and associates the physical page with the logical page LP.
- the corresponding storage device 30 is controlled to move the data written in the corresponding virtual page VP to the PP (SP73).
- the CPU 31 updates the logical page assignment destination management table described above in accordance with the processing of step SP73, and relocation destination newly assigned to the virtual page VP in step SP73 in the page management table 40 (FIG. 9).
- the contents of the entry (row) corresponding to the logical page LP are updated to the contents after the rearrangement (SP74).
- the CPU 31 updates the contents of the entry (row) corresponding to the rearrangement source logical page LP in the page management table 40 (FIG. 9) to the contents after rearrangement (SP75), and then returns to step SP70. Then, the CPU 31 thereafter repeats the processing of step SP70 to step SP76 while sequentially switching the corresponding virtual page VP selected in step SP70 to another virtual page VP.
- step SP70 the CPU 31 performs steps SP70 to SP70 for all virtual pages VP in which the storage hierarchy and area attributes to which the currently assigned logical page LP belongs and the appropriate storage hierarchy and area attributes determined by the appropriate hierarchy determination process are different. If a negative result is obtained in step SP70 by completing the execution of the process in step SP76, the rearrangement process is terminated.
- the storage apparatus 4 uses each virtual volume VVOL based on the access frequencies (Ix, Iy, Iz) of a plurality of measurement periods. Since the appropriate storage tier is determined as the location of the data written to each page VP, the data written to the virtual page VP of the virtual volume VVOL is more appropriate from both long-term and short-term perspectives. Can be arranged in a logical page LP belonging to a different storage hierarchy.
- the present invention is not limited to this, and the two-layer configuration or four or more layers is used.
- the present invention can also be applied to this case.
- the first and second access frequency threshold values Ia and Ib are used as threshold values used when determining an appropriate storage tier as an arrangement destination of data written to the virtual page of the virtual volume.
- the first and second high-side access frequency thresholds Iah and Ibm and the first and second low-side access frequency thresholds Iam and Ibl are prepared and described.
- the invention is not limited to this, and without using the first and second high-side access frequency thresholds Iah and Ibm and the first and second low-side access frequency thresholds Iam and Ibl to facilitate management, Only the first and second access frequency thresholds Ia and Ib are used to determine an appropriate storage tier as an arrangement destination of data written to the virtual page VP of the virtual volume VVOL. It may be.
- an appropriate location of the data stored in the temporary storage area (H3, M3, L3) of the lower storage hierarchy is set to the long-term storage hierarchy of the upper storage hierarchy between two consecutive storage hierarchies.
- the threshold for determining the storage area (H2, M2, L2) and the appropriate location of the data stored in the temporary storage area of the upper storage hierarchy are determined as the long-term storage area of the lower storage hierarchy.
- the threshold value for the same becomes the same value (first and second access frequency threshold values Ia and Ib).
- the first and second high access frequency thresholds Iah and Ibm By providing the two low-side access frequency thresholds Iam and Ibl, the appropriate arrangement destination of the data stored in the temporary storage area of the lower storage hierarchy between the two consecutive storage hierarchies is set.
- the threshold value for determining the long-term storage area is different from the threshold value for determining the appropriate location of the data stored in the temporary storage area of the upper storage hierarchy as the long-term storage area of the lower storage hierarchy. It is possible to obtain an effect of reducing the load on the controller 22 of the storage apparatus 4.
- the present invention is not limited to this, for example, in units of virtual volumes VVOL or virtual pages
- the storage apparatus 4 may be constructed so that it can be set in units.
- a determination process (the process described above with reference to FIG. 13B) for determining an appropriate storage hierarchy as an arrangement destination of each data arranged in the temporary storage area (H3, M3, L3) of each storage hierarchy. ) Is executed at the same timing as the determination process (the process described above with reference to FIG. 13A) for determining an appropriate storage hierarchy as the data placement destination of the data placed in the long-term storage area (H2, M2, L2) of each storage hierarchy.
- the present invention is not limited to this.
- the determination process described above with reference to FIG. 13A or the determination process described above with reference to FIG. 13A and the determination process described with reference to FIG. 13B), and the determination process with reference to FIG.
- the determination process may be executed at a different timing.
- the determination process described above with reference to FIG. 13A (or FIG. 13A and FIG. 13B) and the rearrangement process described above with reference to FIG. 14 are executed at the Y time period or other timing. You may make it perform the determination process mentioned above about FIG. 13B, and the rearrangement process mentioned above about FIG. 14 by another period (for example, Z time period) or timing.
- an access frequency measurement unit that measures the access frequency for each of a plurality of measurement periods, and the virtual frequency based on the measurement result of the access frequency measurement unit.
- a tier determination unit that determines an appropriate storage tier as an arrangement destination of data written to each virtual page VP of the volume VVOL, and data written to the virtual page VP among the virtual pages VP of the virtual volume VVOL
- the data written in the virtual page VP is determined as a tier
- a rearrangement unit that rearranges in a storage area belonging to a storage hierarchy determined to be appropriate by the unit
- the present invention can be applied to a storage apparatus equipped with a hierarchical control function.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
図1において、1は全体として本実施の形態の計算機システムを示す。この計算機システム1は、ネットワーク2を介して接続された1又は複数の業務サーバ3と、ストレージ装置4とから構成される。
次に、本実施の形態のストレージ装置4に搭載された本実施の形態による記憶階層制御機能について説明する。
次に、かかる本実施の形態の階層記憶制御機能に関連するストレージ装置4のコントローラ22内のCPU31(図2)の具体的な処理内容について説明する。
図11は、管理装置36(図1)を介してプールの作成指示(以下、これをプール作成指示と呼ぶ)が入力されたときにストレージ装置4のCPU31により実行されるプール作成処理の処理手順を示す。
一方、図12は、管理装置36(図1)を介して仮想ボリュームVVOLの作成指示(以下、これを仮想ボリューム作成指示と呼ぶ)が入力されたときにストレージ装置4のCPU31により実行される仮想ボリューム作成処理の処理手順を示す。
図13は、上述した本実施の形態による階層記憶制御機能に関連してCPU31によりY時間周期で実行される適正階層判定処理の具体的な処理内容を示す。CPU31は、この図13に示す処理手順に従って、仮想ボリュームVVOLの各仮想ページVPに書き込まれたデータの配置先として適正な記憶階層をそれぞれ判定する。
図14は、上述の適正階層判定処理に続いてCPU31により実行される再配置処理の処理手順を示す。CPU31は、この図14に示す処理手順に従って、現在、割り当てられている論理ページLPが属する記憶階層及び領域属性と、適正階層判定処理により判定された適正な記憶階層及び領域属性とが異なる仮想ページVPについて、当該仮想ページVPに書き込まれたデータを適正な記憶階層及び領域属性に属する論理ページLPと対応付けられた物理ページPPに再配置する。
以上のように本実施の形態による計算機システム1では、ストレージ装置4が複数の測定周期のアクセス頻度(Ix,Iy,Iz)に基づいて仮想ボリュームVVOLの各仮想ページVPにそれぞれ書き込まれたデータの配置先として適正な記憶階層を判定しているため、仮想ボリュームVVOLの仮想ページVPに書き込まれたデータを長期的及び短期的の双方の観点から見てより適正な記憶階層に属する論理ページLPに配置することができる。
なお上述の実施の形態においては、本発明を図1のように構成されたストレージ装置4に適用するようにした場合について述べたが、本発明はこれに限らず、階層制御機能が搭載されたこの他種々の構成を有するストレージ装置に広く適用することができる。
Claims (12)
- 仮想ボリュームを上位装置に提供すると共に、当該仮想ボリューム内を所定サイズの単位領域に区分して管理し、前記上位装置からの前記仮想ボリュームに対する書込み要求に応じて前記仮想ボリューム内の対応する前記単位領域に記憶領域を割り当て、当該記憶領域に書込み対象のデータを格納するストレージ装置において、
前記記憶領域は、それぞれ性能が異なる複数の記憶階層から構成され、
前記仮想ボリューム内の前記単位領域ごとに、複数の測定周期ごとのアクセス頻度をそれぞれ測定するアクセス頻度測定部と、
前記アクセス頻度測定部の測定結果に基づいて、前記仮想ボリュームの各前記単位領域にそれぞれ書き込まれたデータの配置先として適正な前記記憶階層を判定する階層判定部と、
前記仮想ボリュームの各前記単位領域のうち、当該単位領域に書き込まれたデータが格納されている前記記憶領域が属する前記記憶階層と、前記階層判定部により判定された当該データの配置先として適正な前記記憶階層とが異なる前記単位領域について、当該単位領域に書き込まれたデータを、前記階層判定部により適正と判定された前記記憶階層に属する前記記憶領域に再配置する再配置部と
を備えることを特徴とするストレージ装置。 - 前記測定周期ごとにそれぞれ1又は複数の閾値が設定され、
前記階層判定部は、
前記仮想ボリューム内のデータが書き込まれた各前記単位領域について、前記測定周期ごとの前記アクセス頻度をそれぞれ対応する前記閾値と比較し、前記測定周期ごとの比較結果に基づいて、当該単位領域に書き込まれたデータの配置先として適正な前記記憶階層を判定する
ことを特徴とする請求項1に記載のストレージ装置。 - 各前記記憶階層にそれぞれ属する前記記憶領域が、少なくともデータを長期保存するための前記記憶領域からなる長期保存用領域と、データを一時的に保存するための前記記憶領域からなる一時保存用領域とに区分され、
前記階層判定部は、
前記測定周期ごとの比較結果に基づいて、前記単位領域に書き込まれたデータの配置先として適正な前記記憶階層に加えて、当該記憶階層内の前記長期保存用領域及び前記一時保存用領域のうちの当該データの配置先として適正な領域を判定する
ことを特徴とする請求項2に記載のストレージ装置。 - 前記階層判定部は、
いずれかの前記記憶階層内の前記一時保存用領域にデータが格納された各前記単位領域について、特定の前記測定周期の前記アクセス頻度と、当該測定周期について設定された前記閾値との比較結果に基づいて、当該単位領域に書き込まれたデータの適正な配置先がいずれの前記記憶階層の前記長期保存用領域であるかを判定する
ことを特徴とする請求項3に記載のストレージ装置。 - より性能が高い前記記憶階層がより上位の前記記憶階層として管理され、
連続する2つの前記記憶階層間で、下位の前記記憶階層の前記一時保存用領域に格納されたデータの適正な配置先を上位の前記記憶階層の前記長期保存用領域と判定するための前記閾値と、上位の前記記憶階層の前記一時保存用領域に格納されたデータの適正な配置先を下位の前記記憶階層の前記長期保存用領域と判定するための前記閾値とが異なる値に設定された
ことを特徴とする請求項4に記載のストレージ装置。 - 前記階層判定部は、
格納すべき前記記憶階層が予め指定されたデータについては、配置先として適正な前記記憶階層の判定を行わない
ことを特徴とする請求項1に記載のストレージ装置。 - 仮想ボリュームを上位装置に提供すると共に、当該仮想ボリューム内を所定サイズの単位領域に区分して管理し、前記上位装置からの前記仮想ボリュームに対する書込み要求に応じて前記仮想ボリューム内の対応する前記単位領域に記憶領域を割り当て、当該記憶領域に書込み対象のデータを格納するストレージ装置における階層制御方法であって、
前記記憶領域は、それぞれ性能が異なる複数の記憶階層から構成され、
前記仮想ボリューム内の前記単位領域ごとに、複数の測定周期ごとのアクセス頻度をそれぞれ測定する第1のステップと、
測定結果に基づいて、前記仮想ボリュームの各前記単位領域にそれぞれ書き込まれたデータの配置先として適正な前記記憶階層を判定する第2のステップと、
前記仮想ボリュームの各前記単位領域のうち、当該単位領域に書き込まれたデータが格納されている前記記憶領域が属する前記記憶階層と、前記階層判定部により判定された当該データの配置先として適正な前記記憶階層とが異なる前記単位領域について、当該単位領域に書き込まれたデータを、適正と判定した前記記憶階層に属する前記記憶領域に再配置する第3のステップと
を備えることを特徴とする階層制御方法。 - 前記測定周期ごとにそれぞれ1又は複数の閾値が設定され、
前記第2のステップでは、
前記仮想ボリューム内のデータが書き込まれた各前記単位領域について、前記測定周期ごとの前記アクセス頻度をそれぞれ対応する前記閾値と比較し、前記測定周期ごとの比較結果に基づいて、当該単位領域に書き込まれたデータの配置先として適正な前記記憶階層を判定する
ことを特徴とする請求項7に記載の階層制御方法。 - 各前記記憶階層にそれぞれ属する前記記憶領域が、少なくともデータを長期保存するための前記記憶領域からなる長期保存用領域と、データを一時的に保存するための前記記憶領域からなる一時保存用領域とに区分され、
前記第2のステップでは、
前記測定周期ごとの比較結果に基づいて、前記単位領域に書き込まれたデータの配置先として適正な前記記憶階層に加えて、当該記憶階層内の前記長期保存用領域及び前記一時保存用領域のうちの当該データの配置先として適正な領域を判定する
ことを特徴とする請求項8に記載の階層制御方法。 - 前記第2のステップでは、
いずれかの前記記憶階層内の前記一時保存用領域にデータが格納された各前記単位領域について、特定の前記測定周期の前記アクセス頻度と、当該測定周期について設定された前記閾値との比較結果に基づいて、当該単位領域に書き込まれたデータの適正な配置先がいずれの前記記憶階層の前記長期保存用領域であるかを判定する
ことを特徴とする請求項9に記載の階層制御方法。 - より性能が高い前記記憶階層がより上位の前記記憶階層として管理され、
連続する2つの前記記憶階層間で、下位の前記記憶階層の前記一時保存用領域に格納されたデータの適正な配置先を上位の前記記憶階層の前記長期保存用領域と判定するための前記閾値と、上位の前記記憶階層の前記一時保存用領域に格納されたデータの適正な配置先を下位の前記記憶階層の前記長期保存用領域と判定するための前記閾値とが異なる値に設定された
ことを特徴とする請求項10に記載の階層制御方法。 - 前記第2のステップでは、
格納すべき前記記憶階層が予め指定されたデータについては、配置先として適正な前記記憶階層の判定を行わない
ことを特徴とする請求項7に記載の階層制御方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2012/080651 WO2014083620A1 (ja) | 2012-11-27 | 2012-11-27 | ストレージ装置及び階層制御方法 |
US13/978,819 US9448740B2 (en) | 2012-11-27 | 2012-11-27 | Storage apparatus and hierarchy control method |
JP2014549672A JP5941996B2 (ja) | 2012-11-27 | 2012-11-27 | ストレージ装置及び階層制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2012/080651 WO2014083620A1 (ja) | 2012-11-27 | 2012-11-27 | ストレージ装置及び階層制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014083620A1 true WO2014083620A1 (ja) | 2014-06-05 |
Family
ID=50827296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2012/080651 WO2014083620A1 (ja) | 2012-11-27 | 2012-11-27 | ストレージ装置及び階層制御方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9448740B2 (ja) |
JP (1) | JP5941996B2 (ja) |
WO (1) | WO2014083620A1 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9524300B2 (en) | 2013-03-14 | 2016-12-20 | Microsoft Technology Licensing, Llc | Heterogenic volume generation and use system |
US9141626B2 (en) * | 2013-03-14 | 2015-09-22 | Microsoft Technology Licensing, Llc | Volume having tiers of different storage traits |
US9262313B2 (en) | 2013-03-14 | 2016-02-16 | Microsoft Technology Licensing, Llc | Provisioning in heterogenic volume of multiple tiers |
US9116904B2 (en) | 2013-03-14 | 2015-08-25 | Microsoft Technology Licensing, Llc | File system operation on multi-tiered volume |
KR101593012B1 (ko) * | 2013-12-24 | 2016-02-18 | 주식회사 케이티 | 계층형 스토리지 제어 장치 및 방법 |
JP6260384B2 (ja) * | 2014-03-19 | 2018-01-17 | 富士通株式会社 | ストレージ制御装置,制御プログラム,及び制御方法 |
WO2016016989A1 (ja) * | 2014-07-31 | 2016-02-04 | 株式会社 東芝 | 階層化ストレージシステム、ストレージコントローラ及びプログラム |
US9785377B2 (en) * | 2014-11-05 | 2017-10-10 | Seagate Technology Llc | Tracking hot areas of disk drive |
US10416887B1 (en) | 2016-05-18 | 2019-09-17 | Marvell International Ltd. | Hybrid storage device and system |
US10056147B1 (en) | 2016-06-02 | 2018-08-21 | Marvell International Ltd. | Two-level storage device with faster front end |
CN110858124B (zh) * | 2018-08-24 | 2021-06-01 | 华为技术有限公司 | 数据迁移方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006085300A (ja) * | 2004-09-14 | 2006-03-30 | Kansai Tlo Kk | データ処理方法、データ処理装置及びコンピュータプログラム |
WO2012020471A1 (ja) * | 2010-08-10 | 2012-02-16 | 株式会社日立製作所 | 計算機システムの管理方法、及び管理システム |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5623693A (en) * | 1994-02-17 | 1997-04-22 | International Business Machines Corporation | System for performing action by sorting actions into immediate and deferred queues, processing immediate queue while still sorting, and appending deferred queue to immediate after sorting |
US6662242B2 (en) * | 2001-04-17 | 2003-12-09 | International Business Machines Corporation | Method for PCI IO using PCI device memory mapping in a logically partitioned system |
JP3966459B2 (ja) * | 2002-05-23 | 2007-08-29 | 株式会社日立製作所 | ストレージ機器管理方法、システム、およびプログラム |
US7441096B2 (en) * | 2004-07-07 | 2008-10-21 | Hitachi, Ltd. | Hierarchical storage management system |
US7600082B2 (en) * | 2004-11-30 | 2009-10-06 | Hewlett-Packard Development Company, L.P. | Virtualization logic |
US7620741B2 (en) * | 2005-04-22 | 2009-11-17 | Sun Microsystems, Inc. | Proxy-based device sharing |
US7831793B2 (en) * | 2006-03-01 | 2010-11-09 | Quantum Corporation | Data storage system including unique block pool manager and applications in tiered storage |
US7830882B2 (en) * | 2006-11-17 | 2010-11-09 | Intel Corporation | Switch scaling for virtualized network interface controllers |
US7567188B1 (en) * | 2008-04-10 | 2009-07-28 | International Business Machines Corporation | Policy based tiered data deduplication strategy |
JP5782214B2 (ja) * | 2008-05-30 | 2015-09-24 | 富士通株式会社 | 情報検索プログラム、情報検索装置および情報検索方法 |
US8402214B2 (en) * | 2009-09-16 | 2013-03-19 | Hitachi, Ltd. | Dynamic page reallocation storage system management |
US8452941B2 (en) * | 2009-09-23 | 2013-05-28 | Dell Products L.P. | System and method for distributing random and sequential data in a tiered storage system |
WO2011045831A1 (en) * | 2009-10-13 | 2011-04-21 | Hitachi,Ltd. | Storage apparatus and its control method |
CN102483684B (zh) | 2009-12-24 | 2015-05-20 | 株式会社日立制作所 | 提供虚拟卷的存储系统 |
US8452932B2 (en) * | 2010-01-06 | 2013-05-28 | Storsimple, Inc. | System and method for efficiently creating off-site data volume back-ups |
US8566540B2 (en) * | 2010-02-02 | 2013-10-22 | International Business Machines Corporation | Data migration methodology for use with arrays of powered-down storage devices |
WO2012081089A1 (ja) * | 2010-12-15 | 2012-06-21 | 株式会社日立製作所 | 計算機システムの管理装置及び管理方法 |
JP5543668B2 (ja) | 2011-03-25 | 2014-07-09 | 株式会社日立製作所 | ストレージシステム及び記憶領域の割当方法 |
US8977799B2 (en) * | 2011-09-26 | 2015-03-10 | Lsi Corporation | Storage caching/tiering acceleration through staggered asymmetric caching |
CN110333825A (zh) * | 2013-04-26 | 2019-10-15 | 株式会社日立制作所 | 存储系统 |
-
2012
- 2012-11-27 US US13/978,819 patent/US9448740B2/en active Active
- 2012-11-27 WO PCT/JP2012/080651 patent/WO2014083620A1/ja active Application Filing
- 2012-11-27 JP JP2014549672A patent/JP5941996B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006085300A (ja) * | 2004-09-14 | 2006-03-30 | Kansai Tlo Kk | データ処理方法、データ処理装置及びコンピュータプログラム |
WO2012020471A1 (ja) * | 2010-08-10 | 2012-02-16 | 株式会社日立製作所 | 計算機システムの管理方法、及び管理システム |
US20120042124A1 (en) * | 2010-08-10 | 2012-02-16 | Hitachi, Ltd. | Management method and management system for computer system |
Also Published As
Publication number | Publication date |
---|---|
US9448740B2 (en) | 2016-09-20 |
US20140297909A1 (en) | 2014-10-02 |
JP5941996B2 (ja) | 2016-06-29 |
JPWO2014083620A1 (ja) | 2017-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5941996B2 (ja) | ストレージ装置及び階層制御方法 | |
US8984248B2 (en) | Data migration system and data migration method | |
US6839827B1 (en) | Method, system, program, and data structures for mapping logical blocks to physical blocks | |
US8407417B2 (en) | Storage system providing virtual volumes | |
US9037829B2 (en) | Storage system providing virtual volumes | |
JP5608016B2 (ja) | オブジェクト単位階層の管理方法及び装置 | |
CN104636080B (zh) | 存储系统及用于其的方法 | |
JP5079841B2 (ja) | ThinProvisioningに従う仮想的な論理ボリュームに対するデータのライトを制御する方法及びストレージ装置 | |
US9703717B2 (en) | Computer system and control method | |
JP5323989B2 (ja) | ストレージ装置及びデータ管理方法 | |
US9274723B2 (en) | Storage apparatus and its control method | |
US20060085594A1 (en) | Metadata for a grid based data storage system | |
WO2020037986A1 (zh) | 数据迁移方法及装置 | |
US20060085626A1 (en) | Updating system configuration information | |
JP2012505439A (ja) | ストレージ装置及びその制御方法 | |
JP2006120120A (ja) | 複数のデータ・フォーマットを割り振るための一般記憶コンテナ | |
WO2011101909A1 (ja) | 仮想ボリュームの制御方法及びストレージ装置 | |
US20120260035A1 (en) | Zero rebuild extensions for raid | |
US8954658B1 (en) | Method of LUN management in a solid state disk array | |
US20160041764A1 (en) | System and method for transforming an in-use raid array including migrating data using reserved extents | |
US8572347B2 (en) | Storage apparatus and method of controlling storage apparatus | |
JP2009181265A (ja) | ストレージ装置及びライトデータ書込み方法 | |
JP5597266B2 (ja) | ストレージシステム | |
US9983816B1 (en) | Managing disk drive power savings in data storage systems | |
JP5355764B2 (ja) | ThinProvisioningに従う仮想的な論理ボリュームに対するデータのライトを制御する方法及びストレージ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 13978819 Country of ref document: US |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 12889066 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2014549672 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 12889066 Country of ref document: EP Kind code of ref document: A1 |