(57)【特許請求の範囲】
【請求項１】
１台以上の記憶装置により構成され、当該１台以上の記憶装置が有する特定の記憶領域を関連付けて第１の物理記憶領域として提供する１組以上のストレージグループと、
前記第１の物理記憶領域と関連付けされた論理的な記憶領域である第１の論理記憶領域を複数関連付けることにより、前記第１の論理記憶領域を複数含む論理的な記憶領域である第２の論理記憶領域を構成し、構成した第２の論理記憶領域が割り当てられた論理ディスクを、記憶領域として外部装置に提供する、ストレージコントローラと、を有し、
前記ストレージコントローラは、
前記第２の論理記憶領域を、前記第２の論理記憶領域に含まれる前記第１の論理記憶領域の最小の個数であるベース値と、任意の２のべき乗数とを乗算した積の値に相当する個数の前記第１の論理記憶領域により構成し、
前記第２の論理記憶領域を構成する複数の前記第１の論理記憶領域を、それぞれ前記第１の論理記憶領域の個数と同数の異なる前記ストレージグループから提供された前記第１の物理記憶領域と関連付ける、
ストレージ装置。
【請求項２】
前記ストレージコントローラは、前記第２の論理記憶領域を構成する特定の前記第１の論理記憶領域を、特定の範囲毎に、当該第１の論理記憶領域に関連付けられた前記第１の物理記憶領域における特定の記憶領域と、前記第２の論理記憶領域を構成する他の前記第１の論理記憶領域に関連付けられた前記第１の物理記憶領域における特定の記憶領域と、に順番に関連付ける
請求項１に記載のストレージ装置。
【請求項３】
前記第２の論理記憶領域に含まれる複数の前記第１の論理記憶領域は、当該複数の第１の論理記憶領域の間を関連付ける、関連付け情報を有する、請求項１または請求項２に記載のストレージ装置。
【請求項４】
前記関連付け情報は、前記第２の論理記憶領域に含まれる前記第１の論理記憶領域の個数に関する情報を含む、請求項３に記載のストレージ装置。
【請求項５】
前記関連付け情報は、前記ベース値と、任意の２のべき乗数とを乗算した積の値を含む、請求項３または請求項４に記載のストレージ装置。
【請求項６】
前記ストレージコントローラは、前記第２の論理記憶領域の先頭アドレスを、少なくとも、前記論理ディスクの先頭位置か、または、前記論理ディスクの先頭から、前記ベース値に２のべき乗を乗算した積の値に相当する個数の前記第１の論理記憶領域の分だけオフセットした位置に割り当てる、請求項５に記載のストレージ装置。
【請求項７】
前記ストレージコントローラは、
前記外部装置からの、前記論理ディスクに対するデータアクセス要求に応じて、
前記データアクセス要求に含まれるアクセス対象論理アドレスから、当該アクセス対象論理アドレスを含む記憶領域に割り当てられた前記第２の論理記憶領域を選択し、
当該選択した前記第２の論理記憶領域を構成する前記第１の論理記憶領域の前記関連付け情報から、当該選択した前記第２の論理記憶領域を構成する前記第１の論理記憶領域の個数と、当該選択した前記第２の論理記憶領域の先頭に配置された前記第１の論理記憶領域とを抽出し、
前記抽出した第１の論理記憶領域の先頭アドレスからの、前記アクセス対象論理アドレスのオフセットアドレスを算出し、
前記算出したオフセットアドレスの値を、前記抽出した前記第１の論理記憶領域の個数により除算し、
前記除算結果の剰余を用いて、前記アクセス対象論理アドレスを含む前記第２の論理記憶領域を構成する前記第１の論理記憶領域を特定し、
前記特定した前記第１の論理記憶領域に関連付けされた前記第１の物記憶領域を特定し、
前記除算結果の商を用いて、前記アクセス対象論理アドレスに関連付けられた、前記特定した第１の物理記憶領域における物理アドレスを特定する、請求項３乃至請求項６の何れかに記載のストレージ装置。
【請求項８】
情報処理装置によって、
ストレージグループを構成する１台以上の記憶装置が有する特定の記憶領域を関連付けて物理記憶領域を構成し、
前記第１の物理記憶領域と関連付けされた論理的な記憶領域である第１の論理記憶領域が複数関連付された前記第１の論理記憶領域を複数含む論理的な記憶領域である第２の論理記憶領域を、当該第２の論理記憶領域に含まれる前記第１の論理記憶領域の最小の個数であるベース値と、任意の２のべき乗数とを乗算した積の値に相当する個数の前記第１の論理記憶領域により構成し、
前記第２の論理記憶領域を構成する複数の前記第１の論理記憶領域を、それぞれ前記第１の論理記憶領域の個数と同数の異なる前記ストレージグループから提供された前記第１の物理記憶領域と関連付け、
前記構成した第２の論理記憶領域が割り当てられた論理ディスクを、記憶領域として外部装置に提供する、
ストレージ装置の制御方法。
【請求項９】
ストレージ装置の制御プログラムであって、
ストレージグループを構成する１台以上の記憶装置が有する特定の記憶領域を関連付けて物理記憶領域を構成する処理と、
前記第１の物理記憶領域と関連付けされた論理的な記憶領域である第１の論理記憶領域が複数関連付された前記第１の論理記憶領域を複数含む論理的な記憶領域である第２の論理記憶領域を、当該第２の論理記憶領域に含まれる前記第１の論理記憶領域の最小の個数であるベース値と、任意の２のべき乗数とを乗算した積の値に相当する個数の前記第１の論理記憶領域により構成する処理と、
前記第２の論理記憶領域を構成する複数の前記第１の論理記憶領域を、それぞれ前記第１の論理記憶領域の個数と同数の異なる前記ストレージグループから提供された前記第１の物理記憶領域と関連付ける処理と、
前記構成した第２の論理記憶領域が割り当てられた論理ディスクを、記憶領域として外部装置に提供する処理と、をコンピュータに実行させる、
制御プログラム。
【請求項１０】
請求項８に記載のストレージ制御方法であって、更に、
前記第２の論理記憶領域を構成する特定の前記第１の論理記憶領域を、特定の範囲毎に、当該第１の論理記憶領域に関連付けられた前記第１の物理記憶領域における特定の記憶領域と、前記第２の論理記憶領域を構成する他の前記第１の論理記憶領域に関連付けられた前記第１の物理記憶領域における特定の記憶領域と、に順番に関連付ける
ストレージ装置の制御方法。
【請求項１１】
請求項９に記載の制御プログラムであって、更に、
前記第２の論理記憶領域を構成する特定の前記第１の論理記憶領域を、特定の範囲毎に、当該第１の論理記憶領域に関連付けられた前記第１の物理記憶領域における特定の記憶領域と、前記第２の論理記憶領域を構成する他の前記第１の論理記憶領域に関連付けられた前記第１の物理記憶領域における特定の記憶領域と、に順番に関連付ける処理を、コンピュータに実行させる
制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを格納する記憶装置へのアクセスを分散することにより、当該記憶装置の負荷を分散し、当該記憶装置に対するアクセス性能を向上する、ストレージ装置及びその制御方法、並びにストレージ制御プログラムに関する。
【背景技術】
【０００２】
近年、データの大容量化やデータアクセスの高速性に対する要求に応えながら、装置自体の信頼性を確保できるストレージ装置が用いられている。係るストレージ装置は、例えば、複数のハードディスク装置（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）や半導体記憶装置を備え、それらをＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）等の技術によって機能的に統合することにより、統合された論理ディスクをホスト側に提供する。
【０００３】
係るストレージ装置は、前記ＲＡＩＤ技術等を用いて複数の物理記憶装置を統合した冗長グループに含まれる物理記憶領域を分割した物理エクステントと、前記論理ディスクを構成する論理エクステントとを関連付けて管理する。そして、係る関連付けの情報を利用して、ホストからの論理ディスクへのアクセスは、最終的に物理的な記憶装置に伝えられる。
【０００４】
上述したストレージ装置においては、通常、前記物理エクステントは特定の冗長グループに属するため、係る特定の論理エクステントに対するアクセスは、特定の冗長グループを構成する記憶装置に対するアクセスとなる。このため、特定の記憶装置にアクセスが集中する場合がある。
【０００５】
上記のようなアクセスの集中を緩和するために、ホスト側からのアクセス要求が複数の論理エクステントや物理エクステントに分散するよう、これらのサイズを小さくする方法が考えられる。しかしながら、単純にこれらのエクステントのサイズを小さくすると、エクステントの数は増大する。
【０００６】
このため、各エクステントに係る関連付け情報やサイズ情報、及び配置アドレス等を記録するための管理情報が増大し、当該管理情報を記憶するための記憶領域が増大する。係る増大した管理情報の記憶領域により、係るストレージ装置における物理的な記憶容量が圧迫され、ストレージ装置が提供する記憶容量の利用効率が低下する場合がある。
【０００７】
前記した特定の記憶領域に対するアクセスの集中を緩和する技術として、例えば以下の特許文献に開示された技術がある。
【０００８】
即ち、特許文献１は、特定の物理エクステントに対するデータアクセスの統計情報を集計しておき、当該物理エクステントに関連付けられた論理エクステントを含む論理ディスクのコピーボリュームを作成する際に、集計した統計情報を基に、当該論理エクステントに対応する物理エクステントを変更する技術を開示する。特許文献１に開示された技術によれば、論理ディスクのコピーボリュームを作成するタイミングで、物理的な記憶装置に対するアクセスの集中が緩和される可能性がある。
【０００９】
特許文献２は、データが複数の記録装置にストライピングされているストレージ装置において、新たな記憶装置を当該ストレージ装置に追加する際に、既存のストライプ済みデータを再配置することで、アクセス負荷をリバランスする技術を開示する。特許文献２に開示された技術によれば、ストレージ装置に新規記憶装置を追加する際に、データのリバランスにより、既存の記憶装置に対するアクセス集中が緩和される可能性がある。
【００１０】
また、前記したエクステントの管理情報の増大を緩和する技術として、例えば以下の特許文献に開示された技術がある。
【００１１】
即ち、特許文献３は、物理エクステントと論理エクステントの対応関係との管理情報のサイズを調整する技術を開示する。特許文献３に開示された技術によれば、例えば記憶装置の増設や物理エクステントサイズの縮小により、物理エクステントに関する管理情報のサイズが増大した場合には、当該物理エクステントが対応付けられる論理エクステントをグループ化することにより、管理情報のサイズを縮小し、記憶装置の撤去や、物理エクステントサイズの増大等により、前記物理エクステントに関する管理情報のサイズが減少する場合は、前記グループ化を解除する。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２００９−２１７７００号公報
【特許文献２】特開２００７−１４９０６８号公報
【特許文献３】特開２０１０−２１１６８１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
前述した通り、冗長構成を有する記憶装置における特定の記憶領域に関連付けされる物理エクステントと、ホスト側に記憶領域として提供する論理ディスクを構成する論理エクステントと、を関連付けて管理するストレージ装置においては、各エクステントに対するアクセスを分散することにより記憶装置の負荷を分散するという課題がある。
【００１４】
前記特許文献１及び特許文献２は、特定のタイミングで記憶装置に対するアクセス集中を緩和する技術を開示するに留まる。また、前記特許文献３は、論理エクステントと物理エクステントの管理情報のサイズを調整する技術を開示するに留まるので、ストレージ装置の稼働時における、特定の記憶装置に対するアクセスを分散させるための対応が不十分である。
【００１５】
そこで本発明は、ストレージ装置の稼働時における、記憶装置に対するアクセスを分散することが可能なストレージ装置及びその制御方法、並びにストレージ制御プログラムを提供することを主たる目的とする。
【課題を解決するための手段】
【００１６】
上記の目的を達成すべく、本発明に係るストレージ装置は、以下の構成を備えることを特徴とする。即ち、本発明に係るストレージ装置は、１台以上の記憶装置により構成され、当該１台以上の記憶装置が有する特定の記憶領域を関連付けて第１の物理記憶領域として提供する１組以上のストレージグループと、前記第１の物理記憶領域と関連付けされた第１の論理記憶領域を、複数関連付けて第２の論理記憶領域を構成し、構成した第２の論理記憶領域が割り当てられた論理ディスクを、記憶領域として外部装置に提供する、ストレージコントローラと、
を備える。
【００１７】
また、本発明に係るストレージ装置の制御方法は、以下の構成を備えることを特徴とする。即ち、本発明に係るストレージ装置の制御方法は、情報処理装置によって、ストレージグループを構成する１台以上の記憶装置が有する特定の記憶領域を関連付けて物理記憶領域を構成し、前記第１の物理記憶領域と関連付けされた第１の論理記憶領域を、複数関連付けて第２の論理記憶領域を構成し、前記構成した第２の論理記憶領域が割り当てられた論理ディスクを、記憶領域として外部装置に提供する。
【００１８】
また、本発明に係るストレージ制御プログラムは、以下の構成を備えることを特徴とする。即ち、本発明に係るストレージ御プログラムは、ストレージ装置の制御プログラムであって、ストレージグループを構成する１台以上の記憶装置が有する特定の記憶領域を関連付けて物理記憶領域を構成する処理と、前記第１の物理記憶領域と関連付けされた第１の論理記憶領域を、複数関連付けて第２の論理記憶領域を構成する処理と、前記構成した第２の論理記憶領域が割り当てられた論理ディスクを、記憶領域として外部装置に提供する処理と、をコンピュータに実行させる。
【００１９】
なお、上記本発明の目的は、係るストレージ制御プログラムが格納された、コンピュータ読み取り可能な記憶媒体によっても実現可能である。
【発明の効果】
【００２０】
上記本発明によれば、本願ストレージ装置が記憶するデータへのアクセスは、異なるストレージグループに配置された記憶装置に分散されるため、記憶装置の負荷を低減し、アクセス性能を向上できる。
【図面の簡単な説明】
【００２１】
【図１】図１は、本願発明の第１の実施形態におけるストレージ装置の機能的な構成を表す模式図である。
【図２】図２は、本願発明の第１の実施形態における記憶装置群を構成する各記憶装置の冗長構成について例示する模式図である。
【図３】図３は、本願発明の第１の実施形態における論理ディスクと、物理エクステントとの関連を例示する模式図である。
【図４】図４は、本願発明に関連する技術における、論理エクステントと物理エクステントとの関係を例示した模式図である。
【図５】図５は、本願発明の第１の実施形態における、論理エクステントと物理エクステントとの関係を例示した模式図である。
【図６】図６は、本願発明の第２の実施形態における記憶装置群を構成する各記憶装置の冗長構成について例示する模式図である。
【図７】図７は、本願発明の第２の実施形態における構成管理メモリの一例を例示する、模式図である。
【図８】図８は、本願発明の第２の実施形態において、マルチエクステントとして採用し得る構成の一例を示した模式図である。
【図９】図９は、本願発明の第２の実施形態における、マルチエクステントを有する論理ディスクの構築過程を例示するフローチャートである。
【図１０】図１０は、本願発明の第２の実施形態において、論理ディスクの構築過程を例示する、模式図である。
【図１１】図１１は、本願発明の第２の実施形態において、論理ディスクの構築過程を例示する、模式図である。
【図１２】図１２は、本願発明の第２の実施形態において、論理ディスクの構築過程を例示する、模式図である。
【図１３】図１２は、本願発明の第２の実施形態において、論理ディスクの構築過程を例示する、模式図である。
【図１４】図１４は、本願発明の第２の実施形態において、論理アドレスに関連付けられた物理アドレスを判定する処理を例示したフローチャートである。
【図１５】図１５は、本願発明の第２の実施形態において、論理アドレスと、物理アドレスとの間の関連付けを例示する模式図である。
【図１６】図１５は、本願発明の第２の実施形態において、論理アドレスと、物理アドレスとの間の関連付けを例示する模式図である。
【図１７】図１５は、本願発明の第２の実施形態において、論理アドレスと、物理アドレスとの間の関連付けを例示する模式図である。
【図１８】図１５は、本願発明の第２の実施形態において、論理アドレスと、物理アドレスとの間の関連付けを例示する模式図である。
【図１９】図１９は、本願発明の実施形態において、マルチエクステントとして採用し得る構成の一例を示した模式図である。
【図２０】図２０は、本願発明の実施形態において、マルチエクステントとして採用し得る構成の一例を示した模式図である。
【図２１】本発明の各実施形態に係る、ストレージ装置のハードウェア構成を例示した模式図である。
【発明を実施するための形態】
【００２２】
次に、本発明を実施する形態について、図面を参照して詳細に説明する。
【００２３】
＜第１の実施形態＞
本発明の第１の実施形態におけるストレージ装置について、図１を参照して説明する。図１は、本実施形態におけるストレージ装置の機能的な構成を表す模式図である。
【００２４】
図１に示すように、本実施形態におけるストレージ装置１００は、ストレージ装置全体の制御を担当するストレージコントローラ１０２と、１台以上の記憶装置を有し、データを記憶する記憶装置群１０３と、を有し、ホストマシン１０１に対して、記憶領域を提供する。以下、各構成要素について説明する。
【００２５】
記憶装置群１０３は、ホストコンピュータ１０１からの読み込みや書き込み等のアクセス要求の対象となるデータを記憶する、１台以上の記憶装置を有する。本実施形態においては、例えば、データアクセスの高速化及び記憶容量の大容量化を実現すると共に、装置としての信頼性を確保するため、前記各記憶装置をＲＡＩＤ等の技術を用いて統合し、冗長構成を有する記憶装置群１０３を形成してもよい。
【００２６】
記憶装置群１０３を構成する各記憶装置（図３に例示する記憶装置１０３ａ乃至記憶装置１０３ｅなど）は、それぞれデータを記憶可能な任意の記憶媒体を用いて構成してよい。前記各記憶装置としては、例えば、ハードディスクドライブ（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）や、フラッシュメモリ等の不揮発性半導体メモリを採用したＳＳＤ（ｓｏｌｉｄ  ｓｔａｔｅ  ｄｒｉｖｅ）等の既存の不揮発性記憶装置を採用してもよい。
【００２７】
なお、図１においては、記憶装置群１０３を構成する記憶装置として、記憶装置１０３ａ乃至記憶装置１０３ｅが例示されているが、本実施形態は図３に示す例示に限定されない。記憶装置群１０３を構成する記憶装置の台数は、ストレージ装置１００に求められる記憶容量やアクセス性能等の要件に応じて適宜適切に選択してよい。
【００２８】
ストレージコントローラ１０２は、ホストマシン１０１と通信可能に接続されており、ホストマシン１０１に対する接続インタフェースとしても機能してよい。ストレージコントローラ１０２は、ホストマシン１０１に対して、論理的な記憶領域である論理ディスクを提供し、例えば、当該論理ディスクに対するデータアクセス要求に応じて、記憶装置群１０３に対するデータの読み込みや書き込みなどデータアクセス処理を行う。ホストマシン１０１と、ストレージコントローラ１０２との間は、例えば、ＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を構成するように、ＦＢ（Ｆｉｂｅｒ  Ｃｈａｎｎｅｌ）やｉＳＣＳＩ（Ｉｎｔｅｒｎｅｔ  Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）等の周知のストレージ接続技術を用いて接続してもよい。なお、ホストマシン１０１とストレージコントローラ１０２との間の接続は、前述した例示に限定されず、ホストマシン１０１とストレージ装置１００とが設置される環境等に応じて、適宜適切な技術を選択してよい。
【００２９】
ストレージコントローラ１０２は、記憶装置群１０３と、当該記憶装置群１０３を構成する各記憶装置が記憶するデータにアクセスできるよう、通信可能に接続されている。ストレージコントローラ１０２と、記憶装置群１０３との間の接続は、それぞれの構成に応じて適宜適切な技術を採用してよい。例えば、ストレージコントローラ１０２がＲＡＩＤ制御を実行する場合、ストレージコントローラ１０２と各記憶装置との間は、ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）やＡＴＡ（Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）等、各記憶装置において対応している接続インタフェースを採用してもよい。記憶装置群１０３側でＲＡＩＤ制御を実行する場合は、記憶装置群１０３側に設けたＲＡＩＤ制御部（不図示）と、ストレージコントローラ１０２との間を、例えば、各種通信バスや、特定の共有メモリを利用したメモリマップドＩＯ（Ｉｎｐｕｔ  Ｏｕｔｐｕｔ）等を用いて接続してもよい。本実施形態におけるストレージコントローラの具体的な機能については、後述する。
【００３０】
ホストマシン１０１は、ストレージ装置１００を記憶領域として参照し、ストレージ装置１００に対してデータアクセスを要求する、任意の装置である。本実施形態におけるホストマシン１０１は、例えばファイルサーバ、データベースサーバ、電子メールサーバ等の各種サーバを構成する任意のコンピュータやプリンタ等、なんらかのデータへのアクセスを必要とする任意の装置であってもよい。
【００３１】
次に、本実施形態におけるストレージ装置の動作について説明する。
【００３２】
まず、記憶装置群１０３について説明する。図２は、本実施形態における記憶装置群１０３を構成する、各記憶装置の冗長構成について例示する模式図である。本実施形態においては、記憶装置群１０３を構成する各記憶装置（図１に例示した記憶装置１０３ａ乃至記憶装置１０３ｅ等）は、例えば、前記したＲＡＩＤ技術等を用いて、冗長構成を構築するように統合されてもよい。なお、本実施形態においては、前記各記憶装置として、例えば、ＨＤＤ等の磁気ディスク装置を採用してもよい。
【００３３】
図２に例示した構成においては、記憶装置群１０３は、記憶装置２００乃至記憶装置２０３の４台から、冗長グループ０を構成し、記憶装置２０４乃至記憶装置２０８の５台を用いて、冗長グループ１を構成する。それぞれの冗長グループは、例えば、前記ＲＡＩＤ技術において規定された周知の冗長構成を採用してもよく、図２に例示する構成においては、ＲＡＩＤレベル６（以下ＲＡＩＤ６と称することがある）による冗長構成を採用している。
【００３４】
一般的に、ＲＡＩＤ６による冗長構成は、データ記憶用の記憶装置２台と、障害復旧を目的とした冗長データであるパリティ記憶用の記憶装置２台との、最小４台の記憶装置を用いて構築される。なお、各記憶装置における記憶領域を、４つ分割した場合、記憶装置の台数が４台ではなくとも、ＲＡＩＤ６の冗長構成を構築可能である。このような記憶領域の分割としては、例えば、ＨＤＤにおけるパーティション分割を利用可能である。
【００３５】
図２に例示した構成を参照すると、記憶装置２００乃至記憶装置２０８における記憶領域は、それぞれ４つのパーティションに分割されている。冗長グループ１を構成する記憶装置２０４乃至記憶装置２０８においては、例えば、パーティション（２０４４）−（２０５４）−（２０６４）−（２０７４）、パーティション（２０５０）−（２０６０）−（２０７０）−（２０８０）、パーティション（２０４１）−（２０６１）−（２０７１）−（２０８１）、パーティション（２０４２）−（２０５２）−（２０７２）−（２０８２）及び、パーティション（２０４３）−（２０５３）−（２０６３）−（２０８３）を組み合わせて、ＲＡＩＤ６の冗長構成を構築する。
【００３６】
本実施形態においては、例えば、これら複数の記憶装置のパーティションから一定の領域を用いて物理エクステント１を構成し、更にその続きから一定の領域を取り出して物理エクステント２を構成し、これを繰り返してｎ個の物理エクステントを構成してもよい。本実施形態においては、例えば、各物理エクステントの容量を同一としてよい。
【００３７】
本実施形態における記憶装置群１０３は、前記構成した物理エクステントを、ストレージコントローラ１０２に対して提供するよう構成してもよい。また、本実施形態における記憶装置群１０３は、係る記憶装置群１０３において提供可能な物理エクステントのサイズや個数等の情報や、物理エクステントの記録状態（何らかのデータが記録されているか否か）等を、ストレージコントローラ１０２に対して提供するよう構成してもよい。
【００３８】
次に、図３を参照して、本実施形態においてストレージコントローラ１０２が、記憶装置群１０３により提供される冗長グループと、ホストマシン１００に対して記憶領域として提供される論理ディスクとを関連付ける方法について説明する。
【００３９】
図３は、本実施形態における論理ディスク３０１と、各冗長グループが提供する物理エクステントとの関連を例示する模式図である。本実施形態においては、容量プール（以下、プールと称する場合がある）という概念を導入し、１つ以上の冗長グループ内に構成される物理エクステントを統合して、ホストマシン１０１に対して論理ディスクとして提供してもよい。
【００４０】
図３に例示する構成においては、プール３００は、図２において例示した、前記冗長グループ０と、前記冗長グループ１と、を有する。各冗長グループに属する物理エクステントは、プール３００に属する物理エクステントとなる。また、本実施形態においては、ホストマシン１０１に対して記憶領域として提供する論理ディスク３０１も、プール３００内に構築してよい。
【００４１】
本実施形態におけるストレージコントローラ１０２は、プール３００に作成した論理ディスク３０１を、論理エクステントという論理的な記憶単位の集合として構成してよい。即ち、ストレージコントローラ１０２は、例えば、論理ディスク３０１を、論理エクステントという単位で分割して管理してもよい。本実施形態においては、論理ディスク３０１は、１つ以上の論理エクステントを割り当てることにより構築されるため、論理ディスク３０１の容量（サイズ）が増大するほど、論理ディスク３０１を構成する論理エクステントの数は増大する。
【００４２】
本実施形態におけるストレージコントローラ１０２は、前述した論理エクステントと、各冗長グループから提供される物理エクステントとを関連付けて管理する。ストレージコントローラ１０２は、論理ディスク３０１を構成する全ての論理エクステントについて、それぞれ物理エクステントを関連付ける。結果として、論理ディスク３０１は、物理的な記憶装置における特定の記憶領域に関連付けられる。
【００４３】
以上のように構成された本実施形態において、論理ディスク３０１の特定の領域に対するホストマシン１０１からのアクセス要求を受信した場合の、ストレージコントローラ１０２の基本的な動作について説明する。まず、ストレージコントローラ１０２は、当該アクセス要求に含まれるアクセス対象の論理アドレスを抽出する。次にストレージコントローラ１０２は、当該論理アドレスを有する論理エクステントを選択し、前記選択した論理エクステントと関連付けられた物理エクステントを選択する。次に、ストレージコントローラ１０２は、当該選択した物理エクステントの先頭位置からのオフセットアドレスを算出する。ストレージコントローラ１０２は、更に、前記算出したオフセットアドレスから、前記選択した物理エクステントにおける物理アドレスを算出し、当該物理アドレスに関連付けられた記憶装置上の記憶領域（のアドレス）を特定する。
【００４４】
次に、本実施形態における、記憶装置に対するアクセス負荷を分散する構成について説明する。本実施形態において、ストレージコントローラ１０２は、複数の論理エクステントをまとめたマルチエクステントという論理記憶領域を導入することにより、当該マルチエクステントにより提供される論理アドレスに対するデータアクセスを、複数の記憶装置に分散する。以下、図３を参照して、本実施形態におけるマルチエクステントの構成を説明する。
【００４５】
本実施形態においては、例えば、ストレージコントローラ１０２は、論理ディスク３０１を構成する際、１つ以上の異なる冗長グループから未使用の物理エクステントを複数選択できた場合は、当該選択した物理エクステントと、前記論理ディスク３０１を構成する論理エクステントとを、順番に関連付ける。次に、ストレージコントローラ１０２は、異なる冗長グループに属する物理エクステントに関連付けられた論理エクステントをまとめて、マルチエクステントを構成する。なお、本実施形態において未使用の物理エクステントとは、論理ディスクを構成するいずれの論理エクステントとも関連付けられていない物理エクステントである。
【００４６】
図３に例示する構成においては、ストレージコントローラ１０２は、論理エクステント３０２を冗長グループ０に属する物理エクステント３０５と関連付け、論理エクステント３０３を冗長グループ１に属する物理エクステント３０７と関連付ける。ストレージコントローラ１０２は、それぞれ異なる冗長グループに属する物理エクステントに関連付けられた論理エクステント３０２及び論理エクステント３０３をまとめて、マルチエクステント３０４を構成する。
【００４７】
次に、図４及び図５を参照して、本実施形態における前記マルチエクステントの扱いについて説明する。図４は、マルチエクステントを導入しない場合の、前記論理エクステントと物理エクステントとの関係を例示した模式図である。図５は、マルチエクステントを導入した場合の、前記論理エクステント（マルチエクステント）と、物理エクステントとの関係を例示した模式図である。
【００４８】
図４に例示するように、マルチエクステントを導入しない一般的な構成においては、通常、論理エクステントと物理エクステントは１対１となるよう関連付けられ、それぞれのエクステントの記憶容量（サイズ）は同一である。この場合、論理エクステントのオフセットアドレス（先頭アドレスからのオフセット位置）の領域は、関連付けられている物理エクステントのオフセットアドレスの領域と一致する。例えば、図４に例示する構成においては、論理エクステント”Ｌ−Ｅｘｔ０”と、物理エクステント”Ｐ−Ｅｘｔ０”とが関連付けられているが、論理エクステント”Ｌ−Ｅｘｔ０”のオフセットアドレス０及び１は、共に”Ｐ−Ｅｘｔ０”のオフセットアドレス０及び１にそれぞれ該当している。即ち、論理エクステント”Ｌ−Ｅｘｔ０”のオフセットアドレス１に対するアクセスは、物理エクステント”Ｐ−Ｅｘｔ０”のオフセットアドレス１へのアクセスとなる。
【００４９】
次に図５に例示する、前述したマルチエクステントを導入した構成について説明する。図５に例示する構成においては、マルチエクステント３０４を構成するそれぞれの論理エクステント（図５における”Ｌ−Ｅｘｔ０”及び”Ｌ−Ｅｘｔ１”）は、それぞれ異なる冗長グループ（例えば図３に例示する冗長グループ０及び冗長グループ１）に属する、物理エクステント（図５における”Ｐ−Ｅｘｔ０”及び”Ｐ−Ｅｘｔ１”）に分散して関連付けられる。つまり、図５に例示する構成においては、マルチエクステントを構成する論理エクステント”Ｌ−Ｅｘｔ０”は、特定のアドレス範囲毎に、当該論理エクステントに関連付けられた物理エクステント”Ｐ−Ｅｘｔ０”における特定のアドレス範囲と、当該マルチエクステントを構成する他の論理エクステント”Ｌ−Ｅｘｔ１”に関連付けられた物理エクステント”Ｐ−Ｅｘｔ１”における特定のアドレス範囲とに、分散して関連付けられる。即ち、”Ｌ−Ｅｘｔ０”のオフセットアドレス０は、”Ｐ−Ｅｘｔ０”におけるオフセットアドレス０に関連付けられ、”Ｌ−Ｅｘｔ０”のオフセットアドレス１は、”Ｌ−Ｅｘｔ０”と共にマルチエクステントを構成する”Ｌ−Ｅｘｔ１”と関連付けられている、”Ｐ−Ｅｘｔ１”のオフセットアドレス０に関連付けられる。このため、論理エクステント”Ｌ−Ｅｘｔ０”のオフセットアドレス１へのアクセスは、物理エクステント”Ｐ−Ｅｘｔ１”のオフセットアドレス０へのアクセスとなる。
【００５０】
以上説明した通り、本実施形態において導入したマルチエクステントを構成する論理エクステントへのアクセスは、複数の物理エクステントに対して分散することから、マルチエクステントを構成する複数の論理エクステントと、当該複数の論理エクステントにそれぞれ関連付けられた物理エクステントとの間で、データがストライピングされる。この場合、例えば、マルチエクステントを構成する論理エクステントと、当該論理エクステントに関連付けられた物理エクステントとの間で、前記ＲＡＩＤ技術におけるＲＡＩＤレベル０（以下ＲＡＩＤ０と称することがある）が仮想的に構成されるともとらえられる。
【００５１】
上述の通り、本実施形態におけるストレージコントローラ１０２は、複数の論理エクステントから構成されるマルチエクステントを導入することにより、マルチエクステントを構成する論理エクステントに対するアクセスを、異なる冗長グループに属する物理エクステントに分散できる。
【００５２】
以上説明した本実施形態におけるストレージ装置１００によれば、例えば、ストレージコントローラ１０２は、複数の異なる冗長グループ（例えば図３に例示した冗長グループ０及び冗長グループ１等）に属する物理エクステント（例えば図３例示した３０５、３０７等）に関連付けられ、連続して配置される論理エクステント（例えば図３に例示した３０２、３０３等）をまとめてマルチエクステント（例えば図３に例示した３０４等）を構成し、当該マルチエクステントを含む論理ディスク（例えば図３に例示した３０１）をホストマシン１０１に対して記憶領域として提供できる。このような構成により、本実施形態におけるストレージコントローラ１０１は、マルチエクステントを用いて構成される領域へのホストマシン１０１からのアクセス要求を、異なる冗長グループに属する物理エクステントに対するアクセス要求に分散できる。
【００５３】
本実施形態によるストレージ装置によれば、ホストマシン１０１による特定のデータへのアクセスは、複数の異なる冗長グループに配置された記憶装置に分散されるため、記憶装置の負荷を低減し、アクセス性能を向上できる、という効果を奏する。
【００５４】
なお、本実施形態におけるストレージコントローラ１０２は、独立した専用のハードウェアを用いて構成してもよいが、図２１に例示するような汎用のＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やマイクロプロセッサ等の演算装置及２１０１及び、当該演算装置から参照されるメモリ等の記憶装置２１０２等からなるハードウェアと、当該演算装置２１０１によって実行される各種ソフトウェア・プログラム（コンピュータ・プログラム）とによって構成してもよい。更に、上記各ソフトウェア・プログラムを外部記憶媒体２１０５に記録しておき、ストレージ装置１００の出荷段階、あるいは運用段階等において、適宜外部記憶装置２１０４を通じて当該ソフトウェア・プログラムを不揮発性メモリ２１０３に格納するよう構成してもよい。
【００５５】
また、本実施形態におけるストレージコントローラ１０２は、ネットワークインタフェース２１０６により通信ネットワークと接続するよう構成してもよく、当該通信ネットワークを経由して、ホストマシン１０１と接続してもよい。更に、ストレージコントローラ１０２は、ストレージインタフェース２１０７により、記憶装置群１０３と接続するよう構成してもよい。
【００５６】
＜第２の実施形態＞
次に、本発明の第２の実施形態について説明する。以下の説明においては、本実施形態に係る特徴的な構成を中心に説明する。その際、前記第１の実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明は省略する。
【００５７】
本実施形態におけるストレージ装置１００は、前記第１の実施形態におけるストレージ装置１００と基本的な構成は同様である。以下、図６を参照して、本実施形態における特徴的な構成であるストレージコントローラ１０２の構造を中心に説明する。
【００５８】
本実施形態におけるストレージコントローラ１０２は、ホストマシン１０１との接続インタフェースとなる、ホストインタフェース１０２ａと、記憶装置群１０３と接続される記憶装置インタフェース１０２ｃと、ホストマシン１０１と記憶装置群１０３との間でデータを一時的に保存するキャッシュメモリ１０２ｂと、ストレージコントローラ１０２における各種処理や制御を実行するマイクロプロセッサ１０２ｄと、論理ディスクを構成する論理エクステントと物理エクステントとの関連付け情報等を格納する構成管理メモリ１０２ｅを有するよう構成してもよい。以下、それぞれの構成要素について説明する。
【００５９】
ホストインタフェース１０２ａは、ホストマシン１０１と通信可能に接続されており、ホストマシン１０１に対してストレージ装置１００としてのインタフェースを提供し、ホストマシン１０１との間でデータの送受信を行う。ホストインタフェース１０２ａと、ホストマシン１０１との間の通信方式は、前述の通り、例えばＳＡＮを構成するようにＦＢやｉＳＣＳＩ等の周知のストレージ接続技術を採用してもよい。
【００６０】
キャッシュメモリ１０２ｂは、一般的に、記憶装置群１０３よりもアクセス速度が速い半導体記憶装置等を用いて構成され、ホストマシン１０１からアクセスされたデータを一時的に記録するよう構成してもよい。例えば、ホストマシン１０１から一度アクセスされたデータをキャッシュメモリ１０２ｂ上に記録するよう構成すると、ホストマシン１０１が再度同じデータを参照する際、ストレージコントローラ１０２は、キャッシュメモリ１０２ｂ上に記録されたデータを提供することにより、見かけ上のアクセス速度を向上することができる。なお、本実施形態において、キャッシュメモリ１０２ｂ自体の要否や、キャッシュメモリ１０２ｂを設ける場合の記憶容量等は、ストレージコントローラに求められるアクセス性能等に基づいて、適宜選択してよい。
【００６１】
記憶装置インタフェース１０２ｃは、記憶装置１０３ａ乃至記憶装置１０３ｅとの間と通信可能に接続されている。記憶装置インタフェース１０２ｃと、係る各記憶装置との間におけるデータの送受信（読み書き）には、前記第１の実施形態において説明した通り、周知のデータアクセスのインタフェースを採用してよい。
【００６２】
マイクロプロセッサ１０２ｄは、本実施形態におけるストレージコントローラの動作を制御する制御装置である。マイクロプロセッサ１０２ｄは、ストレージ装置１００を制御する制御ロジックを組み込んだ専用の制御用ハードウェアを用いて構成してもよく、前述したように汎用の演算処理装置と、当該演算処理装置から参照される図示しない汎用メモリと、等を用いて構成してもよい。マイクロプロセッサ１０２ｄを、汎用の演算処理装置を用いて構成する場合、当該マイクロプロセッサ１０２ｄは、ストレージ装置１００を制御するソフトウェア・プログラムを実行することにより、ストレージ装置１００の動作を制御する。
【００６３】
構成管理メモリ１０２ｅは、前記実施形態１において説明したマルチエクステントを構成する論理エクステント間の関連付けや、論理エクステントと物理エクステントの間の関連付けに関する情報を格納している記憶領域であり、例えば論理エクステント対応テーブル１０２ｆと、物理エクステント対応テーブル１０２ｇと、を有するよう構成してもよい。構成管理メモリ１０２ｅは、不揮発性で読み書き可能な半導体記憶装置における記憶領域の一部に格納されてもよく、ストレージ装置１００の稼働状態においてマイクロプロセッサ１０２ｄから参照可能なように、マイクロプロセッサ１０２ｄから参照可能なメモリ上に読み込まれるよう構成してもよい。
【００６４】
本実施形態においても前記第１の実施形態と同様、ストレージコントローラ１０２は、ホストマシン１０１に対して記憶領域としての論理ディスクを提供する。図６においては、図番１０２ｈが当該論理ディスクを模式的に表している。ホストマシン１０１からのアクセス要求に応じて、マイクロプロセッサ１０２ｄは、構成管理メモリ１０２ｅの内容などを用いて論理ディスク１０２ｈを構成し、アクセス要求の要求元であるホストマシン１０１に提供する。なお、本実施形態においては、論理ディスク１０２ｈは、構成管理メモリ１０２ｅの一部として設けてもよく、あるいはマイクロプロセッサ１０２ｄからアクセス可能な、図示しないメモリ領域に設けてもよい。
【００６５】
以下図７及び図８を参照して、本実施形態における構成管理メモリ１０２ｅの構成について説明する。
【００６６】
図７は、本実施形態における構成管理メモリ１０２ｅの一例を例示する、模式図である。図７に示すように、構成管理メモリ１０２ｅを構成する論理エクステント対応テーブル１０２ｆは、ストレージ装置１００が提供する論理ディスク（例えば、図３に例示する３０１）を構成する論理エクステント（例えば、図３に例示する３０２、３０３等）を一意に識別可能な論理エクステント番号（図７における７０１）と、各論理エクステントに割り当てられた論理アドレス（図７における７０２）と、各論理エクステントと関連付けられた物理エクステントを参照する対応物理エクステント番号（図７における７０３）と、マルチエクステントを構成する論理エクステントを関連付ける情報であるマルチカウント（図７における７０４）と、を有するよう構成してもよい。
【００６７】
物理エクステント対応テーブル１０２ｇは、各冗長グループ（例えば、図３に例示する冗長グループ０及び冗長グループ１等）に属する物理エクステントを一意に識別可能な、物理エクステント番号（図７における７０６）と、当該物理エクステント番号により識別される物理エクステントと関連付けられた論理エクステントを参照する対応論理エクステント番号（図７における７０５）を有するよう構成してもよい。
【００６８】
前記第１の実施形態と同様、ストレージコントローラ１０２は、論理エクステントの集合として論理ディスクを構築してもよい。ストレージコントローラ１０２は、１つ以上の冗長グループか未使用の物理エクステントを選択し、論理ディスクを構成する論理エクステントと関連付けてもよい。以下、本実施形態におけるマルチエクステントの構成方法及び、論理エクステントと物理エクステントとの間の関連付け方法について説明する。
【００６９】
前記第１の実施形態と同様、前述したプール内に複数の冗長グループが存在し、各冗長グループから未使用の物理エクステントが複数提供される場合、ストレージコントローラ１０２は、当該物理エクステントと、前記論理ディスクを構成する論理エクステントとを、順番に関連付ける。本実施形態におけるストレージコントローラ１０２は、異なる冗長グループに属する物理エクステントと関連付けられた論理エクステントをまとめて、マルチエクステントを構成する。
【００７０】
本実施形態におけるマルチエクステントの構成について、図８を参照して説明する。図８は、本実施形態におけるマルチエクステントとして採用し得る構成の一例を示した模式図であり、本実施形態においてマルチエクステントを構成する最小の論理エクステントの個数（以下ベース値と称する場合がある）を２個とした場合の、論理ディスク上に配置されるマルチエクステントの境界を例示している。
【００７１】
ここで、本実施形態におけるストレージコントローラ１０２は、前記ベース値を２個とした場合、論理ディスクの先頭から順番に、ベース値２に２のべき乗を乗算した積になる境界に配置される論理エクステントから、２のべき乗個数分の論理エクステントをまとめて、マルチエクステントを構成する。図８を参照すると、例えば、（ベース値２）×（２の０乗（＝１））＝２個の論理エクステントを用いてマルチエクステントを構成する場合、各マルチエクステントの先頭エクステントは、論理エクステント番号が”ＬＥｘｔ００”、”ＬＥｘｔ０２”、”ＬＥｘｔ０４”、”ＬＥｘｔ０６”、”ＬＥｘｔ０８”、”ＬＥｘｔ１０”、”ＬＥｘｔ１２”、”ＬＥｘｔ１４”となり、先頭（”ＬＥｘｔ００”）から順番にベース値２に２のべき乗を乗算した積（この場合は２）となる境界に配置される。同様に、（ベース値２）×（２の１乗（＝２））＝４個の論理エクステントを用いてマルチエクステントを構成する場合、各マルチエクステントの先頭エクステントは、論理エクステント番号が”ＬＥｘｔ００”、”ＬＥｘｔ０４”、”ＬＥｘｔ０８”、”ＬＥｘｔ１２”となり、（ベース値２）×（２の２乗（＝４））＝８個の論理エクステントを用いてマルチエクステントを構成する場合、各マルチエクステントの先頭エクステントは、論理エクステント番号が”ＬＥｘｔ００”、”ＬＥｘｔ０８”、となる。なお、図８においては論理エクステント番号が”ＬＥｘｔ１５”までの１５個を用いて論理ディスクを構成する場合を例示しているが、１５個以上の場合も同様である。
【００７２】
ここで、前述したように、ストレージコントローラ１０２は、マルチエクステントを構成する論理エクステントに、それぞれ異なる冗長グループに属する物理エクステントを関連付ける。本実施形態においては、図８に示すようなマルチエクステントを構成するため、ストレージコントローラ１０２は、ベース値２に２のべき乗を乗算した積になる数をマルチカウントとし、係るマルチカウントに相当する数の異なる冗長グループから未使用の物理エクステントを取得できた場合に、当該物理エクステントに関連付けられる論理エクステントをまとめて、マルチエクステントを構成する。本実施形態においては、前記マルチカウントは、特定のマルチエクステントを構成する複数の論理エクステント同士を関連付ける、関連付け情報として用いられる。特定のマルチエクステントを構成する論理エクステントのマルチカウントは同じ値となる。
【００７３】
図８に例示する構成においては、ストレージコントローラ１０２は、例えば、論理エクステント”ＬＥｘｔ００”及び”ＬＥｘｔ０１”を、マルチカウント２を用いて関連付けられるが、”ＬＥｘｔ１”及び”ＬＥｘｔ２”を、マルチカウントメモリ２を用いて関連付けることはない（即ち、マルチカウントが２となるマルチエクステントを構成することはない）。これは、”ＬＥｘｔ１”と”ＬＥｘｔ２”とが、マルチカウント２である場合の境界（ベース値２×２のべき乗、この場合は２）を跨いでいるからである。同様に、ストレージコントローラ１０２は、”ＬＥｘｔ００”乃至”ＬＥｘｔ０３”を、マルチカウント４を用いて関連付けられるが、例えば”ＬＥｘｔ０２”乃至”ＬＥｘｔ０５”や、”ＬＥｘｔ０３”乃至”ＬＥｘｔ０６”を、マルチカウント４を用いて関連付けることはない。
【００７４】
また、論理エクステント”ＬＥｘｔ００”のマルチカウントが２であれば、論理エクステント”ＬＥｘｔ０１”のマルチカウントは、２となる。同様に、論理エクステント”ＬＥｘｔ０１”のマルチカウントが４であれば、”ＬＥｘｔ００”から”ＬＥｘｔ０３”までの全てのマルチカウントは４となる。マルチカウントが８，１６，３２となる場合も同様に、特定のマルチエクステントを構成する複数の論理エクステントに関連付けされるマルチカウントの値は、それぞれ同一の値となる。
【００７５】
図７を参照すると、論理エクステント対応テーブル１０２ｆには、論理エクステント番号７０１毎に、マルチカウントを記憶する領域が設けられている（図７における７０４）。図７に例示する構成においては、論理ディスクの論理エクステント”Ｌ−Ｅｘｔ０−０”は冗長グループ０の物理エクステント”Ｐ−Ｅｘｔ０−０”に関連付けられ、論理エクステント”Ｌ−Ｅｘｔ０−１”は冗長グループ０の物理エクステント”Ｐ−Ｅｘｔ１−０”と関連付けられている。”Ｌ−Ｅｘｔ０−０”は論理ディスクの先頭であり、また、”Ｌ−Ｅｘｔ０−０”、”Ｌ−Ｅｘｔ０−１”と２つ連続して異なる冗長グループから物理エクステントを取得しているため、マルチカウントメモリを２としている。同様に、”Ｌ−Ｅｘｔ０−２”は冗長グループ０の物理エクステント”Ｐ−Ｅｘｔ０−１”に関連付けられ、論理エクステント”Ｌ−Ｅｘｔ０−３”は冗長グループ０の物理エクステント”Ｐ−Ｅｘｔ１−１”と関連付けられている。”Ｌ−Ｅｘｔ０−２”は論理ディスクの先頭から２番目（ベース値２に２のべき乗を乗算した値となる境界）に配置され、また、論理エクステント”Ｌ−Ｅｘｔ０−２”、”Ｌ−Ｅｘｔ０−３”は、連続して異なる冗長グループから物理エクステントと関連付けられているため、マルチカウントメモリを２としている。”Ｅ−Ｅｘｔ０−４”と、”Ｌ−Ｅｘｔ０−５”についても同様である。
【００７６】
次に、本実施形態におけるストレージコントローラ１０２が、前述した本実施形態におけるマルチエクステントを有する論理ディスクを構築する処理について、図９乃至図１２を参照して説明する。図９は、本実施形態における、マルチエクステントを有する論理ディスクの構築過程を例示するフローチャートである。また、図１０乃至図１２は、論理ディスクの構築過程を例示する、模式図である。
【００７７】
以下においては、前記プールに４つの冗長グループが存在し、冗長グループ０には未使用物理エクステントが１つ、冗長グループ１には未使用物理エクステントが１つ、冗長グループ２には未使用物理エクステントが３つ、冗長グループ３には未使用物理エクステントが３つある状態で、エクステントを７つ使用する容量の論理ディスクを構築する場合を、本実施形態における１つの実施例として説明する。以下の実施例においては、論理エクステント及び物理エクステントのサイズはそれぞれ２５６ＫｉＢ（１ＫｉＢ＝１０２４バイト）とする。マルチエクステントを構成する複数の論理エクステントと、当該論理エクステントにそれぞれ関連付けられた物理エクステントとの間でデータを分散するアドレス範囲の単位（即ち、前記第１の実施形態において説明したストライピングの単位）は１ＫｉＢとする。また、マルチエクステントを構成する論理エクステントの個数（ベース値）は、２個とする。
【００７８】
なお、論理エクステント及び物理エクステントのサイズと、前記第１の実施形態において説明したストライピングの単位のサイズは、上記に例示した値に限定されず、ストレージ装置として要求される仕様等に基づいて、適宜適切な値を採用して良い。例えば、エクステントのサイズを２５６ＭＢ（ＭｅｇａＢｙｔｅ）として、ストライピングのサイズを１ＭＢとしてもよい。
【００７９】
まず、ホストマシン１０１に対して提供する論理ディスクの構築処理を説明する。ストレージコントローラ１０２は、ホストマシン１０１から論理ディスク１０２ｈの構築要求を受け付ける（図９のステップＳ９０１）。
【００８０】
ストレージコントローラ１０２は、前記論理ディスク構築要求を解析し、必要とされる論理容量（論理ディスクとしてホストマシン１０１に提供する記憶容量）に応じて、前記論理ディスク１０２ｈに割り当てるための論理エクステントを作成する（ステップＳ９０２）。図１０に示す実施例においては、ストレージコントローラ１０２は、論理ディスク１０２ｈに割り当てるため、論理エクステント番号が”Ｌ−Ｅｘｔ０−０”乃至”Ｌ−Ｅｘｔ０−６”の７つの論理エクステントを作成する。
【００８１】
次に、ストレージコントローラ１０２は、論理ディスク１０２における論理アドレスの昇順に、論理ディスク１０２ｈを構成する各論理エクステントに対して物理エクステントを関連付ける処理を実行する（ステップＳ９０３乃至ステップＳ９１２）。
【００８２】
まず、ストレージコントローラ１０２は、論理ディスク１０２ｈを構成する論理エクステントについて、マルチエクステントを構成可能か確認する（ステップＳ９０４）。以下、マルチエクステントの構成可否を判定する処理について説明する。
【００８３】
ストレージコントローラ１０２は、論理ディスクを構成する先頭の論理エクステントを選択し、マルチエクステントを構成し得る境界条件を確認する。図１０に示す実施例においては、先頭の論理エクステント”Ｌ−Ｅｘｔ０−０”はマルチカウントが２，４、８、・・・となるマルチエクステントの先頭エクステントになり得る。ストレージコントローラ１０２は、図８に例示するような境界条件に基づいて、いずれのマルチカウントによるマルチエクステントを構成可能か判定する。
【００８４】
次に、ストレージコントローラ１０２は、プールに含まれる冗長グループ０乃至冗長グループ３のそれぞれから、未使用の物理エクステントを取得可能か確認する。ストレージコントローラ１０２は、未使用の物理エクステントを取得可能な冗長グループの数と同数以下となるマルチカウントにて、マルチエクステントを構成可能か判定する。マルチエクステントを構成可能な場合、ストレージコントローラ１０２は、マルチエクステントを構成する複数の論理エクステントを、それぞれ異なる冗長グループから提供される未使用の物理エクステントと関連付け、マルチカウントを設定する。図１０に例示する実施例においては、冗長グループ０乃至冗長グループ３から１つずつ、未使用の物理エクステントを取得可能であるので、ストレージコントローラ１０２は、マルチカウント４にてマルチエクステントを構成可能であると判定する（ステップＳ９０５においてｔｒｕｅの場合）。
【００８５】
この場合、ストレージコントローラ１０２は、マルチエクステントを構成する複数の論理エクステントに対して、それぞれ異なる冗長グループに属する物理エクステントを関連付ける（ステップＳ９０９）。図１０に例示する実施例においては、ストレージコントローラ１０２は、論理ディスク１０２ｈの先頭となる論理エクステント”Ｌ−Ｅｘｔ０−０”から、４つ分の論理エクステント”Ｌ−Ｅｘｔ０−１”、”Ｌ−Ｅｘｔ０−２”、”Ｌ−Ｅｘｔ０−３”に対して、それぞれ異なる冗長グループに属する物理エクステント”Ｐ−Ｅｘｔ０−０”、”Ｐ−Ｅｘｔ１−０”、”Ｐ−Ｅｘｔ２−０”、”Ｐ−Ｅｘｔ３−０”を関連付ける。
【００８６】
次に、ストレージコントローラ１０２は、それぞれの論理エクステントに関連付けられるマルチカウントを設定する（ステップＳ９１０）。図１０に示す実施例においては、マルチカウントを４として設定する。ストレージコントローラ１０２ｈは、前記ステップＳ９０９における関連付けの情報と、ステップＳ９１０におけるマルチカウントの情報を用いて、論理エクステント対応テーブル１０２ｈ及び、物理エクステント対応テーブル１０２ｇを更新してもよい。以上の処理の結果、本実施形態の１つの実施例における論理ディスク１０２ｈは、図１１に示すような構成となる。
【００８７】
次に、ストレージコントローラ１０２は、論理ディスク１０２ｈを構成し、まだ物理エクステントと関連付けられていない次の論理エクステントを選択する（ステップＳ９１１）。図１１に示す実施例においては、物理エクステントと関連付けられていない論理エクステントは”Ｌ−Ｅｘｔ０−４”である。ストレージコントローラは、論理エクステント”Ｌ−Ｅｘｔ０−４”に対してステップＳ９０４から処理を続行する。
【００８８】
ストレージコントローラ１０２は”Ｌ−Ｅｘｔ０−４”についてマルチエクステントを構成可能か確認する（ステップＳ９０５）。ここで、図８を参照すると、”Ｌ−Ｅｘｔ０−４”はマルチカウントが２または４となるマルチエクステントの境界（先頭部分）になり得る。ストレージコントローラ１０２は、図８に例示するような境界条件に基づいて、いずれのマルチカウントによるマルチエクステントを構成可能か判定する。
【００８９】
次に、ストレージコントローラ１０２は、プールに含まれる冗長グループ０乃至冗長グループ３のそれぞれから、未使用の物理エクステントを取得可能か確認する。図１１を参照すると、冗長グループ２及び冗長グループ３から１つずつ未使用の物理エクステントを選択可能であるため、ストレージコントローラ１０２は、マルチカウント２にてマルチエクステントを構成可能であると判定する（ステップＳ９０５においてｔｒｕｅの場合）。
【００９０】
この場合、ストレージコントローラ１０２は、マルチエクステントを構成する複数の論理エクステントに対して、それぞれ異なる冗長グループに属する物理エクステントを関連付ける（ステップＳ９０９）。図１１に例示する実施例においては、ストレージコントローラ１０２は、２つ分の論理エクステント”Ｌ−Ｅｘｔ０−４”及び”Ｌ−Ｅｘｔ０−５”に対して、それぞれ異なる冗長グループに属する物理エクステント”Ｐ−Ｅｘｔ２−１”、”Ｐ−Ｅｘｔ３−１”を関連付ける。
【００９１】
次に、ストレージコントローラ１０２は、それぞれの論理エクステントに関連付けられるマルチカウントを設定する（ステップＳ９１０）。図１０に示す実施例においては、マルチカウントを２として設定する。ストレージコントローラ１０２ｈは、前記ステップＳ９０９における関連付けの情報と、ステップＳ９１０におけるマルチカウントの情報を用いて、論理エクステント対応テーブル１０２ｈ及び、物理エクステント対応テーブル１０２ｇを更新してもよい。以上の処理の結果、本実施形態の１つの実施例における論理ディスク１０２ｈは、図１２示すような構成となる。
【００９２】
次に、ストレージコントローラ１０２は、論理ディスク１０２ｈを構成し、まだ物理エクステントと関連付けられていない次の論理エクステントを選択する（ステップＳ９１１）。図１２に示す実施例においては、物理エクステントと関連付けられていない論理エクステントは”Ｌ−Ｅｘｔ０−６”である。ストレージコントローラは、論理エクステント”Ｌ−Ｅｘｔ０−６”に対してステップＳ９０４から処理を続行する。
【００９３】
ストレージコントローラ１０２は”Ｌ−Ｅｘｔ０−６”についてマルチエクステントを構成可能か確認する（ステップＳ９０５）。ここで、関連付けが必要な残りの論理エクステントは”Ｌ−Ｅｘｔ０−６”一つであるため、ストレージコントローラ１０２は、マルチエクステントは構成しないと判定する（ステップＳ９０５においてｆａｌｓｅ）。
【００９４】
次に、ストレージコントローラ１０２は、いずれかの冗長グループに属する未使用の物理エクステントを１つ選択し、論理エクステントと関連付ける（ステップＳ９０６）。図１２に例示する実施例においては、論理エクステント”Ｌ−Ｅｘｔ０−６”に対して、物理エクステント”Ｐ−Ｅｘｔ２−２”を関連付ける。
【００９５】
次に、ストレージコントローラ１０２は、係る論理エクステントに関連付けられるマルチカウントを１に設定する（ステップＳ９０７）。図１２に示す実施例においては、論理エクステント”Ｌ−Ｅｘｔ０−６”に対応するマルチカウントを、１に設定する。ストレージコントローラ１０２ｈは、前記ステップＳ９０６における関連付けの情報と、ステップＳ９０７におけるマルチカウントの情報を用いて、論理エクステント対応テーブル１０２ｈ及び、物理エクステント対応テーブル１０２ｇを更新してもよい。以上の処理の結果、本実施形態の１つの実施例における論理ディスク１０２ｈは、図１３示すような構成となる。
【００９６】
以上の処理により、論理ディスク１０２ｈを構成する全ての論理エクステントについて、物理エクステントとの関連付けが完了したため（ステップＳ９１２）、ストレージコントローラ１０２は、論理ディスクの構成処理を終了する。
【００９７】
次に、上記のように構成された論理ディスク１０２ｈに対する、ホストマシン１０１から受信したアクセス要求を処理する過程について、図１４を参照して説明する。図１４は、ホストマシン１０１から論理ディスク１０２ｈに対してアクセス要求があった際に、該当するデータを格納する物理アドレスを判定する処理を例示したフローチャートである。なお、以下においては、図１３に示す実施例を用いて、ホストマシン１０１から、論理アドレス（論理ディスク１０２ｈにおいてデータが格納されているアドレス）２５８番地にアクセスがあった場合を例として、上記判定処理について説明する。なお、本実施形態において、ホストマシン１０１から要求される特定のデータに対するアクセス要求には、当該データ領域に対する読み込み及び書き込み要求などが含まれる。
【００９８】
まず、ストレージコントローラ１０２は、ホストマシン１０１から、論理ディスク１０２ｈにおける特定のアドレス領域に対するアクセス要求を受信する（ステップＳ１４０１）。
【００９９】
次に、ストレージコントローラ１０２は、前記アクセス要求を解析し、アクセス対象として指定された論理アドレスから、当該論理アドレスにて指定された領域を提供する論理エクステントを選択する（ステップＳ１４０２）。例えば、図１３に示す実施例において、論理アドレス２５８番地を提供する論理エクステントは、”Ｌ−Ｅｘｔ０−１”である。
【０１００】
次にストレージコントローラ１０２は、論理エクステント”Ｌ−Ｅｘｔ０−１”のマルチカウント（この場合は４）を確認する（ステップ１４０３）。
【０１０１】
次に、ストレージコントローラ１０２は、マルチエクステントの境界条件を参照して、マルチカウント４により関連付けられたマルチエクステントを構成する、先頭の論理エクステントを選択し、当該選択した先頭エクステントからのオフセットアドレスを算出する（ステップＳ１４０４）。図１３に例示した実施例においては、先頭エクステントは”Ｌ−Ｅｘｔ０−０”であり、当該エクステントの先頭アドレスは０番地であるため、先頭エクステント”Ｌ−Ｅｘｔ０−０”からのオフセットアドレスは２５８−０＝２５８番地となる。
【０１０２】
次に、ストレージコントローラ１０２は、前記ステップＳ１４０４において算出した論理エクステントにおけるオフセットアドレスから、物理エクステントにおける物理アドレスを算出する。以下、物理アドレスの算出処理について説明する。
【０１０３】
ストレージコントローラ１０２は、まず、前記ステップＳ１４０４において算出したオフセットアドレスを、マルチエクステントを構成するフルストライプのサイズにより除算する（ステップＳ１４０５）。ここで、フルストライプのサイズとは、マルチカウント（本実施例においては４）と、マルチエクステントを構成する論理エクステントと、物理エクステントの間で構成する仮想的なＲＡＩＤ０のストライピングのサイズ（本実施例においては１ＫｉＢ）とを乗算した積であり、この場合は４×１＝４となる。前記オフセットアドレス２５８を、前記フルストライプ４で除算し商をＸ、剰余（余り）をＹとすると、Ｘ＝６４、Ｙ＝２となる。
【０１０４】
次に、ストレージコントローラ１０２は、前記剰余Ｙをストライプサイズにて除算した商をＺとし、マルチエクステントを構成する論理エクステントにおいて、先頭エクステントからＺ番目に該当する論理エクステントに関連付けられた、物理エクステントを選択する（ステップＳ１４０６）。図１３に例示する実施例においては、前記Ｙ＝２を、ストライプサイズ＝１で除算した商ＺはＺ＝２となる。先頭エクステント”Ｌ−Ｅｘｔ０−０”から２番目の論理エクステントは”Ｌ−Ｅｘｔ０−２”であるため、ストレージコントローラ１０２は、当該論理エクステントに関連付けられた物理エクステントである”Ｐ−Ｅｘｔ２−０”を選択する。
【０１０５】
次に、ストレージコントローラ１０２は、前記商Ｘにストライプサイズを乗算した積を算出し、当該積の値をもって、前記選択された物理エクステントにおけるオフセットアドレス（当該選択された物理エクステントの先頭からのアドレス）として選択する（ステップＳ１４０７）。図１３に例示する実施例においては、前記商Ｘ＝６４に、ストライプサイズ＝１を乗算した積＝６４となり、この値を物理エクステント”Ｐ−Ｅｘｔ２−０”の先頭からのオフセットアドレスとして選択する。
【０１０６】
次に、ストレージコントローラ１０２は、前記算出した物理エクステントにける物理アドレスを用いて、データアクセスを実行する（ステップＳ１４０８）。
【０１０７】
上記説明した方法によるデータアクセスを実行する場合、ホストマシン１０１から指定される論理アドレスが０番地、１番地、２番地、３番地、４番地、５番地・・・と変化するにつれて、当該論理アドレスに関連付けられる物理エクステントは、”Ｐ−Ｅｘｔ０−０”、”Ｐ−Ｅｘｔ０−１”、”Ｐ−Ｅｘｔ０−２”、”Ｐ−Ｅｘｔ０−３”、”Ｐ−Ｅｘｔ０−０”、と順番に選択される。マルチカウント２としてマルチエクステントを構成するよう関連付けられた”Ｌ−Ｅｘｔ０−４”、”Ｌ−Ｅｘｔ０−５”の場合も同様に、論理アドレス１０２４番地、１０２５番地、１０２６番地、・・・と変わると、当該論理アドレスに関連付けられる物理エクステントは、”Ｐ−Ｅｘｔ２−１”、”Ｐ−Ｅｘｔ３−１”、”Ｐ−Ｅｘｔ２−１”、・・・と交互に選択される。なお、マルチカウントメモリ値が１となる場合は、１つの論理エクステントと１つの物理エクステントが関連付けられるが、同様の処理によって、論理アドレスに関連付けられた物理アドレスを選択可能である。
【０１０８】
以上説明した、特定のデータに対するアクセス要求の処理により、マルチエクステントにより構成される領域に該当する論理アドレスは、複数の物理エクステントに分散して配置される。上記説明した実施例における、論理アドレスと、物理アドレスとの間の関係を図１５乃至図１８に示す。図１５及び図１６に示すように、マルチカウント４にて関連付けられる論理エクステント”Ｌ−Ｅｘｔ０−０”、”Ｌ−Ｅｘｔ０−１”、”Ｌ−Ｅｘｔ０−２”、”Ｌ−Ｅｘｔ０−３”のそれぞれが提供する（割り当てられた）論理アドレスと、これらに関連付けられた物理エクステントにおける物理アドレスとの関連を確認すると、論理アドレスの番地が１つ変化する毎に、関連付けられた物理エクステントが”Ｐ−Ｅｘｔ０−０”、”Ｐ−Ｅｘｔ１−０”、”Ｐ−Ｅｘｔ２−０”、”Ｐ−Ｅｘｔ３−０”の順で変化する。換言すると、マルチカウント４にて関連付けられたマルチエクステントにより提供される論理アドレス領域は、論理アドレスが１番地異なる毎に、４つの異なる物理エクステントに分散配置されるため、当該論理アドレスにて指定された領域に対するアクセスは、ストライピングされる。
【０１０９】
同様に、図１７に示すように、マルチカウント２にて関連付けられる論理エクステント”Ｌ−Ｅｘｔ０−４”と、”Ｌ−Ｅｘｔ０−５”のそれぞれが提供する（割り当てられた）論理アドレスと、これらに関連付けられた物理エクステントにおける物理アドレスとの関連を確認すると、論理アドレスの番地が１つ変化する毎に、関連付けられた物理エクステントが”Ｐ−Ｅｘｔ２−１”、”Ｐ−Ｅｘｔ３−１”の順で変化する。換言すると、マルチカウント２にて関連付けられたマルチエクステントにより提供される論理アドレス領域は、論理アドレスが１番地異なる毎に、２つの異なる物理エクステントに分散配置されるため、当該論理アドレスにて指定された領域に対するアクセスは、ストライピングされる。
【０１１０】
このようにして、本実施形態におけるストレージコントローラ１０２は、マルチエクステントを構成するマルチカウントと、ストライピングの単位を考慮して、マルチエクステントにより構成される論理アドレス領域に対するデータアクセスを、複数の物理エクステントに分散することができる。
【０１１１】
以上説明した本実施形態におけるストレージ装置１００によれば、ストレージコントローラ１０２は、複数の異なる冗長グループ（例えば図１３に例示した冗長グループ０乃至冗長グループ３等）に属する物理エクステントに関連付けられ、連続して配置される論理エクステントをまとめてマルチエクステントを構成し、当該マルチエクステントを含む論理ディスク２０１ｈをホストマシン１０１に対して記憶領域として提供できる。
【０１１２】
本実施形態におけるストレージコントローラ１０２は、マルチカウントを用いて複数の論理エクステントを関連付けてマルチエクステントを構成し、当該マルチエクステント対するアクセスを、マルチカウントの値と同数の異なる物理エクステントに分散することができる。また、本実施形態におけるストレージコントローラ１０２は、マルチエクステントを構成するマルチカウントと、ストライピングの単位を考慮して、マルチエクステントにより構成される論理アドレス領域に対するデータアクセスを、複数の物理エクステントに分散することができる。
【０１１３】
上述のように、本実施形態によるストレージ装置によれば、ホストマシン１０１による特定のデータへのアクセスは、前記第１の実施形態と同様、複数の異なる冗長グループに配置された記憶装置に分散されるため、記憶装置の負荷を低減し、アクセス性能を向上できる、という効果を奏する。
【０１１４】
具体的には、ホストマシン１０１より、例えば、論理ディスク１０２ｈの特定の連続したアドレス領域に対してシーケンシャルな読み込み要求があった場合、当該アドレス領域がマルチエクステントにより提供される場合には、マルチカウントの数に比例して、読み込み速度の向上を期待できる。また、ホストマシン１０１より、例えば、１つのマルチエクステントにより提供されるアドレス範囲内に収まるデータに対する書き込み要求があった場合、複数の異なる冗長グループに属する物理エクステントに対して書き込みが発生するため、書き込みアクセスの負荷が複数の冗長グループの記憶装置に分散されることになり、高い書き込み性能を期待できる。
【０１１５】
なお、本実施形態におけるストレージコントローラ１０２は、第１の実施形態と同様、独立した専用のハードウェアを用いて構成してもよいが、図６に示すマイクロプロセッサ１０２ｄ等の演算装置及び、当該演算装置から参照されるメモリ等の記憶装置からなるハードウェアと、当該演算装置によって実行される各種ソフトウェア・プログラム（コンピュータ・プログラム）とによって構成してもよく、この場合、上述したストレージコントローラ１０２の動作は、マイクロプロセッサ１０２ｄによって実行されるソフトウェア・プログラムの処理により実現してもよい。
【０１１６】
＜実施形態の変形例＞
上述した各実施形態において開示された構成について、以下のような変形例を採用してもよい。
【０１１７】
上述した各実施形態においては、マルチエクステントを構成する最小の論理エクステントの個数であるベース値を２個として、マルチエクステントを構成する論理エクステントの個数を、２のべき乗である２個、４個、８個、１６個とした場合の構成を例として説明しているが、本願発明はこれに限定されない。例えば、ベース値を３として、マルチエクステントを構成する論理エクステントの個数を、ベース値×２のべき乗である３個、６個、１２個、２４個とした場合や、例えば、ベース値を５として、マルチエクステントを構成する論理エクステントの個数を、ベース値×２のべき乗である５個、１０個、１５個、２０個とした場合も同様の効果を奏する。図１９及び図２０に、それぞれベース値を３、５とした場合の、論理ディスク上に配置されるマルチエクステントの境界を例示する。
【０１１８】
以上、本発明を、上述した模範的な実施形態に適用した例として説明した。しかしながら、本発明の技術的範囲は、上述した各実施形態に記載した範囲には限定されない。当業者には、係る実施形態に対して多様な変更または改良を加えることが可能であることは明らかである。そのような場合、係る変更または改良を加えた新たな実施形態も、本発明の技術的範囲に含まれ得る。そしてこのことは、特許請求の範囲に記載した事項から明らかである。
【０１１９】
なお、上述した実施形態及びその変形例の一部または全部は、以下の付記のようにも記載されうる。しかしながら、上述した実施形態及びその変形例により例示的に説明した本発明は、以下には限られない。
【０１２０】
（付記１）
１台以上の記憶装置により構成され、当該１台以上の記憶装置が有する特定の記憶領域を関連付けて第１の物理記憶領域として提供する１組以上のストレージグループと、
前記第１の物理記憶領域と関連付けされた第１の論理記憶領域を、複数関連付けて第２の論理記憶領域を構成し、構成した第２の論理記憶領域が割り当てられた論理ディスクを、記憶領域として外部装置に提供する、ストレージコントローラと、を有する、
ストレージ装置。
【０１２１】
（付記２）
前記ストレージコントローラは、前記第２の論理記憶領域を構成する特定の前記第１の論理記憶領域を、特定の範囲毎に、当該第１の論理記憶領域に関連付けられた前記第１の物理記憶領域における特定の記憶領域と、前記第２の論理記憶領域を構成する他の前記第１の論理記憶領域に関連付けられた前記物理記憶領域における特定の記憶領域と、に順番に関連付ける、
付記１に記載のストレージ装置。
【０１２２】
（付記３）
前記第２の論理記憶領域に含まれる複数の前記第１の記憶領域は、当該複数の第１の記憶領域の間を関連付ける、関連付け情報を有する、
付記１または付記２に記載のストレージ装置。
【０１２３】
（付記４）
前記関連付け情報は、前記第２の記憶領域に含まれる前記第１の記憶領域の個数に関する情報を含む、
付記３に記載のストレージ装置。
【０１２４】
（付記５）
前記ストレージコントローラは、
前記第２の論理記憶領域を、前記第２の論理記憶領域に含まれる前記第１の論理記憶領域の最小の個数であるベース値と、任意の２のべき乗数とを乗算した積の値に相当する個数の前記第１の論理記憶領域により構成し、
前記第２の論理記憶領域を構成する複数の前記第１の論理記憶領域を、それぞれ前記第１の論理領域の個数と同数のそれぞれ異なるストレージグループから提供された前記第１の物理記憶領域と関連付ける、
付記１乃至付記４の何れかに記載のストレージ装置。
【０１２５】
（付記６）
前記関連付け情報は、前記第２の論理記憶領域に含まれる前記第１の論理記憶領域の最小の個数であるベース値と、任意の２のべき乗数とを乗算した積の値を含む、
付記１乃至付記５の何れかに記載のストレージ装置。
【０１２６】
（付記７）
前記ストレージコントローラは、前記第２の論理記憶領域の先頭アドレスを、少なくとも、前記論理ディスクの先頭位置か、または、前記論理ディスクの先頭から、前記ベース値と前記第１の論理記憶領域が有するアドレス範囲のサイズとを乗算した値を任意の整数倍オフセットした位置に割り当てる、
付記１乃至付記６の何れかに記載のストレージ装置。
【０１２７】
（付記８）
前記ストレージコントローラは、
前記外部装置からの、前記論理ディスクに対するデータアクセス要求に応じて、
前記データアクセス要求に含まれるアクセス対象論理アドレスから、当該論理アドレスを含む記憶領域に割り当てられた前記第２の論理記憶領域を選択し、
前記抽出した第２の記憶領域を構成する前記第１の記憶領域の関連付け情報から、前記抽出した第２の記憶領域を構成する前記第１の記憶領域の個数と、前記選択した前記第２の記憶領域の先頭に配置された前記第１の論理領域を抽出し、
前記抽出した第１の論理記憶領域の先頭アドレスからの、前記アクセス対象論理アドレスのオフセットアドレスを算出し、
前記算出したオフセットアドレスの値を、前記抽出した前記第１の記憶領域の個数により除算し、
前記除算結果の剰余を用いて、前記アクセス対象論理アドレスを含む前記第２の論理アドレスを構成する前記第１の記憶領域を特定し、
前記特定した前記第１の記憶領域に関連付けされた前記第１の物記憶領域を特定し、
前記除算結果の商を用いて、前記アクセス対象論理アドレスに関連付けられた、前記特定した第１の物理記憶領域における物理アドレスを特定する、
付記３乃至付記７の何れかに記載のストレージ装置。
【０１２８】
（付記９）
情報処理装置によって、
ストレージグループを構成する１台以上の記憶装置が有する特定の記憶領域を関連付けて物理記憶領域を構成し、
前記第１の物理記憶領域と関連付けされた第１の論理記憶領域を、複数関連付けて第２の論理記憶領域を構成し、
前記構成した第２の論理記憶領域が割り当てられた論理ディスクを、記憶領域として外部装置に提供する、
ストレージ装置の制御方法。
【０１２９】
（付記１０）
ストレージ装置の制御プログラムであって、
ストレージグループを構成する１台以上の記憶装置が有する特定の記憶領域を関連付けて物理記憶領域を構成する処理と、
前記第１の物理記憶領域と関連付けされた第１の論理記憶領域を、複数関連付けて第２の論理記憶領域を構成する処理と、
前記構成した第２の論理記憶領域が割り当てられた論理ディスクを、記憶領域として外部装置に提供する処理と、をコンピュータに実行させる、
制御プログラム。
【０１３０】
（付記１１）
１台以上の記憶装置により構成され、当該記憶装置が有する特定の記憶領域を関連付けることにより物理記憶領域を提供する１以上のストレージグループと、
互いに異なる前記ストレージグループにより提供される前記物理記憶領域に関連付けされた第１の論理記憶領域が配置される第２の論理記憶領域を有する論理ディスクを構築し、外部装置に対して、前記構築した論理ディスクを、記憶領域として提供する、ストレージコントローラと、を備える
ストレージ装置。
【産業上の利用可能性】
【０１３１】
本発明は、複数の物理的な記憶装置を統合して、論理的な記憶領域をホストマシンに提供し、物理的な記憶領域と論理的な記憶領域を特定の単位で関連付けするストレージ装置等に適応できる。
【符号の説明】
【０１３２】
１００  ストレージ装置
１０１  ホストマシン
１０２  ストレージコントローラ
１０３  記憶装置群
３０１  論理ディスク
３０２  論理エクステント
３０３  論理エクステント
３０４  マルチエクステント
３０５  物理エクステント
３０７  物理エクステント
２１０１  演算装置
２１０２  記憶装置
２１０３  不揮発性メモリ
２１０４  外部記憶装置
２１０５  外部記憶媒体
【図１】
0005962621.tif 000002
【図２】
0005962621.tif 000003
【図３】
0005962621.tif 000004
【図４】
0005962621.tif 000005
【図５】
0005962621.tif 000006
【図６】
0005962621.tif 000007
【図７】
0005962621.tif 000008
【図８】
0005962621.tif 000009
【図９】
0005962621.tif 000010
【図１０】
0005962621.tif 000011
【図１１】
0005962621.tif 000012
【図１２】
0005962621.tif 000013
【図１３】
0005962621.tif 000014
【図１４】
0005962621.tif 000015
【図１５】
0005962621.tif 000016
【図１６】
0005962621.tif 000017
【図１７】
0005962621.tif 000018
【図１８】
0005962621.tif 000019
【図１９】
0005962621.tif 000020
【図２０】
0005962621.tif 000021
【図２１】
0005962621.tif 000022