(57)【特許請求の範囲】
【請求項１】
それぞれ異なる記憶装置の物理制御を行う物理制御担当の複数のストレージ制御装置に対して、物理的な記憶領域の割り当てを制御する割当担当のストレージ制御装置であって、
仮想ボリュームを使用する装置からのデータのライト要求に応じて必要な前記仮想ボリュームへの記憶領域の割り当て要求を前期仮想ボリュームの制御担当のストレージ制御装置から取得し、
前記割り当て要求を取得した場合、前記複数のストレージ制御装置のうちの前記仮想ボリュームの制御担当のストレージ制御装置が自ら物理制御を行う記憶装置における記憶領域を前記仮想ボリュームに割り当てる、
制御部を有することを特徴とするストレージ制御装置。
【請求項２】
前記制御部は、
前記割り当て要求を取得した場合、前記仮想ボリュームの制御担当のストレージ制御装置が自ら物理制御を行う記憶装置における記憶領域の割り当て量が所定の閾値以下であれば、前記仮想ボリュームの制御担当のストレージ制御装置が自ら物理制御を行う記憶装置における記憶領域を前記仮想ボリュームに割り当て、
前記仮想ボリュームの制御担当のストレージ制御装置が自ら物理制御を行う記憶装置における記憶領域の割り当て量が前記所定の閾値より大きければ、前記複数のストレージ制御装置のうちの前記仮想ボリュームを使用する装置から前記ライト要求を受け付けたストレージ制御装置が自ら物理制御を行う記憶装置における記憶領域を前記仮想ボリュームに割り当てる、
ことを特徴とする請求項１に記載のストレージ制御装置。
【請求項３】
前記制御部は、
前記割り当て要求を取得した場合、前記複数のストレージ制御装置のうちの前記仮想ボリュームを使用する装置から前記ライト要求を受け付けたストレージ制御装置が自ら物理制御を行う記憶装置における記憶領域の割り当て量が前記所定の閾値より大きければ、前記複数のストレージ制御装置の各々のストレージ制御装置が自ら物理制御を行う記憶装置のうち、記憶領域の割り当て量が最も小さい記憶装置における記憶領域を前記仮想ボリュームに割り当てる、
ことを特徴とする請求項２に記載のストレージ制御装置。
【請求項４】
前記制御部は、
前記複数のストレージ制御装置に含まれる前記仮想ボリュームの制御担当のストレージ制御装置とは異なる他のストレージ制御装置が自ら物理制御を行う記憶装置における記憶領域のうちの前記仮想ボリュームに割り当てられた記憶領域に記憶されたデータの移動要求を取得し、
前記移動要求を取得した場合、前記データの移動先となる前記仮想ボリュームの制御担当のストレージ制御装置が自ら物理制御を行う記憶装置における記憶領域を前記仮想ボリュームに割り当てる、
ことを特徴とする請求項１〜３のいずれか一つに記載のストレージ制御装置。
【請求項５】
前記複数のストレージ制御装置の各々のストレージ制御装置が自ら物理制御を行う記憶装置における記憶領域は、複数の記憶装置を含むＲＡＩＤグループにより形成されたボリュームである、
ことを特徴とする請求項１〜４のいずれか一つに記載のストレージ制御装置。
【請求項６】
それぞれ異なる記憶装置の物理制御を行う物理制御担当の複数のストレージ制御装置に対して、物理的な記憶領域の割り当てを制御する割当担当のストレージ制御装置に、
仮想ボリュームを使用する装置からのデータのライト要求に応じて必要な前記仮想ボリュームへの記憶領域の割り当て要求を前期仮想ボリュームの制御担当のストレージ制御装置から取得し、
前記割り当て要求を取得した場合、前記複数のストレージ制御装置のうちの前記仮想ボリュームの制御担当のストレージ制御装置が自ら物理制御を行う記憶装置における記憶領域を前記仮想ボリュームに割り当てる、
処理を実行させることを特徴とする制御プログラム。
【請求項７】
それぞれ異なる記憶装置の物理制御を行う物理制御担当の複数のストレージ制御装置と、前記複数のストレージ制御装置に対して、物理的な記憶領域の割り当てを制御する割当担当のストレージ制御装置と、仮想ボリュームの制御担当のストレージ制御装置とを含むストレージシステムであって、
前記仮想ボリュームの制御担当のストレージ制御装置は、
前記仮想ボリュームを使用する装置からのデータのライト要求に応じて必要な前記仮想ボリュームへの記憶領域の割り当て要求を前期割当担当のストレージ制御装置に送信し、
前記割当担当のストレージ制御装置は、
前記割り当て要求を前期仮想ボリュームの制御担当のストレージ制御装置から取得し、
前記割り当て要求を取得した場合、前記複数のストレージ制御装置のうちの前記仮想ボリュームの制御担当のストレージ制御装置が自ら物理制御を行う記憶装置における記憶領域を前記仮想ボリュームに割り当てる、
ことを特徴とするストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ制御装置、および制御プログラムに関する。
【背景技術】
【０００２】
従来、物理的な記憶領域の記憶容量以上の容量を有する仮想ボリュームを提供する、シン・プロビジョニングと呼ばれる技術がある。関連する先行技術として、例えば、上位装置から所定の機能の実行を要求された場合、第１および第２記憶制御装置の状況と各記憶制御装置でそれぞれ実行可能な機能とに基づいて、各記憶制御装置のうちいずれが所定の機能を実行すべきか判断するものがある。また、物理的に存在する実ストレージの記憶容量、実ストレージのアクセス制御の担当コントローラ、実ストレージの仮想ストレージの記憶容量、仮想ストレージのデータの移行先を考慮し、ストレージプールに跨って移管すべき実ストレージを検索する技術がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２３８１３１号公報
【特許文献２】特開２００７−１９９８９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来技術によれば、それぞれ異なる記憶領域を制御する複数のストレージ制御装置のいずれかの記憶領域が割り当てられた仮想ボリュームに対してアクセスを行うと、複数のストレージ制御装置の間の通信が増大することがある。例えば、仮想ボリュームを制御するストレージ制御装置と、仮想ボリュームに割り当てられた記憶領域を制御するストレージ制御装置とが異なる場合、仮想ボリュームにアクセスすると、２つのストレージ制御装置の間で通信が発生することになる。
【０００５】
１つの側面では、本発明は、仮想ボリュームに対するアクセスによる複数のストレージ制御装置の間の通信を抑制することができるストレージ制御装置、および制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一側面によれば、仮想ボリュームの使用状況に応じて記憶領域の割り当て量が変化する仮想ボリュームへの記憶領域の割り当て要求を取得し、割り当て要求を取得した場合、それぞれ異なる記憶領域を制御する複数のストレージ制御装置のうちの仮想ボリュームを制御するストレージ制御装置が制御する記憶領域を仮想ボリュームに割り当てるストレージ制御装置、および制御プログラムが提案される。
【発明の効果】
【０００７】
本発明の一態様によれば、仮想ボリュームに対するアクセスによる複数のストレージ制御装置の間の通信を抑制することができるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、本実施の形態にかかるストレージ制御装置１０１＃０〜＃３の動作例を示す説明図である。
【図２】図２は、ストレージシステム２００の構成例を示す説明図である。
【図３】図３は、ＣＭ２１４のハードウェア構成例を示す説明図である。
【図４】図４は、ＴＰＰ均等モードによる割り当て例を示す説明図である。
【図５】図５は、ＴＰＶ均等モードによる割り当て例を示す説明図である。
【図６】図６は、本実施の形態による割り当て例を示す説明図である。
【図７】図７は、ＣＭ２１４の機能構成例を示す説明図である。
【図８】図８は、ＲｅｃｅｉｖｅＣＭとＯＬＵ代表ＣＭと物理担当ＣＭとがそれぞれ異なる場合のＩ／Ｏ処理の一例を示す説明図である。
【図９】図９は、ＯＬＵ代表ＣＭと物理担当ＣＭとが同一であり、ＲｅｃｅｉｖｅＣＭが異なる場合のＩ／Ｏ処理の一例を示す説明図である。
【図１０】図１０は、ＲｅｃｅｉｖｅＣＭと物理担当ＣＭとが同一であり、ＯＬＵ代表ＣＭが異なる場合のＩ／Ｏ処理の一例を示す説明図である。
【図１１】図１１は、ＲｅｃｅｉｖｅＣＭとＯＬＵ代表ＣＭとが同一であり、物理担当ＣＭが異なる場合のＩ／Ｏ処理の一例を示す説明図である。
【図１２】図１２は、ＲｅｃｅｉｖｅＣＭとＯＬＵ代表ＣＭと物理担当ＣＭとが全て同一の場合のＩ／Ｏ処理の一例を示す説明図である。
【図１３】図１３は、ライトＩ／Ｏ時における物理領域割り当て処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下に図面を参照して、開示のストレージ制御装置、および制御プログラムの実施の形態を詳細に説明する。
【００１０】
図１は、本実施の形態にかかるストレージ制御装置１０１＃０〜＃３の動作例を示す説明図である。ストレージ制御装置１０１＃０〜＃３は、実際の記憶領域である物理領域１０２＃０〜＃３をそれぞれ制御するコンピュータである。また、ストレージ制御装置１０１＃０〜＃３は、シン・プロビジョニングによる仮想ボリュームを、ストレージ制御装置１０１＃０〜＃３を利用するホストコンピュータに提供する。以下、ホストコンピュータを、「ホスト」と称する。ホストは、例えば、Ｗｅｂサーバ、データベースサーバ等といったサーバである。
【００１１】
ここで、シン・プロビジョニングとは、物理的な記憶領域の記憶容量以上の容量を有する仮想ボリュームを提供する技術である。シン・プロビジョニング機能により仮想化したＬＵＮ（Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ）をシン・プロビジョニングボリューム（Ｔｈｉｎ  Ｐｒｏｖｉｓｉｏｎｉｎｇ  Ｖｏｌｕｍｅ：ＴＰＶ）と呼ぶ。また、ＴＰＶを一定の論理ブロックサイズごとに分割した管理単位をチャンク（ｃｈｕｎｋ）と呼ぶ。また、ＴＰＶは、ある数のＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）グループから成るシン・プロビジョニングプール（Ｔｈｉｎ  Ｐｒｏｖｉｓｉｏｎｉｎｇ  Ｐｏｏｌ：ＴＰＰ）内に作成される。ストレージ制御装置１０１＃０〜＃３は、それぞれ、担当のＴＰＶの制御を行う。
【００１２】
ここで、ＲＡＩＤグループは、ＲＡＩＤ技術により仮想化したボリュームを形成する記憶装置の集合である。そして、ＲＡＩＤ技術は、複数の記憶装置を組み合わせて仮想的なボリュームとして運用する技術である。ここで、ＲＡＩＤには、仮想化したボリュームの形成の仕方を表すＲＡＩＤレベルが存在する。ＲＡＩＤレベルは、ＲＡＩＤ０〜ＲＡＩＤ６までのＲＡＩＤレベルが存在する。また、ＲＡＩＤには、ＲＡＩＤ０＋１というように、複数のＲＡＩＤレベルを組み合わせたレベルも存在する。本実施の形態は、どのＲＡＩＤレベルであっても適用することができる。
【００１３】
従って、図１の例では、物理領域１０２＃０〜＃３は、ＲＡＩＤグループにより形成されたボリュームである。そして、物理領域１０２＃０〜＃３が１つのＴＰＰを形成する。なお、物理領域１０２＃０〜＃３のＲＡＩＤレベルは、同一でもよいし異なってもよい。また、物理領域１０２＃０〜＃３のそれぞれが、１つの物理的な記憶装置でもよい。また、物理領域１０２＃０〜＃３のいずれかがＲＡＩＤグループに形成されたボリュームであり、他が１つの物理的な記憶装置である、というように混在していてもよい。
【００１４】
ここで、ＴＰＶに対して、ホストからデータのライトが行われたとする。この場合、ストレージ制御装置１０１＃０〜＃３のうちの割り当てを制御するストレージ制御装置１０１は、ホストからライトされた量に応じた物理ディスク領域をチャンクごとに論理領域へ、ＴＰＰ内のＲＡＩＤグループから割り当てる。ライトが行われる範囲の論理領域が、全て割り当て済みであった場合、割り当てを制御するストレージ制御装置１０１は、新たに物理領域の割り当てを行わない。なお、シン・プロビジョニング機能によりＴＰＶを作成した直後は、どのチャンクにも物理領域は割り当たっていない。このように、ＴＰＶは、ＴＰＶの使用状況に応じて物理領域の割り当て量が変化する。
【００１５】
ここで、ライトが行われる範囲の論理領域に未割り当ての領域がある場合には、チャンクに対して物理領域を割り当てることになる。チャンクに対して物理領域を割り当てる方法は、ＴＰＰ均等モードによる方法と、ＴＰＶ均等モードによる方法とが考えられる。ＴＰＰ均等モードの詳細については、図４で説明する。また、ＴＰＶ均等モードの詳細については、図５で説明する。
【００１６】
しかしながら、ＴＰＰ均等モードと、ＴＰＶ均等モードのいずれの方法を行っても、Ｉ／Ｏ時に複数のストレージ制御装置の間の通信が増大する。具体的には、ＴＰＶを制御するストレージ制御装置と、ＴＰＶに割り当てられた物理領域を制御するストレージ制御装置とが異なる場合、仮想ボリュームにアクセスすると、２つのストレージ制御装置の間で通信が発生することになる。
【００１７】
そこで、本実施の形態では、ＴＰＶを制御するストレージ制御装置１０１が制御する物理領域１０２を、ＴＰＶのチャンクに割り当てることについて説明する。
【００１８】
以下、図１を用いて、ストレージ制御装置１０１＃０〜＃３の動作例について説明する。図１の例では、割り当てを制御するストレージ制御装置１０１が、ストレージ制御装置１０１＃０であるとする。そして、ストレージ制御装置１０１＃０がＴＰＶ＃０の制御をし、ストレージ制御装置１０１＃１がＴＰＶ＃１の制御をし、ストレージ制御装置１０１＃２がＴＰＶ＃２の制御をするものとする。また、図１の例では、物理領域１０２＃０〜３は、それぞれ４つの物理領域を有するものとする。
【００１９】
この状態で、図１の（１）で示すように、ストレージ制御装置１０１＃０は、ＴＰＶ＃１のチャンクへの割り当て要求を取得する。例えば、ホストからＴＰＶ＃１への書き込み要求を受けると、ＴＰＶ＃１を制御するストレージ制御装置１０１＃１は、書き込み要求に対する論理領域に対する物理領域が未割り当てであれば、新たな物理領域の割り当て要求を生成する。そして、ストレージ制御装置１０１＃１は、生成した割り当て要求をストレージ制御装置１０１＃０に送信する。この場合、ストレージ制御装置１０１＃０は、ストレージ制御装置１０１＃１から、ＴＰＶ＃１のチャンクへの割り当て要求を取得する。
【００２０】
また、図１の例とは異なるが、ＴＰＶ＃０への書き込み要求を受けると、ＴＰＶ＃０を制御するストレージ制御装置１０１＃０は、書き込み要求に対する領域が未割り当てである場合、新たな物理領域の割り当て要求を生成する。この場合、ストレージ制御装置１０１＃０は、割り当て要求を生成することにより、ストレージ制御装置１０１＃１から、ＴＰＶ＃０への割り当て要求を取得する。
【００２１】
ＴＰＶ＃１への割り当て要求を取得した場合、ストレージ制御装置１０１＃０は、図１の（２）で示すように、第１のストレージ制御装置１０１として、ＴＰＶ＃１を制御するストレージ制御装置１０１＃１が制御する物理領域１０２＃１をＴＰＶ＃１に割り当てる。本実施の形態による割り当て例を、図６で示す。具体的には、図１の例では、ストレージ制御装置１０１＃０は、ストレージ制御装置１０１＃１に対して、物理領域１０２＃１をＴＰＶ＃１に割り当てる指示を送信する。そして、ストレージ制御装置１０１＃１は、指示に従って、ＴＰＶ＃１のチャンクに対して物理領域１０２＃１の１つの分割領域を割り当てる。
【００２２】
これにより、ＴＰＶ＃１へのＩ／Ｏの処理において、ＴＰＶ＃１を制御するストレージ制御装置１０１とＴＰＶ＃１に割り当てられた物理領域１０２を制御するストレージ制御装置１０１とが同一となる。従って、ストレージ制御装置１０１間の通信が減り、オーバヘッドを減らすことができる。次に、図１で示したストレージ制御装置１０１＃０〜＃２を、ストレージシステムに適用した例を、図２を用いて説明する。
【００２３】
図２は、ストレージシステム２００の構成例を示す説明図である。図２では、ストレージシステム２００の構成例を説明する。ストレージシステム２００は、ディスクアレイ装置２０１と、ホスト２０２とを有する。ディスクアレイ装置２０１は、ＣＥ（Ｃｏｎｔｒｏｌｌｅｒ  Ｅｎｃｌｏｓｕｒｅ）２１１＃０、＃１、…と、ＦＥ（Ｆｒｏｎｔｅｎｄ  Ｅｎｃｌｏｓｕｒｅ）２１２と、ＤＥ（Ｄｒｉｖｅ  Ｅｎｃｌｏｓｕｒｅ）２１３＃００〜＃７３、…とを有する。ＣＥ２１１は、ＣＭ（Ｃｏｎｔｒｏｌｌｅｒ  Ｍｏｄｕｌｅ）２１４を有する。具体的には、ＣＥ２１１＃０は、ＣＭ２１４＃０、＃１を有し、ＣＥ２１１＃１は、ＣＭ２１４＃２、＃３を有する。ここで、ＣＭ２１４は、図１で説明したストレージ制御装置１０１に相当する。
【００２４】
ホスト２０２は、ＴＰＶを使用する装置である。例えば、ホスト２０２は、ＴＰＶに対して、リードアクセスやライトアクセスといったＩ／Ｏを発行する。
【００２５】
ＦＥ２１２は、ＳＶＣ（ＳｅｒＶｉｃｅ  Ｃｏｎｔｒｏｌｌｅｒ）２２１＃０、＃１と、ＦＲＴ（Ｆｒｏｎｔ  ｅｎｄ  ＲｏｕＴｅｒ）２２２＃０〜＃３とを有する。ＳＶＣ２２１は、システム管理を行うユニットである。ＦＲＴ２２２は、ＣＭ間の通信経路を提供するモジュールである。
【００２６】
ＤＥ２１３＃００〜＃７３、…は、複数のディスクを収める筐体である。ここで、ＤＥ２１３に収められるディスクは、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）である。または、ＤＥ２１３＃００〜＃７３は、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）を収めていてもよいし、ＨＤＤとＳＳＤとが混在していてもよい。また、ＤＥ２１３に収められるディスクは、同一の記憶容量を持つものでもよいし、異なる記憶容量を持つものでもよい。
【００２７】
ＣＭ２１４は、ＤＥ２１３に収められるディスクを用いて、ＴＰＶを形成する。ここで、複数のＴＰＶのそれぞれのＴＰＶごとに、ＴＰＶを制御するＣＭが存在する。以下の記載では、ＴＰＶを制御するＣＭを、「ＯＬＵ（Ｏｐｅｎ  ＬＵＮ  Ｕｎｉｔ）代表ＣＭ」と呼称する。なお、ＣＭ２１４は、１つのＴＰＶを制御してもよいし、複数のＴＰＶを制御してもよい。
【００２８】
また、ＴＰＰ内のＲＡＩＤグループは、それぞれのＲＡＩＤグループを制御するＣＭが存在する。以下の記載では、ＲＡＩＤグループを制御するＣＭを、「物理担当ＣＭ」と呼称する。例えば、物理担当ＣＭは、制御下にあるＲＡＩＤグループのＲＡＩＤレベル５であり、書き込み要求を受信した場合には、パリティの計算を行って、データとパリティをＲＡＩＤグループの各ディスクに書き込む。なお、ＣＭ２１４は、１つのＲＡＩＤグループを制御してもよいし、複数のＲＡＩＤグループを制御してもよい。
【００２９】
また、以下の記載では、ホスト２０２からのアクセスを受け付けるＣＭを、「ＲｅｃｅｉｖｅＣＭ」と呼称する。
【００３０】
図３は、ＣＭ２１４のハードウェア構成例を示す説明図である。ＣＭ２１４は、ＣＰＵ３０１と、メモリ３０２と、キャッシュメモリ３０３と、ＣＡ（Ｃｈａｎｎｅｌ  Ａｄａｐｔｏｒ）３０４と、ＥＸＰ（ＥＸＰａｎｄｅｒ）３０５と、を含む。ＣＰＵ３０１〜ＥＸＰ３０５はそれぞれ接続される。
【００３１】
ＣＰＵ３０１は、ＣＭ２１４の全体の制御を司る演算処理装置である。また、ＣＰＵ３０１は、複数のコアを有するマルチコアプロセッサでもよい。メモリ３０２は、ＣＰＵ３０１のワークエリアとして使用される揮発性メモリである。キャッシュメモリ３０３は、メモリ３０２よりアクセス性能が高く、メモリ３０２の一部を記憶するメモリである。ＣＡ３０４は、ホスト２０２と通信する通信インタフェースである。ＣＭ２１４は、図３の例で示すように、複数個のＣＡ３０４を有して、ＣＡ３０４を冗長構成としてもよい。
【００３２】
ＥＸＰ３０５は、ＳＡＳ（Ｓｅｒｉａｌ  Ａｔｔａｃｈｅｄ  ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ））／ＳＡＴＡ（Ｓｅｒｉａｌ  ＡＴＡ（Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ））接続用のＥｘｐａｎｄｅｒチップである。ＣＭ２１４は、図３の例で示すように、複数個のＥＸＰ３０５を有して、ＥＸＰ３０５を冗長構成としてもよい。
【００３３】
図４〜図６を用いて、ＴＰＰ均等モードによる割り当て例と、ＴＰＶ均等モードによる割り当て例と、本実施の形態による割り当て例について説明する。図４〜図６における前提として、ＣＭがＣＭ２１４＃０〜＃３と４つあり、ＴＰＶがＴＰＶ＃０〜＃２と３つあり、ＲＡＩＤグループがＲＡＩＤ＃０〜＃３と４つあるとする。ＲＡＩＤ＃０〜＃３は、ＤＥ２１３内の複数のディスクにより形成されたＲＡＩＤグループである。
【００３４】
そして、ＴＰＶ＃０のＯＬＵ代表ＣＭがＣＭ２１４＃０であり、ＴＰＶ＃１のＯＬＵ代表ＣＭがＣＭ２１４＃１であり、ＴＰＶ＃２のＯＬＵ代表ＣＭがＣＭ２１４＃２であるとする。そして、ＴＰＶ＃０に対して、物理領域を割り当てるものとする。また、ＲＡＩＤ＃０の物理担当ＣＭがＣＭ２１４＃０であり、ＲＡＩＤ＃１の物理担当ＣＭがＣＭ２１４＃１であり、ＲＡＩＤ＃２の物理担当ＣＭがＣＭ２１４＃２であり、ＲＡＩＤ＃３の物理担当ＣＭがＣＭ２１４＃３であるとする。
【００３５】
また、図４〜図６の例では、ＲＡＩＤ＃０〜＃３が、物理領域を分割した４つの分割領域を有するものとする。そして、図４、図５の例では、ＲＡＩＤ＃０、＃１は、ＴＰＶ＃０、＃１のそれぞれの１つのチャンクに対して２つの分割領域を割り当てており、ＲＡＩＤ＃２はＴＰＶ＃１、＃２のそれぞれの１つのチャンクに対して２つの分割領域を割り当てているとする。そして、ＲＡＩＤ＃３はＴＰＶ＃０の１つのチャンクに対して分割領域を割り当てているとする。
【００３６】
また、図６の例では、ＲＡＩＤ＃０はＴＰＶ＃０の３つのチャンクに対して３つの分割領域を割り当てており、ＲＡＩＤ＃１はＴＰＶ＃１の３つのチャンクに対して３つの分割領域を割り当てているとする。そして、ＲＡＩＤ＃２はＴＰＶ＃２の１つのチャンクに対して１つの分割領域を割り当てているとする。そして図４〜図６の例では、ＴＰＶ＃０に対して、分割領域を新規に割り当てるものとする。
【００３７】
図４は、ＴＰＰ均等モードによる割り当て例を示す説明図である。ＴＰＰ均等モードは、ＴＰＰ内のＲＡＩＤグループを、他のＴＰＶも含めて均等に使用するように物理領域を選択し、ＴＰＰとしてバランスよく物理領域を配置するモードである。
【００３８】
図４の例では、ＲＡＩＤ＃０、＃１、＃２は、ＴＰＶの２つのチャンクに対して２つの分割領域を割り当てており、ＲＡＩＤ＃３は、ＴＰＶの１つのチャンクに対して１つの分割領域を割り当てている。この場合、ＴＰＰ均等モードに従うと、割り当てを制御するＣＭは、ＴＰＰ内でのバランスをとるために、ＴＰＶ＃０のチャンクに対してＲＡＩＤ＃３の物理領域を割り当てる。
【００３９】
図５は、ＴＰＶ均等モードによる割り当て例を示す説明図である。ＴＰＶ均等モードは、ＴＰＶ内の物理領域が、ＴＰＰ内のＲＡＩＤグループを均等に使用するように物理領域を選択し、ＴＰＶとしてバランス良く物理領域を配置するモードである。
【００４０】
図５の例では、割り当て要求があったＴＰＶ＃０の各チャンクは、ＲＡＩＤ＃０、＃１、＃３のそれぞれ１つの物理領域が割り当てられている。従って、ＴＰＶ均等モードに従うと、割り当てを制御するＣＭは、ＴＰＶ内でのバランスをとるために、ＴＰＶ＃０のチャンクに対してＲＡＩＤ＃２の物理領域を割り当てる。
【００４１】
図６は、本実施の形態による割り当て例を示す説明図である。図６の例では、本実施の形態に従うと、割り当てを制御するＣＭは、ＴＰＶ＃０のチャンクに対して、ＴＰＶ＃０のＯＬＵ代表ＣＭであるＣＭ＃０が制御するＲＡＩＤ＃０の分割領域を割り当てる。
【００４２】
図４、図５で示した方法では、ＯＬＵ代表ＣＭとは関係なくチャンクが割り当てられる。そのため、Ｉ／Ｏ処理において、ＯＬＵ代表ＣＭと物理担当ＣＭが異なることにより、各処理間でのＣＭ間通信回数が増えてオーバヘッドが発生する可能性がある。これに対し、図６で示した方法では、ＯＬＵ代表ＣＭと物理担当ＣＭが同一となるため、各処理間でのＣＭ間通信回数が減り、オーバヘッドを抑えることができる。なお、マルチパス環境で、チャンクが存在する物理担当ＣＭとＲｅｃｅｉｖｅＣＭが同じになるようにする機能が有効であれば、この機能を併用することにより、さらにＣＭ間通信を削減することが可能となる。
【００４３】
また、ＴＰＶが多数ある場合を想定すると、あるＲＡＩＤグループに物理領域の割り当てが偏らず、ＴＰＰ全体的に見て均等に物理領域が割り当たるようになり、ＣＭへの負荷が分散されることになる。次に、図７を用いて、ＣＭ２１４が有する機能について説明する。
【００４４】
（ＣＭ２１４の機能構成例）
図７は、ＣＭ２１４の機能構成例を示す説明図である。ＣＭ２１４は、制御部７００を有する。制御部７００は、排他制御部７０１と、キャッシュ制御部７０２と、コピー制御部７０３と、ディスク制御部７０４とを含む。キャッシュ制御部７０２は、取得部７１１と、割り当て部７１２とを含む。ここで、制御部７００は、記憶装置に記憶されたプログラムをＣＰＵ３０１が実行することにより、各部の機能を実現する。ここで、記憶装置とは、具体的には、メモリ３０２、ＤＥ２１３内の記憶装置などである。また、各部の処理結果は、ＣＰＵ３０１のレジスタや、キャッシュメモリ３０３等に格納される。
【００４５】
排他制御部７０１は、Ｉ／Ｏ範囲における排他（Ｅｘｔｅｎｔ排他）獲得処理およびＥｘｔｅｎｔ排他解除処理を実行する。
【００４６】
キャッシュ制御部７０２は、キャッシュメモリ３０３に対するキャッシュの獲得処理およびキャッシュの解放処理を実行する。
【００４７】
コピー制御部７０３は、ディスクアレイ装置２０１内のデータをコピーする。例えば、バックアップの目的のため、コピー制御部７０３は、ディスクアレイ装置２０１内のあるボリュームのデータを、他のボリュームにコピーする。
【００４８】
ディスク制御部７０４は、ＤＥ２１３の複数のディスクを制御する。取得部７１１は、ＴＰＶのチャンクへの割り当て要求を取得する。
【００４９】
割り当て部７１２は、取得部７１１が割り当て要求を取得した場合、ＣＭ２１４＃０〜＃３、…のうちの割り当て要求があったＴＰＶのＯＬＵ代表ＣＭが制御する物理領域をＴＰＶのチャンクに割り当てる。
【００５０】
例えば、割り当て部７１２は、取得部７１１が割り当て要求を取得した場合、ＯＬＵ代表ＣＭが制御する物理領域の割り当て量が所定の閾値以下であれば、ＯＬＵ代表ＣＭが制御する物理領域をＴＰＶのチャンクに割り当てる。また、割り当て部７１２は、取得部７１１が割り当て要求を取得した場合、ＯＬＵ代表ＣＭが制御する物理領域の割り当て量が所定の閾値より大きければ、ＣＭ２１４＃０〜＃３、…のうちのＲｅｃｅｉｖｅＣＭが制御する物理領域をＴＰＶのチャンクに割り当てる。
【００５１】
ここで、以下、所定の閾値を、「割り当て量閾値」と呼称する。例えば、割り当て量閾値は、ＯＬＵ代表ＣＭの制御下の物理領域に対する、ある割合でもよい。具体的には、ストレージシステム２００の管理者によって、ＣＭ２１４は、ＯＬＵ代表ＣＭの物理領域全体の記憶容量の９割、８割といった値を割り当て量閾値に設定する。
【００５２】
または、割り当て量閾値は、各ＣＭ２１４の制御下の物理領域の割り当て量の最小値から所定の割合を加えた値でもよい。ここで、説明を簡略化するため、各ＣＭ２１４の制御下の物理領域の記憶容量が、全て同一であるとする。そして、各ＣＭ２１４の制御下の物理領域の割り当て量の最小値が物理領域全体の記憶容量の２割であれば、ＣＭ２１４は、２割に所定の割合、例えば、１割や２割といった値を加えた値を、割り当て量閾値に設定する。これにより、各ＣＭ２１４の間で、割り当て量が著しく偏るということを抑制することができる。
【００５３】
また、割り当て部７１２は、ＲｅｃｅｉｖｅＣＭが制御する物理領域の割り当て量が割り当て量閾値より大きければ、ＣＭ２１４＃０〜＃３、…のうちの割り当て量が最も小さいＣＭの物理領域をＴＰＶのチャンクに割り当ててもよい。
【００５４】
また、上述した機能を、ＴＰＶのチャンクの再割り当ての際にも適用することができる。ここで、再割り当てを行う状況としては、例えば、ＯＬＵ代表ＣＭの制御下の物理領域の割り当て量が割り当て量閾値より一旦大きくなった後、割り当て量が最も小さいＣＭの物理領域を割り当てたとする。そして、ＴＰＶのデータが削除されて割り当てが解除された等により、ＯＬＵ代表ＣＭの制御下の物理領域の割り当て量が割り当て量閾値以下となる場合がある。このような場合に、ＣＭ間通信を減らすべく、ＣＭ２１４は、ＴＰＶのチャンクの再割り当てを行ってもよい。
【００５５】
再割り当てを行う場合、取得部７１１は、ＣＭ２１４＃０〜＃３、…に含まれる、あるＴＰＶのＯＬＵ代表ＣＭとは異なる他のＣＭが制御する物理領域のうちのあるＴＰＶのチャンクとして割り当てられた物理領域に記憶されたデータの移動要求を取得する。そして、割り当て部７１２は、取得部７１１が移動要求を取得した場合、移動要求があったデータの移動先となる、あるＴＰＶのＯＬＵ代表ＣＭが制御する物理領域を、あるＴＰＶのチャンクに割り当てる。割り当てた後、ＣＭ２１４は、移動要求があったデータを移動先にコピーする。
【００５６】
ここで、図４のＴＰＶ＃０のチャンクにＲＡＩＤ＃３の分割領域を割り当てた後の例を用いて再割り当ての具体例を説明する。再割り当てを行う場合、取得部７１１は、あるＴＰＶとして、ＴＰＶ＃０のＯＬＵ代表ＣＭとなるＣＭ２１４＃０とは異なるＣＭ２１４＃１のＴＰＶ＃０のチャンクに割り当てられたＲＡＩＤ＃１の分割領域のデータの移動要求を取得する。そして、割り当て部７１２は、ＴＰＶ＃０のＯＬＵ代表ＣＭとなるＣＭ２１４＃０が制御する分割領域を、ＴＰＶ＃０のチャンクに割り当てる。割り当てた後、ＣＭ２１４は、ＲＡＩＤ＃１のＴＰＶ＃０のチャンクに割り当てられていた分割領域のデータを、ＲＡＩＤ＃０内の割り当て部７１２が割り当てた分割領域に書き込む。
【００５７】
次に、ＲｅｃｅｉｖｅＣＭ、ＯＬＵ代表ＣＭ、物理担当ＣＭの３つのＣＭが異なる場合や同一となる場合のＩ／Ｏ処理について、図８〜図１２を用いて説明する。図８〜図１２において、ＣＭ間の実線の矢印は、ＣＭ間通信を示す。
【００５８】
図８は、ＲｅｃｅｉｖｅＣＭとＯＬＵ代表ＣＭと物理担当ＣＭとがそれぞれ異なる場合のＩ／Ｏ処理の一例を示す説明図である。ＲｅｃｅｉｖｅＣＭは、Ｉ／Ｏを受信する（ステップＳ８０１）。Ｉ／Ｏを受信すると、ＲｅｃｅｉｖｅＣＭは、ＯＬＵ代表ＣＭに対してＣＭ間通信を実行する。
【００５９】
ＣＭ間通信を受けたＯＬＵ代表ＣＭは、Ｅｘｔｅｎｔ排他獲得処理を実行する（ステップＳ８０２）。そして、ＯＬＵ代表ＣＭは、論理領域に対する物理領域を求める処理である論理物理変換処理を実行する（ステップＳ８０３）。次に、ＯＬＵ代表ＣＭは、ＲｅｃｅｉｖｅＣＭに対してＣＭ間通信を実行し、処理をＲｅｃｅｉｖｅＣＭに戻す。
【００６０】
ＣＭ間通信を受けたＲｅｃｅｉｖｅＣＭは、ホストＩ／Ｏを開始し（ステップＳ８０４）、求められた物理領域を担当する物理担当ＣＭに対してＣＭ間通信を実行する。
【００６１】
ＣＭ間通信を受けた物理担当ＣＭは、キャッシュの獲得処理を実行する（ステップＳ８０５）。ここで、物理担当ＣＭは、ＲｅｃｅｉｖｅＣＭに対してＣＭ間通信を実行し、処理をＲｅｃｅｉｖｅＣＭに戻す。
【００６２】
ＣＭ間通信を受けたＲｅｃｅｉｖｅＣＭは、データ処理を実行する（ステップＳ８０６）。そして、ＲｅｃｅｉｖｅＣＭは、ホスト２０２からのＩ／ＯがリードＩ／Ｏである場合、ホスト２０２に完了応答を返す（ステップＳ８０７）。ホスト２０２からのＩ／ＯがリードＩ／ＯでなければステップＳ８０６の終了後、ホスト２０２からのＩ／ＯがリードＩ／ＯであればステップＳ８０７の終了後、ＲｅｃｅｉｖｅＣＭは、物理担当ＣＭに対してＣＭ間通信を実行する。
【００６３】
ＣＭ間通信を受けた物理担当ＣＭは、キャッシュの解放処理を実行する（ステップＳ８０８）。そして、物理担当ＣＭは、ＲｅｃｅｉｖｅＣＭに対してＣＭ間通信を実行し、処理をＲｅｃｅｉｖｅＣＭに戻す。
【００６４】
ＣＭ間通信を受けたＲｅｃｅｉｖｅＣＭは、性能情報の集計処理を実行する（ステップＳ８０９）。そして、ＲｅｃｅｉｖｅＣＭは、ＯＬＵ代表ＣＭに対してＣＭ間通信を実行する。
【００６５】
ＣＭ間通信を受けたＯＬＵ代表ＣＭは、Ｅｘｔｅｎｔ排他解除処理を実行する（ステップＳ８１０）。次に、ＯＬＵ代表ＣＭは、ＲｅｃｅｉｖｅＣＭに対してＣＭ間通信を実行し、処理をＲｅｃｅｉｖｅＣＭに戻す。
【００６６】
ＣＭ間通信を受けたＲｅｃｅｉｖｅＣＭは、ホスト２０２からのＩ／ＯがライトＩ／Ｏである場合、ホスト２０２に完了応答を返す（ステップＳ８１１）。以上により、図８で示す場合、ＣＭ間通信が行われる回数は８回となる。
【００６７】
図９は、ＯＬＵ代表ＣＭと物理担当ＣＭとが同一であり、ＲｅｃｅｉｖｅＣＭが異なる場合のＩ／Ｏ処理の一例を示す説明図である。ステップＳ９０１〜Ｓ９１１の処理は、ステップＳ８０１〜Ｓ８１１と同一であるため、説明を省略する。ＯＬＵ代表ＣＭと物理担当ＣＭとが同一である場合、図８と同様に、ＣＭ間通信が行われる回数は８回となる。
【００６８】
図１０は、ＲｅｃｅｉｖｅＣＭと物理担当ＣＭとが同一であり、ＯＬＵ代表ＣＭが異なる場合のＩ／Ｏ処理の一例を示す説明図である。ステップＳ１００１〜Ｓ１０１１の処理は、ステップＳ８０１〜Ｓ８１１と同一であるため、説明を省略する。ＲｅｃｅｉｖｅＣＭと物理担当ＣＭとが同一である場合、ステップＳ１００４〜Ｓ１００６の各処理の２つの間と、ステップＳ１００７〜Ｓ１００９の各処理の２つの間とにおいて、ＣＭ間通信を行わなくてよくなる。以上により、図１０で示す場合、ＣＭ間通信が行われる回数は４回となる。
【００６９】
図１１は、ＲｅｃｅｉｖｅＣＭとＯＬＵ代表ＣＭとが同一であり、物理担当ＣＭが異なる場合のＩ／Ｏ処理の一例を示す説明図である。ステップＳ１１０１〜Ｓ１１１１の処理は、ステップＳ８０１〜Ｓ８１１と同一であるため、説明を省略する。ＲｅｃｅｉｖｅＣＭとＯＬＵ代表ＣＭとが同一である場合、ステップＳ１１０１、Ｓ１１０２の処理の間と、ステップＳ１１０３、Ｓ１１０４の処理の間と、ステップＳ１１０９〜Ｓ１１１１の各処理の２つの間とにおいて、ＣＭ間通信を行わなくてよくなる。以上により、図１１で示す場合、ＣＭ間通信が行われる回数は４回となる。
【００７０】
図１２は、ＲｅｃｅｉｖｅＣＭとＯＬＵ代表ＣＭと物理担当ＣＭとが全て同一の場合のＩ／Ｏ処理の一例を示す説明図である。ステップＳ１２０１〜Ｓ１２１１の処理は、ステップＳ８０１〜Ｓ８１１と同一であるため、説明を省略する。ＲｅｃｅｉｖｅＣＭとＯＬＵ代表ＣＭと物理担当ＣＭとが同一である場合、ステップＳ１２０１〜Ｓ１２１１の全てにおいて、ＣＭ間通信を行わなくてよくなる。以上により、図１２で示す場合、ＣＭ間通信が行われる回数は０回となる。
【００７１】
次に、物理領域割り当て処理を示すフローチャートを、図１３を用いて説明する。
【００７２】
図１３は、ライトＩ／Ｏ時における物理領域割り当て処理手順の一例を示すフローチャートである。ライトＩ／Ｏ時における物理領域割り当て処理は、ライトＩ／Ｏを受け付けた際に行う処理である。ここで、ホスト２０２との接続がシングルパスである場合、ホスト２０２と接続するＣＭ２１４がＲｅｃｅｉｖｅＣＭとなる。また、ホスト２０２との接続がマルチパスであり、かつ、Ａｃｔｉｖｅ／Ａｃｔｉｖｅ−ｐｒｅｆｅｒｒｅｄの環境である場合、Ａｃｔｉｖｅ−ｐｒｅｆｅｒｒｅｄとなるパスで接続するＣＭ２１４がＲｅｃｅｉｖｅＣＭとなる。ここで、Ａｃｔｉｖｅ／Ａｃｔｉｖｅ−ｐｒｅｆｅｒｒｅｄの環境とは、有効な複数のパスのいずれか一つが、Ａｃｔｉｖｅ−ｐｒｅｆｅｒｒｅｄとして優先的なパスとして設定された状態のことである。
【００７３】
ＯＬＵ代表ＣＭは、ＩＯ範囲に対応する領域が割り当て済みか否かを判断する（ステップＳ１３０１）。ＩＯ範囲に対応する領域が割り当て済みである場合（ステップＳ１３０１：Ｙｅｓ）、ディスクアレイ装置２０１は、ライトＩ／Ｏ時における物理領域割り当て処理を終了する。
【００７４】
一方、ＩＯ範囲に対応する領域が割り当て済みでない場合（ステップＳ１３０１：Ｎｏ）、ＩＯ範囲に対応する領域に物理領域を割り当てることになるため、ＯＬＵ代表ＣＭは、割り当てを制御するＣＭにＩＯ範囲に対応する領域の割り当て要求を発行する。そして、割り当てを制御するＣＭは、ＯＬＵ代表ＣＭからＩＯ範囲に対応する領域の割り当て要求を取得する。なお、割り当てを制御するＣＭとＯＬＵ代表ＣＭとが同一である場合、割り当てを制御するＣＭは、自身によって割り当て要求を生成することにより、割り当て要求を取得するものとする。
【００７５】
そして、割り当てを制御するＣＭは、ＯＬＵ代表ＣＭ制御下の割り当て量が割り当て量閾値を超えているか否かを判断する（ステップＳ１３０２）。ＯＬＵ代表ＣＭ制御下の割り当て量が割り当て量閾値を超えていない場合（ステップＳ１３０２：Ｎｏ）、割り当てを制御するＣＭから指示を受けた物理担当ＣＭは、ＯＬＵ代表ＣＭ制御下の物理領域を割り当てる（ステップＳ１３０３）。ステップＳ１３０３の処理が実行された場合、ＯＬＵ代表ＣＭと物理担当ＣＭとが同一となり、図９で示した状態か、図１２で示した状態かのいずれかとなる。
【００７６】
一方、ＯＬＵ代表ＣＭ制御下の割り当て量が割り当て量閾値を超えている場合（ステップＳ１３０２：Ｙｅｓ）、割り当てを制御するＣＭは、ＲｅｃｅｉｖｅＣＭ制御下の割り当て量が割り当て量閾値を超えているか否かを判断する（ステップＳ１３０４）。ＲｅｃｅｉｖｅＣＭ制御下の割り当て量が割り当て量閾値を超えていない場合（ステップＳ１３０４：Ｎｏ）、割り当てを制御するＣＭから指示を受けた物理担当ＣＭは、ＲｅｃｅｉｖｅＣＭ制御下の物理領域を割り当てる（ステップＳ１３０５）。ステップＳ１３０５の処理が実行された場合、ＲｅｃｅｉｖｅＣＭと物理担当ＣＭとが同一となり、図１０で示した状態となる。
【００７７】
一方、ＲｅｃｅｉｖｅＣＭ制御下の割り当て量が割り当て量閾値を超えている場合（ステップＳ１３０４：Ｙｅｓ）、割り当てを制御するＣＭから指示を受けた物理担当ＣＭは、割り当て量が最小のＣＭ制御下の物理領域を割り当てる（ステップＳ１３０６）。ステップＳ１３０６の処理が実行された場合、図８〜図１２で示した状態のいずれかとなる。
【００７８】
ステップＳ１３０３、ステップＳ１３０５、ステップＳ１３０６のいずれかの処理終了後、ディスクアレイ装置２０１は、ライトＩ／Ｏ時における物理領域割り当て処理を終了する。
【００７９】
なお、図１３で示したフローチャートは、ライトＩ／Ｏ時における物理領域の割り当てを示すものであるが、再割り当てを行う際にも適用することもできる。まず、割り当てを制御するＣＭは、例えば、全ての物理担当ＣＭに対して、制御下の割り当て量が割り当て量閾値を超えているＣＭを探索する。そして、割り当てを制御するＣＭは、探索して検出した物理担当ＣＭの制御下の物理領域のうち、検出した物理担当ＣＭの制御下にあるＴＰＶ以外の他のＴＰＶに割り当てられた物理領域があるか否かを判断する。他のＴＰＶに割り当てられた物理領域があるならば、割り当てを制御するＣＭは、ステップＳ１３０２の処理を適用して、他のＴＰＶのＯＬＵ代表ＣＭ制御下の割り当て量が割り当て量閾値を超えているか否かを判断する。以降の処理については、ディスクアレイ装置２０１は、図１３に示すフローチャートに従って処理を行って、他のＴＰＶのチャンクに割り当てられた物理領域に記憶されたデータの移動先となる物理領域を、他のＴＰＶのチャンクに割り当てる。
【００８０】
物理領域を割り当てた後、ディスクアレイ装置２０１は、検出した物理担当ＣＭの制御下にある他のＴＰＶに割り当てられた物理領域に記憶されたデータを、移動先となる物理領域にコピーする。
【００８１】
本実施の形態におけるライトＩ／Ｏ時における物理領域割り当て処理を実行する方法により、ＯＬＵ代表ＣＭ制御下の割り当て量が割り当て量閾値を超えない限り、ＯＬＵ代表ＣＭが物理担当ＣＭと一致することができる。そして、ＯＬＵ代表ＣＭとＲｅｃｅｉｖｅＣＭとが一致するかどうかの違いにより、ＣＭ間通信が８回、または０回となる。これに対し、ＯＬＵ代表ＣＭと関係なく物理担当ＣＭを決定する方法では、ＣＭ間通信が８回、８回、４回、４回、０回のいずれかとなる。２つの方法を比較すると、本実施の形態における方法は、ＣＭ間通信のオーバヘッドが削減でき、Ｉ／Ｏのレスポンスを早めることができる。特に、ＯＬＵ代表ＣＭと関係なく物理担当ＣＭを決定する方法では、ＣＭの数が多いほど、ＣＭ間通信が８回となる確率が高まり、ＣＭ間通信のオーバヘッドが大きくなってしまう。
【００８２】
また、ＣＭ間通信を削減する効果の方が、ＣＭの負荷が上がるデメリットよりもはるかに大きいため、本実施の形態における方法は、Ｉ／Ｏのスループットにおける最大性能を上げることに寄与する。
【００８３】
以上説明したように、ＣＭ２１４は、ＴＰＶのチャンクへの物理領域の割り当て要求を取得したら、割り当て要求があったＴＰＶのＯＬＵ代表ＣＭが制御する物理領域をＴＰＶのチャンクに割り当てる。これにより、ＣＭ２１４は、ＯＬＵ代表ＣＭと物理担当ＣＭとが同一になるため、ＴＰＶへのアクセス時にＣＭ間通信を削減することができる。また、ＴＰＶがたくさんあるほど、ＴＰＶに対応するＯＬＵ代表ＣＭもあることになるため、割り当てを分散することができる。
【００８４】
また、ＣＭ２１４は、ＯＬＵ代表ＣＭが制御する物理領域の割り当て量が割り当て量閾値以下であれば、割り当て要求があったＴＰＶのＯＬＵ代表ＣＭが制御する物理領域をＴＰＶのチャンクに割り当ててもよい。一方、ＣＭ２１４は、ＯＬＵ代表ＣＭが制御する物理領域の割り当て量が割り当て量閾値より大きければ、ＲｅｃｅｉｖｅＣＭが制御する物理領域をＴＰＶのチャンクに割り当てる。これにより、ＣＭ２１４は、ＯＬＵ代表ＣＭの割り当て量に空きがあればＯＬＵ代表ＣＭと物理担当ＣＭとが同一になるため、ＴＰＶへのアクセス時にＣＭ間通信を削減することできる。さらに、ＯＬＵ代表ＣＭの割り当て量に空きが無くとも、ＲｅｃｅｉｖｅＣＭと物理担当ＣＭとが同一になるため、ＴＰＶへのアクセス時のＣＭ間通信を削減することができる。
【００８５】
また、ＣＭ２１４は、ＲｅｃｅｉｖｅＣＭが制御する物理領域の割り当て量が割り当て量閾値より大きければ、割り当て量が最も小さいＣＭの物理領域をＴＰＶのチャンクに割り当ててもよい。これにより、ＣＭ２１４は、割り当てを分散することができる。
【００８６】
また、ＣＭ２１４は、あるＴＰＶのＯＬＵ代表ＣＭとは異なる他のＣＭが制御する物理領域のうちのあるＴＰＶのチャンクとして割り当てられた物理領域に記憶されたデータの移動先として、あるＴＰＶのＯＬＵ代表ＣＭが制御する物理領域を割り当ててもよい。これにより、ＣＭ２１４は、一旦ＣＭ間通信が増大するように割り当てたとしても、再割り当てにより、ＴＰＶへのアクセス時のＣＭ間通信を削減することができる。
【００８７】
また、各ＣＭが制御する物理領域は、ＲＡＩＤグループにより形成されたボリュームであってもよい。ＲＡＩＤグループにはＲＡＩＤレベルに応じた処理があり、ＲＡＩＤレベルに応じた処理による負荷を分散するために、本実施の形態では、ＲＡＩＤグループごとに制御するＣＭを設定している。そして、物理領域にアクセスするには、ＯＬＵ担当ＣＭによる論理側の制御と、物理担当ＣＭによる物理側の制御という２つの制御があり、この２つの制御を同一のＣＭが行うことにより、ＣＭ間通信を削減することができる。
【００８８】
なお、本実施の形態で説明したストレージ制御方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本ストレージ制御プログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本ストレージ制御プログラムは、インターネット等のネットワークを介して配布してもよい。
【００８９】
上述した実施の形態に関し、さらに以下の付記を開示する。
【００９０】
（付記１）仮想ボリュームの使用状況に応じて記憶領域の割り当て量が変化する前記仮想ボリュームへの記憶領域の割り当て要求を取得し、
前記割り当て要求を取得した場合、それぞれ異なる記憶領域を制御する複数のストレージ制御装置のうちの前記仮想ボリュームを制御するストレージ制御装置が制御する記憶領域を前記仮想ボリュームに割り当てる、
制御部を有することを特徴とするストレージ制御装置。
【００９１】
（付記２）前記制御部は、
前記割り当て要求を取得した場合、前記仮想ボリュームを制御するストレージ制御装置が制御する記憶領域の割り当て量が所定の閾値以下であれば、前記仮想ボリュームを制御するストレージ制御装置が制御する記憶領域を前記仮想ボリュームに割り当て、
前記仮想ボリュームを制御するストレージ制御装置が制御する記憶領域の割り当て量が前記所定の閾値より大きければ、前記複数のストレージ制御装置のうちの前記仮想ボリュームを使用する装置からアクセスを受け付けたストレージ制御装置が制御する記憶領域を前記仮想ボリュームに割り当てる、
ことを特徴とする付記１に記載のストレージ制御装置。
【００９２】
（付記３）前記制御部は、
前記割り当て要求を取得した場合、前記アクセスを受け付けたストレージ制御装置が制御する記憶領域の割り当て量が前記所定の閾値より大きければ、前記複数のストレージ制御装置のうち記憶領域の割り当て量が最も小さいストレージ制御装置が制御する記憶領域を前記仮想ボリュームに割り当てる、
ことを特徴とする付記２に記載のストレージ制御装置。
【００９３】
（付記４）前記制御部は、
前記複数のストレージ制御装置に含まれる前記仮想ボリュームを制御するストレージ制御装置とは異なる他のストレージ制御装置が制御する記憶領域のうちの前記仮想ボリュームに割り当てられた記憶領域に記憶されたデータの移動要求を取得し、
前記移動要求を取得した場合、前記データの移動先となる前記仮想ボリュームを制御するストレージ制御装置が制御する記憶領域を前記仮想ボリュームに割り当てる、
ことを特徴とする付記１〜３のいずれか一つに記載のストレージ制御装置。
【００９４】
（付記５）前記複数のストレージ制御装置の各々のストレージ制御装置が制御する記憶領域は、複数の記憶装置を含むＲＡＩＤグループにより形成されたボリュームである、
ことを特徴とする付記１〜４のいずれか一つに記載のストレージ制御装置。
【００９５】
（付記６）それぞれ異なる記憶領域を制御する複数のストレージ制御装置を有するストレージシステムであって、
前記複数のストレージ制御装置のいずれかのストレージ制御装置は、
仮想ボリュームの使用状況に応じて記憶領域の割り当て量が変化する前記仮想ボリュームへの記憶領域の割り当て要求を取得し、
前記割り当て要求を取得した場合、それぞれ異なる記憶領域を制御する複数のストレージ制御装置のうちの前記仮想ボリュームを制御するストレージ制御装置が制御する記憶領域を前記仮想ボリュームに割り当てる、
ことを特徴とするストレージシステム。
【００９６】
（付記７）それぞれ異なる記憶領域を制御する複数のストレージ制御装置のいずれかのストレージ制御装置に、
仮想ボリュームの使用状況に応じて記憶領域の割り当て量が変化する前記仮想ボリュームへの記憶領域の割り当て要求を取得し、
前記割り当て要求を取得した場合、前記複数のストレージ制御装置のうちの前記仮想ボリュームを制御するストレージ制御装置が制御する記憶領域を前記仮想ボリュームに割り当てる、
処理を実行させることを特徴とする制御プログラム。
【００９７】
（付記８）それぞれ異なる記憶領域を制御する複数のストレージ制御装置のいずれかのストレージ制御装置が、
仮想ボリュームの使用状況に応じて記憶領域の割り当て量が変化する前記仮想ボリュームへの記憶領域の割り当て要求を取得し、
前記割り当て要求を取得した場合、前記複数のストレージ制御装置のうちの前記仮想ボリュームを制御するストレージ制御装置が制御する記憶領域を前記仮想ボリュームに割り当てる、
処理を実行することを特徴とする制御方法。
【符号の説明】
【００９８】
１０１  ストレージ制御装置
１０２  物理領域
２００  ストレージシステム
７００  制御部
７１１  取得部
７１２  割り当て部
【図１】
0006569477.tif 000002
【図２】
0006569477.tif 000003
【図３】
0006569477.tif 000004
【図４】
0006569477.tif 000005
【図５】
0006569477.tif 000006
【図６】
0006569477.tif 000007
【図７】
0006569477.tif 000008
【図８】
0006569477.tif 000009
【図９】
0006569477.tif 000010
【図１０】
0006569477.tif 000011
【図１１】
0006569477.tif 000012
【図１２】
0006569477.tif 000013
【図１３】
0006569477.tif 000014