(57)【要約】【課題】未使用セクタ各々の管理情報を必要とせずに、論理ディスク上で未使用となっている物理エクステントを他の用途で再度利用できるストレージ装置を提供すること。【解決手段】物理エクステント確保部１５は、ホスト計算機３０からアクセスされる論理ディスク上での物理エクステントとの対応関係を管理する。データパターン生成応答部１６は、所定のデータパターンを生成し、ホスト計算機３０からのリード要求に対してこのデータパターンを応答する。パターンマッチング部１８は、記憶媒体へのアクセスの都度又は定期的に記憶領域のデータパターンをチェックし、確保された物理エクステント全体が所定のデータパターンとなっている場合には、確保された物理エクステントの論理ディスク割り当てを削除する。【選択図】      図１
2008217689.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上の記憶媒体を組み合わせ、前記記憶媒体の記憶領域を、連続した１つの領域として定義するアレイを構成し、前記アレイの全領域を、複数の物理エクステントに分割し、前記物理エクステントを１つ以上組み合わせることによって、ホスト計算機から認識される論理ディスクを構成し割り当てるストレージ装置であって、
前記ホスト計算機からアクセスされる論理ディスク上での前記物理エクステントとの対応関係を管理し、前記ホスト計算機からライトアクセスを受信する都度、前記論理ディスク上で前記物理エクステントに対応付けられた領域である論理エクステントのうち、該当する論理エクステントに対応する物理エクステントを確保する手段と、
所定のデータパターンを生成し、前記ホスト計算機からのリード要求に対して前記所定のデータパターンをリードデータとして応答する手段と、
前記記憶媒体へのアクセスの都度もしくは定期的に、前記記憶領域のデータパターンをチェックすることによって、前記確保された物理エクステント全体が前記所定のデータパターンとなっているか否かを検出し、前記確保された物理エクステントの全体が前記所定のデータパターンとなっていることを検出した場合には、前記確保された物理エクステントの論理ディスク割り当てを削除する手段と、
前記ホスト計算機が、前記論理ディスク上に作成されたファイルのデータを削除する要求を行う場合、削除対象であるデータが存在していた記憶領域に前記所定のデータパターンを書き込むことによって、前記確保された物理エクステントの前記全体が所定のデータパターンとなっていることを検出し、前記確保された物理エクステントを解放するとともに、前記ホスト計算機より、前記解放された物理エクステントへのリード要求がなされた場合、前記所定のデータパターンを応答する手段と
を備えたストレージ装置。
【請求項２】
請求項１のストレージ装置において、
前記物理エクステントと論理ディスクとの初期対応付けを行う手段であって、前記対応付けを行う場合、前記物理エクステントの全体を、前記所定のデータパターンで初期化する手段を更に備えたストレージ装置。
【請求項３】
請求項１又は請求項２に記載のストレージ装置において、
前記削除する手段は、前記チェックを行う場合、前記アレイのＲＡＩＤ冗長データ整合性確認及びディスクメディアアクセス可否チェックのうちの少なくとも何れかを含むパトロールを目的としたディスクドライブアクセスと同時に行うストレージ装置。
【請求項４】
請求項１乃至３のうち何れか１項のストレージ装置において、
前記削除する手段は、前記記憶領域のデータパターンをチェックする場合、前記物理エクステントの先頭セクタから順にチェックを行っていき、前記所定のデータパターンが連続している最後のセクタのアドレスである未使用最終アドレスを保持し、前記チェックが完了済みのセクタにライトアクセスがあった場合には、前記ライトアクセスがあったセクタの直前のセクタのアドレスを前記未使用最終アドレスとし、前記未使用最終アドレスが物理エクステントの最終アドレスと一致した場合に、該物理エクステントの全体が未使用であると判定し、該物理エクステントの論理ディスク割り当てを削除するストレージ装置。
【請求項５】
請求項４のストレージ装置において、
前記ホスト計算機からライト要求のあったデータを、前記記憶媒体にライトする前に一旦格納するバッファメモリと、
前記記憶媒体と前記バッファメモリとを接続するデータバスとを備え、
前記削除する手段は、前記記憶領域のデータパターンをチェックする場合、前記記憶媒体と前記バッファメモリとの間でダイレクトメモリアクセスを行う際に、前記データバス上で前記記憶領域のデータパターンをチェックし、前記所定のデータパターンのセクタを検出した場合には、前記セクタのアドレスが前記未使用最終アドレスのアドレスが増加する方向に隣接するアドレスを含んでいる場合に、前記隣接するアドレスを含む、前記所定のデータパターンでのアクセスの最終アドレスを新たな前記未使用最終アドレスとするストレージ装置。
【請求項６】
請求項５のストレージ装置において、
前記削除する手段は、前記データバス上でのデータパターンのチェックを、前記セクタの全体ではなく、予め定めた１又は複数のセクタにおける所定領域内の所定サイズのデータのみについて行い、該データが前記所定のデータパターンと一致した場合に、前記セクタの全体に渡ってデータパターンのチェックを行うストレージ装置。
【請求項７】
請求項１乃至６のうち何れか１項に記載のストレージ装置において、
前記ホスト計算機より、前記物理エクステントが対応付けられていない論理エクステントに対するリードアクセスを受信した場合、前記所定のデータパターンをリードデータとして前記ホスト計算機へ転送する手段を備えたストレージ装置。
【請求項８】
前記所定のデータパターンは複数存在し、
前記削除する手段は、前記確保された物理エクステントの全体が、複数の所定のデータパターンのうちの何れかのデータパターンとなっているか否かを検出し、前記確保された物理エクステントの全体が前記複数の所定のデータパターンのうちの何れかのデータパターンとなっていることを検出した場合には、前記確保された物理エクステントの論理ディスク割り当てを削除し、
前記ストレージ装置は更に、
前記論理エクステントに対する所定のデータパターン種別を保持し、前記ホスト計算機からリード要求があった場合には、対応する論理エクステントについて保持されているデータパターン種別に対応するデータパターンを前記ホスト計算機に応答する手段を備えた請求項１乃至７のうち何れか１項に記載のストレージ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばＨＤＤのような記憶媒体を複数備えたストレージ装置に関し、特に、論理ディスクを仮想的に構築し、実使用量に合わせて物理領域を確保する未使用物理領域自律管理機能を持つストレージ装置に関する。
【背景技術】
【０００２】
従来、例えばＨＤＤのような記憶媒体を複数備え、アレイを構成しているストレージ装置では、該ストレージ装置を使用するホスト装置が、アレイを管理するサブシステムに対してアクセスを行う論理ボリュームと、その論理ボリュームを構成する１つ以上の記憶媒体から構成されるアレイとの対応関係は固定的であって、システムによっては、実際に論理ボリュームとして使用されていない領域の割合が高くなり、無駄が大きい。
【０００３】
そこで、最近、物理領域をエクステントという一定サイズに区切って管理し、論理ボリュームへのライトアクセスが発生したエクステントを実際に確保する、仮想論理ディスク方式が開発された（非特許文献１）。
【非特許文献１】http://www.3par.com/products/thinprovisioning.html（米国3PARData社ストレージ製品）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、このような仮想論理ディスク方式では、以下のような問題がある。
【０００５】
つまり、この種のストレージ装置では、一度使用され、ファイルの削除やパーティションの削除によって再度未使用となったストレージ領域を解放できれば、より効率的に物理記憶領域を使用することができる。
【０００６】
しかしながら、このような仮想論理ディスク方式では、ホスト装置のファイルシステムにて未使用となった領域を明示的にストレージ装置へ伝達する標準的な仕組みは無い。このため、未使用となったセクタをホスト装置からストレージ装置へ伝達し、ストレージ装置側で未使用セクタの管理情報を管理することは、管理情報サイズが膨大となり、また、ディスクアクセスの都度、管理情報をチェックすることにより、性能が劣化する恐れがあるという問題がある（問題点１）。
【０００７】
また、使用中の論理ディスクのうち、未使用となった領域や未書き込みの領域については、ストレージ装置へファイルシステムよりも下位のレイヤから物理ディスクとしてリード要求を行うことによって、該当物理領域のデータを読むことができる。このため、複数ユーザで同一論理ディスクにアクセス可能な場合や、以前に異なるユーザが使用した物理エクステントを異なるユーザが使用する論理ディスクへ割り当てた場合、削除済みセクタ領域や未使用セクタ領域のデータがストレージから読み取られてしまうので、悪意のあるユーザ等に対する情報漏洩のリスクがあるという問題がある（問題点２）。
【０００８】
本発明はこのような事情に鑑みてなされたものであり、その第１の目的は、上記問題点１を解決するために、未使用セクタ各々の管理情報を必要とせずに、論理ディスク上で未使用となっている物理エクステントを他の用途で再度利用できるストレージ装置を提供することにある。
【０００９】
また、その第２の目的は、上記問題点２を解決するために、削除済みファイルの存在していた物理領域又は論理ディスク上に物理エクステントを割り当てた後、一度もライトアクセスを行っていない物理領域の古いデータを、ホスト装置から読み取られることがないようにするストレージ装置を提供することにある。
【課題を解決するための手段】
【００１０】
上記の目的を達成するために、本発明では、以下のような手段を講じる。
【００１１】
すなわち、請求項１は、１つ以上の記憶媒体を組み合わせ、記憶媒体の記憶領域を、連続した１つの領域として定義するアレイを構成し、アレイの全領域を、複数の物理エクステントに分割し、物理エクステントを１つ以上組み合わせることによって、ホスト計算機から認識される論理ディスクを構成し割り当てるストレージ装置に関する発明である。このストレージ装置は、ホスト計算機からアクセスされる論理ディスク上での物理エクステントとの対応関係を管理し、ホスト計算機からライトアクセスを受信する都度、論理ディスク上で物理エクステントに対応付けられた領域である論理エクステントのうち、該当する論理エクステントに対応する物理エクステントを確保する手段を備える。また、所定のデータパターンを生成し、ホスト計算機からのリード要求に対して所定のデータパターンをリードデータとして応答する手段を備える。更にまた、記憶媒体へのアクセスの都度もしくは定期的に、記憶領域のデータパターンをチェックすることによって、確保された物理エクステント全体が所定のデータパターンとなっているか否かを検出し、確保された物理エクステントの全体が所定のデータパターンとなっていることを検出した場合には、確保された物理エクステントの論理ディスク割り当てを削除する手段を備える。更に、ホスト計算機が、論理ディスク上に作成されたファイルのデータを削除する要求を行う場合、削除対象であるデータが存在していた記憶領域に所定のデータパターンを書き込むことによって、確保された物理エクステントの全体が所定のデータパターンとなっていることを検出し、確保された物理エクステントを解放するとともに、ホスト計算機より、解放された物理エクステントへのリード要求がなされた場合、所定のデータパターンを応答する手段を備える。
【００１２】
請求項２の発明は、請求項１のストレージ装置において、物理エクステントと論理ディスクとの初期対応付けを行う手段であって、対応付けを行う場合、物理エクステントの全体を、所定のデータパターンで初期化する手段を更に備える。
【００１３】
請求項３の発明は、請求項１又は請求項２の発明のストレージ装置において、前記削除する手段は、チェックを行う場合、アレイのＲＡＩＤ冗長データ整合性確認及びディスクメディアアクセス可否チェックのうちの少なくとも何れかを含むパトロールを目的としたディスクドライブアクセスと同時に行う。
【００１４】
請求項４の発明は、請求項１乃至３のうち何れか１項のストレージ装置において、前記削除する手段は、記憶領域のデータパターンをチェックする場合、物理エクステントの先頭セクタから順にチェックを行っていき、所定のデータパターンが連続している最後のセクタのアドレスである未使用最終アドレスを保持し、チェックが完了済みのセクタにライトアクセスがあった場合には、ライトアクセスがあったセクタの直前のセクタのアドレスを未使用最終アドレスとし、未使用最終アドレスが物理エクステントの最終アドレスと一致した場合に、該物理エクステントの全体が未使用であると判定し、該物理エクステントの論理ディスク割り当てを削除する。
【００１５】
請求項５の発明は、請求項４のストレージ装置において、ホスト計算機からライト要求のあったデータを、記憶媒体にライトする前に一旦格納するバッファメモリと、記憶媒体とバッファメモリとを接続するデータバスとを備える。そして、前記削除する手段は、記憶領域のデータパターンをチェックする場合、記憶媒体とバッファメモリとの間でダイレクトメモリアクセスを行う際に、データバス上で記憶領域のデータパターンをチェックし、所定のデータパターンのセクタを検出した場合には、セクタのアドレスが未使用最終アドレスのアドレスが増加する方向に隣接するアドレスを含んでいる場合に、隣接するアドレスを含む、所定のデータパターンでのアクセスの最終アドレスを新たな未使用最終アドレスとする。
【００１６】
請求項６の発明は、請求項５のストレージ装置において、前記削除する手段は、データバス上でのデータパターンのチェックを、セクタの全体ではなく、予め定めた１又は複数のセクタにおける所定領域内の所定サイズのデータのみについて行い、該データが所定のデータパターンと一致した場合に、セクタの全体に渡ってデータパターンのチェックを行う。
【００１７】
請求項７の発明は、請求項１乃至６のうち何れか１項の発明のストレージ装置において、ホスト計算機より、物理エクステントが対応付けられていない論理エクステントに対するリードアクセスを受信した場合、所定のデータパターンをリードデータとしてホスト計算機へ転送する手段を備える。
【００１８】
請求項８の発明は、請求項１乃至７のうち何れか１項の発明のストレージ装置において、所定のデータパターンは複数存在する。そして、前記削除する手段は、確保された物理エクステントの全体が、複数の所定のデータパターンのうちの何れかのデータパターンとなっているか否かを検出し、確保された物理エクステントの全体が複数の所定のデータパターンのうちの何れかのデータパターンとなっていることを検出した場合には、確保された物理エクステントの論理ディスク割り当てを削除する。このストレージ装置は更に、論理エクステントに対する所定のデータパターン種別を保持し、ホスト計算機からリード要求があった場合には、対応する論理エクステントについて保持されているデータパターン種別に対応するデータパターンをホスト計算機に応答する手段を備える。
【発明の効果】
【００１９】
本発明のストレージ装置によれば、削除済みセクタ領域に対して所定のデータパターンを書き込み、この所定のデータパターンの検出をセクタ単位で行うことによって、自律的に未使用物理領域を把握することができる。以上により、未使用セクタ各々の管理情報を必要とせずに、論理ディスク上で未使用となっている物理エクステントを他の用途で再度利用することが可能となり、問題点１を解決することができる。
【００２０】
また、本発明のストレージ装置によれば、ホスト装置から読み取られなくなるので問題点２を解決することができる。
【発明を実施するための最良の形態】
【００２１】
以下に、本発明を実施するための最良の形態について図面を参照しながら説明する。
【００２２】
（第１の実施の形態）
図１は、本発明の第１の実施の形態に係るストレージ装置１０の構成例を示すブロック図である。
【００２３】
図２は、論理ディスクの構成を説明するための概念図である。
【００２４】
すなわち、本実施の形態に係るストレージ装置１０は、１つ以上の記憶媒体（以下の記載では、限定される訳ではないが、ＨＤＤ２５（＃１〜＃ｎ）を用いて説明する。）を組み合わせ、各ＨＤＤ２５（＃１〜＃ｎ）の記憶領域を連続した１つの領域として定義するアレイ１００を構成し、アレイ１００の全領域を、複数の物理エクステント１０１（Ａ），１０１（Ｂ），・・・に分割し、物理エクステント１０１を１つ以上組み合わせることによって、ホスト計算機３０から認識される論理ディスク１０２を構成し割り当てる。
【００２５】
このようなストレージ装置１０は、上述したアレイ１００と、アレイ１００を管理するストレージコントローラ１１とを備えている。ストレージコントローラ１１は更に、ホストインタフェース１２、バッファメモリ１３、キャッシュ管理部１４、物理エクステント確保部１５、データパターン生成応答部１６、パターンマッチング部１８、物理エクステント解放部１９、初期化部２０、及びディスクインタフェース２３を備えている。これら各部位１３〜２０，２３は、データバス２４によって相互に接続されている。
【００２６】
ホストインタフェース１２は、ホスト計算機３０とストレージ装置１０とのデータの授受を司る部位であり、ホスト計算機３０からのライトアクセスやリードアクセス等のデータを受け取り、受け取ったデータをデータバス２４を介して各部位１３〜２０に転送する。また、各部位１３〜２０からホスト計算機３０に対してなされるデータを受け取り、受け取ったデータをホスト計算機３０に返す。ただし、バッファメモリ１３とのデータの授受は、キャッシュ管理部１４を経由してなされる。
【００２７】
ディスクインタフェース２３は、アレイ１００内のＨＤＤ２５とのリードライトのためのデータの授受を司る部位であり、各部位１３〜２０からのデータをアレイ１００に送るとともに、アレイ１００から取得したデータを各部位１３〜２０に送る。ただし、バッファメモリ１３とのデータの授受は、キャッシュ管理部１４を経由してなされる。
【００２８】
物理エクステント確保部１５は、ホスト計算機３０からアクセスされる論理ディスク１０２上での物理エクステント１０１との対応関係を管理し、ホスト計算機３０からライトアクセスを受信する都度、論理ディスク１０２上で物理エクステント１０１に対応付けられた領域である論理エクステント１０３のうち、該当する論理エクステント１０３に対応する物理エクステント１０１の対応関係を確保する。このような機能は、仮想論理ボリューム機能とも称される。例えば、図２は、論理エクステント１０３（Ａ）と物理エクステント１０１（Ａ）、及び論理エクステント１０３（Ｂ）と物理エクステント１０１（Ｂ）とがそれぞれ対応関係を有することを示している。物理エクステント確保部１５は、このような対応関係を管理し、確保する。
【００２９】
データパターン生成応答部１６は、例えば全てゼロのような所定のデータパターンを生成し、物理エクステント未割り当ての論理エクステントに対してホスト計算機３０からのリード要求があった場合には、この所定のデータパターンをリードデータとして、ホストインタフェース１２を介してホスト計算機３０に応答する。
【００３０】
パターンマッチング部１８は、ディスクインタフェース２３を介してなされるＨＤＤ２５へのアクセスの都度もしくは定期的に、記憶領域のデータパターンをチェックすることによって、物理エクステント確保部１５によって確保された物理エクステント１０１全体が所定のデータパターンとなっているか否かを検出し、確保された物理エクステント１０１の全体が所定のデータパターンとなっていることを検出した場合には、確保された物理エクステント１０１の論理ディスク１０２の割り当てを、図３の物理エクステント１０１（Ｂ）と論理エクステント１０３（Ｂ）とのように削除する。このような記憶領域のデータパターンのチェックは、アレイ１００のＲＡＩＤ冗長データ整合性確認や、ディスクメディアアクセス可否チェックといったパトロールを目的としたディスクドライブアクセスと同時に行う。
【００３１】
また、パターンマッチング部１８は、記憶領域のデータパターンをチェックする場合、図４に示す例のように、物理エクステント１０１の先頭セクタ（セクタ０）から順にチェックを行っていき、所定のデータパターンが連続している最後のセクタのアドレスである未使用最終アドレス（セクタｐ）を保持する。そして、図５の例に示すように、チェックが完了済みのセクタ（セクタｋ）にライトアクセスがあった場合には、ライトアクセスがあったセクタ（セクタｋ）の直前のセクタ（セクタｋ−１）のアドレスを未使用最終アドレスとし、未使用最終アドレス（セクタｋ−１）が物理エクステント１０１の最終アドレス（セクタｎ−１）と一致した場合に、該物理エクステント１０１の全体が未使用であると判定し、該物理エクステント１０１の論理ディスク１０２への割り当てを削除する。これによって、ＨＤＤ２５の記憶容量を効率的に活用するようにしている。
【００３２】
更に、パターンマッチング部１８は、記憶領域のデータパターンをチェックする場合、キャッシュ管理部１４を介してＨＤＤ２５とバッファメモリ１３との間でダイレクトメモリアクセス（ＤＭＡ）を行う際に、データバス２４上で記憶領域のデータパターンをチェックし、例えば図６に示すように、所定のデータパターンのセクタ（セクタ０〜セクタｋ−１）を検出した場合には、セクタのアドレスが未使用最終アドレス（セクタｋ−１）のアドレスが増加する方向に隣接するアドレス（セクタｋ）を含んでいる場合に、隣接するアドレス（セクタｋ）を含む、所定のデータパターンでのアクセスの未使用最終アドレス（セクタｋ＋１）を新たな未使用最終アドレスとする。
【００３３】
なお、パターンマッチング部１８は、データバス２４上でのデータパターンのチェックを、セクタの全体（セクタ０〜セクタｎ−１）ではなく、予め定めた１又は複数のセクタにおける所定領域内の所定サイズのデータのみについて行い、該データが所定のデータパターンと一致した場合に、セクタ（セクタ０〜セクタｎ−１）の全体に渡ってデータパターンのチェックを行う。これによって、パターンマッチングに伴うストレージ装置１０の負荷を軽減している。
【００３４】
物理エクステント解放部１９は、パターンマッチング部１８によって、物理エクステント１０１全体が所定のデータパターンとなっていると判定された場合に、確保された物理エクステント１０１を解放する。
【００３５】
初期化部２０は、物理エクステント１０１と論理ディスク１０２との初期対応付けを行う部位であって、物理エクステント１０１の論理ディスク１０２への割り当てを行う場合、図７のように、物理エクステント１０１の全体の各セクタ（セクタ０〜セクタｎ−１）の一部または全部を、例えば図８に示すように、全てゼロからなる所定のデータパターンで初期化する。このように、例えば図７に示すセクタ１のように未使用のセクタも、削除済みセクタと同じように管理することによって、物理エクステント１０１の論理ディスク１０２への割付け解放をより効率的に行うようにしている。すなわち、データ未書き込みのセクタを含めて物理エクステント１０１の全体が未使用となった場合に物理エクステント１０１を解放するようにしている。なお、このような物理エクステント１０１の初期化は、物理エクステント１０１の論理ディスク１０２への割り当てを実行する前であれば、あらゆるタイミングで行ってよい。すなわち、ストレージ装置１０を初めて起動するタイミングや、物理エクステント１０１を論理エクステント１０３へ割り当てるタイミング、一度論理ディスク１０２へ割り当てた物理エクステント１０１を論理ディスク１０２への割り当てを解消するタイミングなどで行ってよい。
【００３６】
キャッシュ管理部１４は、ホスト計算機３０からライト要求があった場合、このデータを、ＨＤＤ２５にライトする前に、一旦バッファメモリ１３に格納させる。
【００３７】
バッファメモリ１３は、キャッシュ管理部１４の管理の下、ホスト計算機３０からライト要求のあったデータを、ＨＤＤ２５にライトする前に一旦格納する。
【００３８】
以上のように構成した本実施の形態に係るストレージ装置１０の第１の動作例について説明する。
【００３９】
すなわち、本実施の形態に係るストレージ装置１０は、初期化部２０によって、論理ディスク１０２へ未割り当ての物理エクステント１０１内各セクタのデータが、図８に示すように、例えば、全てゼロとすることにより初期化される。
【００４０】
次に、ホスト計算機３０から、ホストインタフェース１２及びディスクインタフェース２３を介して論理ディスク１０２に対してファイルイシステムが作成され、ファイル書き込みが行われる。
【００４１】
次に、物理エクステント確保部１５によって、書き込みが発生した領域に対応する論理エクステント１０３に対応する物理エクステント１０１が確保され、該当アドレスにデータがライトされる。
【００４２】
ここで、パターンマッチング部１８によって、データライトが発生した物理エクステント１０１内のセクタで、最もアドレスが小さいセクタの直前のセクタアドレスが未使用最終アドレスとされる。
【００４３】
ライトされたファイルを削除する場合には、ホスト計算機３０が、図８に示すような例えば全てゼロからなる所定のデータパターンをファイルが存在していたセクタにライトを行う。
【００４４】
このようにして所定のデータパターンのライトが実行されると、ストレージ装置１０内でキャッシュ管理部１４からＨＤＤ２５へＤＭＡ転送を行う際、パターンマッチング部１８により所定のデータパターンが検出される。更にこの場合、ライトアドレスが物理エクステント内１０１の未使用最終アドレスのアドレスが大きくなる方向に隣接している場合、ライトアクセス範囲の最終アドレスが未使用最終アドレスとされる。
【００４５】
なお、ホスト計算機３０からライトアクセスの履歴がない論理エクステント上のセクタのリードアクセスを受信した場合、論理エクステントは物理エクステントとの対応付けがなされておらず、データパターン応答生成部１６によって、全てゼロのような所定のデータパターンが生成され、ホストインタフェース１２を介してホスト計算機３０へ応答される。
【００４６】
また、ホスト計算機３０からのファイル削除の結果、物理エクステント１０１内の未使用最終アドレスが、物理エクステント１０１の最終アドレスと一致した場合には、パターンマッチング部１８によって、物理エクステント１０１の全体がホスト計算機３０から未使用となったと判定され、物理エクステント解放部１９によって、該当する物理エクステント１０１の論理ディスク１０２への割り当てが削除される。
【００４７】
次に、本実施の形態に係るストレージ装置１０の第２の動作例について説明する。
【００４８】
ここでは、パターンマッチング部１８が、記憶領域のデータパターンのチェックを行う場合、アレイ１００のＲＡＩＤ冗長データ整合性確認や、ディスクメディアアクセス可否チェックといったパトロールを目的としたディスクドライブアクセスと同時に行う場合の動作例を記載する。
【００４９】
すなわち、本実施の形態に係るストレージ装置１０は、初期化部２０によって、論理ディスク１０２へ未割り当ての物理エクステント１０１内各セクタのデータが、図８に示すように、例えば、全てゼロとすることにより初期化される。
【００５０】
次に、ホスト計算機３０から、ホストインタフェース１２及びディスクインタフェース２３を介して論理ディスク１０２に対してファイルシステムが作成され、ファイル書き込みが行われる。
【００５１】
次に、物理エクステント確保部１５によって、書き込みが発生した領域に対応する論理エクステント１０３に対応する物理エクステント１０１が確保され、該当アドレスにデータがライトされる。
【００５２】
ここで、パターンマッチング部１８によって、データライトが発生した物理エクステント１０１内のセクタで、最もアドレスが小さいセクタの直前のセクタアドレスが未使用最終アドレスとされる。
【００５３】
ライトされたファイルを削除する場合には、ホスト装置３０によって、図８に示すような例えば全てゼロからなる所定のデータパターンが、ファイルが存在していたセクタにライトされることによってなされる。
【００５４】
このようにして所定のデータパターンのライトが実行されると、パターンマッチング部１８によって、一定周期でＲＡＩＤ冗長性チェックのためのデータリードが行われ、冗長性チェックと合わせて、読み出したセクタが、特定データパターンを持つファイル未使用領域に該当するか否かについて、物理エクステント１０１の先頭セクタから順番にチェックされる。
【００５５】
更に、パターンマッチング部１８によって、物理エクステント１０１内で所定のデータパターンが連続していると判定された最大のアドレスが、未使用最終アドレスとして保持される。そして、物理エクステント１０１の全体が、連続的に未使用セクタを示す所定のデータパターンと一致した場合は、物理エクステント１０１の全体が未使用となっていると判定され、物理エクステント１０１の論理ディスク１０２への割り当てが削除され、該当物理エクステント１０１が、他の論理ディスク１０２へ割り当てることが可能な待機中の物理エクステント１０１に設定される。
【００５６】
なお、パターンマッチング部１８によって、物理エクステント１０１の全体が未使用となっていると判定される前に、ホスト計算機３０から、物理エクステント１０１内の未使用最終アドレスより小さいアドレスへのライトアクセスを受信した場合は、パターンマッチング部１８によって、物理エクステント１０１内の未使用最終アドレスが、ライトアクセスを受信した最小のアドレスの直前のアドレスに更新され、物理エクステント１０１内の未使用最終アドレスの次のセクタを始点とした一定周期でのデータパターンのチェックが継続される。
【００５７】
上述したように、本実施の形態に係るストレージ装置１０においては、上記のような作用により、ホスト装置３０によって、削除済みセクタ領域に対して所定のデータパターンを書き込み、この所定のデータパターンの検出をセクタ単位で行うことによって、自律的に未使用物理領域を把握することができる。以上により、未使用セクタ各々の管理情報を必要とせず、更なる処理負荷をもたらすことなく、論理ディスク１０２上で未使用となっている物理エクステント１０１を、他の用途に効率的に再利用することが可能となる。
【００５８】
また、削除済みファイルの存在していた物理領域又は論理ディスク１０２上で、一度もライトアクセスを行っていない論理エクステントのデータは、ホスト計算機３０から読み取られなくなる。以上により、悪意のあるユーザ等に対する情報漏洩のリスクを回避することが可能となる。
【００５９】
（第２の実施の形態）
本発明の第２の実施の形態を説明する。
【００６０】
本実施の形態に係るストレージ装置は、第１の実施の形態に係るストレージ装置の変形例であるので、ここでは、同一構成部位については同一符号とすることによりその説明を省略し、異なる部位についてのみ説明する。
【００６１】
図１０は、第２の実施の形態に係るストレージ装置の構成例を示すブロック図である。
【００６２】
第１の実施の形態に係るストレージ装置は、所定のデータパターンは１種類のみであったが、本実施の形態に係るストレージ装置では、ストレージコントローラ１１内の各部位が複数の所定のデータパターンを取り扱う。すなわち、データパターン生成応答部１６は、例えば全てゼロのような１種類のデータパターンのみならず、例えば全てが１のような幾つかの異なるデータパターンも生成する。これに対応して、パターンマッチング部１８は、確保された物理エクステント１０１の全体が、複数の所定のデータパターンのうちの何れかのデータパターンとなっているか否かを検出し、確保された物理エクステント１０１の全体が複数の所定のデータパターンのうちの何れかのデータパターンとなっていることを検出した場合には、確保された物理エクステント１０１の論理ディスク１０２割り当てを削除する。その他の部位も、後述する動作例に示すように、複数種類のデータパターンを取り扱う。
【００６３】
また、複数の所定のデータパターンを取り扱うことに関連して、図１０に示す本実施の形態に係るストレージ装置は、図１に示す第１の実施の形態に係るストレージ装置にデータパターン種別保持部２２を付加した構成としている。
【００６４】
データパターン種別保持部２２は、論理エクステント１０３に対する所定のデータパターン種別を保持し、ホスト計算機３０からリード要求があった場合には、対応する論理エクステント１０３について保持されているデータパターン種別に対応するデータパターンをホスト計算機３０に応答する。
【００６５】
次に、以上のように構成した本実施の形態に係るストレージ装置の動作例について説明する。
【００６６】
各論理エクステント１０３は、それらを特定する番号が付与されている。そして、未割り当ての物理エクステント１０１上の各セクタは、初期化部２０によって、図１１（ａ）によって所定のデータパターンで初期化されており、このデータパターンに対応するパターン番号が、データパターン種別保持部２２によって保持される。
【００６７】
以下、ここでは、データパターン生成応答部１６が、図１１（ａ）及び図１１（ｂ）に示すような２種類の所定のデータパターン、すなわち全てゼロからなるパターン（パターン番号＝０）と、全て１からなるパターン（パターン番号＝１）とを生成する場合を例に説明する。
【００６８】
データパターン種別保持部２２では、図１２に示すようなデータパターンに該当するパターン番号と、論理エクステント１０３の番号との対応表を保持する。例えば、図１２のような場合、論理エクステント番号１００に対応するデータパターンはパターン番号＝０であり、論理エクステント番号１０１に対応するデータパターンはパターン番号＝１であることを示す。
【００６９】
ホスト計算機３０から、物理エクステント１０１の割り当てが存在しない論理エクステント１０３へのリード要求があった場合には、データパターン種別保持部２２が図１２に示すような対応表を参照することにより、データパターンのパターン番号が取得される。そして、このパターン番号に対応するデータパターンがリードデータとしてホスト計算機３０へ応答される。
【００７０】
一方、ホスト計算機３０から、物理エクステント１０１の割り当てが存在する論理エクステント１０３へのリード要求があった場合には、ディスクインタフェース２３によって、実際に物理エクステント１０１に対応する記憶領域からリードが行われ、リードデータがホストインタフェース１２を介してホスト計算機３０へ応答される。
【００７１】
なお、ホスト計算機３０が、ファイル削除を行う場合には、ファイルデータが存在していた記憶領域に対してパターン番号＝０のデータパターンが書き込まれる。
【００７２】
一方、ホスト計算機３０が、パターン番号＝１のデータパターンに対応するセクタを繰り返すようなファイルで、物理エクステント１０１のサイズを上回るようなサイズのファイル作成を行ったとする。この場合、パターンマッチング部１８によって、物理エクステント１０１の割り当て済みの論理エクステント１０３で、物理エクステント１０１の全体が所定のデータパターンのうちの１つに該当すると判定された場合は、データパターン種別保持部２２に保持されている図１２に示すような対応表に新たな対応関係が追加され、物理エクステント１０１の論理ディスク１０２割当てが解除される。
【００７３】
本実施の形態に係るストレージ装置は、上記のように動作するので、第１の実施の形態で奏された作用効果に加えて更に、ファイル削除に加えて、パターン番号＝１のデータパターンを繰り返すようなファイルの存在する物理領域を保持する必要も無くなり、より柔軟な取り扱いが可能となる。
【００７４】
以上、本発明を実施するための最良の形態について、添付図面を参照しながら説明したが、本発明はかかる構成に限定されない。特許請求の範囲の発明された技術的思想の範疇において、当業者であれば、各種の変更例及び修正例に想到し得るものであり、それら変更例及び修正例についても本発明の技術的範囲に属するものと了解される。
【図面の簡単な説明】
【００７５】
【図１】本発明の第１の実施の形態に係るストレージ装置の構成例を示すブロック図。
【図２】論理ディスクの構成を説明するための概念図。
【図３】物理エクステントと論理エクステントとの対応関係の一例を示す概念図。
【図４】パターンマッチングによる未使用最終アドレスの決定を説明する図。
【図５】パターンマッチングによる未使用最終アドレスの決定を説明する図。
【図６】パターンマッチングによる未使用最終アドレスの決定を説明する図。
【図７】物理エクステントを論理ディスクに割り当てる際の初期状態を説明する図。
【図８】全てゼロからなるデータパターンを示す図。
【図９】物理エクステントと論理エクステントとの対応関係の一例を示す概念図。
【図１０】第２の実施の形態に係るストレージ装置の構成例を示すブロック図。
【図１１】全てゼロからなるデータパターンと、全て１からなるデータパターンとを示す図。
【図１２】データパターン種別保持部によって保持されるデータパターン番号と論理エクステント番号との対応表の一例を示す図。
【符号の説明】
【００７６】
１０…ストレージ装置、１１…ストレージコントローラ、１２…ホストインタフェース、１３…バッファメモリ、１４…キャッシュ管理部、１５…物理エクステント確保部、１６…データパターン生成応答部、１８…パターンマッチング部、１９…物理エクステント解放部、２０…初期化部、２２…データパターン種別保持部、２３…ディスクインタフェース、２４…データバス、２５…ＨＤＤ、３０…ホスト計算機、１００…アレイ、１０１…物理エクステント、１０２…論理ディスク、１０３…論理エクステント
【図１】
2008217689.tif 000003
【図２】
2008217689.tif 000004
【図３】
2008217689.tif 000005
【図４】
2008217689.tif 000006
【図５】
2008217689.tif 000007
【図６】
2008217689.tif 000008
【図７】
2008217689.tif 000009
【図８】
2008217689.tif 000010
【図９】
2008217689.tif 000011
【図１０】
2008217689.tif 000012
【図１１】
2008217689.tif 000013
【図１２】
2008217689.tif 000014