(57)【要約】      （修正有）【課題】ホスト装置から開放要求を受信した時に開放可能な物理エクステントを開放することで、記憶容量を効率的に使用することを可能とするディスクアレイ装置を提供する。【解決手段】記憶領域を複数に分割した物理エクステントを組み合わせることによって、論理ディスクを構成するディスクアレイ装置であって、外部装置から論理エクステントに対する書き込み要求の範囲及び開放要求の範囲を所定数格納する記憶部と、外部装置からの書き込み要求と開放要求とが所定数を超えた場合に、外部装置から開放要求を受信したとき、記憶部に格納された書き込み要求の範囲及び開放要求の範囲に基づいて、開放要求の対象の論理エクステントに対応する物理エクステントが開放可能であるか否かを判定する管理部と、を備える。【選択図】図１
2013073409.tif 000002
【特許請求の範囲】
【請求項１】
記憶領域を複数に分割した物理エクステントを組み合わせることによって、論理ディス
クを構成するディスクアレイ装置であって、
前記外部装置から前記論理エクステントに対する書き込み要求の範囲及び開放要求の範
囲を所定数格納する記憶部と、
前記外部装置からの前記書き込み要求と前記開放要求とが前記所定数を超えた場合に、
前記外部装置から前記開放要求を受信したとき、前記記憶部に格納された前記書き込み要
求の範囲及び前記開放要求の範囲に基づいて、前記開放要求の対象の論理エクステントに
対応する前記物理エクステントが開放可能であるか否かを判定する管理部と、
を備えるディスクアレイ装置。
【請求項２】
前記記憶部は、前記書き込み／消去範囲配列に格納された前記書き込み要求の範囲及び
前記開放要求の範囲が前記所定数を超えたか否かを示すフラグを記憶する請求項１に記載
のディスクアレイ装置。
【請求項３】
記憶領域を複数に分割した物理エクステントを組み合わせることによって、論理ディス
クを構成するディスクアレイ装置であって、
前記外部装置から前記論理エクステントに対する書き込み要求の範囲及び開放要求の範
囲を所定数格納する管理リストと、当該管理リストのうち書き込み要求の範囲及び開放要
求の範囲が格納されていない管理リストを示すフリーリストとを格納する記憶部と、
前記外部装置からのアクセスが前記フリーリストに格納された管理リスト数を超えた場
合に、前記外部装置から開放要求を受信したとき、前記管理データに基づいて、開放対象
の論理エクステントに対応する前記物理エクステントが開放可能であるか否かを判定する
管理部と、
を備えるディスクアレイ装置。
【請求項４】
前記管理部の判定結果が開放可能な場合に当該物理エクステントを未使用とする開放部
を備える請求項１乃至請求項３のいずれか１項に記載のディスクアレイ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ディスクアレイ装置に関する
【背景技術】
【０００２】
従来、ハードディスクドライブ（ＨＤＤ）のような記憶装置を複数備え、アレイを構成
しているディスクアレイ装置において、ホスト装置がアクセスを行う論理ボリュームと、
その論理ボリュームを構成する１つ以上の記憶媒体から構成されるアレイとの対応関係は
固定的であって、システムによっては、実際に論理ボリュームとして使用されていない領
域の割合が高くなり、無駄が大きい。
【０００３】
そのような問題に対し、アレイの物理領域をエクステントという一定サイズに区切って
管理し、論理ボリュームへのライトアクセスの際に、エクステントを仮想的に割り当てる
ことで、物理容量を削減するシンプロビジョニング（Ｔｈｉｎ Ｐｒｏｖｉｓｉｏｎｉｎ
ｇ）という技術がある。
【０００４】
シンプロビジョニングでは、物理エクステントの割り当てはホスト装置からの書き込み
を契機に行う。また、不要となった物理エクステントの開放は、ホスト装置からの開放コ
マンドで行う。開放コマンドは、例えばＳＣＳＩコマンドのＷＲＩＴＥ ＳＡＭＥ １６や
ＵＮＭＡＰコマンドである。
【０００５】
物理エクステント開放の理想的な方法は、ＵＮＭＡＰコマンドによって示される論理ボ
リュームの記憶領域に対して割り当てられた物理エクステントが１セクタの精度で開放さ
れる方法である。しかしながら、このような方法は、物理エクステントと論理エクステン
トが１セクタの単位で対応付けられているか、ライトされた範囲を全て１セクタ単位で管
理しているかのいずれかを方法を実装しなければならず、膨大な管理情報の記憶領域が必
要であるという問題がある。
【０００６】
このような問題に対して、特許文献１に示されるように、ＵＮＭＡＰコマンドにより指
定された記憶領域に０データをライトし、周期処理により物理エクステント内がＡＬＬ０
であるかチェックを行い、ＡＬＬ０の物理エクステントを見付けた場合にこの物理領域を
開放する技術がある。しかしながら、この方法では、物理エクステントの一箇所のみにラ
イトデータが存在し、ＵＮＭＡＰ要求を受信した際にそのＵＮＭＡＰ範囲が当該ライトデ
ータの範囲であってもすぐに開放して再利用できるわけではない。このように上述の方法
では効率が悪い場合がある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−２１７６８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明の実施形態が解決しようとする課題は、ホスト装置からの開放要求受信時に物理
エクステントを開放できるようにすることで、記憶装置の記憶容量を効率的に使用するこ
とを可能とするディスクアレイ装置を提供することである。
【課題を解決するための手段】
【０００９】
実施形態のディスクアレイ装置は、記憶領域を複数に分割した物理エクステントを組み
合わせることによって、論理ディスクを構成するディスクアレイ装置であって、外部装置
から論理エクステントに対する書き込み要求の範囲及び開放要求の範囲を所定数格納する
記憶部と、外部装置からの書き込み要求と開放要求とが所定数を超えた場合に、外部装置
から開放要求を受信したとき、記憶部に格納された書き込み要求の範囲及び開放要求の範
囲に基づいて、開放要求の対象の論理エクステントに対応する物理エクステントが開放可
能であるか否かを判定する管理部と、を備える。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態に係るディスクアレイ装置の全体構成を示す図。
【図２】第１の実施形態に係るディスクアレイ装置の機能構成を示す図。
【図３】第１の実施形態に係る論理ディスクの概念を示す図。
【図４】第１の実施形態に係る論理エクステント管理データ構造の一例を示す図。
【図５】第１の実施形態に係る物理エクステント管理データ構造の一例を示す図。
【図６】第１の実施形態に係る書き込み／消去範囲管理データ構造の一例を示す図。
【図７】第１の実施形態に係るディスクアレイ装置の動作の一例を示すフローチャート。
【図８】第１の実施形態に係るディスクアレイ装置の動作の一例を示すフローチャート。
【図９】第１の実施形態に係るディスクアレイ装置のゼロライト処理の概念を示す図。
【図１０】第２の実施形態２に係る物理エクステント管理データ構造の一例を示す図
【図１１】第２の実施形態２に係る書き込み／消去範囲リストの一例を示す図。
【図１２】第２の実施形態２に係るフリーリストの一例を示す図
【図１３】第２の実施形態に係るディスクアレイ装置の動作の一例を示すフローチャート。
【図１４】第２の実施形態に係るディスクアレイ装置の動作の一例を示すフローチャート。
【発明を実施するための形態】
【００１１】
本発明の実施形態について図面を参照して説明する。なお、同一の構成には同一の符号
を付与する。
【００１２】
（第１の実施形態）
図１は、本実施形態のディスクアレイ装置１００の全体構成を示すブロック図である。
図１に示すように、ディスクアレイ装置１００は、記録装置２０と当該記録装置２０を制
御する制御部１０とを備える。制御部１０は、データ通信路３０を介して接続されるホス
ト装置と記録装置２０との間に介在して設けられる。
【００１３】
記録装置２０は、複数のＨＤＤ（Ｈａｒｄ Ｄｉｓｋ Ｄｒｉｖｅ）２１、２２で構成さ
れるＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ Ａｒｒａｙｓ ｏｆ Ｉｎｅｘｐｅｎｓｉｖｅ Ｄｉｓ
ｋｓ）１とＲＡＩＤ２とを含んで構成される。なお、ＨＤＤ２１、２２は、ＳＳＤ（Ｓｏ
ｌｉｄ Ｓｔａｔｅ Ｄｒｉｖｅ）でもよい。また、本実施形態では、ＲＡＩＤ１に含まれ
るｎ個のＨＤＤをＨＤＤ２１（＃１）〜（＃ｎ）と示す。同様にＲＡＩＤ２に含まれるｎ
個のＨＤＤをＨＤＤ２２（＃１）〜（＃ｎ）と示す。
【００１４】
ここではＲＡＩＤ１とＲＡＩＤ２とに含まれるＨＤＤの個数が同一だが、異なる個数で
も良い。また、記録装置２０に含まれるＲＡＩＤは２つでなくても良い。また、記録装置
２０は、ＲＡＩＤを構成せず、ＨＤＤ２１（＃１）〜ＨＤＤ２１（＃ｎ）及びＨＤＤ２２
（＃１）〜（＃ｎ）の各記憶領域を連続した１つのＲＡＩＤとして構成してもよい。
【００１５】
制御部１０は、ホストインタフェース部（ＨＯＳＴ Ｉ／Ｆ）１１、ＣＰＵ１２、プロ
グラムメモリ１３、キャッシュメモリ１４、及びＨＤＤインタフェース部（ＨＤＤ Ｉ／
Ｆ）１５を有している。
【００１６】
ＨＯＳＴ Ｉ／Ｆ部１１は、外部接続されるホスト装置との間の通信を制御する。すな
わち、ＨＯＳＴ Ｉ／Ｆ部１１はデータ通信路３０側との通信を制御する。また、ＨＤＤ 
Ｉ／Ｆ部１５は記録装置２０側の通信を制御する。
【００１７】
ＣＰＵ１２は、プログラムメモリ１３に格納されている各種プログラムを実行すること
により、制御部１０における機能を実現する。なお、プログラムメモリ１３には、上述の
プログラムを格納するための領域に加えて、ＣＰＵ１２が利用するデータ等を格納するた
めの領域も確保されている。
【００１８】
キャッシュメモリ１４は、データ通信路３０を介して接続されるホスト装置または他の
データ記憶装置からディスクアレイ装置１００内の記録装置２０に対して発行される書き
込み／読み出し要求において、書き込みまたは読み出しされるデータを一時的に格納する
。
【００１９】
なお、ディスクアレイ装置１００において、外部の装置、例えばホスト装置からの入力
要求に対する書き込み処理は次のように行われる。まず、入力要求（以下書き込み要求と
いう）で指定された入力データ（以下、書き込みデータという）がキャッシュメモリ１４
にエントリされた時点で、要求元のホスト装置に対して書き込み処理完了が通知される。
その後に、キャッシュメモリ１４から記録装置２０に対する実際のデータ書き込みが実行
される。
【００２０】
また、ホスト装置からの読み出し要求に対する読み出し処理は次のように行われる。ま
ず、該当するデータがキャッシュメモリ１４にエントリされているか否かが判定され、エ
ントリされていれば、そのデータがキャッシュメモリ１４からデータ通信路３０を介して
ホスト装置に返される。これに対し、該当するデータがキャッシュメモリ１４にエントリ
されていないならば、そのデータが記録装置２０からキャッシュメモリ１４に読み出され
る。そして、読み出されたデータが要求元のホスト装置に対してデータ通信路３０を介し
て送信される。
【００２１】
図２に、本実施形態のディスクアレイ装置１００の機能ブロック図を示す。図２に示し
た機能は、例えば制御部１０のプログラムメモリ１３に格納されるプログラムをＣＰＵ１
２が読み取って実行することによって実現される。
【００２２】
図２に示すように、制御部１０は、ＨＯＳＴ Ｉ／Ｆ制御部１１１、キャッシュメモリ
管理部１１２、構成管理部１１３、論理／物理アドレス管理部１１４、ＲＡＩＤ制御部１
１５、及びＨＤＤ Ｉ／Ｆ制御部１１６を備え、記録装置２０によって実現される論理デ
ィスク２００と接続される。すなわち、論理ディスク２００はＨＤＤ２１（＃１）〜（＃
ｎ）及びＨＤＤ２２（＃１）〜（＃ｎ）によって構成される。
【００２３】
なお、本実施形態では論理ディスク２００は１つだが、複数の論理ディスク２００を構
成してもよい。
【００２４】
ＨＯＳＴ Ｉ／Ｆ制御部１１１は、ディスクアレイ装置１００とホスト装置との間のイ
ンタフェース処理を担当する。キャッシュメモリ管理部１１２は、ホスト装置からキャッ
シュメモリに対するアクセスを管理する。
【００２５】
構成管理部１１３は、論理ディスクとＲＡＩＤの構成のマッピングを管理する。例えば
、どのＨＤＤの組み合わせでＲＡＩＤが構成されているか、どの論理ディスクにどのＲＡ
ＩＤが所属しているかなどを管理する。また、構成管理部１１３は、物理アドレスと論理
アドレスを変換するマッピング情報を管理している。マッピング情報は例えばＨＤＤ２１
（１）にマッピング情報テーブル（図示しない）としてあらかじめ格納され、構成管理部
１１３よって更新される。
【００２６】
論理／物理アドレス管理部１１４は、論理／物理エクステント管理データ記憶部１２０
と接続されている。論理／物理アドレス管理部１１４は、構成管理部１１３の管理してい
るマッピング情報に基づいて、論理ディスク２００におけるアドレス（以下、論理アドレ
スという）とＲＡＩＤ１及び２におけるアドレス（以下、物理アドレスという）の変換を
行う。
【００２７】
なお、ＲＡＩＤのマッピング単位、すなわち、物理的なマッピング単位を物理エクステ
ントと呼ぶ。また、論理ディスクのマッピング単位、すなわち論理的なマッピング単位を
論理エクステントと呼ぶ。
【００２８】
すなわち、論理／物理アドレス管理部１１４は、ホスト装置からアクセスされる論理デ
ィスク２００と、ＨＤＤ２１（＃１）〜（＃ｎ）によって構成されるＲＡＩＤ１及びＨＤ
Ｄ２２（＃１）〜（＃ｎ）によって構成されるＲＡＩＤ２との対応関係をエクステント単
位で管理する論理／物理エクステント管理データを作成し、論理／物理エクステント管理
データ記憶部１２０に記憶する。
【００２９】
ＨＤＤ Ｉ／Ｆ制御部１１６は、論理ディスク２００に対するホスト装置からのアクセ
スを制御する。
【００３０】
ここで、図３を参照して、論理ディスク２００の概念について説明する。図３に示すよ
うに、本実施形態に係る論理ディスク２００は、ＨＤＤ２１（＃１）〜（＃ｎ）の記憶領
域を連続した１つの記憶領域として定義するＲＡＩＤ１、もしくは、ＨＤＤ２２（＃１）
〜（＃ｎ）の記憶領域を連続した１つの記憶領域として定義するＲＡＩＤ２の記憶領域を
一定サイズに分割した物理エクステント２０１と同一のサイズに分割された論理エクステ
ント２１１によって構成される。
【００３１】
物理エクステント２０１は、ホスト装置からの書き込み要求を論理ディスク２００が受
信した際に、論理／物理エクステント管理部１１４によって確保される。書き込み要求に
含まれる論理エクステント２１１と確保された物理エクステント２０１は対応付けられて
論理／物理エクステント管理記憶部１２０に記憶される。
【００３２】
図３に示すように、本実施形態では、ＲＡＩＤ１はｍ個の物理エクステント２０１（０
）〜物理エクステント２０１（ｍ−１）を含む。ＲＡＩＤ２はｋ個の物理エクステント２
０１（０）〜物理エクステント２０１（ｋ−１）を含む。論理ディスク２００は、ｈ個の
論理エクステント２１１（０）〜（ｈ−１）を含む。
【００３３】
論理／物理エクステント管理部１１４はＲＡＩＤ１の物理エクステント２０１（０）〜
（ｍ−１）及びＲＡＩＤ２の物理エクステント２０１（０）〜（ｋ−１）と論理エクステ
ント２１１（０）〜（ｈ−１）との対応関係を管理する。
【００３４】
すなわち、論理／物理エクステント管理部１１４は、当該対応関係を管理するための管
理データ（論理エクステント管理データ１３０及び物理エクステント管理データ１４０）
を作成し、論理／物理エクステント管理データ記憶部１２０に格納する。
【００３５】
図４と図５を参照して、論理／物理エクステント管理データ記憶部１２０に格納された
論理エクステント管理データ１３０の構造と、物理エクステント管理データ１４０の構造
について説明する。
【００３６】
図４に示すように、論理エクステント管理データ１３０は、論理ディスク番号１３１と
、論理エクステント番号１３２と、物理エクステントポインタ１３３とから構成されてい
る。論理エクステント番号１３２は論理エクステントの番号が格納される。物理エクステ
ントポインタ１３３は後述する物理エクステント管理データ１４０のアドレスが格納され
る。
【００３７】
図３に示した論理ディスク２００に含まれる論理エクステント２１１（０）は、ＲＡＩ
Ｄ１に含まれる物理エクステント２０１（１）に対応する。本実施形態では論理ディスク
は１つなので、論理ディスク番号１３１は「１」が格納される。論理エクステント番号１
３２は「０」、物理エクステントポインタ１３３は「１，１」が格納される。なお、物理
エクステントポインタ１３３の左はＲＡＩＤ番号が格納され、右には物理エクステント番
号が格納される。もしくは、物理エクステントポインタ１３３はＲＡＩＤ１の物理エクス
テント２０１（１）を示すアドレスが格納されても良い。
【００３８】
また、図３に示した論理ディスク２００に含まれる論理エクステント２１１（ｈ−３）
は、ＲＡＩＤ１の物理エクステント２０１（ｍ−１）と対応する。この場合、論理ディス
ク番号１３１は「１」、論理エクステント番号１３２は「ｈ−３」、物理エクステントポ
インタ１３３は「１，（ｍ−１）」が格納される。
【００３９】
また、図３に示した論理ディスク２００に含まれる論理エクステント２１１（ｈ−１）
は、ＲＡＩＤ２の物理エクステント２０１（ｋ−３）と対応する。この場合、論理ディス
ク番号１３１は「２」、論理エクステント番号１３２は「ｈ−１」、物理エクステントポ
インタ１３３は「２，（ｋ−３）」が格納される。
【００４０】
すなわち、物理エクステント２０１が論理エクステント２１１に割り当てられている場
合は、物理エクステントポインタ１３３に後述する物理エクステント管理データ１４０を
指すメモリアドレスが保持されている。物理エクステント２０１が論理エクステント２１
１に割り当てられていない場合は、物理エクステントポインタ１３３には「ＮＵＬＬ」が
保持されている。
【００４１】
論理／物理アドレス管理部１１４は、論理エクステント管理データ１３０の物理エクス
テントポインタ１３３に基づいて特定の論理エクステント２１１に対応する物理エクステ
ント管理データ１４０を取得する。
【００４２】
なお、論理ディスクに何も物理エクステントが割り当てられていない場合は、論理エク
ステント管理データ１３０に含まれる物理リストポインタ１３３は全て「ＮＵＬＬ」であ
る。ホスト装置からの書き込み要求を受信すると、構成管理部１１３は、論理エクステン
ト２１１に物理エクステント２０１の割り当てを行う。
【００４３】
続いて、図５を参照して物理エクステント管理データ１４０について説明する。図５に
示したように、物理エクステント管理データ１４０は、ＲＡＩＤ番号１４１、物理エクス
テント番号１４２、論理エクステントポインタ１４３、物理エクステント管理フラグ１４
４、及び書き込み／消去範囲管理データ１４５によって構成されている。
【００４４】
ＲＡＩＤ番号１４１は、記録装置２０を構成する各ＲＡＩＤの番号を示す。物理エクス
テント番号１４２は各ＲＡＩＤに含まれる物理エクステントの番号を示す。論理エクステ
ントポインタ１４４は、物理エクステント番号１４２が示す物理エクステントに割り当て
られている論理エクステントを示す。
【００４５】
ＲＡＩＤ番号１４１及び物理エクステント番号１４２に基づいて一意に特定される物理
エクステント２０１が、論理エクステントポインタ１４３に格納された論理エクステント
２１１に対応することを示す。論理エクステント２１１に物理エクステント２０１が割り
当てられていない場合、論理エクステントポインタ１４３は「ＮＵＬＬ」である。
【００４６】
すなわち、論理／物理アドレス管理部１１４は、物理エクステント管理データ１４０の
論理エクステントポインタ１４３に基づいて特定の物理エクステント２０１に対応する論
理エクステント２１１を取得する。
【００４７】
物理エクステント管理フラグ１４４は、後述する書き込み／消去範囲管理データ１４５
に含まれる書き込み／消去範囲配列１４６に格納すべきデータ数が、書き込み／消去範囲
管理データ１４５に含まれる書き込み／消去範囲配列１４６の個数を超えたかどうかを示
すフラグである。
【００４８】
書き込み／消去範囲管理データ１４５は、ｓ個の配列データである書き込み／消去範囲
配列１４６［０］〜［ｓ−１］によって構成されている。ｓは任意の自然数であり、あら
かじめ設定されている。
【００４９】
書き込み／消去範囲管理データ１４５は、ホスト装置からの書き込み要求の範囲もしく
は開放要求の範囲が、それぞれの要求毎に書き込み／消去範囲配列１４６［０］〜［ｓ−
１］のいずれか１つの配列に格納される。
【００５０】
本実施形態では、物理エクステント管理フラグ１４４が「１」の場合、書き込み／消去
範囲管理データ１４５に含まれる書き込み／消去範囲配列１４６がすべて使用中である（
データが格納されている）とする。物理エクステント管理フラグ１４４が「０」の場合、
書き込み／消去範囲管理データ１４５に使用中でない書き込み／消去範囲配列１４６が存
在するとする。
【００５１】
すなわち、論理／物理アドレス管理部１１４は、書き込み／消去範囲管理データ１４５
を用いてホスト装置からの書き込み要求の範囲もしくは開放要求の範囲を管理する。具体
的には、論理／物理アドレス管理部１１４は、ホスト装置から書き込み要求もしくは開放
要求を受信すると、書き込み／消去範囲管理データ１４５に含まれる書き込み／消去範囲
配列１４６［０］〜［ｓ−１］のうち、未使用の配列に受信した書き込み要求もしくは開
放要求の範囲を格納する。
【００５２】
図６を参照して書き込み／消去範囲管理データ１４５を構成する書き込み／消去範囲配
列１４６[０]〜[ｓ−１]のデータ構造について説明する。
【００５３】
図６に示すように、書き込み／消去範囲管理データ１４５を構成する書き込み／消去範
囲配列１４６には、書き込み／消去フラグ１４７、オフセット１４８、サイズ１４９が格
納される。
【００５４】
書き込み／消去フラグ１４７は、この書き込み／消去フラグ１４７が含まれる書き込み
／消去範囲配列１４６に格納されるホスト装置からの要求が書き込み要求であるか、開放
要求であるかを示す。例えば書き込み要求の場合、書き込み／消去範囲フラグ１４６には
「０」が格納される。開放要求の場合、書き込み／消去範囲フラグ１４６には「１」が格
納される。
【００５５】
オフセット１４８は、このオフセット１４８が含まれる書き込み／消去範囲配列１４６
を有する物理エクステント管理データ１４０の物理エクステント番号１４２によって特定
される物理エクステント２０１の先頭アドレスから、当該物理エクステント２０１におけ
る、このオフセット１４８が含まれる書き込み／消去範囲配列１４６に格納された書き込
み要求の範囲もしくは開放要求の範囲の先頭アドレスまでの距離を示す。すなわち、オフ
セット１４８はホスト装置からの書き込みもしくは消去されるデータの当該物理エクステ
ント２０１における開始位置のアドレスを示す。
【００５６】
サイズ１４９は、ホスト装置から書き込みもしくは消去されるデータのサイズを示す。
例えばディスクアレイ装置１００がホスト装置から書き込み要求を受信した場合、オフセ
ット１４８には物理エクステント番号１４２で示される物理エクステント２０１において
、書き込みを開始する位置のアドレスが格納され、サイズ１４９には、書き込まれるデー
タのサイズが格納される。
【００５７】
また、ディスクアレイ装置１００がホスト装置から開放要求を受信した場合、オフセッ
ト１４８には消去処理を開始する位置が格納され、サイズ１４９には、消去されるデータ
のサイズが格納される。
【００５８】
図７を参照して、ホスト装置から書き込み要求を受信した場合の本実施形態のディスク
アレイ装置１００の処理の動作について説明する。
【００５９】
ディスクアレイ装置１００のＨＯＳＴ Ｉ／Ｆ制御部１１１がホスト装置から書き込み
要求を受信すると、論理／物理アドレス管理部１１４は、論理／物理エクステント管理デ
ータ記憶部１２０から、この書き込み要求の範囲にあたる論理エクステント２１１の論理
エクステント管理データ１３０を抽出する（ステップＳ１０）。検索は、例えはハッシュ
やツリー等に基づいて行われる。
【００６０】
続いて、論理／物理アドレス管理部１１４は、ステップＳ１０で抽出された論理エクス
テント管理データ１３０に対応する物理エクステント管理データ１４０に含まれる物理エ
クステントポインタ１３３がＮＵＬＬかどうかを確認する（ステップＳ１１）。なお、物
理エクステントポインタ１３３がＮＵＬＬであるということは書き込み要求の対象の論理
エクステント２１１に物理エクステント２０１が未割り当てであるということである。
【００６１】
物理リストポインタ１３３がＮＵＬＬでない場合（ステップＳ１１がＹｅｓ）、すなわ
ち、既にホスト装置からの書き込み対象の論理エクステント２１１に物理エクステント２
０１が割り当て済みである場合は、論理／物理アドレス管理部１１４は、物理エクステン
ト管理フラグ１４４をチェックする（ステップＳ１２）。
【００６２】
物理エクステント管理フラグ１４４が「１」であれば（ステップＳ１２がＮｏ）、制御
部１０は、ホスト装置からの書き込み要求の範囲に基づいて記録装置２０に書き込み処理
をして（ステップＳ１５）終了する。
【００６３】
物理エクステント管理フラグ１４４が「０」である場合（ステップＳ１２がＹｅｓ）、
論理／物理アドレス管理部１１４は、論理／物理アドレス管理部１１４は、割り当てられ
た物理エクステント２０１の管理データ１４０に未使用の書き込み／消去範囲配列１４６
があるかを確認する（ステップＳ１３）。
【００６４】
書き込み／消去範囲配列１４６が全て使用中である場合（ステップＳ１３がＮｏ）、論
理／物理アドレス管理部１１４は、書き込み／消去範囲管理データ１４５に含まれる書き
込み／消去範囲配列１４６に記録されているデータ初期化し、論理エクステント管理デー
タ１４０の物理エクステント管理フラグ１４４を１にセットする（ステップＳ１４）。そ
の後、制御部１０はホスト装置から受信した書き込み要求に基づいて、記録装置２０に書
き込み処理を行い（ステップＳ１５）、処理を終了する。
【００６５】
未使用の書き込み／消去範囲配列１４６がある場合（ステップＳ１３がＹｅｓ）、論理
／物理アドレス管理部１１４は、当該未使用の書き込み／消去範囲配列１４６に、ホスト
装置からの書き込み要求の範囲を格納する（ステップＳ１６）。未使用の書き込み／消去
範囲配列１４６が複数ある場合は、例えば一番若い書き込み／消去範囲配列１４６に記録
する。
【００６６】
すなわち論理／物理アドレス管理部１１４は、書き込み／消去範囲配列１４６のオフセ
ット１４８に、ホスト装置からの書き込み要求先の論理エクステント２１１に割り当てら
れた物理エクステント２０１において、書き込みが行なわれる開始位置のアドレスを格納
する。サイズ１４９には、ホスト装置からの書き込み要求のデータサイズを格納する。
【００６７】
その後、論理／物理アドレス管理部１１４は、書き込み／消去範囲配列１４６の書き込
み／消去フラグ１４７を、当該書き込み／消去配列１４６に格納されたデータが書き込み
処理のデータであることを示す「０」にセットし（ステップＳ１７）、処理を終了する。
【００６８】
物理エクステントポインタ１３３がＮＵＬＬである場合（ステップＳ１１がＮｏ）、構
成管理部１１３は、フリーリスト（図示しない）等で管理された未使用物理エクステント
から１つの物理エクステントを確保する（ステップＳ１８）。構成管理部１１３は、ステ
ップＳ１２で確認した物理エクステントポインタ１３３に、ステップＳ１３で確保した物
理エクステントのアドレスをセットする（ステップＳ１９）。
【００６９】
その際、論理／物理アドレス管理部１１４は、論理エクステント管理データ１４０の物
理エクステント管理フラグ１４４を「０」にする（ステップＳ２０）。続いて、制御部１
０は、ホスト装置から受信した書き込み要求に基づいて、記録装置２０に書き込み処理を
行う（ステップＳ２１）。ステップＳ２１における書き込み処理はステップＳ１５と同様
の処理である。
【００７０】
その後、論理／物理アドレス管理部１１４は、ステップＳ１６及びステップＳ１７の処
理に進み、処理を終了する。
【００７１】
次に、図８を参照して、ホスト装置からデータの開放要求を受信した場合の本実施形態
のディスクアレイ装置１００の動作について説明する。なお、本実施形態のデータの開放
要求は例えばＵＮＭＡＰコマンドによって行なわれる。
【００７２】
ホスト装置からＵＮＭＡＰコマンドを受信した論理／物理アドレス管理部１１４は、ＵＮ
ＭＡＰ範囲の論理エクステント管理データ１３０を取得する（ステップＳ３０）。
【００７３】
論理／物理アドレス管理部１１４は、取得した論理エクステント管理データ１３０に対応
する物理エクステント管理データ１４０に含まれる物理エクステント管理フラグ１４４が
０か否かをチェックする（ステップＳ３１）。
【００７４】
物理エクステント管理フラグ１４４が「１」である場合（ステップＳ３１がＮｏ）、すな
わち、書き込み／消去範囲管理データ１４５に含まれる書き込み／消去範囲配列１４６が
すべて使用中である場合、論理／物理アドレス管理部１１４は、ＵＮＭＡＰ要求先の論理
エクステント２１１に割り当てられた物理エクステント２１１におけるＵＮＭＡＰ範囲に
ゼロライト処理を行う（ステップＳ３９）。ゼロライト処理とは、ホスト装置から受信し
たＵＮＭＡＰ要求先の論理エクステント２１１に割り当てられた物理エクステント２１１
におけるＵＮＭＡＰ範囲すべてに「０」をライトする処理であり、既知技術のため詳細は
割愛する。
【００７５】
物理エクステント管理フラグ１４４が「０」である場合（ステップＳ３１がＹｅｓ）、論
理／物理アドレス管理部１１４は、ステップＳ３０で取得した論理エクステント管理デー
タ１３０に対応する物理エクステント管理データ１４０に未使用の書き込み／消去範囲配
列１４６があるかどうかを確認する（ステップＳ３２）。
【００７６】
未使用の書き込み／消去範囲配列１４６がある場合（ステップＳ３２がＹｅｓ）、論理／
物理アドレス管理部１１４は、当該書き込み／消去範囲配列１４６に、ステップＳ３０で
取得した論理エクステント管理データ１３０に対応する物理エクステント管理データ１４
０の物理エクステント番号１３３が示す物理エクステント２０１におけるＵＮＭＡＰ範囲
を格納する（ステップＳ３３）。このとき、論理／物理アドレス管理部１１４は、該当す
る書き込み／消去範囲配列１４６の書き込み／消去フラグ１４７を「１」にする（ステッ
プＳ３４）。
【００７７】
ステップＳ３３においてＵＮＭＡＰ範囲を記録後、もしくは、未使用の書き込み／消去範
囲配列１４６がない場合（ステップＳ３２がＮｏ）、論理／物理アドレス管理部１１４は
、ステップＳ３０で受信したＵＮＭＡＰコマンドによって物理エクステント２０１が開放
可能となったかを確認する（ステップＳ３５）。
【００７８】
物理エクステント２０１が開放可能となったかを確認する方法の概念図を図９に示す。図
９に示すように論理／物理アドレス管理部１１４は、例えば物理エクステントのセクタ数
分のビット数をもつビットマップを作成し、このビットマップをすべて１に初期化する。
【００７９】
論理／物理アドレス管理部１１４は、書き込み／消去範囲管理データ１４５の書き込み／
消去範囲配列１４６を昇順に確認し、書き込み／消去フラグ１４７が０である場合、すな
わち対象の書き込み／消去範囲に格納された処理が書き込み処理である場合、対応するビ
ットを０に変更する。
【００８０】
書き込み／消去フラグ１４７が１であれば対応するビットは１にする。最後の配列まで確
認を行い、その結果のビットマップがＡＬＬ１になった場合は物理エクステントを開放可
能であると判定する。
【００８１】
例えば、図９に示すような書き込み／消去範囲配列１４６［０］〜［２］が書き込み／消
去範囲管理データ１４５に存在するとする。上述のように書き込み／消去範囲配列１４６
［０］から順に書き込み／消去フラグ１４７、オフセット１４８、サイズ１４９に基づい
てビットマップを変更すると、書き込み／消去範囲配列１４６［２］を確認し終えた後の
ビットマップには「０」が存在している。このため、図９に示した配列の場合物理エクス
テントは開放可能ではない。
【００８２】
図８の説明に戻る。確認の結果、物理エクステント２０１が開放可能と判定された場合（
ステップＳ３６がＹｅｓ）、論理／物理アドレス管理部１１４は、物理エクステント２０
１を開放する（ステップＳ３７）。
【００８３】
物理エクステント２０１の開放は、物理／論理アドレス管理部１１４が、論理エクステン
ト管理データ１３０内の物理リストポインタをＮＵＬＬにし、開放した物理エクステント
２０１の物理エクステント管理データ１４０をフリーリスト等で実装された、未割り当て
物理エクステント管理方法によるフリー状態に戻すことによって行なわれる。このとき物
理／論理アドレス管理部１１４は、構成管理部１１３に物理エクステントの開放要求を送
信する。構成管理部１１３は受信した開放要求に基づいて、当該物理エクステント２０１
を開放する。すなわち、構成管理部１１３は開放要求に基づいて、当該物理エクステント
２０１が開放された構成をマッピング情報テーブルに保存する。すなわち、当該物理エク
ステント２０１が未使用であることをマッピングする。
【００８４】
物理エクステントが開放可能でない場合（ステップＳ３６がＮｏ）、論理／物理アドレ
ス管理部１１４は、物理エクステント管理フラグ１４４に「１」をセットする（ステップ
Ｓ３８）。その後、論理／物理アドレス管理部１１４はゼロライト処理を行う（ステップ
Ｓ３９）。ゼロライト処理は、書き込み／消去範囲管理データ１４５の配列［０］から[
ｓ−１]を昇順でチェックし、時系列で後のライトによって上書きされた箇所以外の消去
範囲をゼロライトする処理である。このゼロライト処理は、ステップＳ３５におけるエク
ステント開放チェックと同様に物理エクステントのセクタ数分のビットマップを作成し、
初期値をすべて０のビットパターンにして、１が残っている範囲をゼロライトするなどの
方法で実現する。
【００８５】
以上、説明したように、本実施形態のディスクアレイ装置１００は、ホスト装置から書
き込み要求もしくは開放要求を受信した場合、当該書き込み要求もしくは開放要求先の論
理エクステント２１１に割り当てられた物理エクステント２０１の管理データ１４０内に
未使用の書き込み／消去範囲配列１４６があれば、当該書き込み／消去範囲配列１４６に
受信した書き込み要求の範囲もしくは消去要求の範囲を格納する。
【００８６】
また、本実施形態のディスクアレイ装置１００は、ホスト装置から開放要求を受信した
場合、開放要求先の論理エクステント２１１に割り当てられた物理エクステント２０１が
開放可能か否かを判定する。
【００８７】
判定の結果、開放可能であれば、構成管理部１１３が、当該開放要求先の論理エクステ
ント２１１に割り当てられた物理エクステント２０１を開放する。
【００８８】
すなわち、本実施形態では、物理エクステント２０１は、物理エクステント２０１ごと
にあらかじめ設定された所定の数であるｓ回目までの書き込み要求もしくは開放要求を受
信するまで、受信した書き込み要求もしくは開放要求の範囲を当該物理エクステントの管
理データを用いて管理する。これにより、本実施形態のディスクアレイ装置１００は、ｓ
回目までの書き込み要求もしくは開放要求までは、開放要求に同期して物理エクステント
の開放を可能とする。このため、本実施形態のディスクアレイ装置１００は、容量効率を
向上することが可能となる。
【００８９】
（第２の実施形態）
本発明の第２の実施形態について図面を参照して説明する。なお、第１の実施形態と同
一の構成には同一の符号を付与する。
【００９０】
本実施形態のディスクアレイ装置１００は、第１の実施形態と機能構成は同一である。
本実施形態のディスクアレイ装置１００は、フリーリストを用いた管理方式によって、書
き込み要求の範囲および開放要求の範囲を管理する。すなわち、本実施形態の論理／物理
アドレス管理部１１４は、フリーリストの管理方式を用いて論理エクステント２１１及び
物理エクステント２０１の確保や開放を行なう。すなわち、論理／物理アドレス管理部１
１４はアロケータの機能を有する。
【００９１】
したがって、論理／物理エクステント管理データ記憶部１２０に格納される物理エクス
テント管理データの構造が第１の実施形態と異なる。
【００９２】
図１０に、第２の実施形態における物理エクステント管理データ２４０の構造を示す。
【００９３】
図１０に示したように、物理エクステント管理データ２４０の構造は、ＲＡＩＤ番号１
４１、物理エクステント番号１４２、論理エクステントポインタ１４３、物理エクステン
ト管理フラグ１４４、書き込み／消去範囲リストポインタ２４５を含む構造である。
【００９４】
ＲＡＩＤ番号１４１、物理エクステント番号１４２、論理エクステントポインタ１４３
、物理エクステント管理フラグ１４４は、実施例１と同様であるため、説明は省略する。
【００９５】
書き込み／消去範囲リストポインタ２４５は、ホスト装置からの書き込み要求もしくは
開放要求によって示される論理エクステント２１１に割り当てられた物理エクステント２
０１において、書き込み範囲もしくは消去範囲を管理するための書き込み／消去範囲リス
ト２４６示すポインタである。書き込み／消去範囲リスト２４６のデータ構造を図１１に
示す。
【００９６】
図１１に示すように書き込み／消去範囲リスト２４６は、ネクストポインタ２４７、オ
フセット１４８、サイズ１４９を含むデータ構造である。オフセット１４８とサイズ１４
９については実施例１と同様であるため、説明は省略する。ネクストポインタ２４７は、
次の書き込み／消去範囲リスト２４６を示す。
【００９７】
なお、本実施形態で管理する書き込み／消去範囲リスト２４６の個数は、論理ディスク
２００ごとにあらかじめ設定されているとする。ここでは、書き込み／消去範囲リストの
個数をｔ個とする。
【００９８】
図１２に書き込み／消去範囲リスト２４６のうち、未使用のものを管理するフリーリス
ト２５１を示す。
【００９９】
図１２に示すように、フリーリスト２５１には、書き込み要求もしくは開放要求の範囲
が格納されていない、すなわち未使用の書き込み／消去範囲リスト２４６がリストヘッド
２５０を先頭にポインタで格納されている。
【０１００】
論理／物理アドレス管理部１１４は、ホスト装置からの書き込み要求もしくは開放要求
を受信すると、フリーリスト２５１のリストヘッド２５０のポインタの指す先頭の書き込
み／消去範囲リスト２４６を確保する。そして、論理／物理アドレス管理部１１４は確保
した書き込み／消去範囲リスト２４６をフリーリストから外し、そのネクストポインタ２
４７に基づいてリストヘッド２５０を更新する。確保した書き込み／消去範囲リスト２４
６は、物理エクステント管理データ２４０の書き込み／消去範囲リストポインタを先頭と
するリストの最後尾に繋げる。
【０１０１】
フリーリスト２５１に格納された最後の書き込み／消去範囲リスト２４６のネクストポ
インタ２４７にはＮＵＬＬが格納されている。すなわち、論理／物理アドレス管理部１１
４は、フリーリスト２５１のリストヘッド２５０に格納されたネクストポインタ２４７が
ＮＵＬＬである場合に、これ以上未使用の書き込み／消去範囲リスト２４６は無いと判定
する。
【０１０２】
ここで、図１３を参照して、第２の実施形態のディスクアレイ装置１００がホスト装置
から書き込み要求を受信した際の処理について説明する。
【０１０３】
なお、図１３に示した処理のうち、図７に示した処理と同様であるステップには同一の
番号を振っており、説明は省略する。そのため、図１３のステップＳ１１３とステップＳ
１１６の処理について説明する。
【０１０４】
論理／物理アドレス管理部１１４は、書き込み／消去範囲のフリーリスト２５１に基づい
て、未使用の書き込み／消去範囲リスト２４６があるかを判定する（ステップＳ１１３）
。
【０１０５】
未使用の書き込み／消去範囲リスト２４６がある場合（ステップＳ１１３がＹｅｓ）、論
理／物理アドレス管理部１１４は、未使用の書き込み／消去範囲リストをフリーリストか
ら外し、物理エクステント管理データ２４０のリストに繋げる。ホスト装置から受信した
書き込み要求の範囲を当該書き込み／消去範囲リスト２４６に格納し（ステップＳ１１６
）、書き込み処理を終了する。
【０１０６】
続いて、図１４を参照して、ホスト装置から開放要求を受信した際のディスクアレイ装置
１００の動作について説明する。図１３と同様に、図１４についてもステップＳ１３２と
ステップＳ１３３の処理について説明する。
【０１０７】
論理／物理アドレス管理部１１４は、フリーリスト２５１に基づいて、未使用の書き込み
／消去範囲リスト２４６があるか否かを判定する（ステップＳ１３２）。未使用の書き込
み／消去範囲リスト２４６がある場合（ステップＳ１３２がＹｅｓ）、論理／物理アドレ
ス管理部１１４は、ホスト装置から受信した開放要求先の論理エクステント２１１に割り
当てられた物理エクステント２０１におけるＵＮＭＡＰ範囲を、フリーリストから獲得し
物理エクステント管理データ２４０に繋げた書き込み／消去範囲リスト２４６に格納する
（ステップＳ１３３）。
【０１０８】
続いて、論理／物理アドレス管理部１１４は、エクステント開放チェックを行う（ステッ
プＳ３５）。ステップＳ３５以降の処理は図８のステップＳ３５以降の処理と同一である
ため、説明を省略する。
【０１０９】
なお、未使用の書き込み／消去範囲リスト２４６がない場合も（ステップＳ１３２がＮｏ
）、論理／物理アドレス管理部１１４は、エクステント開放チェックを行う（ステップＳ
３５）。
【０１１０】
なお、物理エクステント２０１あたりの書き込み／消去範囲リスト２４６のアロケートは
無制限に出来るとしても良いが、多数のライトが要求された場合に、少数の物理エクステ
ントで論理ディスク２００あたりに設定されたｔ個の書き込み／消去範囲リスト２４６を
使い切る可能性がある。そのため、１つ物理エクステント毎にアロケート可能な書き込み
／消去範囲リスト２４６の個数に上限値を設けても良い。
【０１１１】
上述のように、本実施形態では、開放要求に同期して物理エクステント２１１を開放す
ることが可能となる。また、本実施形態では、フリーリスト方式でホスト装置からの書き
込要求の範囲及び開放要求の範囲を記録し、管理することによって、論理ディスク毎に所
定の回数の書き込み要求と開放要求を管理することが可能となる。このため、ホスト装置
の書き込み要求や開放要求が局所的であっても書き込み／消去範囲リストを管理すること
ができる。これにより記憶領域の使用効率が高いディスクアレイ装置を提供することが可
能である。
【０１１２】
以上、本発明の実施形態を説明したが、これら実施形態はあくまでも例として提示した
ものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、そ
の他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々
の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲
や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれ
る。
【符号の説明】
【０１１３】
１０…制御部、１１、ＨＯＳＴ Ｉ／Ｆ部、１２…ＣＰＵ、１３…プログラムメモリ、１
４…キャッシュメモリ、１５…ＨＤＤ Ｉ／Ｆ部、２０…記録装置、２１、２２…ＨＤＤ
、３０…接続路、１００…ディスクアレイ装置
【図１】
2013073409.tif 000003
【図２】
2013073409.tif 000004
【図３】
2013073409.tif 000005
【図４】
2013073409.tif 000006
【図５】
2013073409.tif 000007
【図６】
2013073409.tif 000008
【図７】
2013073409.tif 000009
【図８】
2013073409.tif 000010
【図９】
2013073409.tif 000011
【図１０】
2013073409.tif 000012
【図１１】
2013073409.tif 000013
【図１２】
2013073409.tif 000014
【図１３】
2013073409.tif 000015
【図１４】
2013073409.tif 000016