JP2018169728A - Storage device, storage management method and storage management program - Google Patents

Storage device, storage management method and storage management program Download PDF

Info

Publication number
JP2018169728A
JP2018169728A JP2017065546A JP2017065546A JP2018169728A JP 2018169728 A JP2018169728 A JP 2018169728A JP 2017065546 A JP2017065546 A JP 2017065546A JP 2017065546 A JP2017065546 A JP 2017065546A JP 2018169728 A JP2018169728 A JP 2018169728A
Authority
JP
Japan
Prior art keywords
block
volume
tier
limit value
performance requirement
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017065546A
Other languages
Japanese (ja)
Other versions
JP6555290B2 (en
Inventor
達雄 岡本
Tatsuo Okamoto
達雄 岡本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2017065546A priority Critical patent/JP6555290B2/en
Publication of JP2018169728A publication Critical patent/JP2018169728A/en
Application granted granted Critical
Publication of JP6555290B2 publication Critical patent/JP6555290B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To dispose a block of a desired volume in the highest tier while optimizing data arrangement.SOLUTION: A storage device relating to this invention comprises: a storage unit in which performance requirement management information for managing setting of a lower limit value of a performance requirement in each of a plurality of volumes and block management information for, with respect to each data block of the plurality of volumes, managing a tier in a tier pool and a volume which it belongs to, in association with each other are stored; and a block rearrangement unit which refers to the performance requirement management information and the block management information to replace a first data block associated with the highest tier and a volume to which the lower limit value of the performance requirement is not set and a second data block associated with the lowest tier and a volume to which the lower limit value of the performance requirement is set, with each other.SELECTED DRAWING: Figure 1

Description

本発明は、ストレージ装置、ストレージ管理方法及びストレージ管理プログラムに関し、特に、データ最適配置を行うストレージ装置、ストレージ管理方法及びストレージ管理プログラムに関する。   The present invention relates to a storage apparatus, a storage management method, and a storage management program, and more particularly to a storage apparatus, a storage management method, and a storage management program that perform optimal data placement.

特許文献1には、ストレージに保存したデータへのアクセス頻度を分析して、アクセス頻度が高ければより高速かつ高価なデバイス(例えばSSD(Solid State Drive))を利用したプール上にデータブロックを配置し、アクセス頻度が低ければ、高速ではないかつ安価なデバイス(例えばニアラインSAS(NL−SAS(NearLine Serial Attached SCSI)))を利用したプール上にデータブロックを配置することで、効果的にストレージを利用する技術(データ最適配置技術)が開示されている。   In Patent Document 1, the frequency of access to data stored in a storage is analyzed, and if the access frequency is high, data blocks are arranged on a pool using a faster and more expensive device (for example, SSD (Solid State Drive)). However, if the access frequency is low, it is possible to effectively store storage by arranging data blocks on a pool using a low-speed and inexpensive device (for example, Nearline Serial Attached SCSI (NL-SAS)). A technique to be used (data optimum arrangement technique) is disclosed.

また、特許文献2には、性能の異なる複数の記憶装置を用いてプールを構成し、当該プールから複数の仮想論理ボリュームを提供するストレージサブシステムを管理するストレージ管理システムに関する技術が開示されている。特許文献2にかかるシステムは、複数の仮想論理ボリュームのそれぞれについての目標応答性能の情報に基づいて、複数の仮想論理ボリュームのそれぞれが目標応答性能を満足するように複数のグループに分類される。そして、当該仮想論理ボリュームの複数のグループのそれぞれに対して新たなプールが割り当てられる。さらに、当該プールと各グループに含まれる仮想論理ボリュームとの対応関係を示す情報が生成され、その情報が出力される。   Patent Document 2 discloses a technology related to a storage management system that configures a pool using a plurality of storage devices having different performances and manages a storage subsystem that provides a plurality of virtual logical volumes from the pool. . The system according to Patent Document 2 is classified into a plurality of groups so that each of the plurality of virtual logical volumes satisfies the target response performance based on the information on the target response performance for each of the plurality of virtual logical volumes. Then, a new pool is assigned to each of the plurality of groups of the virtual logical volume. Further, information indicating the correspondence relationship between the pool and the virtual logical volume included in each group is generated, and the information is output.

特許文献3には、アクセス頻度に基づいて仮想ページの入れ替えを行う技術が開示されている。   Patent Document 3 discloses a technique for replacing virtual pages based on access frequency.

国際公開第2011/117925号公報International Publication No. 2011-117925 国際公開第2012/164718号公報International Publication No. 2012/164718 特表2013−536478号公報Special table 2013-536478 gazette

しかしながら、上述した技術における階層間のブロック再配置は、ボリューム単位のアクセス頻度の分析結果に応じて実施される。そのため、所望のボリュームのブロックを最上位階層に配置できるとは限らないという問題点があった。   However, block rearrangement between hierarchies in the above-described technique is performed according to the analysis result of the access frequency in volume units. Therefore, there is a problem that a block of a desired volume cannot always be arranged in the highest hierarchy.

本発明は、このような問題点を解決するためになされたものであり、データ最適配置を行いつつ、所望のボリュームのブロックを最上位階層に配置するためのストレージ装置、ストレージ管理方法及びストレージ管理プログラムを提供することを目的とする。   The present invention has been made to solve such problems. A storage apparatus, a storage management method, and storage management for arranging a block of a desired volume in the highest hierarchy while performing optimal data arrangement The purpose is to provide a program.

本発明の第1の態様にかかるストレージ装置は、
複数のボリュームのそれぞれにおける性能要件の下限値の設定を管理する性能要件管理情報と、
前記複数のボリュームの各データブロックについて、階層プールにおける階層と、所属するボリュームとを関連付けて管理するブロック管理情報と、
を記憶する記憶部と、
前記性能要件管理情報及び前記ブロック管理情報を参照し、最上位階層及び前記性能要件の下限値が未設定のボリュームに関連付けられた第1のデータブロックと、下位階層及び前記性能要件の下限値が設定されたボリュームに関連付けられた第2のデータブロックとの入れ替えを行うブロック再配置部と、
を備える。
The storage device according to the first aspect of the present invention includes:
Performance requirement management information for managing the setting of the lower limit value of the performance requirement for each of the multiple volumes,
For each data block of the plurality of volumes, block management information for managing the tier in the tier pool in association with the volume to which it belongs,
A storage unit for storing
Referring to the performance requirement management information and the block management information, the first data block associated with the highest tier and the volume for which the lower limit value of the performance requirement is not set, the lower tier and the lower limit value of the performance requirement are A block rearrangement unit that replaces the second data block associated with the set volume;
Is provided.

本発明の第2の態様にかかるストレージ管理方法は、
複数のボリュームのそれぞれにおける性能要件の下限値の設定を管理する性能要件管理情報、及び、前記複数のボリュームの各データブロックについて、階層プールにおける階層と、所属するボリュームとを関連付けて管理するブロック管理情報を参照し、
最上位階層及び前記性能要件の下限値が未設定のボリュームに関連付けられた第1のデータブロックと、下位階層及び前記性能要件の下限値が設定されたボリュームに関連付けられた第2のデータブロックとの入れ替えを行う。
The storage management method according to the second aspect of the present invention includes:
Performance requirement management information for managing the setting of the lower limit value of the performance requirement in each of the plurality of volumes, and block management for managing the data blocks of the plurality of volumes in association with the tiers in the tier pool and the volumes to which the volumes belong. See information,
A first data block associated with a volume in which a lower limit value of the highest tier and the performance requirement is not set, and a second data block associated with a volume in which the lower tier and the lower limit value of the performance requirement are set; Replace.

本発明の第3の態様にかかるストレージ管理プログラムは、
複数のボリュームのそれぞれにおける性能要件の下限値の設定を管理する性能要件管理情報、及び、前記複数のボリュームの各データブロックについて、階層プールにおける階層と、所属するボリュームとを関連付けて管理するブロック管理情報を参照する処理と
最上位階層及び前記性能要件の下限値が未設定のボリュームに関連付けられた第1のデータブロックと、下位階層及び前記性能要件の下限値が設定されたボリュームに関連付けられた第2のデータブロックとの入れ替えを行う処理と、
をコンピュータに実行させる。
A storage management program according to the third aspect of the present invention includes:
Performance requirement management information for managing the setting of the lower limit value of the performance requirement in each of the plurality of volumes, and block management for managing the data blocks of the plurality of volumes in association with the tiers in the tier pool and the volumes to which the volumes belong. Information reference processing, first data block associated with the highest tier and volume for which the lower limit value of the performance requirement is not set, and lower volume and associated with the volume for which the lower limit value of the performance requirement is set A process of replacing the second data block;
Is executed on the computer.

本発明により、データ最適配置を行いつつ、所望のボリュームのブロックを最上位階層に配置するためのストレージ装置、ストレージ管理方法及びストレージ管理プログラムを提供することができる。   According to the present invention, it is possible to provide a storage apparatus, a storage management method, and a storage management program for arranging a block of a desired volume in the highest hierarchy while performing optimal data arrangement.

本発明の実施の形態1にかかるストレージ装置の構成を示すブロック図である。1 is a block diagram showing a configuration of a storage device according to a first exemplary embodiment of the present invention. 本発明の実施の形態1にかかるストレージ管理方法の流れを示すフローチャートである。It is a flowchart which shows the flow of the storage management method concerning Embodiment 1 of this invention. 本発明の実施の形態2にかかるストレージ管理システムの全体構成を示すブロック図である。It is a block diagram which shows the whole structure of the storage management system concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかる階層プール管理テーブルの例を示す図である。It is a figure which shows the example of the hierarchy pool management table concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるプール管理テーブルの例を示す図である。It is a figure which shows the example of the pool management table concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるボリューム管理テーブルの例を示す図である。It is a figure which shows the example of the volume management table concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるQoS管理テーブルの例を示す図である。It is a figure which shows the example of the QoS management table concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるデータ最適配置管理テーブルの例を示す図である。It is a figure which shows the example of the data optimal arrangement | positioning management table concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるアクセス頻度管理テーブルの例を示す図である。It is a figure which shows the example of the access frequency management table concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるボリューム設定画面の例を示す図である。It is a figure which shows the example of the volume setting screen concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるQoS設定処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the QoS setting process concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるブロック入替処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the block replacement | exchange process concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるブロック入替処理の実行結果の例を示す図である。It is a figure which shows the example of the execution result of the block replacement process concerning Embodiment 2 of this invention. 本発明の実施の形態2にかかるアクセス頻度に基づくブロック入替処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the block replacement process based on the access frequency concerning Embodiment 2 of this invention. 関連技術にかかるIOPSの設定ポリシーの例を示す図である。It is a figure which shows the example of the setting policy of IOPS concerning a related technique.

以下では、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。各図面において、同一要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略する。   Hereinafter, specific embodiments to which the present invention is applied will be described in detail with reference to the drawings. In the drawings, the same elements are denoted by the same reference numerals, and redundant description will be omitted as necessary for the sake of clarity.

<実施の形態1>
図1は、本発明の実施の形態1にかかるストレージ装置1000の構成を示すブロック図である。ストレージ装置1000は、記憶部1100と、ブロック再配置部1200と、を備える。記憶部1100は、性能要件管理情報1110と、ブロック管理情報1120とを記憶する。性能要件管理情報1110は、複数のボリューム(論理ディスク)のそれぞれにおける性能要件の上限値や下限値などの設定を管理する情報である。性能要件とは例えば、ストレージ装置1000のIOPS(Input/Output Per Second)やレスポンスタイム等である。ブロック管理情報1120は、複数のボリュームの各データブロックについて、階層プールにおける階層と、所属するボリュームとを関連付けて管理する情報である。
<Embodiment 1>
FIG. 1 is a block diagram showing the configuration of the storage system 1000 according to the first embodiment of the present invention. The storage apparatus 1000 includes a storage unit 1100 and a block rearrangement unit 1200. The storage unit 1100 stores performance requirement management information 1110 and block management information 1120. The performance requirement management information 1110 is information for managing settings such as the upper limit value and the lower limit value of the performance requirement for each of a plurality of volumes (logical disks). The performance requirement is, for example, IOPS (Input / Output Per Second) or response time of the storage apparatus 1000. The block management information 1120 is information for managing the data blocks of a plurality of volumes in association with the tiers in the tier pool and the volumes to which they belong.

ブロック再配置部1200は、性能要件管理情報1110及びブロック管理情報1120を参照し、最上位階層及び性能要件の下限値が未設定のボリュームに関連付けられた第1のデータブロックと、下位階層及び性能要件の下限値が設定されたボリュームに関連付けられた第2のデータブロックとの入れ替えを行う。   The block rearrangement unit 1200 refers to the performance requirement management information 1110 and the block management information 1120, and refers to the first data block associated with the highest tier and the volume for which the lower limit value of the performance requirement is not set, the lower tier, and the performance. Replacement with the second data block associated with the volume for which the lower limit value of the requirement is set is performed.

図2は、本発明の実施の形態1にかかるストレージ管理方法の流れを示すフローチャートである。まず、ストレージ装置1000のブロック再配置部1200は、性能要件管理情報1110及びブロック管理情報1120を参照する(S101)。次に、ブロック再配置部1200は、最上位階層及び性能要件の下限値が未設定のボリュームに関連付けられた第1のデータブロックと、下位階層及び性能要件の下限値が設定されたボリュームに関連付けられた第2のデータブロックとの入れ替えを行う(S102)。   FIG. 2 is a flowchart showing the flow of the storage management method according to the first embodiment of the present invention. First, the block relocation unit 1200 of the storage apparatus 1000 refers to the performance requirement management information 1110 and the block management information 1120 (S101). Next, the block relocation unit 1200 associates the first data block associated with the volume for which the uppermost tier and the lower limit value of the performance requirement are not set and the volume for which the lower tier and the lower limit value of the performance requirement are set. The second data block is exchanged (S102).

このように、本実施の形態により、データ最適配置を行いつつ、所望のボリュームのブロックを最上位階層に配置することができる。   As described above, according to this embodiment, it is possible to arrange a block of a desired volume in the highest hierarchy while performing optimal data arrangement.

<実施の形態2>
本実施の形態2は、上述した実施の形態1の一実施例である。
ここで、本実施の形態で解決しようとする課題について説明する。まず、上述したように、ストレージのデータ最適配置(ストレージ階層化、又は、筐体内ILM(Information Lifecycle Management)とも呼ぶ。)機能を利用したボリュームのブロック再配置をQoS(Quality of Service)(I/O流量制御とも呼ぶ。)機能と組み合わせて利用する場合、高性能が要求されるボリュームを、高性能なプールに配置して処理遅延を防ぐ技術が知られている(例えば、特許文献1)。
<Embodiment 2>
The second embodiment is an example of the first embodiment described above.
Here, the problem to be solved by the present embodiment will be described. First, as described above, volume block rearrangement using a storage data optimum arrangement (also called storage tiering or in-casing ILM (Information Lifecycle Management)) function is performed by QoS (Quality of Service) (I / (This is also referred to as O flow rate control.) When used in combination with a function, a technique for preventing a processing delay by placing a volume requiring high performance in a high performance pool is known (for example, Patent Document 1).

また、QoS機能をIOPSを元に利用する場合、例えば図15のような設定ポリシーの定義を与えることができる。図15は、関連技術にかかるIOPSの設定ポリシーの例を示す図である。つまり、IOPS上限値を設定する場合は、自業務が利用するボリュームが、突発的な高負荷などにより他業務(のボリューム)に影響を与えないようにするポリシーである。一方、IOPS下限値を設定する場合は、自業務(のボリューム)が他業務(のボリューム)の突発的な高負荷等の影響を受けることなく、安定的にIOPS下限値以上の性能を確保できるようにするポリシーである。IOPS上限値と下限値の両方を設定する場合は、その中間のポリシーである。   When the QoS function is used based on IOPS, for example, a setting policy definition as shown in FIG. 15 can be given. FIG. 15 is a diagram illustrating an example of an IOPS setting policy according to related technology. In other words, when setting the IOPS upper limit value, the policy is to prevent the volume used by the own business from affecting other business (volume) due to an unexpectedly high load. On the other hand, when the IOPS lower limit value is set, the performance of the own business (volume) can be stably ensured to exceed the IOPS lower limit value without being affected by the sudden high load of other business (volume). It is a policy to make it. When both the IOPS upper limit value and lower limit value are set, it is an intermediate policy.

ここで、IOPS下限値を設定したボリュームの方が、IOPS上限値を設定したボリュームよりも業務の重要度が高い、と考えることが出来る。その理由は、まず、IOPS下限値が設定されている場合、下限値以上のIOPS性能を確保しなければならないため、ホスト計算機からのIOPS下限値以上のI/O要求に対してより高速なデバイスにデータを配置する必要があるためである。また、IOPS上限値が設定されている場合、上限値以下の性能に抑え込めばよいため、必ずしも高速なデバイスにデータを配置する必要はないためである。   Here, it can be considered that the volume for which the IOPS lower limit value is set is more important than the volume for which the IOPS upper limit value is set. The reason is that, when an IOPS lower limit value is set, an IOPS performance that is equal to or greater than the lower limit value must be ensured. Therefore, a higher-speed device for an I / O request that exceeds the IOPS lower limit value from the host computer. This is because it is necessary to place data in Further, when the IOPS upper limit value is set, it is only necessary to suppress the performance below the upper limit value, and therefore it is not always necessary to place data in a high-speed device.

つまり、業務が要求するサービスレベルは、最重要レベルの場合、IOPS下限値のみを設定し、重要レベルの場合、IOPS上限値と下限値を設定し、一般レベルの場合、IOPS上限値のみを設定する、と考えることが出来る。   In other words, if the service level required by the business is the most important level, only the IOPS lower limit value is set, if it is the important level, the IOPS upper limit value and the lower limit value are set, and if it is the general level, only the IOPS upper limit value is set. You can think of it.

したがって、QoS機能をデータ最適配置機能と組み合わせる場合、重要度が最も高い最重要の業務、すなわちIOPS下限値のみを設定したボリュームは、より高速なデバイスである最上位階層に配置させたい、という要望がある。   Therefore, when combining the QoS function with the data optimal arrangement function, the request that the most important job with the highest importance, that is, the volume set with only the IOPS lower limit value, should be arranged in the highest hierarchy, which is a faster device. There is.

しかしながら、従来技術については、以下の(1)及び(2)の問題があった。
(1)データ最適配置機能の階層間のブロック再配置は、ボリューム単位のアクセス頻度の分析結果に応じて実施するため、高頻度にアクセスされるブロックが最上位階層の高速デバイスに配置されるまで、分析期間に依存して一定の期間を要する(例えば、数日〜1週間など)。これは、ボリュームの新規作成直後の場合、過去のアクセス頻度データが存在しないため特に顕著である。
However, the prior art has the following problems (1) and (2).
(1) Since block relocation between layers of the data optimum arrangement function is performed according to the analysis result of the access frequency in units of volumes, until a frequently accessed block is arranged in a high-speed device of the highest hierarchy Depending on the analysis period, a certain period is required (for example, several days to one week). This is particularly noticeable when there is no past access frequency data immediately after a new volume is created.

(2)IOPS下限値を設定したボリュームの各ブロックの最上位階層への配置については、過去のI/O履歴に基づくアクセス頻度分析の結果、当該ボリューム以外のブロックの方がアクセス頻度が高ければ、当該ボリュームのブロックは最上位階層へ配置されない。   (2) As for the allocation of each block of the volume for which the IOPS lower limit value is set to the highest hierarchy, as a result of the access frequency analysis based on the past I / O history, if the block other than the volume has a higher access frequency The block of the volume is not arranged in the highest hierarchy.

このように上記(1)及び(2)共に、結果として、設定したIOPS下限値のQoSを維持できなくなる場合がある、という課題があった。また、どうしても最上位階層の高速デバイスに即座にまたは継続的に配置させたい場合は、階層プールとは別のプールが必要となり、余分なコストがかかる、という課題もあった。   As described above, both (1) and (2) have a problem that the QoS of the set IOPS lower limit value may not be maintained as a result. In addition, if it is inevitably necessary to place the device immediately or continuously on a high-speed device in the highest tier, a separate pool from the tier pool is required, which causes an additional cost.

上記の課題を解決するための本発明の実施の形態について、以下に概要を説明する。
QoS機能によるボリュームのIOPS下限値の設定時、当該ボリュームのブロックを即座に最上位階層のブロックに割り当てる(または、割り当て済みの最上位階層のブロックとの再配置を行う)オプションを用意する。本オプション指定時は、アクセス頻度分析とは独立して以下を実施する。
・最上位階層に空きがあれば、当該ボリュームの下位階層のブロックから最上位階層のブロックへ再配置(移動)を行う。
・最上位階層に空きが無ければ、最上位階層の各ブロックが属するボリュームの内、IOPS下限値が設定されていないボリュームのブロックを対象に、下位階層の当該ボリュームのブロックと入れ替えて再配置を行う。
An outline of an embodiment of the present invention for solving the above problems will be described below.
When setting the IOPS lower limit value of a volume by the QoS function, an option is prepared for immediately allocating a block of the volume to a block of the highest hierarchy (or rearranging with a block of the assigned highest hierarchy). When this option is specified, the following is performed independently of the access frequency analysis.
-If there is an empty space in the highest hierarchy, relocation (move) is performed from the lower hierarchy block to the highest hierarchy block of the volume.
・ If there is no free space in the top tier, replace the blocks of the volume to which the blocks of the top tier belong without the IOPS lower limit value being replaced with the blocks of the volume in the lower tier. Do.

上記について図3及び図10を用いて説明する。
まず、管理コンソール500内のストレージ管理クライアントプログラム501は、データ最適配置機能を利用した階層プール上に構築されたボリュームに対して、QoS機能によるIOPS上限値及び下限値設定を行う。その際、利用者は、図10のストレージ管理クライアントプログラム GUIイメージのようなユーザインタフェースを介して、ストレージ装置10に対して、QoS設定要求を送信する。ここで、要求内容には、ボリューム名、IOPS上限値、IOPS下限値、「Tier0に即座にブロックを割り当てる」フラグ、「Tier0に固定的にブロックを割り当てる」フラグ、の各情報が含まれる。尚、「Tier0に即座にブロックを割り当てる」フラグがONの場合のQoS設定要求は、データブロックに対する再配置の即時要求の一例である。また、「Tier0に即座にブロックを割り当てる」フラグは、最上位階層に固定するか否かを示すフラグの一例である。
The above will be described with reference to FIGS.
First, the storage management client program 501 in the management console 500 sets the IOPS upper limit value and lower limit value by the QoS function for the volume constructed on the tiered pool using the data optimum arrangement function. At that time, the user transmits a QoS setting request to the storage apparatus 10 via a user interface such as the storage management client program GUI image of FIG. Here, the request contents include information on a volume name, an IOPS upper limit value, an IOPS lower limit value, an “assign block immediately to Tier 0” flag, and an “assign fixed block to Tier 0” flag. The QoS setting request when the “assign block immediately to Tier 0” flag is ON is an example of an immediate request for relocation with respect to a data block. The “assign block immediately to Tier 0” flag is an example of a flag indicating whether or not to fix to the highest hierarchy.

QoS管理手段110は、ストレージ管理クライアントプログラム501からのQoS設定要求を受け取ると、要求内容をQoS管理テーブル340に保存する。   When the QoS management unit 110 receives a QoS setting request from the storage management client program 501, the QoS management unit 110 stores the request content in the QoS management table 340.

次に、「Tier0に即座にブロックを割り当てる」フラグがON(=即座に割り当てる)の時、QoS管理手段110は、データ最適配置管理手段120を起動する。データ最適配置管理手段120は、データ最適配置管理テーブル350を参照し、Tier0(SSDプール)に空きブロックがあるか確認する。空きブロックがあれば、データ最適配置管理手段120は、要求されたボリュームのブロックをTier0のプールに割り当てるよう、ブロックの再配置を行う。データ最適配置管理手段120は、再配置を行う際、ブロック間のデータ移動用の作業領域として、ストレージ装置10のメモリ11の領域の一部である、データ最適配置work領域12を使用する。空きブロックが無ければ、データ最適配置管理手段120は、QoS管理テーブル340を参照し、IOPS下限値が設定されていないボリュームのブロックがTier0(SSDプール)に存在するか確認する。存在する場合、データ最適配置管理手段120は、IOPS下限値が設定されていないボリュームのブロックと、要求されたボリュームのブロックとを入れ替えるよう、ブロックの再配置を行う。   Next, when the “assign block immediately to Tier 0” flag is ON (= assign immediately), the QoS management unit 110 activates the data optimum arrangement management unit 120. The data optimum arrangement management unit 120 refers to the data optimum arrangement management table 350 and checks whether there is an empty block in Tier 0 (SSD pool). If there is an empty block, the data optimum arrangement management unit 120 rearranges the block so that the block of the requested volume is allocated to the Tier 0 pool. The data optimum arrangement management unit 120 uses the data optimum arrangement work area 12 which is a part of the area of the memory 11 of the storage apparatus 10 as a work area for data movement between blocks when performing relocation. If there is no free block, the data optimum arrangement management unit 120 refers to the QoS management table 340 and confirms whether a block of a volume for which the IOPS lower limit value is not set exists in Tier 0 (SSD pool). If the data exists, the data optimum arrangement management unit 120 rearranges the blocks so that the block of the volume for which the IOPS lower limit value is not set and the block of the requested volume are exchanged.

このようにして、次回のアクセス頻度分析まで待つことなく、また、実際のアクセス頻度が他のボリュームより高くない場合であっても、IOPS下限値を設定したボリュームのブロックを速やかに最上位階層の高速デバイスに配置することが出来る。   In this way, without waiting for the next access frequency analysis, and even when the actual access frequency is not higher than other volumes, the block of the volume for which the IOPS lower limit value has been set is quickly Can be placed on high-speed devices.

尚、「Tier0に固定的にブロックを割り当てる」フラグについては後述する。続いて、本発明の実施の形態の構成について説明する。   The “assign block to Tier 0 fixedly” flag will be described later. Next, the configuration of the embodiment of the present invention will be described.

図3は、本発明の実施の形態2にかかるストレージ管理システム1の全体構成を示すブロック図である。ストレージ管理システム1は、ホスト計算機510、520、・・・と、ストレージ装置10と、管理コンソール500とを備える。ここで、ホスト計算機510等とストレージ装置10とは、ストレージエリアネットワーク(Storage Area Network(SAN))N1で接続されている。また、管理コンソール500とストレージ装置10とは、ローカルエリアネットワーク(Local Area Network(LAN))N2で接続されている。   FIG. 3 is a block diagram showing the overall configuration of the storage management system 1 according to the second embodiment of the present invention. The storage management system 1 includes host computers 510, 520,..., A storage apparatus 10, and a management console 500. Here, the host computer 510 and the like and the storage apparatus 10 are connected by a storage area network (SAN) N1. The management console 500 and the storage apparatus 10 are connected by a local area network (LAN) N2.

ストレージ装置10は、ストレージ管理プログラム100と、メモリ11と、性能ログ21と、階層プール管理テーブル310と、プール管理テーブル320と、ボリューム管理テーブル330と、QoS管理テーブル340と、データ最適配置管理テーブル350と、アクセス頻度管理テーブル360と、複数のSSD(Solid State Drive)S1、S2、・・・Sm(mは2以上の整数。)と、複数のHDD(Hard Disk Drive)H1、H2、・・・Hn(nは2以上の整数。)と、複数の階層プールと、複数のボリュームLD1、LD2、LD3及びLD4と、を備える。   The storage apparatus 10 includes a storage management program 100, a memory 11, a performance log 21, a tiered pool management table 310, a pool management table 320, a volume management table 330, a QoS management table 340, and a data optimum arrangement management table. 350, an access frequency management table 360, a plurality of SSDs (Solid State Drives) S1, S2,... Sm (m is an integer of 2 or more), a plurality of HDDs (Hard Disk Drives) H1, H2,. ..Hn (n is an integer of 2 or more), a plurality of hierarchical pools, and a plurality of volumes LD1, LD2, LD3, and LD4.

尚、ストレージ管理プログラム100と、性能ログ21と、階層プール管理テーブル310と、プール管理テーブル320と、ボリューム管理テーブル330と、QoS管理テーブル340と、データ最適配置管理テーブル350と、アクセス頻度管理テーブル360とは、ストレージ装置10内の管理用の記憶領域(不図示)に格納されている。ストレージ装置10の制御部(不図示)は、ストレージ管理プログラム100をメモリ(不図示。メモリ11とは別のもの。)に読み込み実行する。これにより、ストレージ装置10は、QoS管理手段110、データ最適配置管理手段120及び性能監視手段130として機能する。   The storage management program 100, the performance log 21, the tiered pool management table 310, the pool management table 320, the volume management table 330, the QoS management table 340, the data optimum arrangement management table 350, and the access frequency management table. 360 is stored in a management storage area (not shown) in the storage apparatus 10. A control unit (not shown) of the storage apparatus 10 reads and executes the storage management program 100 into a memory (not shown; different from the memory 11). Thereby, the storage apparatus 10 functions as the QoS management unit 110, the data optimum arrangement management unit 120, and the performance monitoring unit 130.

メモリ11は、ストレージ装置10に用意されたキャッシュメモリである。メモリ11は、ホスト計算機510、520、・・・から受け付けたReadやWriteのI/O要求のデータを、一時的に格納する領域である。メモリ11は、その一部にデータ最適配置work領域12を含む。   The memory 11 is a cache memory prepared in the storage apparatus 10. The memory 11 is an area for temporarily storing data of Read and Write I / O requests received from the host computers 510, 520,. The memory 11 includes a data optimum arrangement work area 12 in a part thereof.

データ最適配置work領域12は、データ最適配置管理手段120が階層間のデータブロックを再配置により入れ替える(移動する)際に、移動対象のデータを一時的に格納するためや、移動元や移動先のブロックに関する必要な情報を記憶するために使用する作業領域である。   The data optimum arrangement work area 12 is used to temporarily store data to be moved when the data optimum arrangement management unit 120 replaces (moves) the data blocks between the hierarchies by rearrangement, or from the movement source and the movement destination. This is a work area used for storing necessary information regarding the blocks.

性能ログ21は、性能監視手段130がストレージ装置10のIOPSやレスポンスタイムなどの各種性能情報を出力するログファイルである。性能ログ21は、性能監視手段130が定期的に実行するアクセス頻度分析時の入力となる情報である。   The performance log 21 is a log file from which the performance monitoring unit 130 outputs various performance information such as IOPS and response time of the storage apparatus 10. The performance log 21 is information that is input during an access frequency analysis that is periodically executed by the performance monitoring unit 130.

階層プールは、複数のプール(例えば、T0、T1、T2)を仮想的に1つのプールとして束ねたものである。図4では、階層プールの例として、Tier0(最上位階層)にSSDプール、Tier1にSASプール、Tier2にニアラインSAS(以下NL−SAS)プール、の3段構成の階層プールを示している。各階層には、ハードウェア的なデバイス特性やRAID(Redundant Arrays of Inexpensive Disks)タイプが異なるものを配置する。これにより、アクセス頻度分析に応じて、よくアクセスされるブロックはTier0などの高速かつ高価なデバイスに配置し、あまりアクセスされないブロックはTier2などの低速かつ安価なデバイスに配置することで、効率よくストレージを利用することができる。尚、図4の例では、階層プールは3階層であるが、2階層や4階層以上であっても良い。   The hierarchical pool is a pool of a plurality of pools (for example, T0, T1, T2) virtually combined as one pool. In FIG. 4, as an example of a tier pool, a three-tier tier pool is shown in which a tier 0 (top tier) is an SSD pool, a tier 1 is a SAS pool, and a tier 2 is a near-line SAS (hereinafter NL-SAS) pool. In each layer, different hardware device characteristics and RAID (Redundant Arrays of Inexpensive Disks) types are arranged. Thus, according to the access frequency analysis, blocks that are often accessed are placed in high-speed and expensive devices such as Tier 0, and blocks that are not frequently accessed are placed in low-speed and inexpensive devices such as Tier 2 for efficient storage. Can be used. In the example of FIG. 4, the tier pool is three tiers, but may be two tiers or four or more tiers.

ボリュームLD1〜LD4は、階層プールから切り出されて、ホスト計算機510、520、・・・に割り当てて利用される。   The volumes LD1 to LD4 are cut out from the hierarchical pool and allocated to the host computers 510, 520,.

QoS管理手段110は、ストレージ管理クライアントプログラム501から発行されたQoS設定要求を受け付けて、ボリューム単位のIOPS上限値や下限値などの情報を設定する機能と、要求結果をストレージ管理クライアントプログラム501に返却する機能と、性能監視手段130と連携して、設定したIOPS上限値や下限値の情報に基づいて、ボリュームごとのIOPS値を制御する機能、とを有する。尚、QoS管理手段110は、受付部の一例である。   The QoS management unit 110 receives a QoS setting request issued from the storage management client program 501 and returns a request result to the storage management client program 501 and a function for setting information such as an IOPS upper limit value and lower limit value for each volume. And a function for controlling the IOPS value for each volume based on information on the set IOPS upper limit value and lower limit value in cooperation with the performance monitoring unit 130. The QoS management unit 110 is an example of a reception unit.

データ最適配置管理手段120は、管理コンソール500上のストレージ管理クライアントプログラム501からの要求に基づいて、「Tier0に即座にブロックを割り当てる」及び「Tier0に固定的にブロックを割り当てる」機能と、性能監視手段130のアクセス頻度分析の結果に基づいて、階層プールのブロックを再配置する機能、とを有する。尚、データ最適配置管理手段120は、ブロック再配置部1200の一例である。   The data optimum arrangement management means 120, based on a request from the storage management client program 501 on the management console 500, a function of “allocating a block immediately to Tier 0” and a function of “allocating a block fixedly to Tier 0” and performance monitoring And a function of rearranging the blocks of the hierarchical pool based on the access frequency analysis result of the means 130. The data optimum arrangement management unit 120 is an example of the block rearrangement unit 1200.

性能監視手段130は、ストレージ装置10のIOPSなどの各種性能情報を性能ログ21に出力する機能と、性能ログ21を入力情報として、ストレージ装置10のアクセス頻度分析を定期的に実行する機能、とを有する。   The performance monitoring unit 130 has a function of outputting various performance information such as IOPS of the storage apparatus 10 to the performance log 21, a function of periodically executing an access frequency analysis of the storage apparatus 10 using the performance log 21 as input information, and Have

図4は、本発明の実施の形態2にかかる階層プール管理テーブル310の例を示す図である。階層プール管理テーブル310は、ID、階層プール名、容量、階層数の各カラムを持つ。IDは主キーである。階層プール名は、階層プールを一意に特定する識別子である。容量は、階層プールの総容量を表す。階層数は、階層プールを構成する各プールのTier数を表す。   FIG. 4 is a diagram showing an example of the tier pool management table 310 according to the second embodiment of the present invention. The tier pool management table 310 has columns for ID, tier pool name, capacity, and number of tiers. ID is the primary key. The tier pool name is an identifier that uniquely identifies the tier pool. The capacity represents the total capacity of the tier pool. The number of tiers represents the number of tiers of each pool constituting the tier pool.

図4の、例えば先頭行から、階層プール1が、容量100GBで、3階層のTierから成ることが分かる。   From FIG. 4, for example, it can be seen that the tier pool 1 has a capacity of 100 GB and is composed of three tiers.

図5は、本発明の実施の形態2にかかるプール管理テーブル320の例を示す図である。プール管理テーブル320は、ID、階層プール名、Tier番号、プール名、容量の各カラムを持つ。IDは主キーである。階層プール名は、階層プールを一意に特定する識別子である。Tier番号は、0から始まる自然数であり、階層プールの何番目の階層にプールが属しているかを表す。プール名は、プールを一意に特定する識別子である。容量は、プールの容量を表す。   FIG. 5 is a diagram showing an example of the pool management table 320 according to the second embodiment of the present invention. The pool management table 320 has columns of ID, tier pool name, tier number, pool name, and capacity. ID is the primary key. The tier pool name is an identifier that uniquely identifies the tier pool. The Tier number is a natural number starting from 0, and represents the tier to which the tier pool belongs. The pool name is an identifier that uniquely identifies the pool. The capacity represents the capacity of the pool.

図5の、例えば先頭行から、階層プール1のTier番号0はSSDプール1であり、その容量は20GBであることが分かる。   For example, from the top row of FIG. 5, it can be seen that Tier number 0 of the tier pool 1 is the SSD pool 1 and its capacity is 20 GB.

図6は、本発明の実施の形態2にかかるボリューム管理テーブル330の例を示す図である。ボリューム管理テーブル330は、ID、ボリューム名、容量、階層プール名、ブロック数、ボリュームブロック番号リストの各カラムを持つ。IDは主キーである。ボリューム名は、ボリュームを一意に特定する識別子である。容量は、ボリューム名の容量を表す。階層プール名は、ボリュームが属する階層プールを表す。ブロック数は、ボリュームを構成するブロックの総ブロック数を表す。ボリュームブロック番号リストは、ボリューム内の通番であり、ボリュームを構成する全てのブロックの情報をCSV形式でリスト化したものである。   FIG. 6 is a diagram showing an example of the volume management table 330 according to the second embodiment of the present invention. The volume management table 330 has columns of ID, volume name, capacity, tier pool name, number of blocks, and volume block number list. ID is the primary key. The volume name is an identifier that uniquely identifies the volume. The capacity represents the capacity of the volume name. The tier pool name represents the tier pool to which the volume belongs. The number of blocks represents the total number of blocks constituting the volume. The volume block number list is a serial number in the volume, and is a list of information on all blocks constituting the volume in CSV format.

図6の、例えば先頭行から、ボリューム1の容量は70GBで、階層プール1に属しており、総ブロック数は14で、LD1−1からLD1−14のブロックに分割して階層プール1上に配置されていることが分かる。   In FIG. 6, for example, from the top row, the volume 1 has a capacity of 70 GB and belongs to the tier pool 1, the total number of blocks is 14, and it is divided into blocks of LD1-1 to LD1-14 and placed on the tier pool 1. It can be seen that they are arranged.

図7は、本発明の実施の形態2にかかるQoS管理テーブル340の例を示す図である。QoS管理テーブル340は、ID、ボリューム名、IOPS上限値、IOPS下限値、Tier0即時割り当てフラグ、Tier0固定割り当てフラグ、階層プール名の各カラムを持つ。IDは主キーである。ボリューム名は、ボリュームを一意に特定する識別子である。IOPS上限値は、ボリュームに設定されたIOPS上限値を表す。上限値が設定されていない場合の値は「−」である。IOPS下限値は、ボリュームに設定されたIOPS上限値を表す。下限値が設定されていない場合の値は「−」である。Tier0即時割り当てフラグは、アクセス頻度分析の結果によらず、当該ボリュームのブロックをTier0に即座に割り当てて再配置するかどうかを示すフラグである。即時割り当てを行う場合は「YES」、行わない場合は「NO」となる。Tier0固定割り当てフラグは、アクセス頻度分析の結果によらず、当該ボリュームのブロックをTier0に固定的に割り当てるかどうかを示すフラグである。固定割り当てを行う場合は「YES」、行わない場合は「NO」となる。階層プール名は、ボリュームが属する階層プールを表す。尚、QoS管理テーブル340は、性能要件管理情報1110の一例である。   FIG. 7 is a diagram showing an example of the QoS management table 340 according to the second embodiment of the present invention. The QoS management table 340 has columns of ID, volume name, IOPS upper limit value, IOPS lower limit value, Tier 0 immediate allocation flag, Tier 0 fixed allocation flag, and hierarchical pool name. ID is the primary key. The volume name is an identifier that uniquely identifies the volume. The IOPS upper limit value represents the IOPS upper limit value set for the volume. The value when the upper limit value is not set is “−”. The IOPS lower limit value represents the IOPS upper limit value set for the volume. The value when the lower limit is not set is “−”. The Tier 0 immediate allocation flag is a flag indicating whether the block of the volume is immediately allocated to Tier 0 and rearranged regardless of the result of the access frequency analysis. If immediate allocation is to be performed, “YES” is set. Otherwise, “NO” is set. The Tier 0 fixed allocation flag is a flag indicating whether or not a block of the volume is fixedly allocated to Tier 0 regardless of the result of the access frequency analysis. If fixed allocation is performed, “YES” is set. Otherwise, “NO” is set. The tier pool name represents the tier pool to which the volume belongs. The QoS management table 340 is an example of performance requirement management information 1110.

図7の、例えば先頭行から、ボリューム1にはIOPS上限値として2000IOPSが設定されているが、IOPS下限値は未設定であること、Tier0即時割り当て、Tier0固定割り当てはどちらも行わない設定であること、ボリューム1が階層プール1に属していることが分かる。   For example, from the top row in FIG. 7, 2000 IOPS is set as the IOPS upper limit value for volume 1, but the IOPS lower limit value is not set, and Tier 0 immediate allocation and Tier 0 fixed allocation are not performed. In other words, it can be seen that volume 1 belongs to tier pool 1.

図8は、本発明の実施の形態2にかかるデータ最適配置管理テーブル350の例を示す図である。データ最適配置管理テーブル350は、ID、プール名、プール内ブロック番号、ブロック開始アドレス、ブロック終了アドレス、階層プール名、ボリューム名、ボリュームブロック番号の各カラムを持つ。IDは主キーである。プール名は、プールを一意に特定する識別子である。プール内ブロック番号は、プール内の通番である。ブロック開始アドレス及びブロック終了アドレスはそれぞれ、当該プールの当該ブロック番号のデータが格納されている先頭及び末尾のアドレス情報を表す。階層プール名は、ボリュームが属する階層プールを表す。ボリューム名は、ボリュームを一意に特定する識別子である。ボリュームブロック番号は、ボリューム内で一意の通番であり、ボリュームを構成するブロック番号である。尚、プール管理テーブル320及びデータ最適配置管理テーブル350を組み合わせたものは、ブロック管理情報1120の一例である。   FIG. 8 is a diagram showing an example of the data optimum arrangement management table 350 according to the second embodiment of the present invention. The data optimum arrangement management table 350 has columns of ID, pool name, in-pool block number, block start address, block end address, hierarchical pool name, volume name, and volume block number. ID is the primary key. The pool name is an identifier that uniquely identifies the pool. The pool block number is a serial number in the pool. The block start address and the block end address respectively represent head and end address information in which data of the block number of the pool is stored. The tier pool name represents the tier pool to which the volume belongs. The volume name is an identifier that uniquely identifies the volume. The volume block number is a unique serial number within the volume, and is a block number constituting the volume. A combination of the pool management table 320 and the data optimum arrangement management table 350 is an example of the block management information 1120.

図8の、例えば先頭行から、SSDプール1のブロック番号1のデータは、0x00000000〜0x0FFFFFFFのアドレスに格納されていること、SSDプール1は階層プール1に属していること、また、現在ボリューム1のボリュームブロック番号LD1−1のデータを格納していることが分かる。データを未格納の場合、ボリューム名とボリュームブロック番号の値は、どちらも「−」となる。   In FIG. 8, for example, from the first row, the data of block number 1 of the SSD pool 1 is stored at addresses 0x00000000 to 0x0FFFFFFF, the SSD pool 1 belongs to the tier pool 1, and the current volume 1 It can be seen that the data of the volume block number LD1-1 is stored. When data is not stored, both the volume name and the volume block number are “−”.

図9は、本発明の実施の形態2にかかるアクセス頻度管理テーブル360の例を示す図である。アクセス頻度管理テーブル360は、ID、階層プール名、プール名、プール内ブロック番号、ボリューム名、ボリュームブロック番号、平均IOPS値、移動済みフラグの各カラムを持つ。IDは主キーである。階層プール名は、階層プールを一意に特定する識別子である。プール名は、プールを一意に特定する識別子である。プール内ブロック番号は、プール内の通番である。ボリューム名は、ボリューム名は、ボリュームを一意に特定する識別子である。ボリュームブロック番号は、ボリューム内で一意の通番であり、ボリュームを構成するブロック番号である。平均IOPS値は、アクセス頻度分析の結果、その分析期間における、当該ボリュームの当該ブロックに対する平均のIOPS値を表す。移動済みフラグは、ブロック移動が完了したら「YES」を設定する。初期値は「NO」である。尚、アクセス頻度管理テーブル360は、アクセス頻度管理情報の一例である。   FIG. 9 is a diagram showing an example of the access frequency management table 360 according to the second embodiment of the present invention. The access frequency management table 360 has columns for ID, hierarchical pool name, pool name, pool block number, volume name, volume block number, average IOPS value, and moved flag. ID is the primary key. The tier pool name is an identifier that uniquely identifies the tier pool. The pool name is an identifier that uniquely identifies the pool. The pool block number is a serial number in the pool. The volume name is an identifier that uniquely identifies the volume. The volume block number is a unique serial number within the volume, and is a block number constituting the volume. The average IOPS value represents the average IOPS value for the block of the volume during the analysis period as a result of the access frequency analysis. The moved flag is set to “YES” when the block movement is completed. The initial value is “NO”. The access frequency management table 360 is an example of access frequency management information.

図9の、例えば先頭行から、階層プール1を構成するSASプール1のプール内ブロック番号6のブロックには、ボリューム3のブロック番号LD3−2のデータが割り当てられており、平均IOPS値は500IOPSであること、また、ブロック移動は未完了であることが分かる。   For example, from the top row in FIG. 9, the data of the block number LD3-2 of the volume 3 is allocated to the block of the block number 6 in the pool of the SAS pool 1 constituting the tiered pool 1, and the average IOPS value is 500 IOPS. It can also be seen that block movement is incomplete.

ホスト計算機510、520、・・・は、ストレージエリアネットワークN1を介してストレージ装置10を利用する。具体的には、ストレージ装置10のボリュームに対してI/O要求を発行し、ストレージ装置10からI/O処理結果を受け取る。   The host computers 510, 520,... Use the storage apparatus 10 via the storage area network N1. Specifically, an I / O request is issued to the volume of the storage apparatus 10 and an I / O processing result is received from the storage apparatus 10.

管理コンソール500は、ストレージ管理クライアントプログラム501を含む。ストレージ管理クライアントプログラム501は、ストレージ装置10に対して、QoS機能の設定要求を発行し、要求結果を受信する機能を有する。ストレージ管理クライアントプログラム501は、具体的には、ストレージ装置10の各ボリュームに対してIOPS上限値やIOPS下限値を設定する、などの処理要求を発行する。   The management console 500 includes a storage management client program 501. The storage management client program 501 has a function of issuing a QoS function setting request to the storage apparatus 10 and receiving a request result. Specifically, the storage management client program 501 issues a processing request such as setting an IOPS upper limit value or an IOPS lower limit value for each volume of the storage apparatus 10.

続いて、本実施の形態の動作について説明する。以下では、図3〜図10の構成例を元に、管理コンソールからのQoS設定要求に基づいて、階層プールの最上位階層へのブロック再配置を行う処理フローを説明する。   Subsequently, the operation of the present embodiment will be described. In the following, based on the configuration examples of FIGS. 3 to 10, a processing flow for performing block rearrangement to the highest hierarchy of the hierarchy pool based on the QoS setting request from the management console will be described.

図11は、本発明の実施の形態2にかかるQoS設定処理の流れを示すフローチャートである。まず、管理コンソール500内のストレージ管理クライアントプログラム501は、ストレージ装置10に対して、QoS設定要求を送信する(ステップS11)。QoS設定要求は、利用者が図10のストレージ管理クライアントプログラム501のGUIインタフェースを介して指示された内容である。   FIG. 11 is a flowchart showing the flow of the QoS setting process according to the second embodiment of the present invention. First, the storage management client program 501 in the management console 500 transmits a QoS setting request to the storage apparatus 10 (step S11). The QoS setting request is a content instructed by the user via the GUI interface of the storage management client program 501 in FIG.

図10は、本発明の実施の形態2にかかるボリューム設定画面の例を示す図である。図10のボリューム名は、リストボックスから作成済みボリュームを選択するものであり、ここでは「ボリューム4」を選択している。容量は、選択したボリューム名に応じて、ストレージ管理クライアントプログラム501がストレージ装置10から取得した情報を利用者に表示する。ここでは「10GB」が表示されている。IOPS上限値とIOPS下限値は、設定する場合に具体的なIOPS値を指定する。設定しない場合は、初期値として「設定しない」を表示する。ここでは、IOPS上限値は設定せず、IOPS下限値として「1000」が設定されたことを示す。また、「Tier0に「即座に」ブロックを割り当てる」はチェックボックスであり、指定したボリュームに対して、QoS設定を行うと同時にTier0へ即座にブロック割り当ての再配置処理を行う場合に指定する。図10では、「Tier0に「即座に」ブロックを割り当てる」を指定している。「Tier0に「固定的に」ブロックを割り当てる」はチェックボックスであり、指定したボリュームに対して、アクセス頻度分析の結果とは無関係に、Tier0へ固定的にブロック割り当てを行う場合に指定する(QoS設定後の最初のアクセス頻度分析で、指定したボリュームのブロックがTier0以外の階層にある場合は、Tier0への再配置処理を行うこととなる)。図10では、「Tier0に「固定的に」ブロックを割り当てる」を指定している。   FIG. 10 is a diagram showing an example of a volume setting screen according to the second embodiment of the present invention. The volume name in FIG. 10 is used to select a created volume from the list box, and “Volume 4” is selected here. The capacity displays information acquired from the storage apparatus 10 by the storage management client program 501 to the user according to the selected volume name. Here, “10 GB” is displayed. When the IOPS upper limit value and the IOPS lower limit value are set, specific IOPS values are designated. If not set, “Not set” is displayed as an initial value. Here, the IOPS upper limit value is not set, and “1000” is set as the IOPS lower limit value. “Assign block“ immediately ”to Tier 0” is a check box, and is designated when performing block setting reallocation processing to Tier 0 at the same time that QoS setting is performed for the specified volume. In FIG. 10, “allocate block“ immediately ”to Tier 0” is designated. “Assign block“ fixedly to Tier 0 ”” is a check box, and is specified when a block is permanently assigned to Tier 0 regardless of the result of access frequency analysis for the specified volume (QoS). In the first access frequency analysis after setting, if the block of the specified volume is in a tier other than Tier 0, relocation processing to Tier 0 will be performed). In FIG. 10, “assign a block“ fixedly to Tier 0 ”” is designated.

そのため、図11のステップS11では、ストレージ管理クライアントプログラム501からストレージ装置10に対して、QoS設定要求として、ボリューム名として「ボリューム4」、IOPS上限値として「−」(設定しないことを意味する)、IOPS下限値として「1000」、Tier0即時割り当てフラグとして「YES」、Tier0固定割り当てフラグとして「YES」、をストレージ装置10に対して送信する。   Therefore, in step S11 of FIG. 11, the storage management client program 501 sends "Volume 4" as the volume name and "-" as the IOPS upper limit value to the storage apparatus 10 as a QoS setting request (meaning that no setting is made). Then, “1000” as the IOPS lower limit value, “YES” as the Tier 0 immediate allocation flag, and “YES” as the Tier 0 fixed allocation flag are transmitted to the storage apparatus 10.

ストレージ装置10は、QoS管理手段110がQoS設定要求を受信する(ステップS21)。その後、QoS管理手段110は、メモリ11上のReturnCodeを「OK」に設定する(ステップS22)。ReturnCodeは、ストレージ装置10上の複数の手段が共有して設定・参照を行えるメモリ領域である。   In the storage apparatus 10, the QoS management unit 110 receives the QoS setting request (step S21). Thereafter, the QoS management unit 110 sets ReturnCode on the memory 11 to “OK” (step S22). The ReturnCode is a memory area that can be set and referred to by a plurality of means on the storage apparatus 10 in common.

次に、QoS管理手段110は、QoS管理テーブル340に受信したQoS設定要求設定する(ステップS23)。図7は、QoS管理テーブル340の4行目(IDが1の行)に、IOPS上限値として「−」(上限値を設定しない)、IOPS下限値として「1000」、Tier0即時割り当てフラグとして「YES」、Tier0固定割り当てフラグとして「YES」、を登録した例である。この場合、QoS管理手段110は、ボリューム4のデータブロックに対する再配置の即時要求を受け付けたことになる。   Next, the QoS management unit 110 sets the received QoS setting request in the QoS management table 340 (step S23). FIG. 7 shows that the fourth line of the QoS management table 340 (the line whose ID is 1) has “−” as the IOPS upper limit (no upper limit is set), “1000” as the IOPS lower limit, and “1000” as the Tier 0 immediate allocation flag. In this example, “YES” and “YES” are registered as the Tier 0 fixed allocation flag. In this case, the QoS management unit 110 has received an immediate request for relocation with respect to the data block of the volume 4.

QoS管理手段110は、Tier0即時割り当てフラグが「NO」であった場合(ステップS24がNO)、ステップS30へ進む。Tier0即時割り当てフラグが「YES」であった場合(ステップS24がYES)、QoS管理手段110は、データ最適配置管理手段120を起動して、以降の処理を引き継ぐ(ステップS25)。起動時には、引数としてボリューム名の情報(本例では「ボリューム4」)をデータ最適配置管理手段120に渡す。そして、データ最適配置管理手段120は、即時要求に応じて第1のデータブロックと第2のデータブロックとの入れ替えを以下のように行う。   If the Tier 0 immediate allocation flag is “NO” (step S24 is NO), the QoS management unit 110 proceeds to step S30. When the Tier 0 immediate allocation flag is “YES” (YES in step S24), the QoS management unit 110 activates the data optimum arrangement management unit 120 and takes over the subsequent processing (step S25). At the time of activation, volume name information (“volume 4” in this example) is passed to the data optimum arrangement management unit 120 as an argument. Then, the data optimum arrangement management unit 120 performs the replacement of the first data block and the second data block as follows in response to the immediate request.

データ最適配置管理手段120は、ボリューム管理テーブル330、QoS管理テーブル340、プール管理テーブル320及びデータ最適配置管理テーブル350を参照して、Tier0に空きブロックがないか確認する(ステップS26)。つまり、データ最適配置管理手段120は、ブロック管理情報を参照し、最上位階層に関連付けられ、かつ、データが格納されていないデータブロックである空きブロックが存在するか否かを判定する。   The data optimum arrangement management unit 120 refers to the volume management table 330, the QoS management table 340, the pool management table 320, and the data optimum arrangement management table 350 to check whether there is an empty block in Tier0 (step S26). That is, the data optimum arrangement management unit 120 refers to the block management information and determines whether or not there is an empty block that is a data block associated with the highest hierarchy and not storing data.

これは次のように行われる。まず、データ最適配置管理手段120は、図6のボリューム管理テーブル330を参照して、ボリューム4のブロック数として「2」を取得する。次に、データ最適配置管理手段120は、図7のQoS管理テーブル340を参照して、ボリューム4の階層プール名として「階層プール1」を取得する。次に、データ最適配置管理手段120は、図5のプール管理テーブル320を参照して、「階層プール1」のTier0すなわちTier番号が0のプールとして「SSDプール1」を取得する。次に、データ最適配置管理手段120は、図8のデータ最適配置管理テーブル350を参照して、プール名が「SSDプール1」のエントリの内、ボリューム名とボリュームブロック番号がどちらも「−」のエントリを検索する。ボリューム名とボリュームブロック番号がどちらも「−」の場合、プールの当該ブロックには、ボリュームのブロックが割り当てられていないことを意味する。   This is done as follows. First, the data optimum arrangement management unit 120 refers to the volume management table 330 in FIG. 6 and acquires “2” as the number of blocks in the volume 4. Next, the data optimum arrangement management unit 120 refers to the QoS management table 340 in FIG. 7 and acquires “tier pool 1” as the tier pool name of the volume 4. Next, the data optimal arrangement management unit 120 refers to the pool management table 320 of FIG. 5 and acquires “SSD pool 1” as Tier 0 of “tier pool 1”, that is, a pool with a Tier number of 0. Next, the data optimum arrangement management unit 120 refers to the data optimum arrangement management table 350 in FIG. 8 and, among the entries whose pool name is “SSD pool 1”, both the volume name and the volume block number are “−”. Search for entries. When both the volume name and the volume block number are “−”, it means that the block of the volume is not allocated to the block in the pool.

Tier0に空きブロックがあった場合(ステップS26がYES)、データ最適配置管理手段120は、Tier0の空きブロックにボリューム4のブロックを割り当てて再配置する(ステップS27)。具体的には、データ最適配置管理手段120は、データ最適配置管理テーブル350のボリューム名が「ボリューム4」のエントリを検索し、そのエントリのボリューム名とボリュームブロック番号を「SSDプール1」の空きエントリにコピーする。また、データ最適配置管理手段120は、元の「ボリューム4」のエントリのボリューム名とボリュームブロック番号のそれぞれに「−」を設定する。NL−SASディスクからSSDディスクへの物理的なデータ移動は、このデータ最適配置管理テーブル350のエントリ変更を契機として行われる。但し、当該データ移動は、既存技術のため説明を省略する。   If there is an empty block in Tier 0 (YES in step S26), the data optimum arrangement management unit 120 allocates the block of volume 4 to the empty block in Tier 0 and rearranges it (step S27). Specifically, the data optimum arrangement management unit 120 searches for an entry whose volume name is “volume 4” in the data optimum arrangement management table 350, and sets the volume name and volume block number of the entry to the free space of “SSD pool 1”. Copy to entry. Further, the data optimum arrangement management unit 120 sets “-” to each of the volume name and the volume block number of the original “volume 4” entry. Physical data movement from the NL-SAS disk to the SSD disk is performed in response to the entry change in the data optimum arrangement management table 350. However, explanation of the data movement is omitted because it is an existing technology.

続いて、Tier0に空きブロックが無かった場合(ステップS26がNO)の動作を説明する。図8のデータ最適配置管理テーブル350の例では、「SSDプール1」のエントリはIDが1から4まで4エントリ存在するが、いずれも、ボリューム名とボリュームブロック番号が「−」でなく、ボリュームブロックを割り当て済みのため、ステップS26がNOのフローとなる。   Next, the operation when there is no empty block in Tier 0 (step S26 is NO) will be described. In the example of the optimum data arrangement management table 350 in FIG. 8, there are four entries of “SSD pool 1” with IDs 1 to 4, but in both cases, the volume name and volume block number are not “−”. Since the block has already been allocated, step S26 is a NO flow.

データ最適配置管理手段120は、Tier0にIOPS下限値が未設定のボリュームが存在するかを、QoS管理テーブル340とデータ最適配置管理テーブル350を参照して確認する(ステップS28)。これは次のように実施する。まず、QoS管理テーブル340から、IOPS下限値が設定されていないボリュームは、「ボリューム1」と「ボリューム2」の2つであることが分かる。次に、データ最適配置管理手段120は、データ最適配置管理テーブル350から、Tier0のプールである「SSDプール1」に対して、ボリューム名が「ボリューム1」または「ボリューム2」のエントリが無いか順に検索する。   The data optimum arrangement management unit 120 checks whether there is a volume for which the IOPS lower limit value is not set in Tier 0 with reference to the QoS management table 340 and the data optimum arrangement management table 350 (step S28). This is carried out as follows. First, it can be seen from the QoS management table 340 that there are two volumes “volume 1” and “volume 2” for which the IOPS lower limit value is not set. Next, the data optimum arrangement management unit 120 determines whether there is an entry with the volume name “volume 1” or “volume 2” for the “SSD pool 1” that is the pool of Tier 0 from the data optimum arrangement management table 350. Search in order.

Tier0にIOPS下限値が未設定のボリュームが存在しない場合(ステップS28がNO)、ReturnCodeに「Tier0即時割り当て不可」の値を設定する(ステップS29)。   If there is no volume for which the IOPS lower limit value has not been set in Tier 0 (NO in step S28), a value of “Tier 0 immediate allocation impossible” is set in Return Code (step S29).

Tier0にIOPS下限値が未設定のボリュームが存在する場合(ステップS28がYES)の動作(図11のAの部分)を、図12を用いて説明する。図12は、本発明の実施の形態2にかかるブロック入替処理の流れを示すフローチャートである。図8の例では、IDが1、2、3のエントリが該当するため、ステップS28がYESのフローとなる。   The operation (part A of FIG. 11) in the case where there is a volume for which the IOPS lower limit value has not been set in Tier 0 (step S28 is YES) will be described with reference to FIG. FIG. 12 is a flowchart showing the flow of the block replacement process according to the second embodiment of the present invention. In the example of FIG. 8, since the entries with IDs 1, 2, and 3 correspond, step S28 is a flow of YES.

QoS設定を要求されたボリューム4の総ブロック数が2であることが分かっているため、この個数分、以下のループ処理を行う(ステップS40)。   Since it is known that the total number of blocks of the volume 4 for which QoS setting is requested is 2, the following loop processing is performed for this number (step S40).

まず、データ最適配置管理手段120は、データ最適配置管理テーブル350から、Tier0すなわちSSDプール1のエントリの中で、移動可能なエントリ、すなわちIOPS下限値が未設定のボリュームのエントリを検索する(ステップS41)。図8の例では、最初のエントリとして、IDが1のエントリが見つかる。   First, the data optimum arrangement management unit 120 searches the data optimum arrangement management table 350 for a moveable entry, that is, an entry for a volume for which the IOPS lower limit value has not been set, among the entries in Tier 0, that is, the SSD pool 1 (step S41). In the example of FIG. 8, an entry having an ID of 1 is found as the first entry.

移動可能なエントリが見つからなかった場合(ステップS42がNO)、一部割り当て済みフラグの値が「ON」か確認する(ステップS48)。一部割り当て済みフラグは、メモリ上の領域であり、初期値は「OFF」である。一部割り当て済みフラグが「ON」の場合(ステップS48がYES)、ReturnCodeに「Tier0に一部割り当てOK」の値を設定する(ステップS49)。一部割り当て済みフラグが「OFF」の場合(ステップS48がNO)、ReturnCodeに「Tier0に即時割り当て不可」の値を設定する(ステップS50)。   If no movable entry is found (NO in step S42), it is checked whether the value of the partially assigned flag is “ON” (step S48). The partially assigned flag is an area on the memory, and the initial value is “OFF”. When the partially assigned flag is “ON” (step S48 is YES), the value of “partially assigned to Tier 0 is OK” is set in ReturnCode (step S49). If the partially assigned flag is “OFF” (NO in step S48), a value of “Immediate assignment impossible to Tier 0” is set in ReturnCode (step S50).

移動可能なエントリが見つかった場合(ステップS42がYES)、データ最適配置管理手段120は、移動対象エントリの情報をデータ最適配置work領域12にコピーし、一時的に退避する(ステップS43)。これにより、ボリューム名の「ボリューム1」とボリュームブロック番号の「LD1−1」を含むエントリ情報が、データ最適配置work領域12に退避される。   If a movable entry is found (YES in step S42), the data optimum arrangement management unit 120 copies the information of the entry to be moved to the data optimum arrangement work area 12, and temporarily saves it (step S43). As a result, the entry information including the volume name “volume 1” and the volume block number “LD1-1” is saved in the data optimum arrangement work area 12.

次に、データ最適配置管理手段120は、要求されたボリュームのブロックを、ステップS43で退避したTier0のブロックに移動する(ステップS44)。図8の例では、「ボリューム4」の1つ目のブロック、すなわちボリュームブロック番号が「LD4−1」であるIDが19のエントリに対して、ボリューム名の「ボリューム4」と、ボリュームブロック番号の「LD4−1」の2つの情報を、IDが1のエントリに移動する。   Next, the data optimum arrangement management unit 120 moves the requested volume block to the Tier 0 block saved in step S43 (step S44). In the example of FIG. 8, for the first block of “volume 4”, that is, the entry whose ID is 19 with the volume block number “LD4-1”, the volume name “volume 4” and the volume block number The two pieces of information “LD4-1” are moved to the entry whose ID is 1.

次に、データ最適配置管理手段120は、データ最適配置work領域のデータを、要求されたボリュームの移動前のブロックに移動する(ステップS45)。図8の例では、データ最適配置work領域12に退避したエントリ情報を元に、ボリューム名の「ボリューム1」とボリュームブロック番号の「LD1−1」をIDが19のエントリに対してコピーし、ブロックの再配置(移動)を行う。   Next, the data optimum arrangement management unit 120 moves the data in the data optimum arrangement work area to the block before the requested volume migration (step S45). In the example of FIG. 8, based on the entry information saved in the data optimum arrangement work area 12, the volume name “volume 1” and the volume block number “LD1-1” are copied to the entry with ID 19, Rearrange (move) blocks.

次に、データ最適配置管理手段120は、メモリ上の一部割り当て済みフラグの値を「ON」に設定する(ステップS46)。   Next, the data optimum arrangement management unit 120 sets the value of the partially assigned flag on the memory to “ON” (step S46).

上記の処理を、ボリューム4の総ブロック数分繰り返す(ステップS47)。これにより、要求されたボリュームのブロック数分、Tier0に移動可能なブロックがあれば入れ替えて再配置することができる。図13は、本発明の実施の形態2にかかるブロック入替処理の実行結果の例を示す図である。   The above processing is repeated for the total number of blocks in the volume 4 (step S47). As a result, if there are blocks that can be moved to Tier 0 by the number of blocks of the requested volume, they can be replaced and rearranged. FIG. 13 is a diagram illustrating an example of the execution result of the block replacement process according to the second embodiment of the present invention.

以上の処理が終了後、データ最適配置管理手段120は、QoS処理要求結果を表すReturnCodeを、ストレージ管理クライアントプログラム501に返却する(ステップS30)。その後、ストレージ管理クライアントプログラム501は、QoS処理要求結果を受信する(ステップS12)。このようにして、IOPS下限値を設定したボリュームのデータブロックを、アクセス頻度分析の結果を待つことなく、階層プールの最上位階層(Tier0)に即座に割り当てることができる。   After the above processing is completed, the data optimum arrangement management unit 120 returns ReturnCode representing the QoS processing request result to the storage management client program 501 (step S30). Thereafter, the storage management client program 501 receives the QoS processing request result (step S12). In this way, the data block of the volume for which the IOPS lower limit value is set can be immediately assigned to the highest tier (Tier0) of the tier pool without waiting for the result of the access frequency analysis.

また、QoS設定要求における「Tier0に固定的にブロックを割り当てる」フラグがON(=固定で割り当てる)の場合に、性能監視手段130が定期的に実施するアクセス頻度分析に伴い、次のように動作する。   In addition, when the “assign fixed block to Tier 0” flag in the QoS setting request is ON (= fixed assignment), the operation is performed as follows according to the access frequency analysis periodically performed by the performance monitoring unit 130. To do.

図14は、本発明の実施の形態2にかかるアクセス頻度に基づくブロック入替処理の流れを示すフローチャートである。
まず、性能監視手段130は、性能ログ21からアクセス頻度管理テーブル360を更新する(S61)。すなわち、性能監視手段130は、性能ログ21に蓄積したストレージ装置10の過去の一定期間(例:1週間)における性能情報から、分析対象の階層プールにおけるブロック単位のアクセス頻度を、平均IOPS値の高い順にアクセス頻度管理テーブル360に保存する。
FIG. 14 is a flowchart showing the flow of the block replacement process based on the access frequency according to the second embodiment of the present invention.
First, the performance monitoring unit 130 updates the access frequency management table 360 from the performance log 21 (S61). That is, the performance monitoring unit 130 calculates the access frequency in units of blocks in the analysis target tier pool from the performance information of the storage device 10 accumulated in the performance log 21 in the past certain period (eg, one week) as the average IOPS value. The access frequency is stored in the access frequency management table 360 in descending order.

次に、データ最適配置管理手段120は、QoS管理テーブル340を参照し、「Tier0に固定的にブロックを割り当てる」ボリュームが存在するか確認する(S62)。存在する場合、データ最適配置管理手段120は、当該ボリュームのブロックがTier0以外に存在するか否かを判定する(S63)。Tier0以外に存在するとは、ここでは、SASプール又はNL−SASプールに存在することとなる。   Next, the data optimum arrangement management unit 120 refers to the QoS management table 340 and confirms whether there is a volume that “allocates blocks fixedly to Tier 0” (S62). If it exists, the data optimum arrangement management unit 120 determines whether the block of the volume exists other than Tier 0 (S63). Here, it exists in the SAS pool or the NL-SAS pool that it exists other than Tier 0.

Tier0以外に存在する場合、データ最適配置管理手段120は、アクセス頻度管理テーブル360を参照し、「Tier0に固定的にブロックを割り当てる」ボリュームを除いて、Tier0に存在するブロックの内、アクセス頻度が最も低いブロックを特定する(S64)。そして、データ最適配置管理手段120は、特定したブロック(第3のデータブロック)と、Tier0以外に存在する「Tier0に固定的にブロックを割り当てる」ボリュームのブロック(第4のデータブロック)とを入れ替えるよう、ブロックの再配置を行う(S65)。再配置を行う際は、データ最適配置管理手段120は、ブロック間のデータ移動用の作業領域として、データ最適配置work領域12を使用する。   If it exists other than Tier 0, the data optimum arrangement management means 120 refers to the access frequency management table 360, and the access frequency of the blocks existing in Tier 0 is excluded, except for the volume that “allocates blocks fixedly to Tier 0”. The lowest block is specified (S64). Then, the data optimum arrangement management unit 120 replaces the identified block (third data block) with the block (fourth data block) of the volume “allocating blocks fixedly to Tier 0” existing other than Tier 0. In this manner, the blocks are rearranged (S65). When rearrangement is performed, the data optimum arrangement management unit 120 uses the data optimum arrangement work area 12 as a work area for data movement between blocks.

このようにして、アクセス頻度分析の結果、当該ボリュームのブロックへのアクセス頻度が他のボリュームのブロックへのアクセス頻度より低い場合であっても、当該ボリュームのブロックを最上位階層へ固定的に割り当て、下位階層へ再配置されてしまわないようにすることが出来る。   In this way, as a result of the access frequency analysis, even if the access frequency to the block of the volume is lower than the access frequency to the block of the other volume, the block of the volume is fixedly assigned to the highest hierarchy. , It can be prevented from being rearranged in the lower hierarchy.

尚、上記を言い換えると次のようになる。すなわち、前記記憶部は、前記複数のボリュームのデータブロック単位のアクセス頻度を管理するアクセス頻度管理情報をさらに記憶し、前記性能要件管理情報は、各ボリュームのそれぞれについて最上位階層に固定するか否かを示すフラグをさらに対応付け、前記ブロック再配置部は、前記アクセス頻度管理情報に基づいて前記複数のボリュームの各データブロックの再配置を行う際に、前記アクセス頻度が低く、前記フラグが最上位階層に固定しないことを示すボリューム及び前記最上位階層に関連付けられた第3のデータブロックと、前記フラグが最上位階層に固定することを示すボリューム及び前記下位階層に関連付けられた第4のデータブロックとの入れ替えを行う。   In other words, the above is as follows. That is, the storage unit further stores access frequency management information for managing the access frequency of the plurality of volumes in units of data blocks, and whether or not the performance requirement management information is fixed to the highest hierarchy for each volume. The block relocation unit further associates a flag indicating whether the access frequency is low and the flag is the highest when relocating each data block of the plurality of volumes based on the access frequency management information. A volume indicating that it is not fixed to the upper hierarchy and a third data block associated with the highest hierarchy, a volume indicating that the flag is fixed to the highest hierarchy, and a fourth data associated with the lower hierarchy Replace with block.

以上により、データ最適配置機能とQoS機能を併用しつつ、設定したIOPS下限値のQoSを維持できなくなる場合がある課題と、最上位階層の高速デバイスに即座にまたは継続的に配置させたい場合は、階層プールとは別のプールが必要となり、余分なコストがかかる、という課題を解決できる。   As described above, there are cases where the QoS of the set IOPS lower limit value cannot be maintained while using both the optimal data placement function and the QoS function, and when it is desired to immediately or continuously place the QoS on the highest-level device. Therefore, it is possible to solve the problem that a separate pool from the tiered pool is required and extra cost is required.

すなわち、本発明の実施の形態により、データ最適配置機能とQoS機能を併用させつつ、アクセス頻度の分析結果に応じた階層間のブロック再配置の影響を受けることなく、IOPS下限値を指定したボリュームのデータブロックの高速デバイス(=最上位階層)への即時割り当てを行えることができる。その理由は、本発明の実施の形態では、階層プールの最上位階層に空き領域が無い場合であっても、下位階層に存在するIOPS下限値を設定したボリュームのデータブロックと、最上位階層に存在するIOPS下限値を設定していないボリュームのデータブロックを入れ替えることで、当該ボリュームのブロックを、階層プールの最上位階層(Tier0)に即座に再配置可能とできるためである。これにより、設定したIOPS下限値以上の性能を速やかに確保することができる。   That is, according to the embodiment of the present invention, a volume in which an IOPS lower limit value is specified without being affected by block rearrangement between hierarchies according to an access frequency analysis result while using both the data optimum arrangement function and the QoS function. Can be immediately assigned to a high-speed device (= highest hierarchy). The reason for this is that, in the embodiment of the present invention, even when there is no free space in the highest tier of the tier pool, the data block of the volume set with the IOPS lower limit value existing in the lower tier and the top tier This is because by replacing the data block of a volume that does not have an existing IOPS lower limit value, the block of the volume can be immediately relocated to the highest tier (Tier0) of the tier pool. Thereby, the performance more than the set IOPS lower limit can be secured quickly.

また、IOPS下限値を設定したボリュームを、アクセス頻度の分析結果に基づくブロック再配置の対象から除外することで、アクセス頻度に関わらず、当該ボリュームのブロックを最上位階層の高速デバイスに固定配置させて、IOPS下限値性能を確保することができる。   In addition, by excluding the volume for which the IOPS lower limit value has been set from the block relocation target based on the analysis result of the access frequency, the block of the volume is fixedly allocated to the high-speed device in the highest hierarchy regardless of the access frequency. Thus, the IOPS lower limit performance can be ensured.

<その他の実施の形態>
本発明によれば、ボリューム単位のIOPS上限値/下限値制御によるQoS機能と、ブロック単位のデータ最適配置機能の両方を有するストレージ装置やストレージ管理ソフトウェアの用途に適用できる。
<Other embodiments>
According to the present invention, the present invention can be applied to the use of a storage apparatus or storage management software having both a QoS function based on IOPS upper limit value / lower limit value control in volume units and a data optimum arrangement function in block units.

なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。   Note that the present invention is not limited to the above-described embodiment, and can be changed as appropriate without departing from the spirit of the present invention.

また、上述の実施の形態では、本発明をハードウェアの構成として説明したが、本発明は、これに限定されるものではない。本発明は、任意の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。   In the above-described embodiments, the present invention has been described as a hardware configuration, but the present invention is not limited to this. The present invention can also realize arbitrary processing by causing a CPU (Central Processing Unit) to execute a computer program.

上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、DVD(Digital Versatile Disc)、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。   In the above example, the program can be stored and supplied to a computer using various types of non-transitory computer readable media. Non-transitory computer readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (for example, flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (for example, magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / W, DVD (Digital Versatile Disc), semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM (Random Access Memory)) are included. The program may also be supplied to the computer by various types of transitory computer readable media. Examples of transitory computer readable media include electrical signals, optical signals, and electromagnetic waves. The temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.

1000 ストレージ装置
1100 記憶部
1110 性能要件管理情報
1120 ブロック管理情報
1200 ブロック再配置部
1 ストレージ管理システム
10 ストレージ装置
11 メモリ
12 データ最適配置work領域
100 ストレージ管理プログラム
110 QoS管理手段
120 データ最適配置管理手段
130 性能監視手段
21 性能ログ
310 階層プール管理テーブル
320 プール管理テーブル
330 ボリューム管理テーブル
340 QoS管理テーブル
350 データ最適配置管理テーブル
360 アクセス頻度管理テーブル
LD1 ボリューム
LD2 ボリューム
LD3 ボリューム
LD4 ボリューム
T0 階層プール
T1 階層プール
T2 階層プール
S1 SSD
H1 HDD
N1 ストレージエリアネットワーク
N2 ローカルエリアネットワーク
500 管理コンソール
501 ストレージ管理クライアントプログラム
510 ホスト計算機
520 ホスト計算機
1000 storage device 1100 storage unit 1110 performance requirement management information 1120 block management information 1200 block relocation unit 1 storage management system 10 storage device 11 memory 12 data optimal allocation work area 100 storage management program 110 QoS management unit 120 data optimal allocation management unit 130 Performance monitoring means 21 Performance log 310 Hierarchical pool management table 320 Pool management table 330 Volume management table 340 QoS management table 350 Data optimal allocation management table 360 Access frequency management table LD1 Volume LD2 Volume LD3 Volume LD4 Volume T0 Hierarchical pool T1 Hierarchical pool T2 Hierarchy Pool S1 SSD
H1 HDD
N1 Storage area network N2 Local area network 500 Management console 501 Storage management client program 510 Host computer 520 Host computer

Claims (7)

複数のボリュームのそれぞれにおける性能要件の下限値の設定を管理する性能要件管理情報と、
前記複数のボリュームの各データブロックについて、階層プールにおける階層と、所属するボリュームとを関連付けて管理するブロック管理情報と、
を記憶する記憶部と、
前記性能要件管理情報及び前記ブロック管理情報を参照し、最上位階層及び前記性能要件の下限値が未設定のボリュームに関連付けられた第1のデータブロックと、下位階層及び前記性能要件の下限値が設定されたボリュームに関連付けられた第2のデータブロックとの入れ替えを行うブロック再配置部と、
を備えるストレージ装置。
Performance requirement management information for managing the setting of the lower limit value of the performance requirement for each of the multiple volumes,
For each data block of the plurality of volumes, block management information for managing the tier in the tier pool in association with the volume to which it belongs,
A storage unit for storing
Referring to the performance requirement management information and the block management information, the first data block associated with the highest tier and the volume for which the lower limit value of the performance requirement is not set, the lower tier and the lower limit value of the performance requirement are A block rearrangement unit that replaces the second data block associated with the set volume;
A storage device comprising:
前記第2のデータブロックに対する再配置の即時要求を受け付ける受付部をさらに備え、
前記ブロック再配置部は、前記即時要求に応じて、前記第1のデータブロックと前記第2のデータブロックとの入れ替えを行う
請求項1に記載のストレージ装置。
A reception unit that receives an immediate request for relocation with respect to the second data block;
The storage apparatus according to claim 1, wherein the block rearrangement unit replaces the first data block and the second data block in response to the immediate request.
前記ブロック再配置部は、
前記ブロック管理情報を参照し、前記最上位階層に関連付けられ、かつ、データが格納されていないデータブロックである空きブロックが存在するか否かを判定し、
前記空きブロックが存在すると判定した場合、当該空きブロックに前記第2のデータブロックを割り当て、
前記空きブロックが存在しないと判定した場合、前記第1のデータブロックと前記第2のデータブロックとの入れ替えを行う
請求項1又は2に記載のストレージ装置。
The block rearrangement unit
Referring to the block management information, determining whether there is a free block that is associated with the highest hierarchy and is a data block in which no data is stored;
If it is determined that the empty block exists, the second data block is allocated to the empty block;
The storage apparatus according to claim 1 or 2, wherein when it is determined that the empty block does not exist, the first data block and the second data block are exchanged.
前記記憶部は、前記複数のボリュームのデータブロック単位のアクセス頻度を管理するアクセス頻度管理情報をさらに記憶し、
前記性能要件管理情報は、各ボリュームのそれぞれについて最上位階層に固定するか否かを示すフラグをさらに対応付け、
前記ブロック再配置部は、
前記アクセス頻度管理情報に基づいて前記複数のボリュームの各データブロックの再配置を行う際に、前記アクセス頻度が低く、前記フラグが最上位階層に固定しないことを示すボリューム及び前記最上位階層に関連付けられた第3のデータブロックと、前記フラグが最上位階層に固定することを示すボリューム及び前記下位階層に関連付けられた第4のデータブロックとの入れ替えを行う
請求項1乃至3のいずれか1項に記載のストレージ装置。
The storage unit further stores access frequency management information for managing an access frequency of the plurality of volumes in units of data blocks,
The performance requirement management information further associates a flag indicating whether or not each volume is fixed to the highest tier,
The block rearrangement unit
When relocating each data block of the plurality of volumes based on the access frequency management information, the access frequency is low, and the flag indicates that the flag is not fixed to the highest hierarchy, and is associated with the highest hierarchy The third data block thus selected is replaced with a volume indicating that the flag is fixed to the highest hierarchy and a fourth data block associated with the lower hierarchy. The storage device described in 1.
前記性能要件は、IOPS(Input/Output Per Second)を含む
請求項1乃至4のいずれか1項に記載のストレージ装置。
The storage apparatus according to any one of claims 1 to 4, wherein the performance requirement includes IOPS (Input / Output Per Second).
複数のボリュームのそれぞれにおける性能要件の下限値の設定を管理する性能要件管理情報、及び、前記複数のボリュームの各データブロックについて、階層プールにおける階層と、所属するボリュームとを関連付けて管理するブロック管理情報を参照し、
最上位階層及び前記性能要件の下限値が未設定のボリュームに関連付けられた第1のデータブロックと、下位階層及び前記性能要件の下限値が設定されたボリュームに関連付けられた第2のデータブロックとの入れ替えを行う
ストレージ管理方法。
Performance requirement management information for managing the setting of the lower limit value of the performance requirement in each of the plurality of volumes, and block management for managing the data blocks of the plurality of volumes in association with the tiers in the tier pool and the volumes to which the volumes belong. See information,
A first data block associated with a volume in which a lower limit value of the highest tier and the performance requirement is not set, and a second data block associated with a volume in which the lower tier and the lower limit value of the performance requirement are set; Storage management method to replace
複数のボリュームのそれぞれにおける性能要件の下限値の設定を管理する性能要件管理情報、及び、前記複数のボリュームの各データブロックについて、階層プールにおける階層と、所属するボリュームとを関連付けて管理するブロック管理情報を参照する処理と
最上位階層及び前記性能要件の下限値が未設定のボリュームに関連付けられた第1のデータブロックと、下位階層及び前記性能要件の下限値が設定されたボリュームに関連付けられた第2のデータブロックとの入れ替えを行う処理と、
をコンピュータに実行させるストレージ管理プログラム。
Performance requirement management information for managing the setting of the lower limit value of the performance requirement in each of the plurality of volumes, and block management for managing the data blocks of the plurality of volumes in association with the tiers in the tier pool and the volumes to which the volumes belong. Information reference processing, first data block associated with the highest tier and volume for which the lower limit value of the performance requirement is not set, and lower volume and associated with the volume for which the lower limit value of the performance requirement is set A process of replacing the second data block;
A storage management program that causes a computer to execute.
JP2017065546A 2017-03-29 2017-03-29 Storage device, storage management method, and storage management program Active JP6555290B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017065546A JP6555290B2 (en) 2017-03-29 2017-03-29 Storage device, storage management method, and storage management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017065546A JP6555290B2 (en) 2017-03-29 2017-03-29 Storage device, storage management method, and storage management program

Publications (2)

Publication Number Publication Date
JP2018169728A true JP2018169728A (en) 2018-11-01
JP6555290B2 JP6555290B2 (en) 2019-08-07

Family

ID=64018773

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017065546A Active JP6555290B2 (en) 2017-03-29 2017-03-29 Storage device, storage management method, and storage management program

Country Status (1)

Country Link
JP (1) JP6555290B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012066671A1 (en) * 2010-11-18 2012-05-24 株式会社日立製作所 Management device for computing system and method of management
JP2015515072A (en) * 2012-04-20 2015-05-21 エンモータス・インコーポレイテッドEnmotus Inc. Storage system having data management mechanism and operation method thereof
JP2016511474A (en) * 2013-10-28 2016-04-14 株式会社日立製作所 Deduplication and host-based QoS in tiered storage
JP2016181197A (en) * 2015-03-25 2016-10-13 日本電気株式会社 Information processing device, method, and program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012066671A1 (en) * 2010-11-18 2012-05-24 株式会社日立製作所 Management device for computing system and method of management
JP2015515072A (en) * 2012-04-20 2015-05-21 エンモータス・インコーポレイテッドEnmotus Inc. Storage system having data management mechanism and operation method thereof
JP2016511474A (en) * 2013-10-28 2016-04-14 株式会社日立製作所 Deduplication and host-based QoS in tiered storage
JP2016181197A (en) * 2015-03-25 2016-10-13 日本電気株式会社 Information processing device, method, and program

Also Published As

Publication number Publication date
JP6555290B2 (en) 2019-08-07

Similar Documents

Publication Publication Date Title
JP5661921B2 (en) Computer system and management system
JP4684864B2 (en) Storage device system and storage control method
JP5771280B2 (en) Computer system and storage management method
WO2011077489A1 (en) Storage system for providing virtual volume
JP5555260B2 (en) Storage system that provides virtual volumes
JP4146380B2 (en) Storage system, block rearrangement control method, and program
JP5124551B2 (en) Computer system for managing volume allocation and volume allocation management method
JP5685676B2 (en) Computer system and data management method
JP5668151B2 (en) Computer system management apparatus and management method
CN107092442B (en) Storage system resource allocation method and device
JP6067819B1 (en) Hierarchical storage system, storage controller, and method for deduplication and storage tiering
JP5080611B2 (en) Storage device to which Thin Provisioning is applied
JP5131271B2 (en) Combination determination program, combination determination device, and combination determination method
JP2010086424A (en) Device for managing storage device
JP6340439B2 (en) Storage system
JP6142685B2 (en) Storage system, operation management method, and operation management program
WO2017145375A1 (en) Storage system
WO2015198441A1 (en) Computer system, management computer, and management method
JP2018197933A (en) Storage control device, information processing system and program
JP5730446B1 (en) Hierarchical storage system with trial area, storage controller and program
JP2015022327A (en) Data rearrangement device and method and program
JP2019191997A (en) Storage system, method of controlling storage system, and management node
WO2015056332A1 (en) Storage device, and control method
JP6555290B2 (en) Storage device, storage management method, and storage management program
JP2013125437A (en) Control device, program, and storage device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190320

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190409

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190524

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190611

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190624

R150 Certificate of patent or registration of utility model

Ref document number: 6555290

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150