(57)【要約】      （修正有）【課題】耐障害性及び性能の低下を抑制しつつ、ディスクアレイの記憶領域におけるデータ効率の向上を図り得る、ストレージ装置、ストレージシステム、ディスクアレイ制御方法、及びプログラムを提供する。【解決手段】ストレージ装置Ｓ−ｎは、ディスクアレイＡ−ｉ〜ｊと、各ディスクアレイの記憶領域をエクステントに分割し、エクステントを論理ボリュームに割り当てるディスクアレイ制御部ＤＥ−ｎとを備えている。ディスクアレイ制御部は、移転元エクステントの負荷が設定された条件を満たさない場合に、その論理ボリュームを特定し、これを、論理ボリューム毎のポリシーが登録されているポリシーテーブルに照合してポリシーを特定し、このポリシーに基づき、移転元エクステントのデータの移転先として選択可能なディスクアレイを検出する。ポリシーは、構築可能なディスクアレイの構成、データ処理の優先度、及び共有負荷となる論理ボリュームを含む。【選択図】図１
2011086077.tif 000002
【特許請求の範囲】
【請求項１】
外部から認識可能な複数の論理ボリュームが構築されているストレージ装置であって、
複数のディスクアレイと、
前記複数のディスクアレイそれぞれの記憶領域を複数個のエクステントに物理的に分割し、一又は二以上の前記エクステントを前記複数の論理ボリュームのいずれかに割り当てて、前記記憶領域を管理する、ディスクアレイ制御部とを備え、
前記ディスクアレイ制御部は、いずれかのエクステントの負荷が設定された条件を満たさない場合に、当該エクステントを移転元エクステントとして、前記移転元エクステントが割り当てられている論理ボリュームを特定し、
そして、前記複数の論理ボリュームそれぞれ毎のポリシーが登録されているポリシーテーブルに、特定した論理ボリュームを照合して、そのポリシーを特定し、
特定したポリシーに基づいて、前記移転元エクステントに記憶されているデータの移転先として選択可能なディスクアレイを検出し、
前記複数の論理ボリュームそれぞれ毎のポリシーは、当該論理ボリュームを構築可能なディスクアレイの構成、当該論理ボリュームに格納されているデータにおける処理の優先度、及び当該論理ボリュームと同一のディスクアレイに存在することが許容されていない他の論理ボリュームの識別子を含む、
ことを特徴とするストレージ装置。
【請求項２】
前記複数のディスクアレイそれぞれが、ＲＡＩＤ構成を有し、
前記ポリシーが、当該論理ボリュームを構築可能なディスクアレイの構成として、当該論理ボリュームを構築可能なＲＡＩＤ構成を含み、
前記ディスクアレイ制御部が、更に、前記複数のディスクアレイそれぞれ毎に、当該ディスクアレイが有するＲＡＩＤ構成の種類と、当該ディスクアレイの性能とが登録されたＲＡＩＤ対応テーブルを用いて、前記選択可能なディスクアレイを検出する、請求項１に記載のストレージ装置。
【請求項３】
前記ポリシーが、更に、前記複数の論理ボリュームそれぞれ毎に、当該論理ボリュームを構築可能なディスクアレイの性能を示す指標を含み、
前記ディスクアレイ制御部が、更に、
前記選択可能なディスクアレイ中のエクステントの中から、負荷が設定された条件を満たすエクステントを移転先候補エクステントとして選択し、
前記ポリシーテーブルを用いて、前記移転先候補エクステントが割り当てられている論理ボリュームのポリシーを特定し、
前記移転先候補エクステントが割り当てられている論理ボリュームのポリシーと、前記移転元エクステントが割り当てられている論理ボリュームのポリシーとを対比して、前記移転元エクステントのデータを前記移転先候補エクステントに移転可能かどうかを判定する、請求項１または２に記載のストレージ装置。
【請求項４】
前記ポリシーが、更に、前記複数の論理ボリュームそれぞれ毎に、当該論理ボリュームが構築されているディスクアレイが他の論理ボリュームに対して許容することができる許容負荷を含み、
前記ディスクアレイ制御部が、更に、前記移転先候補エクステントに移転可能と判定した場合に、
前記移転先候補エクステントを含むディスクアレイ中の他のエクステントについて、割り当てられている論理ボリュームのポリシーを特定し、
前記他のエクステントが割り当てられている論理ボリュームのポリシーと、前記移転元エクステントの負荷とを対比して、再度、前記移転元エクステントのデータを前記移転先候補エクステントに移転可能かどうかを判定する、請求項３に記載のストレージ装置。
【請求項５】
前記ディスクアレイ制御部が、前記移転元エクステントのデータを前記移転先候補エクステントに移転不可能であると判定した場合に、外部に、前記データの移転が不可能である旨を通知する、請求項３または４に記載のストレージ装置。
【請求項６】
前記複数のディスクアレイの全部又は一部が、予備のディスクを備えており、
前記ディスクアレイ制御部が、前記選択可能なディスクアレイとして、前記予備のディスクを備えたディスクアレイを検出した場合に、前記予備ディスクの記憶領域に設定されるエクステントを含めた、前記選択可能なディスクアレイ中のエクステントの中から、前記移転先候補エクステントを選択する、請求項３〜５のいずれかに記載のストレージ装置。
【請求項７】
前記ディスクアレイ制御部が、前記移転先候補エクステントとして、前記予備ディスクの記憶領域に設定されるエクステントを選択し、そして、前記移転元エクステントのデータを前記予備ディスクの記憶領域に設定されるエクステントに移転可能であると判定し、その後、前記移転元エクステントのデータが前記予備ディスクの記憶領域に設定されるエクステントに移転された場合に、
外部に、前記予備ディスクが使用されている旨を通知する、請求項６に記載のストレージ装置。
【請求項８】
当該ストレージ装置が、複数のディスクアレイを備える他のストレージ装置にネットワークを介して接続されている場合に、
前記ディスクアレイ制御部が、当該ストレージ装置が備えるディスクアレイに設定されたエクステントと、前記他のストレージ装置が備えるディスクアレイに設定されたエクステントとの中から、前記選択可能なディスクアレイを検出する、請求項１〜７のいずれかに記載のストレージ装置。
【請求項９】
ホスト装置と、前記ホスト装置から認識可能な複数の論理ボリュームが構築されているストレージ装置とを備え、
前記ストレージ装置は、複数のディスクアレイと、前記複数のディスクアレイそれぞれの記憶領域を複数個のエクステントに物理的に分割し、一又は二以上の前記エクステントを前記複数の論理ボリュームのいずれかに割り当てて、前記記憶領域を管理する、ディスクアレイ制御部とを備え、
前記ディスクアレイ制御部は、いずれかのエクステントの負荷が設定された条件を満たさない場合に、当該エクステントを移転元エクステントとして、前記移転元エクステントが割り当てられている論理ボリュームを特定し、
そして、前記複数の論理ボリュームそれぞれ毎のポリシーが登録されているポリシーテーブルに、特定した論理ボリュームを照合して、そのポリシーを特定し、
特定したポリシーに基づいて、前記移転元エクステントに記憶されているデータの移転先として選択可能なディスクアレイを検出し、
前記複数の論理ボリュームそれぞれ毎のポリシーは、少なくとも、当該論理ボリュームを構築可能なディスクアレイの構成、当該論理ボリュームに格納されているデータにおける処理の優先度、及び当該論理ボリュームと同一のディスクアレイに存在することが許容されていない他の論理ボリュームの識別子を含む、
ことを特徴とするストレージシステム。
【請求項１０】
前記複数のディスクアレイそれぞれが、ＲＡＩＤ構成を有し、
前記ポリシーが、当該論理ボリュームを構築可能なディスクアレイの構成として、当該論理ボリュームを構築可能なＲＡＩＤ構成を含み、
前記ディスクアレイ制御部が、更に、前記複数のディスクアレイそれぞれ毎に、当該ディスクアレイが有するＲＡＩＤ構成の種類と、当該ディスクアレイの性能とが登録されたＲＡＩＤ対応テーブルを用いて、前記選択可能なディスクアレイを検出する、請求項９に記載のストレージシステム。
【請求項１１】
前記ポリシーが、更に、前記複数の論理ボリュームそれぞれ毎に、当該論理ボリュームを構築可能なディスクアレイの性能を示す指標を含み、
前記ディスクアレイ制御部が、更に、
前記選択可能なディスクアレイ中のエクステントの中から、負荷が設定された条件を満たすエクステントを移転先候補エクステントとして選択し、
前記ポリシーテーブルを用いて、前記移転先候補エクステントが割り当てられている論理ボリュームのポリシーを特定し、
前記移転先候補エクステントが割り当てられている論理ボリュームのポリシーと、前記移転元エクステントが割り当てられている論理ボリュームのポリシーとを対比して、前記移転元エクステントのデータを前記移転先候補エクステントに移転可能かどうかを判定する、請求項９または１０に記載のストレージシステム。
【請求項１２】
前記ポリシーが、更に、前記複数の論理ボリュームそれぞれ毎に、当該論理ボリュームが構築されているディスクアレイが他の論理ボリュームに対して許容することができる許容負荷を含み、
前記ディスクアレイ制御部が、更に、前記移転先候補エクステントに移転可能と判定した場合に、
前記移転先候補エクステントを含むディスクアレイ中の他のエクステントについて、割り当てられている論理ボリュームのポリシーを特定し、
前記他のエクステントが割り当てられている論理ボリュームのポリシーと、前記移転元エクステントの負荷とを対比して、再度、前記移転元エクステントのデータを前記移転先候補エクステントに移転可能かどうかを判定する、請求項１１に記載のストレージシステム。
【請求項１３】
前記ディスクアレイ制御部が、前記移転元エクステントのデータを前記移転先候補エクステントに移転不可能であると判定した場合に、外部に、前記データの移転が不可能である旨を通知する、請求項１１または１２に記載のストレージシステム。
【請求項１４】
前記複数のディスクアレイの全部又は一部が、予備のディスクを備えており、
前記ディスクアレイ制御部が、前記選択可能なディスクアレイとして、前記予備のディスクを備えたディスクアレイを検出した場合に、前記予備ディスクの記憶領域に設定されるエクステントを含めた、前記選択可能なディスクアレイ中のエクステントの中から、前記移転先候補エクステントを選択する、請求項１１〜１３のいずれかに記載のストレージシステム。
【請求項１５】
前記ディスクアレイ制御部が、前記移転先候補エクステントとして、前記予備ディスクの記憶領域に設定されるエクステントを選択し、そして、前記移転元エクステントのデータを前記予備ディスクの記憶領域に設定されるエクステントに移転可能であると判定し、その後、前記移転元エクステントのデータが前記予備ディスクの記憶領域に設定されるエクステントに移転された場合に、
前記ホスト装置に、前記予備ディスクが使用されている旨を通知する、請求項１４に記載のストレージシステム。
【請求項１６】
前記ストレージ装置が複数備えられており、前記ストレージ装置それぞれは、互いに、ネットワークを介して接続されており、
前記ストレージ装置それぞれにおいて、前記ディスクアレイ制御部が、それが備えられたストレージ装置が備えるディスクアレイに設定されたエクステントと、他のストレージ装置が備えるディスクアレイに設定されたエクステントとの中から、前記選択可能なディスクアレイを検出する、請求項９〜１５のいずれかに記載のストレージシステム。
【請求項１７】
外部から認識可能な複数の論理ボリュームが構築されたストレージ装置において、それに備えられた複数のディスクアレイを制御するための方法であって、
（ａ）前記複数のディスクアレイそれぞれの記憶領域を複数個のエクステントに物理的に分割し、一又は二以上の前記エクステントを前記複数の論理ボリュームのいずれかに割り当てる、ステップと、
（ｂ）いずれかのエクステントの負荷が設定された条件を満たさない場合に、当該エクステントを移転元エクステントとして、前記移転元エクステントが割り当てられている論理ボリュームを特定する、ステップと、
（ｃ）前記複数の論理ボリュームそれぞれ毎の、当該論理ボリュームを構築可能なディスクアレイの構成、当該論理ボリュームに格納されているデータにおける処理の優先度、及び当該論理ボリュームと同一のディスクアレイに存在することが許容されていない他の論理ボリュームの識別子含む、ポリシーが登録されているポリシーテーブルに、前記（ｂ）のステップで特定した論理ボリュームを照合して、そのポリシーを特定する、ステップと、
（ｄ）前記（ｃ）のステップで特定したポリシーに基づいて、前記移転元エクステントに記憶されているデータの移転先として選択可能なディスクアレイを検出する、ステップと、を有することを特徴とするディスクアレイ制御方法。
【請求項１８】
前記複数のディスクアレイそれぞれが、ＲＡＩＤ構成を有しており、
前記（ｃ）のステップにおいて、前記ポリシーが、当該論理ボリュームを構築可能なディスクアレイの構成として、当該論理ボリュームを構築可能なＲＡＩＤ構成を含み、
前記（ｄ）のステップにおいて、前記複数のディスクアレイそれぞれ毎に、当該ディスクアレイが有するＲＡＩＤ構成の種類と、当該ディスクアレイの性能とが登録されたＲＡＩＤ対応テーブルを用いて、前記選択可能なディスクアレイを検出する、請求項１７に記載のディスクアレイ制御方法。
【請求項１９】
前記（ｃ）のステップにおいて、前記ポリシーが、更に、前記複数の論理ボリュームそれぞれ毎に、当該論理ボリュームを構築可能なディスクアレイの性能を示す指標を含み、（ｅ）前記選択可能なディスクアレイ中のエクステントの中から、負荷が設定された条件を満たすエクステントを移転先候補エクステントとして選択し、前記ポリシーテーブルを用いて、前記移転先候補エクステントが割り当てられている論理ボリュームのポリシーを特定する、ステップと、
（ｆ）前記移転先候補エクステントが割り当てられている論理ボリュームのポリシーと、前記移転元エクステントが割り当てられている論理ボリュームのポリシーとを対比して、前記移転元エクステントのデータを前記移転先候補エクステントに移転可能かどうかを判定する、ステップとを更に有する、請求項１７または１８に記載のディスクアレイ制御方法。
【請求項２０】
前記（ｃ）のステップにおいて、前記ポリシーが、更に、前記複数の論理ボリュームそれぞれ毎に、当該論理ボリュームが構築されているディスクアレイが他の論理ボリュームに対して許容することができる許容負荷を含み、
（ｇ）前記（ｆ）のステップで、前記移転先候補エクステントに移転可能と判定した場合に、前記移転先候補エクステントを含むディスクアレイ中の他のエクステントについて、割り当てられている論理ボリュームのポリシーを特定する、ステップと、
（ｈ）前記（ｇ）のステップの実行後に、前記他のエクステントが割り当てられている論理ボリュームのポリシーと、前記移転元エクステントの負荷とを対比して、再度、前記移転元エクステントのデータを前記移転先候補エクステントに移転可能かどうかを判定する、ステップとを更に有する、請求項１９に記載のディスクアレイ制御方法。
【請求項２１】
（ｉ）前記移転元エクステントのデータを前記移転先候補エクステントに移転不可能であると判定した場合に、外部に、前記データの移転が不可能である旨を通知する、ステップを更に有している、請求項１９または２０に記載のディスクアレイ制御方法。
【請求項２２】
前記複数のディスクアレイの全部又は一部が、予備のディスクを備えており、
前記（ｄ）のステップにおいて、前記選択可能なディスクアレイとして、前記予備のディスクを備えたディスクアレイを検出した場合に、前記（ｅ）のステップにおいて、前記予備ディスクの記憶領域に設定されるエクステントを含めた、前記選択可能なディスクアレイ中のエクステントの中から、前記移転先候補エクステントを選択する、請求項１９〜２１のいずれかに記載のディスクアレイ制御方法。
【請求項２３】
（ｊ）前記（ｅ）のステップにおいて、前記移転先候補エクステントとして、前記予備ディスクの記憶領域に設定されるエクステントを選択し、そして、前記（ｆ）のステップにおいて、前記移転元エクステントのデータを前記予備ディスクの記憶領域に設定されるエクステントに移転可能であると判定し、その後、前記移転元エクステントのデータが前記予備ディスクの記憶領域に設定されるエクステントに移転された場合に、
外部に、前記予備ディスクが使用されている旨を通知する、ステップを更に有する、請求項２２に記載のディスクアレイ制御方法。
【請求項２４】
前記ストレージ装置が複数存在し、前記ストレージ装置それぞれが、互いに、ネットワークを介して接続されている場合に、
前記（ｄ）のステップにおいて、複数の前記ストレージ装置が備えるディスクアレイに設定されたエクステントの中から、前記選択可能なディスクアレイを検出する、請求項１７〜２３のいずれかに記載のディスクアレイ制御方法。
【請求項２５】
外部から認識可能な複数の論理ボリュームが構築された複数のディスクアレイを、コンピュータによって制御するためのプログラムであって、
前記コンピュータに、
（ａ）前記複数のディスクアレイそれぞれの記憶領域を複数個のエクステントに物理的に分割し、一又は二以上の前記エクステントを前記複数の論理ボリュームのいずれかに割り当てる、ステップと、
（ｂ）いずれかのエクステントの負荷が設定された条件を満たさない場合に、当該エクステントを移転元エクステントとして、前記移転元エクステントが割り当てられている論理ボリュームを特定する、ステップと、
（ｃ）前記複数の論理ボリュームそれぞれ毎の、当該論理ボリュームを構築可能なディスクアレイの構成、当該論理ボリュームに格納されているデータにおける処理の優先度、及び当該論理ボリュームと同一のディスクアレイに存在することが許容されていない他の論理ボリュームの識別子含む、ポリシーが登録されているポリシーテーブルに、前記（ｂ）のステップで特定した論理ボリュームを照合して、そのポリシーを特定する、ステップと、
（ｄ）前記（ｃ）のステップで特定したポリシーに基づいて、前記移転元エクステントに記憶されているデータの移転先として選択可能なディスクアレイを検出する、ステップと、を実行させることを特徴とするプログラム。
【請求項２６】
前記複数のディスクアレイそれぞれが、ＲＡＩＤ構成を有しており、
前記（ｃ）のステップにおいて、前記ポリシーが、当該論理ボリュームを構築可能なディスクアレイの構成として、当該論理ボリュームを構築可能なＲＡＩＤ構成を含み、
前記（ｄ）のステップにおいて、前記複数のディスクアレイそれぞれ毎に、当該ディスクアレイが有するＲＡＩＤ構成の種類と、当該ディスクアレイの性能とが登録されたＲＡＩＤ対応テーブルを用いて、前記選択可能なディスクアレイを検出する、請求項２５に記載のプログラム。
【請求項２７】
前記（ｃ）のステップにおいて、前記ポリシーが、更に、前記複数の論理ボリュームそれぞれ毎に、当該論理ボリュームを構築可能なディスクアレイの性能を示す指標を含み、（ｅ）前記選択可能なディスクアレイ中のエクステントの中から、負荷が設定された条件を満たすエクステントを移転先候補エクステントとして選択し、前記ポリシーテーブルを用いて、前記移転先候補エクステントが割り当てられている論理ボリュームのポリシーを特定する、ステップと、
（ｆ）前記移転先候補エクステントが割り当てられている論理ボリュームのポリシーと、前記移転元エクステントが割り当てられている論理ボリュームのポリシーとを対比して、前記移転元エクステントのデータを前記移転先候補エクステントに移転可能かどうかを判定する、ステップとを、更に前記コンピュータに実行させる、請求項２５または２６に記載のプログラム。
【請求項２８】
前記（ｃ）のステップにおいて、前記ポリシーが、更に、前記複数の論理ボリュームそれぞれ毎に、当該論理ボリュームが構築されているディスクアレイが他の論理ボリュームに対して許容することができる許容負荷を含み、
（ｇ）前記（ｆ）のステップで、前記移転先候補エクステントに移転可能と判定した場合に、前記移転先候補エクステントを含むディスクアレイ中の他のエクステントについて、割り当てられている論理ボリュームのポリシーを特定する、ステップと、
（ｈ）前記（ｇ）のステップの実行後に、前記他のエクステントが割り当てられている論理ボリュームのポリシーと、前記移転元エクステントの負荷とを対比して、再度、前記移転元エクステントのデータを前記移転先候補エクステントに移転可能かどうかを判定する、ステップとを、更に前記コンピュータに実行させる、請求項２７に記載のプログラム。
【請求項２９】
（ｉ）前記移転元エクステントのデータを前記移転先候補エクステントに移転不可能であると判定した場合に、外部に、前記データの移転が不可能である旨を通知する、ステップを、更に前記コンピュータに実行させる、請求項２７または２８に記載のプログラム。
【請求項３０】
前記複数のディスクアレイの全部又は一部が、予備のディスクを備えており、
前記（ｄ）のステップにおいて、前記選択可能なディスクアレイとして、前記予備のディスクを備えたディスクアレイを検出した場合に、前記（ｅ）のステップにおいて、前記予備ディスクの記憶領域に設定されるエクステントを含めた、前記選択可能なディスクアレイ中のエクステントの中から、前記移転先候補エクステントを選択する、請求項２７〜２９のいずれかに記載のプログラム。
【請求項３１】
（ｊ）前記（ｅ）のステップにおいて、前記移転先候補エクステントとして、前記予備ディスクの記憶領域に設定されるエクステントを選択し、そして、前記（ｆ）のステップにおいて、前記移転元エクステントのデータを前記予備ディスクの記憶領域に設定されるエクステントに移転可能であると判定し、その後、前記移転元エクステントのデータが前記予備ディスクの記憶領域に設定されるエクステントに移転された場合に、
外部に、前記予備ディスクが使用されている旨を通知する、ステップを、更に前記コンピュータに実行させる、請求項３０に記載のプログラム。
【請求項３２】
前記ストレージ装置が複数存在し、前記ストレージ装置それぞれが、互いに、ネットワークを介して接続されている場合に、
前記（ｄ）のステップにおいて、複数の前記ストレージ装置が備えるディスクアレイに設定されたエクステントの中から、前記選択可能なディスクアレイを検出する、請求項２５〜３１のいずれかに記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、論理ボリュームをホスト装置に認識させるストレージ装置、それを備えたストレージシステム、ストレージ装置内のディスクアレイを制御するための方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、ＩＴの普及により、処理装置が使用するデータ量、及びデータ処理量は、年々増加している。それに伴い、記憶媒体は大容量化し、処理装置の処理速度は高速化されてきている。これに対して、磁気ディスクであるハードディスクドライブ（ＨＤＤ）の処理時間の高速化は、他の処理装置の進歩と比較して、向上度合いが低いという状況にある。この結果、このＨＤＤの処理時間がシステム全体のボトルネックとなり、システム全体の処理に影響を与えることがある。
【０００３】
このため、高速処理を必要とするシステムを運用する場合は、高性能なストレージ装置が用意される。通常、このような高性能なストレージ装置では、ストレージ内で複数のＨＤＤがＲＡＩＤ（Redundant Arrays of Independent Disks、又はRedundant Arrays of Inexpensive Disks）を構成する。ＲＡＩＤ構成により、ＨＤＤへの処理が分散されるので、高速化が図られると考えられる。
【０００４】
しかしながら、ＨＤＤには、その構造的な理由、つまり、ヘッドの移動によるシーク時間等の短縮に限界があるために、連続してアクセスされる２以上のデータが互いに離れた位置に存在している場合に、処理に多くの時間がかかってしまうという問題がある。また、同時に同一のＨＤＤ内の複数の領域でそれぞれアクセス（以下「Ｉ／Ｏ」とする。）が発生した場合、同時には、これらＩ／Ｏを処理できず、一方の処理が終了するまで、他方の処理を待たなければならないという問題もある。
【０００５】
そして、このような背景の下、特許文献１は、ＨＤＤの記憶領域をある大きさに区切り、各部分での単位当りのデータ処理量に基づいて、記憶領域に記憶されているデータを最適化する方法を開示している。特許文献１に開示する方法によれば、ＨＤＤの利用効率が高められるため、上記の問題は解消すると考えられる。
【０００６】
ここで、特許文献１に開示の方法について具体的に説明する。特許文献１に開示の方法では、先ず、ＲＡＩＤ構成をしているＨＤＤ群（ディスクアレイ）の記憶領域は、ある一定のサイズの領域（以下「エクステント」という。）に分けられる。次に、対象となるＨＤＤについて、又は対象となるＨＤＤ内の複数のエクステントチャンクについてＩ／Ｏ存在率が求められ、このＩ／Ｏ存在率に基づいて、エクステント単位でデータの再配置が実行される。
【０００７】
上記において、エクステントチャンクとは、あるエクステントをＨＤＤ毎に分割したときの、ＨＤＤ単体における、エクステントの構成領域をいう。また、Ｉ／Ｏ存在率としては、「同時Ｉ／Ｏ存在率」、「エクステントチャンクＩ／Ｏ存在率」、「ＨＤＤＩ／Ｏ存在率」が用いられる。
【０００８】
このうち、同時Ｉ／Ｏ存在率は、あるＨＤＤ内の複数のエクステントチャンクにおいて、同時に実行中のＩ／Ｏが存在している確率であり、エクステントチャンク毎に算出される。また、Ｉ／Ｏが存在している確率の計算では、先ず、ＨＤＤアレイの中から選択された代表ＨＤＤのエクステントチャンク毎に、サンプリングの度に、同時に実行されるＩ／Ｏが存在すると、カウンタ値がインクリメント（＋１）される。そして、サンプリング期間中のカウンタ値がサンプリング回数で除され、得られた値が、Ｉ／Ｏが存在している確率、即ち、同時Ｉ／Ｏ存在率となる。
【０００９】
また、エクステントチャンクＩ／Ｏ存在率は、代表ＨＤＤ内の任意のエクステントチャンクにおいて、実行中のＩ／Ｏが存在している確率である。エクステントチャンクＩ／Ｏ存在率もエクステントチャンク毎に算出される。この場合のＩ／Ｏが存在している確率の計算では、先ず、代表ＨＤＤのエクステントチャンク毎に、サンプリングの度に、１以上のＩ／Ｏが存在すると、カウンタ値がインクリメント（＋１）される。そして、サンプリング期間中のカウンタ値がサンプリング回数で除され、得られた値が、Ｉ／Ｏが存在している確率、即ち、エクステントチャンクＩ／Ｏ存在率となる。
【００１０】
更に、ＨＤＤＩ／Ｏ存在率は、代表ＨＤＤにおいて実行中のＩ／Ｏが少なくとも一つ存在している確率であり、代表ＨＤＤ毎に算出される。この場合のＩ／Ｏが存在している確率の計算では、先ず、サンプリングの度に、代表ＨＤＤのいずれかのエクステントチャンクで少なくとも一つ以上のＩ／Ｏが存在すると、カウンタ値がインクリメント（＋１）される。そして、サンプリング期間中のカウンタ値がサンプリング回数で除され、得られた値が、Ｉ／Ｏが存在している確率、即ち、ＨＤＤＩ／Ｏ存在率となる。
【００１１】
このように、特許文献１の開示方法では、データの再配置は、主にエクステント単位で行われる。そして、再配置対象となるデータは、元のアレイのエクステントから、他のアレイのエクステントへと再配置され、最適化されるので、ＨＤＤにおける処理の高速化が図られる。
【００１２】
ところで、ＨＤＤが、Ｉ／Ｏを処理する場合、上述したようにシーケンシャルに処理を行う。そのため、一度に複数のＩ／Ｏの処理が要求されても、ＨＤＤは、これらを同時には、処理できず、一つずつ処理していくことになる。また、ＨＤＤ内の同じ領域で実行されるＩ／Ｏが多く存在する場合であっても、ＨＤＤは、同様に一つずつＩ／Ｏを処理していく。
【００１３】
このため、ＨＤＤが一つのＩ／Ｏを処理している間、処理を待っているＩ／Ｏが存在する。このとき、多くのＩ／Ｏが存在する領域が、別のＨＤＤの領域に移転するように、データを再配置しても、その領域に存在するＩ／Ｏの数は同じであるため、結局Ｉ／Ｏの処理待ち（以下アイドル状態）は発生する。
【００１４】
これに対して、特許文献１の開示方法では、記憶領域の利用効率を高めるためのデータの再配置が、同一のＨＤＤ内の異なる複数の領域で同時に実行されるＩ／Ｏの発生頻度に基づいて行われる。また、ＨＤＤにおける複数の領域で実行されるＩ／Ｏの総和が多い場合は、ＨＤＤ内の同一領域での負荷が高い場合と同様に、アイドル状態が発生する。なお、各領域単独で見るとＩ／Ｏの数がそれほど多いわけではない。
【００１５】
従って、特許文献１の開示方法によって、データが、同時に実行されるＩ／Ｏの発生頻度が少ないＨＤＤに再配置されれば、各Ｉ／Ｏのアイドル状態が減り、処理の高速化が達成される。また、特許文献１の開示方法によれば、単純なＨＤＤへのアクセス頻度に基づいてデータの再配置が行われる場合と異なり、効果的な負荷分散が可能となる。更に、上述したように、エクステントと呼ばれる小さな領域に基づいて、データの再配置が可能であるため、再配置にかかる負荷が小さくなり、より細かいレベルでの負荷分散とアクセス速度向上の調整とが実行可能となる。
【００１６】
また、上述したようにＩ／Ｏの数の測定は、代表ＨＤＤについて行われるのに対して、データの再配置は、エクステント単位で行われているが、特に問題が生じることはない。これは、基本的に、ＲＡＩＤを構成しているＨＤＤ群に対するＩ／Ｏは、ストライピングされるため、各ＨＤＤにおいて、Ｉ／Ｏの数はほぼ同じと考えることが出来るからである。よって、アレイ中から、一つのＨＤＤを代表として選択し、これに対して測定を行った場合でも、全てのＨＤＤを測定した場合のデータに近い値を求めることが出来る。
【００１７】
更に、上述したように、各ＨＤＤへ分散してＩ／Ｏが発生し、実際の業務の処理の単位はエクステント単位になると考えられる。このため、特許文献１の開示方法によって、エクステント単位でデータを再配置しても大きな問題が生じることはない。
【先行技術文献】
【特許文献】
【００１８】
【特許文献１】特開２００８−４６７６３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１９】
しかしながら、上記特許文献１に開示された方法には、以下に示す問題点が存在する。第１の問題点は、データ再配置の判断材料として用いられるのがＩ／Ｏ存在率だけであり、Ｉ／Ｏ存在率の大小のみに基づいてデータの再配置が行われるため、耐障害性が低下するという問題である。
【００２０】
一般に、わざわざＨＤＤの容量効率を下げてまでＲＡＩＤ構成を使用する理由として、処理の高速化という点以外に、保存してあるデータの耐障害性の向上が挙げられる。そして、処理の高速化及び耐障害性は、構成されるＲＡＩＤの種類によって変化するが、求められる耐障害性は使用されるデータによって変化する。
【００２１】
このため、ＲＡＩＤ構成は、初期の設計時において、使用されるデータの要件に応じて設計されている。このとき、例え性能が多少落ちてもデータ損失を防ぎたいと言う場合は、多少性能が悪くても冗長性が高いＲＡＩＤ構成とされる。これに対して、上記特許文献１に開示された方法では、データの再配置は、ＲＡＩＤ構成の設計を考慮して行われないため、ＨＤＤアレイの障害発生時において、システム全体に大きな問題が発生する可能性があり、結果、耐障害性が低下してしまう。
【００２２】
第２の問題点は、データ再配置が実行されたときに、重要業務に影響がでる可能性がある点である。通常、基幹業務のデータベースのような常に最高のパフォーマンスを求められるシステムでは、処理性能の向上及び問題の発生の回避を図るため、あえてＨＤＤの容量を全て使わない構成や、重要なデータが負荷の低い領域に配置された構成とされることがある。
【００２３】
このとき、使用されていない又は負荷が低いという理由で、このような領域に、他のアレイのデータが再配置されたとする。この結果、基幹業務のデータベースの負荷が高くなったときに、再配置されたデータの処理により、データベースの処理に影響がでる可能性がある。また、この場合においても、システム全体に大きな問題が発生する可能性がある。
【００２４】
第３の問題点は、データの再配置によって、逆に、システムの処理性能が低下する可能性がある点である。つまり、発生するＩ／Ｏの数が少ないアレイへとデータが再配置されても、この再配置先のアレイを構成するＨＤＤの性能が低い場合、逆に、システムの処理性能が低下してしまう。
【００２５】
例えば、データが、ＳＡＳ（Serial Attached SCSI）ディスク、及びＦＣ（Fibre Channel）ディスク等の高速ディスクから、ＳＡＴＡ（Serial ATA）ディスクのような低速ディスクへ配置された場合が挙げられる。このように、データが、回転数が高いＨＤＤから回転数の低いＨＤＤへと再配置された場合、再配置によって処理速度が低下する可能性がある。
【００２６】
第４の問題点は、物理的に分散すべきデータが一箇所に集められてしまい、結果、耐障害性が低下してしまう可能性がある点である。この点についてデータベースを例に挙げて説明する。
【００２７】
例えば、データベースに物理障害が発生したときに、バックアップデータをリストアしたデータファイルが、障害が発生した直前のものではなかったとしても、ログファイルや制御ファイル等が、障害が発生する直前のものまであれば、それらを基にリカバリをすることで障害が発生した直前の状態までデータベースの復旧は可能である。一方、障害発生の直前までのログファイル等が存在していない場合は、バックアップデータをリストアした古いデータファイルに対してデータベースのリカバリを行うときに、障害が発生した直前までのログファイル等が存在しないこととなる。このため、存在しない分の間にあった更新情報等をデータベースに反映出来なくなり、障害が発生した直前の状態までデータベースの復旧を行うことは極めて難しくなる。
【００２８】
よって、データベースでは、通常、ログファイルや制御ファイル等は、物理的な障害が発生しても、その使用が可能となるように、データファイルの保存領域とは物理的に別の領域に保持される。また、データベースでは、物理障害対策としてログファイル等を多重化させる場合もある。この場合は、多重化によって生成された各ファイルは、物理的に分けられた別々の保存領域で保持され、耐障害性が更に高められる。
【００２９】
しかし、上記特許文献１に開示された方法をデータベースにそのまま適用した場合は、データベースでの負荷によっては、データファイルと、ログファイルや制御ファイル等が、同一の領域に保持されてしまう危険性がある。また、多重化によって生成されたファイル間でも同様の危険性がある。
【００３０】
そして、これらが同一の領域に保持されてしまった場合は、物理障害が発生したときに、データベースを復旧することが困難となり、耐障害性が低下してしまう。また、データベースに限らず、幾つかのデータを同一の記憶領域に保持すべきではないシステムが存在する場合に、このシステムに、上記特許文献１に開示された方法を適用した場合も、システムの耐障害性は低下してしまう。
【００３１】
本発明の目的は、上記問題を解消し、耐障害性及び性能の低下を抑制しつつ、ディスクアレイの記憶領域におけるデータ効率の向上を図り得る、ストレージ装置、ストレージシステム、ディスクアレイ制御方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【００３２】
上記目的を達成するため、本発明におけるストレージ装置は、外部から認識可能な複数の論理ボリュームが構築されているストレージ装置であって、
複数のディスクアレイと、
前記複数のディスクアレイそれぞれの記憶領域を複数個のエクステントに物理的に分割し、一又は二以上の前記エクステントを前記複数の論理ボリュームのいずれかに割り当てて、前記記憶領域を管理する、ディスクアレイ制御部とを備え、
前記ディスクアレイ制御部は、いずれかのエクステントの負荷が設定された条件を満たさない場合に、当該エクステントを移転元エクステントとして、前記移転元エクステントが割り当てられている論理ボリュームを特定し、
そして、前記複数の論理ボリュームそれぞれ毎のポリシーが登録されているポリシーテーブルに、特定した論理ボリュームを照合して、そのポリシーを特定し、
特定したポリシーに基づいて、前記移転元エクステントに記憶されているデータの移転先として選択可能なディスクアレイを検出し、
前記複数の論理ボリュームそれぞれ毎のポリシーは、当該論理ボリュームを構築可能なディスクアレイの構成、当該論理ボリュームに格納されているデータにおける処理の優先度、及び当該論理ボリュームと同一のディスクアレイに存在することが許容されていない他の論理ボリュームの識別子を含む、
ことを特徴とする。
【００３３】
上記目的を達成するため、本発明におけるストレージシステムは、ホスト装置と、前記ホスト装置から認識可能な複数の論理ボリュームが構築されているストレージ装置とを備え、
前記ストレージ装置は、複数のディスクアレイと、前記複数のディスクアレイそれぞれの記憶領域を複数個のエクステントに物理的に分割し、一又は二以上の前記エクステントを前記複数の論理ボリュームのいずれかに割り当てて、前記記憶領域を管理する、ディスクアレイ制御部とを備え、
前記ディスクアレイ制御部は、いずれかのエクステントの負荷が設定された条件を満たさない場合に、当該エクステントを移転元エクステントとして、前記移転元エクステントが割り当てられている論理ボリュームを特定し、
そして、前記複数の論理ボリュームそれぞれ毎のポリシーが登録されているポリシーテーブルに、特定した論理ボリュームを照合して、そのポリシーを特定し、
特定したポリシーに基づいて、前記移転元エクステントに記憶されているデータの移転先として選択可能なディスクアレイを検出し、
前記複数の論理ボリュームそれぞれ毎のポリシーは、少なくとも、当該論理ボリュームを構築可能なディスクアレイの構成、当該論理ボリュームに格納されているデータにおける処理の優先度、及び当該論理ボリュームと同一のディスクアレイに存在することが許容されていない他の論理ボリュームの識別子を含む、
ことを特徴とする。
【００３４】
また、上記目的を達成するため、本発明におけるディスクアレイ制御方法は、外部から認識可能な複数の論理ボリュームが構築されたストレージ装置において、それに備えられた複数のディスクアレイを制御するための方法であって、
（ａ）前記複数のディスクアレイそれぞれの記憶領域を複数個のエクステントに物理的に分割し、一又は二以上の前記エクステントを前記複数の論理ボリュームのいずれかに割り当てる、ステップと、
（ｂ）いずれかのエクステントの負荷が設定された条件を満たさない場合に、当該エクステントを移転元エクステントとして、前記移転元エクステントが割り当てられている論理ボリュームを特定する、ステップと、
（ｃ）前記複数の論理ボリュームそれぞれ毎の、当該論理ボリュームを構築可能なディスクアレイの構成、当該論理ボリュームに格納されているデータにおける処理の優先度、及び当該論理ボリュームと同一のディスクアレイに存在することが許容されていない他の論理ボリュームの識別子含む、ポリシーが登録されているポリシーテーブルに、前記（ｂ）のステップで特定した論理ボリュームを照合して、そのポリシーを特定する、ステップと、
（ｄ）前記（ｃ）のステップで特定したポリシーに基づいて、前記移転元エクステントに記憶されているデータの移転先として選択可能なディスクアレイを検出する、ステップと、を有することを特徴とする。
【００３５】
更に、上記目的を達成するため、本発明におけるプログラムは、外部から認識可能な複数の論理ボリュームが構築された複数のディスクアレイを、コンピュータによって制御するためのプログラムであって、
前記コンピュータに、
（ａ）前記複数のディスクアレイそれぞれの記憶領域を複数個のエクステントに物理的に分割し、一又は二以上の前記エクステントを前記複数の論理ボリュームのいずれかに割り当てる、ステップと、
（ｂ）いずれかのエクステントの負荷が設定された条件を満たさない場合に、当該エクステントを移転元エクステントとして、前記移転元エクステントが割り当てられている論理ボリュームを特定する、ステップと、
（ｃ）前記複数の論理ボリュームそれぞれ毎の、当該論理ボリュームを構築可能なディスクアレイの構成、当該論理ボリュームに格納されているデータにおける処理の優先度、及び当該論理ボリュームと同一のディスクアレイに存在することが許容されていない他の論理ボリュームの識別子含む、ポリシーが登録されているポリシーテーブルに、前記（ｂ）のステップで特定した論理ボリュームを照合して、そのポリシーを特定する、ステップと、
（ｄ）前記（ｃ）のステップで特定したポリシーに基づいて、前記移転元エクステントに記憶されているデータの移転先として選択可能なディスクアレイを検出する、ステップと、を実行させることを特徴とする。
【発明の効果】
【００３６】
以上の特徴により、本発明における、ストレージ装置、ストレージシステム、ディスクアレイ制御方法、及びプログラムによれば、耐障害性及び性能の低下を抑制しつつ、ディスクアレイの記憶領域におけるデータ効率の向上を図ることが可能となる。
【図面の簡単な説明】
【００３７】
【図１】図１は、本発明の実施の形態におけるストレージ装置及びストレージシステムの概略構成を示すブロック図である。
【図２】図２は、本発明の実施の形態で実行されるディスクアレイの管理を説明する図である。
【図３】図３は、本発明の実施の形態で実行されるデータの再配置（エクステント最適化処理）の一例を示す図である。
【図４】図４は、本発明の実施の形態におけるディスクアレイ制御部の構成を示すブロック図である。
【図５】図５は、図４に示されたディスクコントローラの構成を示すブロック図である。
【図６】図６は、本発明の実施の形態で利用されるポリシーテーブルの一例を示す図である。
【図７】図７は、処理の優先度に基づく処理を示す図である。
【図８】図８は、ディスク障害の回避のためのデータ配置の例を示す図である。
【図９】図９は、本発明の実施の形態で利用されるＲＡＩＤ対応テーブルの一例を示す図である。
【図１０】図１０は、本発明の実施の形態におけるストレージ装置を構成するディスクアレイ制御部が実行する処理を示すフロー図である。
【図１１】図１１は、図１０に示されたステップＦ９以降のディスクアレイ制御部の処理を示すフロー図である。
【図１２】図１２は、本発明の実施の形態におけるストレージ装置を構成するディスクアレイ制御部が実行するエラー処理を示すフロー図である。
【図１３】図１３は、本発明の実施の形態における変形例を説明するための図である。
【図１４】図１４は、本発明の実施の形態における変形例において、ストレージ装置を構成するディスクアレイ制御部が実行するエラー処理を示すフロー図である。
【発明を実施するための形態】
【００３８】
（発明の概要）
本発明は、ストレージ装置に適用される。また、本発明において、複数のＨＤＤで構成されたディスクアレイの記憶領域は、連続した一つの領域として捉えられ、ある一定のサイズの領域（エクステント）に分けられて管理される。更に、あるエクステントをＨＤＤ毎に分割したときの、ＨＤＤ単体における、エクステントの構成領域は、エクステントチャンクと呼ばれる。
【００３９】
そして、本発明においては、背景技術の欄で示した特許文献１に開示の発明と同様に、ディスクアレイの記憶領域に設定されたいずれかのエクステントの負荷が高くなった場合に、そのエクステントに記憶されているデータは、他の負荷の低いエクステントに移転され、再配置される。
【００４０】
具体的には、例えば、あるエクステントチャンクにおいて、ディスクアレイから取得されたＩ／Ｏ存在率が予め設定された基準値より高くなっている場合に、他のエクステントチャンクのＩ／Ｏ存在率が参照される。そして、Ｉ／Ｏ存在率が基準値より低いエクステントチャンクが検出され、その中から移転先のエクステントチャンクが選択される。その後、Ｉ／Ｏ存在率が基準値より高いエクステントチャンクと、Ｉ／Ｏ存在率が基準値より低いエクステントチャンクとの間で、データの交換（データマイグレーション）が実行される。
【００４１】
また、本発明においても、特許文献１に開示の発明と同様に、判断の指標となるＩ／Ｏ存在率としては、上述した「同時Ｉ／Ｏ存在率」、「エクステントチャンクＩ／Ｏ存在率」、「ＨＤＤＩ／Ｏ存在率」を用いることができる。このように、本発明は、特許文献１に開示の発明と共通する部分を有している。
【００４２】
しかしながら、本発明では、移転先のエクステント（エクステントチャンク）を決定する際に、特許文献１に開示の発明と異なり、更に、別の判断指標として、ポリシーテーブルが用いられる。その他、ＲＡＩＤ対応テーブル、チャンク対応テーブル、エクステント対応テーブルを用いることもできる。
【００４３】
ポリシー対応テーブル（後述の図６参照）は、ストレージ装置に接続されているホスト装置（サーバ群）によって認識される論理ボリューム毎に、ポリシーを登録している。ここで、論理ボリュームとは、ディスクアレイを論理的に分割して構築された論理ユニット（ＬＵ）をいい、各論理ユニットには、識別のために論理ユニット番号（ＬＵＮ：Logical Unit Number）が付与されている。
【００４４】
また、登録されているポリシーとして、例えば、論理ボリューム（ＬＵ）毎のデータを配置可能なディスクアレイの処理性能及び耐障害性（ＲＡＩＤ構成）、論理ボリューム（ＬＵ）毎のストレージ装置全体における処理の優先度等が挙げられる。
【００４５】
また、ＲＡＩＤ対応テーブル（後述の図９参照）は、ストレージ装置に備えられたディスクアレイ毎のＲＡＩＤ構成の種類及び性能を登録している。チャンク対応テーブルは、エクステントと、それに対応するエクステントチャンクとを紐付けしている。チャンク対応テーブルにより、各エクステントチャンクがどのエクステントに所属しているかを確認することが可能となる。
【００４６】
エクステント対応テーブルは、論理ボリューム内の論理エクステント（ＬＥ：Logical Extent）と、それに対応する物理エクステント（ＰＥ:Physical Extent）とを紐付けしている。エクステント対応テーブルによれば、各論理ボリュームの論理エクステントが、ディスクアレイ上のどの物理エクステントに対応しているかを確認することが可能となる。なお、本明細書において、単に「エクステント」と表記されている場合は、「物理エクステント」を意味している。上記のように、物理エクステントと、論理エクステントとを区別する必要がある場合は、「論理エクステント」又は「物理エクステント」と表記される。
【００４７】
ここで、本発明における処理の例について具体的に説明する。先ず、前提として、ディスクアレイの記憶領域に設定されたいずれかのエクステントチャンクの負荷が高くなっているとする。次に、チャンク対応テーブルが参照され、負荷が高いエクステントチャンクが所属するエクステントの特定が行われる。この特定されたエクステントに格納されているデータが移転（再配置）の対象となる。また、この特定されたエクステントを、以下においては「移転元エクステント」という。次に、エクステント対応テーブルが参照され、移転元エクステントが割り当てられている論理ボリューム（ＬＵＮ）の検索が行われる。
【００４８】
そして、検索の結果、割り当てられている論理ボリューム（ＬＵＮ）が判明すると、予め作成されているポリシー対応テーブルが参照され、判明した論理ボリューム（ＬＵＮ）のポリシーが求められる。次に、求められたポリシーがＲＡＩＤ対応テーブルに当てはめられ、データを再配置できるディスクアレイが存在するかどうかの判定が実行される。
【００４９】
判定の結果、ポリシーに適合するディスクアレイが存在しない場合は、データの再配置は行われない。データの再配置が行われない場合は、処理は終了する。また、再配置が行われることなく、処理が終了した場合は、ストレージ装置と接続されている管理用の端末装置に対して、再配置が実行できなかった旨と実行できなかった理由とが記述されたエラーメッセージが送信される。なお、以後の操作において、再配置が実行されることなく処理が終了した場合も、同様のエラーメッセージが管理用の端末装置に送信される。
【００５０】
一方、判定の結果、ポリシーに適合するディスクアレイが存在する場合は、これら再配置が可能となる各ディスクアレイに対して、エクステントの負荷状況の調査が行われる。そして、調査の結果、ディスクアレイの全ての領域で、負荷が規定値以上の場合は、データの再配置は行われず、処理が終了する。これに対して、調査の結果、ディスクアレイのいずれかの記憶領域で負荷が規定値以下の場合は、続いて次の処理が行われる。
【００５１】
この場合は、先ず、ディスクアレイの記憶領域において最も負荷の低い記憶領域の検出が行われる。続いて、検出された記憶領域の中で、最も負荷の低いエクステントチャンクの検出が行われる。そして、チャンク対応テーブルが参照されて、検出されたエクステントチャンクが所属するエクステントが検出される。この検出されたエクステントは、移転先の候補となるエクステント（移転先候補エクステント）である。
【００５２】
続いて、エクステント対応テーブルが参照されて、移転先候補エクステントが割り当てられている論理ボリューム（ＬＵＮ）が検出される。更に、ポリシー対応テーブルが参照されて、検出されたエクステントが割り当てられている論理ボリュームのポリシーが特定される。
【００５３】
なお、移転先候補エクステントが、いずれの論理ボリュームにも割り当てられていない、つまり、未使用の領域である場合は、当該エクステントに対応するポリシーは存在しない。このため、その場合は、未使用領域に対して専用に設定されたポリシーを用いることができる。
【００５４】
次に、移転先候補エクステントが割り当てられている論理ボリュームのポリシーが判明した場合は、この判明したポリシーと、先に特定された、移転元エクステントが割り当てられた論理ボリュームのポリシーとが比較される。
【００５５】
上記比較では、例えば、移転元エクステントのデータを移転先候補エクステントが存在するディスクアレイに再配置可能かどうか等が検討される。そして、移転元エクステントのデータを、移転先候補エクステントの負荷の最も低いエクステントチャンクに移転できるどうかが判断される。
【００５６】
比較の結果、データの移転による再配置が不可能である場合は、次に負荷の低いエクステントチャンクについて、同様の判断が再度行われる。このとき、データの移転による再配置が不可能と判断されたエクステントチャンクは判断の対象から外される。
【００５７】
一方、比較の結果、データの移転による再配置が可能となった場合は、この移転先候補エクステントが設定されているディスクアレイの領域について、割り当てられている全ての論理ボリュームを特定する。論理ボリュームの特定は、チャンク対応テーブル、エクステント対応テーブル、ポリシー対応テーブルを使用することによって、上述した方法を用いて行われる。
【００５８】
そして、割り当てられている全ての論理ボリュームについて、ポリシーが判明すると、各ポリシーと、移転元エクステントの負荷状況とが、比較される。例えば、この比較では、既にディスクアレイの領域を使用している論理ボリュームでの処理が圧迫されないかどうか等が検討される。
【００５９】
比較の結果、データの移転による再配置が不可能である場合は、この比較対象となった移転先候補エクステントのディスクアレイへのデータの移転は不可能であるので、次に負荷の低い別のエクステントチャンクを特定する。そして、再度、対応する論理ボリュームのポリシーの特定、ポリシーの比較等の上述の処理が行われる。
【００６０】
一方、データの移転による再配置が可能である場合は、データの再配置を実行するモジュール等によって、データの移転が行われ、再配置が実行される。そして、再配置の終了後、エクステントテーブル及びチャンク対応テーブルは更新される。
【００６１】
なお、移転先候補エクステントが存在するディスクアレイの全ての領域で、データの移転による再配置ができない場合は、データの再配置は行われず、処理は終了される。このような処理とすることで、データの再配置を原因とした、ディスクアレイの耐障害性の低下、及び優先すべき処理の圧迫といった弊害が防止される。
【００６２】
（本発明と特許文献１に開示の発明との比較）
特許文献１に開示の発明では、エクステント内のデータは、必ずしも同じ論理ボリュームに属しているとは限られていない。これに対して、本発明では、論理ボリュームのポリシーを使用することによって、データの再配置が実行されるので、一つのエクステント内のデータは全て同一の論理ボリュームに所属させることができる。
【００６３】
また、エクステント内のデータの単一論理ボリュームへの所属は、次のようにして行うことができる。先ず、各論理ボリュームへの書き込みが発生した場合、ディスクアレイへのＩ／Ｏはシーケンシャルに（即ち、一つずつ）行われる。そのため、例えば、各論理ボリュームへの書き込みを、規定値になるまで、ストレージ装置のキャッシュ上に、論理ボリューム毎に纏めておき、規定値に達してからＨＤＤに書き込むようにすれば良い。
【００６４】
また、詳細は後述するが、本発明では、データの再配置は、ＲＡＩＤ構成の異なるディスクアレイ間でも実行可能である。但し、ディスクアレイを構成するＲＡＩＤ構成によってＨＤＤの数が違い、また、エクステントの容量が変化するため、エクステントチャンク単位で移転されるデータの容量が設定されていると、エクステント間でのデータの再配置は困難となる。
【００６５】
そこで、本発明では、エクステント単位で、移転されるデータの容量を設定できる。これにより、ＨＤＤ一つ当たりに割り当てられているデータ量は、各ディスクアレイで異なるが、エクステントのデータ量はすべてのディスクアレイで同一容量となる。
【００６６】
（実施の形態）
以下、本発明の実施の形態におけるストレージ装置、ストレージシステム、ディスクアレイ制御方法、及びプログラムについて、図１〜図１２を参照しながら説明する。最初に、図１を用いて、本実施の形態におけるストレージ装置及びストレージシステムの構成について説明する。図１は、本発明の実施の形態におけるストレージ装置及びストレージシステムの概略構成を示すブロック図である。
【００６７】
図１に示すように、ストレージシステム１は、自律データ再配置型のシステムであり、ホスト装置１０と、ストレージ装置Ｓ−１及びＳ−２とを備えている。ストレージ装置Ｓ−１及びＳ−２それぞれには、ホスト装置１０から認識可能な複数の論理ボリュームが構築されている。ホスト装置１０、ストレージ装置Ｓ−１、及びストレージ装置Ｓ−２は、ネットワーク２０を介して互いに接続されている。
【００６８】
本実施の形態では、図１には、ストレージ装置Ｓ−１及びＳ−２の２台のみが図示されているが、ストレージ装置の数は特に限定されるものではない。ストレージシステム１は、１台以上のストレージ装置を備えていれば良い。また、ネットワーク２０の具体例としては、ファイバチャネル（Fibre Channel:FC）、インターネットＳＣＳＩ（Internet SCSI（iSCSI））等が挙げられる。
【００６９】
更に、図１に示すように、ストレージ装置Ｓ−１及びＳ−２それぞれは、複数のディスクアレイＡ−ｉ〜Ａ−ｊと、ディスクアレイ制御部ＤＥ−ｎとを備えている。ディスクアレイ制御部ＤＥ−ｎは、ホスト装置１０からの要求に応じて各ディスクアレイに対してアクセスを行うアレイコントローラである。なお、ｉ、ｊは、それぞれ自然数であり、ｉ＜ｊの関係にある。ｎは、自然数であって、ストレージ装置に符号として付された数字に対応している。
【００７０】
また、本実施の形態では、図１に示すように、ストレージ装置Ｓ−１は、３つのディスクアレイＡ−１、Ａ−２及びＡ−３を備えている。一方、ストレージ装置Ｓ−２は、３つのディスクアレイＡ−４、Ａ−５及びＡ−６を備えている。また、ディスクアレイＡ−１、Ａ−２、Ａ−３、Ａ−４、Ａ−５及びＡ−６には、それぞれ識別番号＃１、＃２、＃３、＃４、＃５、＃６が付与されている。なお、各ストレージ装置において、ディスクアレイの数は複数であれば良く、特に限定されるものではない。以降の説明では、ディスクアレイは、単に「アレイ」と記載する。
【００７１】
また、各アレイは、少なくとも１台のＨＤＤ（ディスク装置）を備えていれば良く、各アレイが備えるＨＤＤの数は特に限定されるものではない。本実施の形態では、図１に示すように、ストレージ装置Ｓ−１のアレイＡ−１及びＡ−２、及びストレージ装置Ｓ−２のアレイＡ−４及びＡ−５は、例えば４台のＨＤＤ１００を備えている。アレイＡ−３及びＡ−６は３台のＨＤＤ１００を備えている。更に、図示されていないが、ストレージ装置Ｓ−１及びＳ−２において、各ＨＤＤ１００には、当該ストレージ装置Ｓ−１及びＳ−２内で固有の識別番号（ＨＤＤ番号）が割り当てられている。
【００７２】
また、本実施の形態では、アレイＡ−１〜Ａ−６それぞれは、例えば、ＲＡＩＤ５又はＲＡＩＤ１０が適用されたＲＡＩＤ構成を備えている。各アレイの記憶領域は、当該アレイＡ−ｉを構成するＨＤＤ１００の組み合わせによって構築され、各ＨＤＤ１００の記憶領域を連続した１つの記憶領域として捉えることで定義される。
【００７３】
そして、ストレージ装置Ｓ−１において、ディスクアレイ制御部ＤＥ−１は、アレイＡ−１〜Ａ−３それぞれの記憶領域を複数個のエクステントに物理的に分割し、一又は二以上のエクステントをいずれかの論理ボリュームに割り当てる。ディスクアレイ制御部ＤＥ−１は、アレイＡ−１〜Ａ−３それぞれの記憶領域をエクステント単位で管理している。
【００７４】
同様に、ストレージ装置Ｓ−２では、ディスクアレイ制御部ＤＥ−２は、アレイＡ−４〜Ａ−６それぞれの記憶領域を複数個のエクステントに物理的に分割し、一又は二以上のエクステントをいずれかの論理ボリュームに割り当てる。ディスクアレイ制御部ＤＥ−２も、アレイＡ−４〜Ａ−６それぞれの記憶領域をエクステント単位で管理している。
【００７５】
具体的には、ディスクアレイ制御部ＤＥ−１及びＤＥ−２がアレイの記憶領域を物理的に分割して設定するエクステントは、物理エクステントである。ディスクアレイ制御部ＤＥ−１及びＤＥ−２は、論理ボリュームを構成する各論理エクステントに、各物理エクステンを割り付けている。なお、論理エクステントの数は、物理エクステンとの数と一致している。
【００７６】
また、本実施の形態では、論理エクステントと物理エクステントとは、エクステントテーブルによって対応付けられている。エクステントテーブルは、マッピングテーブルによって管理されている。ここで、論理エクステントをＬＥとし、各ＬＥには、ＬＥ１、ＬＥ２、・・・のように識別番号が付されているとする。同様に、物理エクステントをＰＥとし、各ＰＥには、ＰＥ１、ＰＥ２、・・・のように識別番号が付されているとする。
【００７７】
例えば、ＬＥ１に対応付けられるＰＥが、ＰＥ１からＰＥ２に変更されるとする。この場合、マッピングテーブルにおいて、ＬＥ１とＰＥ１との対応を表すマッピング情報は、ＬＥ１とＰＥ２との対応を表すマッピング情報に更新される。これにより、エクステントテーブルも更新される。なお、既に述べているが、ＰＥとＬＥとを区別する必要がある場合を除き、ＰＥは単に「エクステント」と表記する。
【００７８】
また、ディスクアレイ制御部ＤＥ−１及びＤＥ−２は、いずれかのエクステントの負荷が設定された条件を満たさない場合に、当該エクステントを移転元エクステントとして、移転元エクステントが割り当てられている論理ボリュームを特定する。そして、ディスクアレイ制御部ＤＥ−１及びＤＥ−２は、論理ボリューム毎のポリシーが登録されているポリシーテーブル（後述の図６参照）に、特定した論理ボリュームを照合して、そのポリシーを特定する。その後、ディスクアレイ制御部ＤＥ−１及びＤＥ−２は、特定したポリシーに基づいて、移転元エクステントに記憶されているデータの移転先として選択可能なディスクアレイを検出する。
【００７９】
論理ボリューム毎のポリシーには、当該論理ボリュームを構築可能なディスクアレイの構成、当該論理ボリュームに格納されているデータにおける処理の優先度、及び当該論理ボリュームと同一のアレイに存在することが許容されていない他の論理ボリュームの識別子が少なくとも含まれている。なお、論理ボリュームの識別子は、上述した論理ユニット番号（ＬＵＮ）を意味する。
【００８０】
このように、本実施の形態では、いずれかのエクステントの負荷が高くなり、データの移転が必要となった場合に、移転元エクステントが割り当てられた論理ボリュームのポリシーが特定され、ポリシーに基づいて移転先のアレイが選択される。そして、ポリシーには、移転先のアレイに求められる構成が含まれるため、耐障害性の低下が抑制される。また、データ処理の優先度も含まれるため、移転先での処理性能の低下も抑制される。更に、ポリシーには、同一のアレイに構築できない論理ボリュームのＬＵＮも含まれているため、物理的に別々の領域に保存すべきデータが同一のアレイに保存されることが回避され、この点でも耐障害性の低下が抑制される。
【００８１】
これらの点から、ストレージ装置ＤＥ−１及びＤＥ−２、更に、ストレージシステム１によれば、耐障害性及び性能の低下を抑制しつつ、アレイの記憶領域におけるデータ効率の向上を図ることが可能となる。
【００８２】
ここで、ストレージ装置ＤＥ−１、ストレージ装置ＤＥ−２、及びストレージシステム１の構成について、図２〜図７を用いて更に具体的に説明する。先ず、図２に基づいて、ディスクアレイの記憶領域のエクステントを用いた管理について説明する。図２は、本発明の実施の形態で実行されるディスクアレイの管理を説明する図である。
【００８３】
図２に示すように、複数のＨＤＤ１００で構成されたアレイの記憶領域は、複数個のエクステントに分割されて管理される。またあるエクステントをＨＤＤ毎に分割したときの、ＨＤＤ単体における、エクステントの構成領域が、エクステントチャンクとなる。
【００８４】
ディスクアレイ制御部ＤＥ−１及びＤＥ−２は、上述したように、ホスト装置１０からの指示に応じて、アレイＡ−ｉに構築された論理ボリュームにアクセスする。そして、ディスクアレイ制御部ＤＥ−１及びＤＥ−２は、エクステントテーブルによって、論理ボリュームとそれを構成するＬＥとの対応関係、及び各ＬＥと当該ＬＥがマッピングされるＰＥとの対応関係を管理する。
【００８５】
また、ディスクアレイ制御部ＤＥ−１及びＤＥ−２は、各エクステントに付与されたエクステント番号と、各ＨＤＤに付与されたＨＤＤ番号との組み合わせにより、特定のエクステントチャンクを、ストレージ装置ＳＥ−ｎ内で一意に認識することが出来る。
【００８６】
更に、ディスクアレイ制御部ＤＥ−１及びＤＥ−２は、データの自律的な再配置を実行する。つまり、ディスクアレイ制御部ＤＥ−１及びＤＥ−２は、当該ディスクアレイ制御部が対応するストレージ装置内のアレイ間において、又は他のディスクアレイ制御部が対応するストレージ装置のアレイとの間において（ストレージ装置を跨って）データを移動させる。
【００８７】
具体的には、ディスクアレイ制御部ＤＥ−１及びＤＥ−２は、二つのエクステントのデータのコピーを行い、これらコピーしたデータの保存先のＰＥを、ストレージ装置内で、又はストレージ装置間を跨って入れ替え、これらコピーしたデータを再配置する。
【００８８】
このようなデータの再配置は、一般に最適化と呼ばれている。但し、本発明では、データが格納されるエクステントが入れ替えられて、データの再配置が行われるため、「エクステント最適化」と呼ぶことにする。
【００８９】
次に、図３を用いて、ディスクアレイ制御部ＤＥ−１又はＤＥ−２が、上述のエクステント最適化を、あるアレイ内のエクステントと、別のアレイ内のエクステントとの間で実行する例について説明する。図３は、本発明の実施の形態で実行されるデータの再配置（エクステント最適化処理）の一例を示す図である。
【００９０】
図３に示すように、アレイ（＃Ｘ１）においては、同時Ｉ／Ｏ存在率が予め設定された基準値よりも高いエクステントが存在している。そして、このエクステントを構成するエクステントチャンクのうち、最も待機中のＩ／Ｏが存在する度合いが高いのが、アレイ（＃Ｘ１）を構成するＨＤＤ１００ａのエクステントチャンクＡである。つまり、エクステントチャンクＡは、ＨＤＤ１００ａの中で最も負荷の高いエクステントチャンクである。
【００９１】
また、図３に示すように、アレイ（＃Ｘ２）においては、同時Ｉ／Ｏ存在率が予め設定された基準値よりも低いエクステントが多く存在している。そして、このエクステントを構成するエクステントチャンクのうち、最も待機中のＩ／Ｏが存在する度合いが低いのが、アレイ（＃Ｘ２）を構成するＨＤＤ１００ｂのエクステントチャンクＢである。つまり、エクステントチャンクＢは、ＨＤＤ１００ｂの中で最も負荷の低いエクステントチャンクである。
【００９２】
図３の例では、エクステントチャンクＡとエクステントチャンクＢとの二つのエクステント間で、エクステント最適化が実行される。この結果、ＨＤＤ１００ａ及びＨＤＤｂにおいて、記憶領域の利用効率が向上し、更に、ＨＤＤにおける処理性能も向上することとなる。
【００９３】
次に、図４を用いて、ディスクアレイ制御部の構成について具体的に説明する。図４は、本発明の実施の形態におけるディスクアレイ制御部の構成を示すブロック図である。但し、本実施の形態では、ディスクアレイ制御部ＤＥ−１及びＤＥ−２は、同一の構成を備えている。更に、本実施の形態において、ストレージ装置が増加した場合は、ディスクアレイ制御部ＤＥ−１及びＤＥ−２と同一の構成を備えたディスクアレイ制御部が増加することとなる。よって、以下においては、ディスクアレイ制御部ＤＥ−ｎを例として挙げて説明を行う。なお、ｎは上述したように自然数である。
【００９４】
図４に示すように、本実施の形態において、ディスクアレイ制御部ＤＥ−ｎは、ホストコントローラＣ１と、メインコントローラＣ２と、ディスクコントローラＣ３と、キャッシュメモリＣ４と、メモリＣ５とを備えている。
【００９５】
ホストコントローラＣ１は、ホスト装置１０（図１参照）にネットワーク２０（図４において図示せず）を介して接続され、ホスト装置１０との間で通信処理を実行する。具体的には、ホストコントローラＣ１は、ホスト装置１０との間でデータを送受信するポートと、データ及びコマンドの管理及び処理を行うコントローラ（ドライバ）を有している。
【００９６】
メインコントローラＣ２は、ディスクアレイ制御部ＤＥ−ｎ全体を管理している。具体的には、メインコントローラＣ２は、キャッシュ制御、ディスクのレプリケーション等のストレージ機能の制御を行っている。
【００９７】
キャッシュＣ４は、メインコントローラＣ２によって処理された各データ、例えば、ホスト装置１０と各アレイとの間でのＩ／Ｏで発生したデータを一時的に格納し、処理の高速化を促進している。
【００９８】
ディスクコントローラＣ３は、アレイを構成している各ＨＤＤ１００との間で通信処理を行い、最適化処理を実行する。具体的には、ディスクコントローラＣ３は、ＲＡＩＤ制御、各ＨＤＤ１００に接続される接続ポートの制御等を行っている。また、ディスクコントローラＣ３は、エクステント対応テーブル、チャンク対応テーブルといった各テーブルの管理も行っている。
【００９９】
また、ディスクコントローラＣ３は、各ＨＤＤの待機Ｉ／Ｏを検出し、上述した、同時Ｉ／Ｏ存在率、ＨＤＤＩ／Ｏ存在率及びエクステントチャンクＩ／Ｏ存在率を算出する。更に、ディスクコントローラＣ３は、これらの存在率に基づいて上述のエクステント最適化を実行する。また、ディスクコントローラＣ３による処理は、メモリ５Ｃ上で行われる。メモリＣ５は、ディスクコントローラＣ３が実行する最適化処理で扱われるデータを記憶する。
【０１００】
また、本実施の形態では、ディスクアレイ制御部ＤＥ−ｎは、後述する本実施の形態におけるプログラムをコンピュータに実行させることによって実現できる。この場合、コンピュータのＣＰＵ（Central Processing Unit）が、ホストコントローラＣ１、メインコントローラＣ２、及びディスクコントローラＣ３として機能する。また、コンピュータに備えられたメモリが、キャッシュメモリＣ４及びメモリＣ５として機能する。
【０１０１】
次に、図５〜図９を用いて、図４に示したディスクコントローラＣ３の構成及び機能を具体的に説明する。図５は、図４に示されたディスクコントローラの構成を示すブロック図である。
【０１０２】
図５に示すように、ディスクコントローラＣ３は、自律最適化制御エンジンＤ２と、Ｉ／Ｏ情報採取モジュールＤ３と、チャンク対応テーブルＤ４と、エクステント対応テーブルＤ５と、ポリシー対応テーブルＤ６と、ＲＡＩＤ対応テーブルＤ７と、エクステント再配置実行モジュールＤ８とを備えている。また、ディスクコントローラＣ３は、外部から入力されたデータを受け付ける入力モジュールＤ１と、メモリＣ５と、アレイを構成する各ＨＤＤ１００とに接続されている。
【０１０３】
また、図示していないが、各ＨＤＤ１００には、その記憶領域で発生したＩ／Ｏの数を計測するＨＤＤドライバが備えられている。ＨＤＤドライバは、計測したＩ／Ｏの数をメモリＣ５に記憶させる。Ｉ／Ｏ情報採取モジュールＤ３は、メモリＣ５に記憶されている各ＨＤＤのＩ／Ｏ数を採取し、設定された周期でサンプリングを行ってＩ／Ｏ存在率を算出する。
【０１０４】
自律最適化制御エンジンＤ２は、Ｉ／Ｏ情報採取モジュールＤ３によって算出されたＩ／Ｏ存在率等に基づいて、エクステント最適化が必要かどうかを判定する。判定の結果、必要である場合は、自立最適化制御エンジンＤ２は、チャンク対応テーブルＤ４、エクステント対応テーブルＤ５、ポリシー対応テーブルＤ６、ＲＡＩＤ対応テーブルＤ７を参照し、エクステント最適化が可能かどうかを判定する。
【０１０５】
また、エクステント最適化が可能であると判定された場合は、自律最適化制御エンジンＤ２は、エクステント最適化に関する情報を、エクステント再配置実行モジュールＤ８に渡す。エクステント再配置実行モジュールＤ８は、渡された情報に基づいて、エクステント最適化を実行する。
【０１０６】
また、本実施の形態では、自律最適化制御エンジンＤ２での判定に用いられる基準値、及びポリシー対応テーブルＤ６は、入力モジュールＤ１によって入力される。入力モジュールＤ１は、ディスアレイ制御部ＤＥ−ｎにおいて、外部とデータのやり取りを行うモジュールであり、例えば、ストレージ管理ソフトといったアプリケーションソフトウェアによって実現できる。
【０１０７】
更に、本実施の形態で用いられるテーブルのうち、チャンク対応テーブルＤ４と、エクステント対応テーブルＤ５とは、マッピングテーブルによって実現される。ポリシー対応テーブルＤ６については、図６を用いて説明する。また、ＲＡＩＤ対応テーブルＤ７については、図９を用いて説明する。
【０１０８】
図６は、本発明の実施の形態で利用されるポリシーテーブルの一例を示す図である。図６に示すように、ポリシー対応テーブルには、論理ボリューム毎のポリシーが登録されている。図６の例では、各論理ボリュームは、ＬＵＮ（論理ユニット番号）によって区別されている。ＬＵＮは、上述しているように、ストレージ装置内の論理ボリュームに一意に割り当てられている番号であり、ＬＵＮにより各論理ボリュームの識別が可能となる。また、ポリシーとして、「許容アレイ構成」、「許容性能」、「処理の優先度」、「共有不可ＬＵＮ」、及び「許容業務負荷レベル」が記述されている。
【０１０９】
許容アレイ構成は、対応する論理ボリュームを構築可能なディスクアレイの構成、具体的にはＲＡＩＤ構成を示している。言い換えると、許容アレイ構成に記述されたアレイ構成とすれば、対応する論理ボリュームのデータを保持することが可能となる。そして、許容アレイ構成として記述されている構成を持ったアレイを、移転先のアレイとして選択すれば、再配置後において耐障害性（冗長性）及び性能を確保できる。また、記述されている構成以外の構成を持ったアレイを移転先として選択しないことにより、最適化による耐障害性（冗長性）及び性能の劣化を防ぐことが出来る。
【０１１０】
「許容性能」は、対応する論理ボリュームを構築可能なアレイの性能を示す指標を示している。「許容アレイ構成」によってもアレイの性能は判断されるが、「許容性能」によって、より細かくアレイの性能は判断される。更に、許容性能として記述されている指標を参照することにより、移転先のアレイに、移転元のエクステントのデータを再配置することが可能かどうかを判断できる。
【０１１１】
そして、許容性能に示されているレベル以上の性能を持ったアレイを、移転先のアレイとして選択して、エクステント最適化を実行すれば、最適化による性能の劣化をより確実に防ぐことが出来る。具体的には、移転元のエクステントが対応するＬＵＮの行の許容性能がＢであるとすると、移転先のアレイとしては、許容性能がＢ以上、つまりＡ又はＢのアレイが選択されれば良い。なお、図６の例では、Ａ、Ｂ、Ｃの順に性能が高くなっている。また、以後、同様の指標が用いられている場合も、同様の順で上位から下位が示されるものとする。
【０１１２】
「処理の優先度」は、対応する論理ボリュームに格納されているデータにおける処理の優先度を示している。言い換えると、処理の優先度は、対象のＬＵＮの論理ボリュームを使用している業務の優先度を示している。処理の優先度を参照すれば、移転先のエクステントと、移転元のエクステントとについて、処理の優先度を比較することができる。そして、比較の結果から、移転元のエクステントの優先度が移転先のエクステントの優先度より低い場合は、エクステント最適化を実行しないようにするのが良い。
【０１１３】
ここで、図７を用いて処理の優先度について説明する。図７は、処理の優先度に基づく処理を示す図である。具体的には、図７に示すように、移転元のエクステントが割り当てられている論理ボリュームＹ２の処理の優先度がＢであるとする。この場合、移転先のアレイとしては、処理の優先度がＡ以上の論理ボリュームに割り当てられているエクステントが選択されないようにするのが良い。
【０１１４】
つまり、優先度がＡの論理ボリュームＹ１が割り当てられたエクステントではなく、優先度がＢの論理ボリュームＹ３が割り当てられたエクステントが選択され、これに対してデータの再配置（エクステント最適化）が実行される。これにより、重要な業務の処理に余計な負荷が与えられてしまう事態を回避することが可能となる。
【０１１５】
「共有不可ＬＵＮ」は、対応する論理ボリュームと同一のアレイに存在することが許容されていない他の論理ボリュームの識別子を示している。つまり、共有不可ＬＵＮには、同一のアレイに配置できないＬＵＮが記述されている。例えば、使用されているデータの中には、ある二つのデータがディスク障害を想定して同じディスクに存在してはいけない場合がある。この点について図８を用いて説明する。図８は、ディスク障害の回避のためのデータ配置の例を示す図である。
【０１１６】
図８に示すように、データベースサーバＨ−１、ファイルサーバＨ−２、及びファイルサーバＨ−３のデータがストレージ装置Ｓ−ｎに格納されているとする。そして、データベースサーバＨ−１が使用する、データファイル、ログ１、ログ２は、それぞれ同一のアレイに格納できないデータであるため、それぞれアレイＬ−１、Ｌ−２、Ｌ−３に格納されている。これは、一般に、データベースでは、ログファイルは冗長化されるが、耐障害性の確保のため、冗長化させたログファイルと、データファイルとは、通常、別々のアレイに配置する必要があるからである。
【０１１７】
また、ファイルサーバＨ−２が使用する、ファイル領域Ａ及びファイル領域Ｂも、それぞれ同一のアレイに格納できないデータであるため、それぞれアレイＬ−４、Ｌ−５に格納されている。更に、ファイルサーバＨ−３が使用する、ファイル領域Ｃ及びファイル領域Ｄも、それぞれ同一のアレイに格納できないデータであるため、それぞれアレイＬ−６、Ｌ−７に格納されている。
【０１１８】
「共有不可ＬＵＮ」は、図７に示された同一のアレイに格納できないデータが、エクステント最適化によって、同一のアレイに格納されてしまうのを防止している。つまり、ストレージ装置から見ると、ディスク障害はアレイ単位で判断される。よって、この共有不可ＬＵＮが参照されることにより、ここに記述されているＬＵＮが再配置先にある場合は、最適化は実行されない。これにより、同じアレイにあってはいけない論理ボリュームが、エクステント最適化によって同じアレイに配置されてしまう事態が回避される。この結果、システムの耐障害性の低下が防止される。
【０１１９】
「許容業務負荷レベル」は、対応する論理ボリュームが構築されているアレイが他の論理ボリュームに対して許容することができる許容負荷を示している。つまり、許容業務負荷レベルには、他のアレイから移転されてくるエクステントの負荷の許容レベルが記述されている。許容業務負荷レベルは、あるエクステントは最適化の対象ではないが、同じアレイに設定されている別のエクステントが最適化の対象となっている場合に使用され、前者のエクステントにおける処理が最適化によって圧迫されてしまうのを抑制する。
【０１２０】
つまり、負荷の高いエクステントが移転されてくると、既存のエクステントの処理が圧迫される可能性がある。このため、許容業務負荷レベルにより、移転元のエクステントの負荷が、移転先の論理ボリュームの許容業務負荷レベルより大きい場合は、最適化が行われないようにされる。これにより、重要な業務の処理が圧迫される事態が回避される。
【０１２１】
例えば、移転元のエクステントが割り当てられた論理ボリュームの許容業務負荷レベルがＢであるとする。この場合、移転先のエクステントとアレイが同一の別エクステントの論理ボリュームが特定され、その論理ボリュームの許容業務負荷レベルがＣであれば、再配置が実行される。
【０１２２】
このように「許容業務負荷レベル」は、先に述べた「処理の優先度」とは異なる指標である。例えば、処理性能の低下を防止するために、あえて負荷の小さい論理ボリュームが配置されているアレイに配置されている、論理ボリュームが存在しているとする。このような場合に、このアレイに、負荷が高いエクステントを再配置すると、折角、処理性能を落とさないように配置された論理ボリュームの処理が圧迫される可能性がある。
【０１２３】
「処理の優先度」だけでは、重要度の低いエクステントや、使用されていないアレイの領域に対して、最適化が実行されるため、上記の圧迫の回避は困難であるが、「許容業務負荷レベル」を用いた場合は、上記の圧迫の回避が容易となる。よって、「許容業務負荷レベル」を使用することで、最適化対象以外の論理ボリュームの業務に余計な負荷が与えられないようになり、より細かい業務負荷の制御が可能になる。
【０１２４】
なお、アレイの記憶領域には、論理ボリュームが構築されていない記憶領域（未使用領域）も存在する。図６に示すように、ポリシー対応テーブルには、未使用領域についてのポリシーが登録されていても良い。なお、未使用領域の各項目には、何ら制限が存在しないようにして、どのようなエクステントも再配置可能としても良いし、必要なら制限を設定しても良い。
【０１２５】
図９は、本発明の実施の形態で利用されるＲＡＩＤ対応テーブルの一例を示す図である。図９に示すように、ＲＡＩＤ対応テーブルは、アレイ番号毎に、当該アレイが有するＲＡＩＤ構成の種類、当該アレイの性能、更には構成ＨＤＤの数を登録している。アレイ番号は、ＲＡＩＤ対応テーブルにおいて、各アレイを特定する識別番号であり、ストレージ装置内のアレイに一意に割り当てられている。アレイ番号により、各アレイが判別される。なお、アレイの性能は、指標によって表わされている。
【０１２６】
次に、上述したディスクアレイ制御部ＤＥ−ｎの動作について図１０及び図１１を用いて説明する。図１０は、本発明の実施の形態におけるストレージ装置を構成するディスクアレイ制御部が実行する処理を示すフロー図である。図１１は、図１０に示されたステップＦ９以降のディスクアレイ制御部の処理を示すフロー図である。
【０１２７】
また、本実施の形態では、ディスクアレイ制御部ＤＥ−ｎを動作させることによって、ディスクアレイ制御方法が実施される。よって、本実施の形態におけるディスクアレイ制御方法の説明は、以下のディスクアレイ制御部ＤＥ−ｎの動作説明に代える。また、適宜、図１〜図９を参酌する。
【０１２８】
図１０に示すように、先ず、ディスクアレイ制御部ＤＥ−ｎにおいて、ディスクコントローラＣ３の自律最適化制御エンジンＤ２が、基準値より負荷の高いエクステントチャンクが存在するかどうかを判定する（ステップＦ１）。なお、ステップＦ１における判定は、特許文献１に開示された発明と同様に、Ｉ／Ｏ存在率に基づいて行うことができる。
【０１２９】
ステップＦ１での判定の結果、基準値より負荷の高いエクステントチャンクが存在しない場合は、ディスクアレイ制御部ＤＥ−ｎでの処理は終了する。一方、ステップＦ１での判定の結果、基準値より負荷の高いエクステントチャンクが存在する場合は、自律最適化制御エンジンＤ２は、最適化対象とする負荷の高いエクステントチャンクを検出する（ステップＦ２）。
【０１３０】
次に、自律最適化制御エンジンＤ２は、負荷の高いエクステントチャンクを検出すると、チャンク対応テーブルＤ４を参照し、ステップＦ２で検出されたエクステントチャンクが属するエクステントを検出する（ステップＦ３）。次に、自律最適化制御エンジンＤ２は、所属するエクステントが判明したら、エクステント対応テーブルＤ５を参照し、エクステントが所属している論理ボリュームのＬＵＮを検出する（ステップＦ４）。
【０１３１】
次に、自律最適化制御エンジンＤ２は、ＬＵＮを検出すると、ポリシー対応テーブル（図６参照）を参照し、検出したＬＵＮに対応するポリシーを検出する（ステップＦ５）。更に、自律最適化制御エンジンＤ２は、ポリシーを検出すると、ＲＡＩＤ対応テーブルＤ７（図９参照）を参照し、検出したポリシーに対応できるアレイを検出する（ステップＦ６）。
【０１３２】
次に、自律最適化制御エンジンＤ２は、ステップＦ６で検出したアレイの中に、ステップＦ２で検出されたエクステントチャンクにおけるデータの移転先として選択可能なアレイが存在しているかどうかを判定する（ステップＦ７）。具体的には、ステップＦ７では、ポリシー対応テーブル（図６参照）の「許容アレイ構成」及び「許容性能」と、ＲＡＩＤ対応テーブル（図９参照）の「ＲＡＩＤ構成」及び「アレイ性能」とが比較される。そして、比較結果から、自律最適化制御エンジンＤ２は、データの移転先として選択可能なアレイ（移転可能なアレイ）かどうかを判定する。
【０１３３】
ステップＦ７の判定の結果、移転先として選択可能なアレイが存在しない場合は、ディスクアレイ制御部ＤＥ−ｎでの処理は終了する。一方、移転先として選択可能なアレイが存在する場合は、自律最適化制御エンジンＤ２は、Ｉ／Ｏ情報採取モジュールＤ３によって算出されたＩ／Ｏ存在率を取得し、ステップＦ７で移転可能と判断されたアレイの記憶領域の負荷状況を検出する（ステップＦ８）。
【０１３４】
次に、自律最適化制御エンジンＤ２は、取得したＩ／Ｏ存在率を用いて、ステップＦ７で選択可能と判定されたアレイの中に、記憶領域の負荷が基準値以下となるアレイが存在しているかどうかを判定する（ステップＦ９）。
【０１３５】
ステップＦ９の判定の結果、記憶領域の負荷が基準値以下となるアレイが存在していない場合は、ディスクアレイ制御部ＤＥ−ｎでの処理は終了する。一方、ステップＦ９の判定の結果、記憶領域の負荷が基準値以下となるアレイが存在している場合は、自律最適化制御エンジンＤ２は、ステップＦ１０（図１１参照）を実行する。
【０１３６】
図１１に示すように、ステップＦ１０では、自律最適化制御エンジンＤ２は、記憶領域の負荷が最も低いアレイを検出する。また、自律最適化制御エンジンＤ２は、ステップＦ１０においても、Ｉ／Ｏ情報採取モジュールＤ３によって算出されたＩ／Ｏ存在率を用いて検出を実行する。
【０１３７】
次に、自律最適化制御エンジンＤ２は、記憶領域の負荷が最も低いアレイを検出すると、検出したアレイの記憶領域において最も負荷の低いエクステントチャンクを検出する（ステップＦ１１）。続いて、自律最適化制御エンジンＤ２は、エクステントの検出（ステップＦ１２）、ＬＵＮの検出（ステップＦ１３）、ＬＵＮに対応するポリシーの検出（ステップＦ１４）を実行する。なお、ステップＦ１２、Ｆ１３、Ｆ１４は、それぞれ、ステップＦ３、Ｆ４、Ｆ５と同様のステップである。
【０１３８】
次に、自律最適化制御エンジンＤ２は、ステップＦ５で検出した移転元のＬＵＮのポリシーと、ステップＦ１４で検出した移転先候補となるＬＵＮのポリシーとを比較する（ステップＦ１５）。次に、自律最適化制御エンジンＤ２は、比較の結果に基づいて、移転元のデータを、ステップＦ１２で検出したエクステントに移転して再配置することが可能かどうかを判定する（ステップＦ１６）。
【０１３９】
具体的には、ステップＦ１５では、ポリシー対応テーブル（図６参照）の「許容アレイ構成」、「許容性能」、「処理の優先度」及び「共有不可ＬＵＮ」が比較のために参照される。そして、ステップＦ１６では、先ず、「許容アレイ構成」及び「許容性能」の点から、移転先候補のアレイが、移転元のエクステンに対応できるかどうかが判定される。
【０１４０】
ステップＦ１６の上記判定で、対応できないと判定された場合は、再配置不可能であるとして処理が行われる。一方、対応できると判定された場合は、更に、「処理の優先度」及び「共有負荷ＬＵＮ」の点で、移転先候補のアレイが、移転元のエクステンに対応できるかどうかが判定される。
【０１４１】
そして、移転先のエクステントに対応する優先度の方が、移転元のエクステントに対応する優先度よりも高い場合は、再配置不可能であるとして処理が行われる。また、「共有不可ＬＵＮ」より、移転元のエクステントが割り当てられた論理ボリュームと、移転先のエクステントが割り当てられた論理ボリュームとが、同一のアレイの記憶領域に構築できない場合も、再配置不可能であるとして処理が行われる。
【０１４２】
次に、ステップＦ１６の判定の結果、再配置が不可能である場合は、自律最適化制御エンジンＤ２は、ステップＦ１０で検出されたアレイの記憶領域から、次に負荷の低いエクステントチャンクを検出する（ステップＦ１７）。このとき、ステップＦ１７では、ステップＦ１５でのポリシーの比較対象となった論理ボリュームが割り当てられているエクステントチャンク（先のステップＦ１１で検出されたエクステントチャンク）は、検出対象から除外される。
【０１４３】
次に、自律最適化制御エンジンＤ２は、ステップＦ１７で検出されたエクステントチャンクについて、それが割り当てられた論理ボリュームが存在するかどうかを判定する（ステップＦ１８）。つまり、ステップＦ１８では、先のステップＦ８で検出されたアレイの記憶領域に、移転先として利用できる論理ボリューム（ＬＵ）が存在しているかどうかが判定される。ステップＦ１８の判定の結果、論理ボリュームが存在している場合は、ステップＦ１１以降が再度実行される。一方、論理ボリュームが存在していない場合は、後述するステップＦ２３が実行される。
【０１４４】
また、ステップＦ１６の判定の結果、再配置が可能である場合は、自律最適化制御エンジンＤ２は、エクステント対応テーブルＤ５を参照し、移転先候補となるアレイに構築されている全論理ボリュームを検出する（ステップＦ１９）。また、ステップＦ１９では、ステップＦ１５で使用された移転先候補の論理ボリュームは除外される。このため、後述のステップＦ２１において、既にポリシーの比較が行われた論理ボリュームについて再度比較が行われるという無駄な処理が発生するのが抑制される。
【０１４５】
次に、自律最適化制御エンジンＤ２は、ポリシー対応テーブルを参照し、ステップＦ１９で検出された各論理ボリュームのポリシーを検出する（ステップＦ２０）。続いて、自律最適化制御エンジンＤ２は、ステップＦ２０で検出された全てのポリシーと、移転元のエクステントの負荷とを比較する（ステップＦ２１）。更に、自律最適化制御エンジンＤ２は、ステップＦ２１における比較の結果に基づいて、移転による再配置が可能かどうかを判断する（ステップＦ２２）。
【０１４６】
具体的には、ステップＦ２１では、ポリシー対応テーブル（図６参照）中の「共有不可ＬＵＮ」及び「許容業務負荷レベル」が用いられて比較が行われる。また、ステップＦ２２では、移転元エクステントが割り当てられた論理ボリュームとの関係で共有不可能な論理ボリュームが存在した場合は、再配置不可能として処理が行われる。更に、ステップＦ２２では、移転元エクステントの負荷が、移転先候補のアレイに構築された論理ボリュームの許容業務負荷レベルより大きい場合も、再配置不可能として処理が行われる。
【０１４７】
共有不可能なＬＵＮがなく、負荷も許容レベルであった場合は再配置可能として処理が行われる。不可能な場合はステップＦ２３が行われる。ステップＦ２３では他に再配置可能なアレイがあるかどうかが判断され、アレイがない場合は、処理は終了する。
【０１４８】
ステップＦ２２の判定において移転が可能である場合は、自律最適化制御エンジンＤ２は、データの再配置（エクステント最適化）に関する情報を、エクステント再配置実行モジュールＤ８に渡す。これにより、エクステント再配置実行モジュールＤ８が、データの再配置（エクステント最適化）を実行する（ステップＦ２５）。その後、ディスクアレイ制御部ＤＥ−ｎでの処理は終了する。
【０１４９】
一方、ステップＦ２２の判定において移転が不可能である場合は、自律最適化制御エンジンＤ２は、ステップＦ２３を実行する。ステップＦ２３では、自律最適化制御エンジンＤ２は、ステップＦ９の結果を参照し、データの移転先として選択可能なアレイが他に存在しているかどうかを判定する。
【０１５０】
ステップＦ２３の判定の結果、他にアレイが存在している場合は、自律最適化制御エンジンＤ２は、直近のステップＦ１０で検出されたアレイがデータの移転先の候補とならないように、これを候補から除去する（ステップＦ２４）。そして、自律最適化制御エンジンＤ２は、再度、ステップＦ１０から処理を実行する。
【０１５１】
図１０及び図１１に示したステップＦ１〜Ｆ２４の実行により、データの移転が可能な場合は、データの移転による再配置が実行され、エクステント最適化が行われる。一方、データの移転が不可能な場合は、データの移転による再配置が実行されずに、ディスクアレイ制御部ＤＥ−ｎでの処理が終了する。
【０１５２】
ここで、図１０又は図１１に示した処理において、データの移転が行われずに処理が終了した場合のストレージ装置での処理について、図１２を用いて説明する。図１２は、本発明の実施の形態におけるストレージ装置を構成するディスクアレイ制御部が実行するエラー処理を示すフロー図であり、エラー処理を示している。
【０１５３】
図１２に示すように、先ず、ディスクアレイ制御部ＤＥ−ｎにおいて、メインコントローラＣ２は、データの再配置が行われずに処理が終了すると、データの再配置ができなかった旨と、データの再配置ができなかった理由とを含むエラーメッセージを作成する（ステップＥＲ１）。
【０１５４】
次に、メインコントローラＣ２は、ストレージ装置を管理している管理用の端末装置の検出処理を実行する（ステップＥＲ２）。続いて、メインコントローラＣ２は、検出した端末装置に、ステップＥＲ１で作成したエラーメッセージを送信する（ステップＥＲ３）。
【０１５５】
その後、メインコントローラＣ２は、再配置することができなかったエクステントを、エクステント最適化の対象から除外する（ステップＥＲ４）。ステップＥＲ４の実行により、エラー処理は終了する。
【０１５６】
なお、ステップＥＲ３では、送信先は管理用の端末装置であるが、このとき送信先はこれに限定されるものではない。本実施の形態では、システムの管理サーバが送信先になっていても良い。また、本実施の形態では、ストレージ装置の管理者は、エラーメッセージを取得した場合に、再配置できなかったエクステントの負荷情報を参照し、許容範囲内かどうかを判断することができる。そして、管理者は、許容範囲内と判断した場合は、ストレージ装置において、そのまま処理を継続させることができる。
【０１５７】
また、再配置できなかったエクステントは、ステップＥＲ４で最適化対象から除外されているため、手動で最適化の対象に新たに加えない限り、これに対して、再び最適化処理が実行されることはなく、エラーも出力されない。よって、管理者は、再配置が必要であると判断した場合は、ポリシーを変更して再配置可能となるようにするか、又はＨＤＤを追加して負荷を軽減するような手段をとる必要がある。
【０１５８】
また、本発明の実施の形態におけるプログラムは、コンピュータに、図１０に示すステップＦ１〜Ｆ９、図１１に示すステップＦ１０〜Ｆ２４を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態におけるディスクアレイ制御部ＤＥ−ｎと、ディスクアレイ制御方法とを実現することができる。また、プログラムは、更に、図１２に示すステップＥＲ１〜ＥＲ４を実行可能なものであっても良い。
【０１５９】
上記のプログラムをコンピュータで実行させると、コンピュータのＣＰＵ（Central Processing Unit）は、上述したように、ホストコントローラＣ１、メインコントローラＣ２、及びディスクコントローラＣ３として機能する（図４参照）。また、コンピュータに備えられたメモリが、キャッシュメモリＣ４及びメモリＣ５として機能する。
【０１６０】
以上の説明から分かるように、本実施の形態によれば、データの耐障害性の低下、及び優先すべき業務の処理の圧迫を抑制しつつ、ＨＤＤの各領域の負荷を分散することができ、これによりストレージ装置の性能向上が実現される。これは、上述したように、本実施の形態では、ポリシー対応テーブルを用いて、移転先のアレイ、更には移転先のエクステントが特定されるからである。
【０１６１】
つまり、ポリシー対応テーブルに基づいて、データの再配置時に移動対象となるデータが格納されている論理ボリュームと、移動先の論理ボリュームとが、対比される。そして、移動元のデータが格納されている論理ボリュームに求められる移動先の領域の耐障害性及び性能が、移転後に満たされるかどうかが判定される。このため、負荷又は使用頻度のみを基準にしてデータの最適化を行う場合と比べて、最適化対象となるデータの再配置先をより細かく設定することが出来る。この結果、上述した効果を得ることが可能となる。
【０１６２】
また、本実施の形態では、論理ボリューム毎にポリシーが設定されているため、業務毎の重要度に応じて適切なデータ最適化を実施することが可能となる。これは、一般に、各業務で使用されるデータは、業務内容、又はその重要性に応じて、論理ボリューム単位で区切られることが多いためである。
【０１６３】
（変形例）
ここで、図１０又は図１１に示した処理において、データの移転（再配置）が行われずに処理が終了した場合のストレージ装置での処理の変形例について、図１３及び図１４を用いて説明する。図１３は、本発明の実施の形態における変形例を説明するための図である。
【０１６４】
図１３に示すように、本変形例では、アレイは、それを構成するＨＤＤ１００に障害があったときに使用するホットスペアディスクＨＳ−１を備えている。ホットスペアディスクは、予備ディスクであり、ＲＡＩＤ構成を備えたアレイを構成するＨＤＤのいずれかに障害が発生した場合に、その障害が発生したＨＤＤの代わりとして機能する。ホットスペアディスクを用いることにより、ＲＡＩＤ構成の性能劣化の防止及び冗長性の確保が保証される。
【０１６５】
また、通常、ホットスペアディスクは、ＲＡＩＤ構成に障害が発生していない場合は、ストレージ装置内でデータの書き込み等には一切使用されない状態で保持されている。つまり、ホットスペアディスクの記憶領域には、業務によるＩ／Ｏの負荷も全く発生していない。
【０１６６】
これに対して、本変形例では、ホットスペアディスクの記憶領域が、データの再配置が実行できなかった場合の再配置先として使用される。つまり、再配置先として選択可能なアレイ中のエクステントの中に、ホットスペアディスクの記憶領域に設定されるエクステントが含められ、これらのエクステントの中から移転先候補エクステントが選択される。このため、優先度が低いためにデータの再配置が認められない業務においても、確実に、高負荷による処理の遅延を防ぐことが可能となる。
【０１６７】
また、本変形例では、通常、あまり使用されないホットスペアディスクを使用することができるので、ストレージ装置全体としての資源の有効活用が図られる。但し、図１３に示すように、複数のエクステントチャンクで構成されたエクステントのデータは、ホットスペアディスクを構成する一台のＨＤＤに格納されるので、複数のＨＤＤに跨っていた記憶領域は一台のＨＤＤに纏められる。よって、この場合は、負荷分散はできない状態となる。
【０１６８】
しかし、データは負荷の全く無い領域に再配置されているため、元々高負荷で処理の遅延が発生していた領域と比較すると、ホットスペアディスクに纏められた領域での性能は、向上する。
【０１６９】
なお、ホットスペアディスクの記憶領域へのデータの再配置は、永続的なものではなく、一時的なものであるのが好ましい。これは、全てのデータが同一のＨＤＤに格納されるため、データの冗長性が全く無くなり、耐障害性が低下するからである。
【０１７０】
そのため、データに対して、損失を防ぐための冗長性を付与する必要性が高い場合は、ホットスペアディスクの記憶領域へのデータの再配置は極力実行しないようにするのが好ましい。よって、ホットスペアディスクの記憶領域へのデータの再配置は、他のアレイの記憶領域への再配置ができない場合、又は移転元のエクステントでの負荷があまりにも高く許容できる値の範囲を超えた場合に実行されるのが良い。
【０１７１】
なお、許容できる値の範囲の指標としては、例えば、負荷の高いエクステントでの応答時間挙げられる。また、管理者は、ホットスペアディスクの記憶領域へのデータの再配置が実行された場合は、論理ボリュームの設計の修正、又はアレイを構成するＨＤＤの追加等を検討する必要がある。
【０１７２】
ここで、ホットスペアディスクの記憶領域へのデータの再配置が行われた後、処理が終了した場合のストレージ装置での処理について図１４を用いて説明する。図１４は、本発明の実施の形態における変形例において、ストレージ装置を構成するディスクアレイ制御部が実行するエラー処理を示すフロー図である。
【０１７３】
図１４に示すように、データがホットスペアディスクの記憶領域に再配置されているため、先ず、ディスクアレイ制御部ＤＥ−ｎにおいて、メインコントローラＣ２は、ＨＳにデータを再配置したことを示すエラーメッセージを作成する（ステップＥＲ１１）。
【０１７４】
次に、メインコントローラＣ２は、ストレージ装置を管理している管理用の端末装置の検出処理を実行する（ステップＥＲ１２）。続いて、メインコントローラＣ２は、検出した端末装置に、ステップＥＲ１１で作成したエラーメッセージを送信する（ステップＥＲ１３）。なお、ステップＥＲ１２及びＥＲ１３は、それぞれ図１２に示したステップＥＲ２及びＥＲ３と同様のステップである。ステップＥＲ１３の実行により、エラー処理は終了する。
【０１７５】
ステップＥＲ１１〜１３の実行により、ホットスペアディスクの記憶領域にデータの再配置が行われた場合も、管理者用の端末装置に、通常のエラーと同様にエラーメッセージを送信でき、管理者に状況を伝えることができる。また、この結果、ホットスペアディスクの記憶領域に再配置されたデータを、別のアレイの記憶領域に再配置するように管理者に警告することも出来る。
【０１７６】
なお、上記の変形例を含めた本実施の形態では、エクステント（又はエクステントチャンク）の負荷が高いかどうかの判断は、特許文献１に開示のＩ／Ｏ存在率を基準にして行われているが、本発明は、これに限定されるものではない。本発明においては、負荷が高いかどうかの判断の基準としては、例えば、エクステント又はＨＤＤでの単純なＩ／Ｏ発生率、具体的にはアクセス頻度等を使用することも出来る。また、従来から良く行われている、論理ボリューム単位でのデータの最適化が実行される場合においても、本発明で用いられるポリシー対応テーブルを応用することが出来る。
【産業上の利用可能性】
【０１７７】
本発明は、ＲＡＩＤを構成しているディスクアレイのデータ配置を最適化するストレージ装置に有用である。本発明によれば、データのポリシーを満たした状態でのデータ配置の最適化を実現することができ、データの耐障害性を向上及び性能の劣化の抑制を図ることができる。
【符号の説明】
【０１７８】
１  ストレージシステム
１０  ホスト装置
２０  ネットワーク
１００  ＨＤＤ
Ａ−１、Ａ−２、・・・Ａ−ｉ  ディスクアレイ（アレイ）
Ｓ−１、Ｓ−２、・・・Ｓ−ｎ  ストレージ装置
ＤＥ−１、ＤＥ−２、・・・ＤＥ−ｎ  ディスクアレイ制御部
Ｃ１  ホストコントローラ
Ｃ２  メインコントローラ
Ｃ３  ディスクコントローラ
Ｃ４  キャッシュメモリ
Ｃ５  メモリ
Ｄ１  入力モジュール
Ｄ２  自律最適化制御エンジン
Ｄ３  Ｉ／Ｏ情報採取モジュール
Ｄ４  チャンク対応テーブル
Ｄ５  エクステント対応テーブル
Ｄ６  ポリシー対応テーブル
Ｄ７  ＲＡＩＤ対応テーブル
Ｄ８  エクステント再配置実行モジュール
Ｈ−１  データベースサーバ
Ｈ−２  ファイルサーバ
Ｈ−３  ファイルサーバ
ＨＳ−１  ホットスペアディスク
Ｌ−１、Ｌ−２、Ｌ−３、Ｌ−４、Ｌ−５、Ｌ−６、Ｌ−７  ディスクアレイ（アレイ）
【図１】
2011086077.tif 000003
【図２】
2011086077.tif 000004
【図３】
2011086077.tif 000005
【図４】
2011086077.tif 000006
【図５】
2011086077.tif 000007
【図６】
2011086077.tif 000008
【図７】
2011086077.tif 000009
【図８】
2011086077.tif 000010
【図９】
2011086077.tif 000011
【図１０】
2011086077.tif 000012
【図１１】
2011086077.tif 000013
【図１２】
2011086077.tif 000014
【図１３】
2011086077.tif 000015
【図１４】
2011086077.tif 000016