(57)【要約】【課題】  シン・プロビジョニングにより、データ・ストレージ・システム内でデータを移行するための装置に関する。【解決手段】  大容量ストレージ・システムにおいてストレージのための着信データ区画を受信すること、および、大容量ストレージ・システムにおいて着信データ区画のために論理ストレージを割り振ることを含む、大容量ストレージ・システム（１０）にデータを移行するための方法。この方法は、着信データ区画がゼロ・データのみを含む旨を決定すること、および、この決定に応答して、着信データ区画のために割り振られた論理ストレージを維持しながら、大容量ストレージ・システムにおける着信データ区画の物理ストレージを禁止することを、さらに含む。【選択図】  図１
2010541060.tif 000002
【特許請求の範囲】
【請求項１】
大容量ストレージ・システムにおいて、ストレージのための着信データ区画を受信するステップと、
前記大容量ストレージ・システムにおいて、前記着信データ区画のために論理ストレージを割り振るステップと、
前記着信データ区画がゼロ・データのみを含む旨を決定するステップと、
前記決定に応答して、前記着信データ区画のために割り振られた前記論理ストレージを維持しながら、前記大容量ストレージ・システムにおける前記着信データ区画の物理ストレージを禁止するステップと、
を含む、大容量ストレージ・システムにデータを移行するための方法。
【請求項２】
前記論理ストレージを割り振るステップが、少なくとも前記着信データ区画に関する論理アドレスを含む区画データ記録を作成するステップを含む、請求項１に記載の方法。
【請求項３】
前記区画データ記録を作成するステップが、前記区画データ記録を永続メディア内に格納するステップを含む、請求項２に記載の方法。
【請求項４】
前記着信データ区画が非ゼロ・データを含むことをさらに決定するステップを含み、前記さらに決定するステップに応答して、前記着信データ区画を永続メディアに格納するステップを含む、請求項１に記載の方法。
【請求項５】
前記永続メディアに前記着信データ区画を格納するステップが、前記着信データ区画に関する物理アドレスを含めるために区画データ記録を更新するステップを含む、請求項４に記載の方法。
【請求項６】
前記大容量ストレージ・システムがシン・プロビジョニング・ストレージ・システムを含む、請求項１に記載の方法。
【請求項７】
ゼロ・データのみを含むデータ区画にゼロ・ビットからなるデータ区画を提供するために、前記大容量ストレージ・システムへの要求に応答するステップを含む、請求項１に記載の方法。
【請求項８】
物理ストレージからデータ区画を読み取るステップと、
前記データ区画がゼロ・データのみを含む旨を決定するステップと、
前記決定に応答して、前記データ区画のための論理ストレージの割り振りを維持する一方で、大容量ストレージ・システムにおける前記データ区画の物理ストレージを割り振り解除するステップと、
を含む、大容量ストレージ・システム内のデータを監視するための方法。
【請求項９】
前記データ区画を読み取るステップが、整合性および正当性のうちの少なくとも１つについて前記データ区画をチェックするステップを含む、請求項８に記載の方法。
【請求項１０】
前記チェックするステップに応答して、前記データ区画を訂正するステップを含む、請求項９に記載の方法。
【請求項１１】
前記データ区画を読み取るステップが、前記データ区画が誤って非ゼロ・データを含む旨を決定するステップを含む、請求項８に記載の方法。
【請求項１２】
前記論理ストレージの割り振りを維持するステップが、少なくとも前記データ区画に関する論理アドレスを有する区画データ記録を作成するステップを含む、請求項８に記載の方法。
【請求項１３】
前記区画を永続メディア内に格納するステップを含む、請求項１２に記載の方法。
【請求項１４】
前記区画を永続メディア内に格納するステップが、前記着信データ区画に関する物理アドレスを含めるために前記区画データ記録を更新するステップを含む、請求項１３に記載の方法。
【請求項１５】
前記物理ストレージを割り振り解除するステップが、区画記述子記録から物理アドレスを除去するステップを含む、請求項１２に記載の方法。
【請求項１６】
前記データ区画にゼロ・ビットからなる発信データ区画を提供するために、前記大容量ストレージ・システムへの要求に応答するステップを含む、請求項８に記載の方法。
【請求項１７】
大容量ストレージ・システムにおいて、ストレージのための着信データ区画を受信すること、および
前記大容量ストレージ・システムにおいて、前記着信データ区画のために論理ストレージを割り振ること、
を実行するように構成された、制御ユニットと、
前記着信データ区画がゼロ・データのみを含む旨を決定するため、および
前記決定に応答して、前記着信データ区画のために割り振られた前記論理ストレージを維持しながら、前記大容量ストレージ・システムにおける前記着信データ区画の物理ストレージを禁止するために、
前記制御ユニットに結合されたプロセッサと、
を備える、大容量ストレージ・システムにデータを移行するための装置。
【請求項１８】
前記論理ストレージを割り振ることが、少なくとも前記着信データ区画に関する論理アドレスを含む区画データ記録を作成することを含む、請求項１７に記載の装置。
【請求項１９】
前記区画データ記録を作成することが、前記区画データ記録を永続メディア内に格納することを含む、請求項１８に記載の装置。
【請求項２０】
前記プロセッサが、前記着信データ区画が非ゼロ・データを含むことをさらに決定すること、および、前記さらに決定することに応答して、前記着信データ区画を永続メディアに格納することを、実行するように構成された、請求項１７に記載の装置。
【請求項２１】
前記永続メディアに前記着信データ区画を格納することが、前記着信データ区画に関する物理アドレスを含めるために区画データ記録を更新することを含む、請求項２０に記載の装置。
【請求項２２】
前記大容量ストレージ・システムがシン・プロビジョニング・ストレージ・システムを含む、請求項１７に記載の装置。
【請求項２３】
前記プロセッサが、前記データ区画にゼロ・ビットからなる発信データ区画を提供するために、前記大容量ストレージ・システムへの要求に応答するように構成された、請求項１７に記載の装置。
【請求項２４】
物理ストレージからデータ区画を読み取るように構成された制御ユニットと、
前記データ区画がゼロ・データのみを含む旨の決定を実行するため、および、
前記決定に応答して、大容量ストレージ・システムにおける前記データ区画の物理ストレージを割り振り解除し、前記データ区画のために割り振られた論理ストレージを維持するために、
前記制御ユニットに結合されたプロセッサと、
を備える、大容量ストレージ・システム内のデータを監視するための装置。
【請求項２５】
前記データ区画を読み取ることが、整合性および正当性のうちの少なくとも１つについて前記データ区画をチェックすることを含む、請求項２４に記載の装置。
【請求項２６】
前記プロセッサが、前記チェックすることに応答して、前記データ区画を訂正するように構成された、請求項２５に記載の装置。
【請求項２７】
前記データ区画を読み取ることが、前記データ区画が誤って非ゼロ・データを含む旨を決定することを含む、請求項２４に記載の装置。
【請求項２８】
前記論理ストレージを割り振ることが、少なくとも前記データ区画に関する論理アドレスを含む区画データ記録を作成することを含む、請求項２４に記載の装置。
【請求項２９】
区画の前記物理ストレージが、前記区画を永続メディア内に格納することを含む、請求項２８に記載の装置。
【請求項３０】
前記区画を永続メディア内に格納することが、前記着信データ区画に関する物理アドレスを含めるために前記区画データ記録を更新することを含む、請求項２９に記載の装置。
【請求項３１】
前記物理ストレージを割り振り解除することが、区画記述子記録から前記物理アドレスを除去することを含む、請求項２８に記載の装置。
【請求項３２】
前記プロセッサが、前記データ区画にゼロ・ビットからなる発信データ区画を提供するために、前記大容量ストレージ・システムへの要求に応答するように構成された、請求項２４に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本明細書は、２００７年１０月１日出願の、米国仮出願第６０／９７６５７２号の特典を請求するものである。
【０００２】
本発明は、一般に、データ・ストレージのための方法および装置に関し、具体的に言えば、データ・ストレージ・システム内で複数の論理ボリュームを管理するための方法および装置に関する。
【背景技術】
【０００３】
ユーザに多数のアプリケーションを提供する組織では、しばしば大規模コンピュータ・ディスク・ストレージ・システムが使用される。物理ストレージから論理ストレージを抽出するために、ストレージの仮想化も利用される。仮想化システムは、論理ストレージ位置と実際の物理ストレージ位置との間で何らかの形のマッピングを管理しながら、データ・ストレージに論理スペースを提供する。シン・プロビジョニング・システム（thin provisioning system）は、必要に応じてアプリケーション・サーバにストレージ・スペースを提供する。シン・プロビジョニングは、ストレージ・システムを共有するすべてのサーバのニーズを単一の成長速度に自動的に集約するため、容量プランニングも簡略化する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許出願第２００６／０２５３６８１号
【特許文献２】米国特許出願第２００５／００１５５６６号
【特許文献３】米国特許出願第２００５／００１５５６７号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、シン・プロビジョニングにより、データ・ストレージ・システム内でデータ（複数の論理ボリューム）を管理するための方法および装置に関する。
【課題を解決するための手段】
【０００６】
本発明の実施形態では、大容量ストレージ・システムにデータを移行するための方法が提供される。この方法は、大容量ストレージ・システムにおいてストレージのための着信データ区画を受信することを含む。大容量ストレージ・システムにおいて、着信データ区画のために論理ストレージが割り振られる。データ区画のコンテンツがチェックされ、着信データ区画がゼロ・データのみを含む場合、着信データ区画のために割り振られた論理ストレージは維持される一方で、大容量ストレージ・システムにおける着信データ区画の物理ストレージは禁止される。物理ストレージの禁止および論理ストレージの維持によって、ストレージ・スペースが大幅に節約され、格納される情報レベルは低下しない。
【０００７】
いくつかの実施形態では、論理ストレージの割り振りには、着信データ区画に関する論理アドレスを有する区画データ記録を作成すること、および、区画データ記録を永続メディア内に格納することが含まれる。非ゼロ・データを含めるための着信データ区画が決定された場合、着信データ区画は永続メディアに格納され、通常、区画データ記録は着信データ区画の物理アドレスを含む。
【０００８】
典型的には、大容量ストレージ・システムはシン・プロビジョニング・ストレージ・システムである。
【０００９】
開示された諸実施形態では、ゼロ・データのみを含むデータ区画を提供するためのストレージ・システムへの要求には、ゼロ・ビットを含むデータ区画によって応答される。
【００１０】
本発明の代替実施形態では、大容量ストレージ・システムにおいてデータを監視するための方法が提供される。この方法は、物理ストレージからデータ区画を読み取ること、および、データ区画がゼロ・データのみを含むかどうかを判別することを含む。区画がゼロ・データのみを含む旨の決定に応答して、データ区画のための論理ストレージが維持される一方で、大容量ストレージ・システムにおけるデータ区画の物理ストレージは割り振り解除される。
【００１１】
いくつかの開示された実施形態では、データ区画の読み取りは、整合性および正当性のうちの少なくとも１つについてデータ区画をチェックすること、ならびに、チェックに応答してデータ区画を訂正することを含む。
【００１２】
いくつかの実施形態では、物理ストレージの割り振り解除は、データ区画に関連付けられた区画記述子記録から物理アドレスを除去することを含む。
【００１３】
したがって、本発明の実施形態により、
大容量ストレージ・システムにおいて、ストレージのための着信データ区画を受信すること、
大容量ストレージ・システムにおいて、着信データ区画のために論理ストレージを割り振ること、
着信データ区画がゼロ・データのみを含む旨を決定すること、および
この決定に応答して、着信データ区画のために割り振られた論理ストレージを維持しながら、大容量ストレージ・システムにおける着信データ区画の物理ストレージを禁止すること、
を含む、大容量ストレージ・システムにデータを移行するための方法が提供される。
【００１４】
典型的には、論理ストレージの割り振りは、少なくとも着信データ区画に関する論理アドレスを含む区画データ記録を作成することを含む。区画データ記録の作成は、区画データ記録を永続メディア内に格納することを含むことができる。
【００１５】
一実施形態では、この方法は、着信データ区画が非ゼロ・データを含むことをさらに決定することを含み、さらなる決定に応答して、着信データ区画を永続メディアに格納することを含む。永続メディアへの着信データ区画の格納は、着信データ区画に関する物理アドレスを含めるために区画データ記録を更新することを含むことができる。
【００１６】
開示された実施形態では、大容量ストレージ・システムはシン・プロビジョニング・ストレージ・システムを含む。
【００１７】
代替実施形態では、方法は、ゼロ・データのみを有するデータ区画にゼロ・ビットのデータ区画を提供するために、大容量ストレージ・システムへの要求に応答することを含む。
【００１８】
さらに、本発明の実施形態により、
物理ストレージからデータ区画を読み取ること、
データ区画がゼロ・データのみを含む旨を決定すること、および、
この決定に応答して、データ区画のための論理ストレージの割り振りを維持する一方で、大容量ストレージ・システムにおけるデータ区画の物理ストレージを割り振り解除すること、
を含む、大容量ストレージ・システム内のデータを監視するための方法が提供される。
【００１９】
典型的には、データ区画の読み取りは、整合性および正当性のうちの少なくとも１つについてデータ区画をチェックすることを含む。この方法は、チェックに応答してデータ区画を訂正することも含むことができる。
【００２０】
一実施形態では、データ区画の読み取りは、データ区画が誤って非ゼロ・データを含む旨を決定することを含む。
【００２１】
代替実施形態では、論理ストレージの割り振りの維持は、少なくともデータ区画に関する論理アドレスを有する区画データ記録を作成することを含む。この方法は、通常、区画を永続メディア内に格納することを含み、永続メディア内への区画の格納は、着信データ区画に関する物理アドレスを含めるために区画データ記録を更新することを含むことが可能であり、物理ストレージの割り振り解除は、区画記述子記録から物理アドレスを除去することを含むことができる。
【００２２】
他の代替実施形態では、方法は、データ区画にゼロ・ビットの発信データ区画を提供するために、大容量ストレージ・システムへの要求に応答することを含む。
【００２３】
さらに、本発明の実施形態により、
大容量ストレージ・システムにおいて、ストレージのための着信データ区画を受信すること、および
大容量ストレージ・システムにおいて、着信データ区画のために論理ストレージを割り振ること、
を実行するように構成された、制御ユニットと、
着信データ区画がゼロ・データのみを含む旨を決定するため、および
この決定に応答して、着信データ区画のために割り振られた論理ストレージを維持しながら、大容量ストレージ・システムにおける着信データ区画の物理ストレージを禁止するために、
制御ユニットに結合されたプロセッサと、
を含む、大容量ストレージ・システムにデータを移行するための装置が提供される。
【００２４】
さらに、本発明の実施形態により、
物理ストレージからデータ区画を読み取るように構成された制御ユニットと、
データ区画がゼロ・データのみを含む旨の決定を実行するため、および、
この決定に応答して、大容量ストレージ・システムにおけるデータ区画の物理ストレージを割り振り解除し、データ区画のための論理ストレージの割り振りを維持するために、
制御ユニットに結合されたプロセッサと、
を含む、大容量ストレージ・システム内のデータを監視するための装置が提供される。
【００２５】
本発明は、図面と共に記載されたその諸実施形態の以下の詳細な説明からより完全に理解されよう。
【図面の簡単な説明】
【００２６】
【図１】本発明の実施形態に従ったデータ・ストレージ・システムを示す概略図である。
【図２】本発明の実施形態に従った、他のストレージ・システムに接続された図１のデータ・ストレージ・システムを示す概略図である。
【図３】本発明の実施形態に従った、移行された区画を図１のデータ・ストレージ・システム内に格納するための方法を概略的に示す流れ図である。
【図４】本発明の実施形態に従った、図１のデータ・ストレージ・システム内のキャッシュを示す概略図である。
【図５】本発明の実施形態に従った、図１のデータ・ストレージ・システム内でデータ区画を取り消す（scrubbing）ための方法を概略的に示す流れ図である。
【発明を実施するための形態】
【００２７】
概要
シン・プロビジョニングは、割り振られたが未使用のストレージまたは取り残された（stranded）ストレージを消去する、「ジャスト・イン・タイム容量」である。ストレージ・システム内でシン・プロビジョニングのメカニズムを実装するための１つの方法は、「Dynamic allocation of storage for hierarchical copies」という名称の米国特許出願第２００６／０２５３６８１号に記載されている。
【００２８】
本発明の諸実施形態は、シン・プロビジョニング・ストレージ・システムの性能を強化するための方法を提供する。物理データ区画のコンテンツが値ゼロを有する場合、それによってすべてのデータ・ビットが「オフ」となり、区画は論理的に定義される必要があるが、物理ストレージ・スペースは不要である。この状況は、たとえば、アプリケーションが区画内に含まれるデータ上で動作する場合、およびゼロに等しい結果が生じる場合など、様々な方法で生じる可能性がある。
【００２９】
以下に説明される本発明の一実施形態は、データがソース・ストレージ・システムから宛先シン・プロビジョニング・ストレージ・システムへと移行される場合に、使用することができる。移行される各データ区画は、物理ストレージが割り振られる前に分析される。区画のコンテンツが値ゼロを有する場合、論理ストレージが割り振られ、物理ストレージは使用されない。アプリケーションがこの区画のすべてまたは一部を読み取るように要求した場合、ゼロのみからなる区画を戻すことにより、この要求に対して十分に応答される。移行された「ゼロ」区画の物理ストレージを禁止することにより、アプリケーション・データのための使用可能ストレージ・スペースを増加させながら、ストレージの効率性を向上させる。
【００３０】
本発明の他の実施形態は、「取り消し」手順の動作中に、ゼロ値のコンテンツを備える区画の物理ストレージを消去する。典型的には、ストレージ・システムは、データの整合性および正当性に関してディスク上に格納された各区画を定期的にチェックするための、通常のシステム・アクティビティの背景で動作する、取り消し手順を含む。取り消し手順は、通常、データを完全に取り消すことによって、正しいデータを復元するために、欠陥であることが見つかった区画に適用される。取り消し手順は、整合性および正当性のチェックを実行することに加えて、区画内に格納されたデータがゼロのみである可能性をチェックするために実装可能である。区画がゼロのみを含む場合、区画はシステム内で論理的に定義されたままであるが、ディスク上の物理ストレージ・スペースは割り振り解除され、区画のコンテンツ（ゼロのみ）はディスクに書き出されない。アプリケーションがこの区画のすべてまたは一部を読み取るように要求した場合、ゼロのみからなる区画を戻すことによって、この要求に対して十分に応答される。取り消し中に「ゼロ」区画が発見された場合、それらのための物理ストレージを消去することにより、データの移行に関して前述された利点と同様の利点が提供される。
【００３１】
システムの説明
図１は、本発明の実施形態に従った、大容量データ・ストレージ・システム１０の概略ブロック図を示す。システム１０は、たとえば、インターネットなどのネットワーク５０を介して、またはバスによって、当分野で知られた任意の手段によって１つまたは複数のホスト５２に接続される。データは、システム１０内で、論理アドレス（ＬＡ）に関連付けられた論理ブロックのシーケンスを備える、論理ユニット（ＬＵＮ）に格納される。これらのブロックのコンテンツは、通常、本明細書ではたとえばディスクであると想定された、低速アクセス時間あるいは高速アクセス時間またはその両方の、不揮発性大容量ストレージ・デバイスのグループ１２全体にわたり、分散して格納される。ホスト５２は、Ｉ／Ｏ読み取り要求およびＩ／Ｏ書き込み要求を含む入力／出力（Ｉ／Ｏ）要求を介して、ディスク１２に格納されたデータにアクセスする。Ｉ／Ｏ読み取り要求では、要求されたデータは、データが格納されたディスク１２のうちの１つから読み取られる。Ｉ／Ｏ書き込み要求では、データは１つまたは複数のディスク１２に書き込まれる。
【００３２】
システム１０は、通常、ディスク１２を組み込むことが可能な１つまたは複数の処理ユニット、あるいはシステム１０の他の要素、またはその両方として、当業者が精通することになる方法によって実装される、管理ノード２５を備えることができる。システム１０は、ディスク１２へのアクセスを必要とする、Ｉ／Ｏ読み取りおよび書き込み要求を受信する１つまたは複数のほぼ同様のインターフェース２６も備えることができる。各インターフェース２６は、ハードウェアあるいはソフトウェアまたはその両方で実装可能であり、ストレージ・システム１０内に、あるいは、別の方法として、ネットワーク５０の要素またはホスト５２のうちの１つなどの任意の他の好適な位置に、配置可能である。ディスク１２とインターフェースとの間には多くの一時キャッシュ２０があり、それぞれのキャッシュはそれぞれのディスク・サブグループ１２に結合されている。キャッシュ２０は、バスまたはスイッチなどの当分野で知られた任意の好適な高速結合システムによって、インターフェース２６に結合されるため、結果として各インターフェースは、各キャッシュと通信することおよび各キャッシュとの間でデータを転送することが可能となり、次に各キャッシュは、そのディスク・サブグループ１２との間で必要に応じてデータを転送することが可能となる。例を挙げると、本明細書では、キャッシュ２０とインターフェース２６との間の結合は、第１のクロスポイント・スイッチ１４によるものと想定される。インターフェース２６は、実質上、互いに独立に動作する。キャッシュ２０およびインターフェース２６は、ホスト５２とディスク１２との間でデータを転送する、データ転送システムとして動作する。
【００３３】
通常、ストレージ・システム１０内に分散された、１つまたは複数の処理ユニットを備えることが可能なプロセッサ３０が、システムを動作させる。通常、プロセッサは、ノード２５およびキャッシュ２０を管理するための命令を送信する。
【００３４】
システム１０内の各論理ユニット（ＬＵＮ）の連続ブロックは、通常、システム全体を通じて長さが同一の区画にグループ化される。したがってＬＵＮは、論理ブロックの連続列を備える、論理区画の連続列を備える。本明細書で説明された本発明の諸実施形態では、区画は、取り消しプロセスを含む、本明細書で説明されたほとんどのデータ・トランザクションを管理するために使用される、基本データ部分であるものと想定される。しかしながら、データ・トランザクションにおいてデータを分配する（apportion）ための任意の他の便利なシステムを使用することが可能である。
【００３５】
管理ノードは、各キャッシュ２０に論理ユニット区画を割り当てるため、結果として各キャッシュは、その割り当てられた区画のＬＡ領域からデータを取り出すこと、あるいはその領域にデータを格納すること、またはその両方が可能となる。この領域は、通常、ディスク１２の完全なメモリ・アドレス・スペースが利用されるように選択される。システム１０では、データは冗長的に格納可能であり、その場合、各区画は少なくとも２つのキャッシュ、および、それぞれそれらに関連付けられたディスク１２にマッピングされる。論理アドレス領域をキャッシュに冗長的に格納するための方法は、本発明の譲受人に譲渡された、「Data Allocation in a Distributed Storage System」という名称の、米国特許出願第２００５／００１５５６６号に記載されている。こうした方法は、本発明の諸実施形態で使用可能である。
【００３６】
各キャッシュ２０に対して割り当てられた区画は、通常、各インターフェース２６内に格納された分散テーブル１９に記録される。各分散テーブルは、そのインターフェースによって、ホスト５２からのＩ／Ｏ要求をキャッシュにルーティングするために使用される。別の方法として、または加えて、各キャッシュ２０に対して割り当てられた区画は、区画とキャッシュとの間の対応関係を生成するための当分野で知られた任意の他の好適な方法によって、各インターフェース２６に格納される。分散テーブル１９は、各インターフェース２６に、システム１０の完全なキャッシュ・アドレス・スペースの概要を与えることを理解されよう。本発明の譲受人に譲渡された、「Distributed Independent Cache Memory」という名称の、米国特許出願第２００５／００１５５６７号は、分散テーブル１９などのテーブルを生成するために適用可能な方法を記載している。
【００３７】
データにアクセスするためのＩ／Ｏ要求は特定のキャッシュに搬送され、キャッシュ自体によって、またはキャッシュに接続されたディスク１２によって、サービスを提供することができる。したがって、各キャッシュは、他のキャッシュとは実質上独立に、搬送されたＩ／Ｏ要求上で動作し、同様に各キャッシュは、他のキャッシュとそれらのそれぞれのサブグループとの間の通信とは実質上独立に、そのそれぞれのディスク・サブグループと通信する。各キャッシュ２０は、キャッシュに特有のそれぞれの区画テーブル１７のセットを備え、区画テーブルの機能について、以下でより詳細に説明する。
【００３８】
管理ノード２５は、一部は区画テーブル１７に含まれ、一部は分散テーブル１９に含まれる情報を備えた、主構成テーブル１８も維持することができる。本発明の諸実施形態では、プロセッサ３０は、主構成テーブルを修正すること、ならびに、関連する修正済み情報をキャッシュ２０およびインターフェース２６にブロードキャストすることによって、システム内の構成変更を生成することが可能であり、その結果、それぞれ区画テーブル１７および分散テーブル１９を修正することになる。
【００３９】
図２は、本発明の実施形態に従った、ソース・ストレージ・システム１１に接続されたストレージ・システム１０の概略図を示す。システム１０では、各キャッシュ２０は、以下ですべてがより詳細に説明される、制御ユニット６４、データ・スペース６６、および区画記述子記録７０を備えることができる。図が見やすいように、図２では、１つのインターフェース２６、１つのキャッシュ２０、およびその結合されたディスク１２のみが示されている。キャッシュは、図１よりも詳細に示されている。ストレージ・システム間の接続の目的は、ソース・ストレージ・システムから、本明細書では宛先ストレージ・システムとも呼ばれるストレージ・システム１０へと、データを移行することである。ソース・システム１１は、実質上、当分野で知られた任意の種類のストレージ・システムを備える。インターフェース２６は、ソース・システム１１に関してフォーマット化されたデータを読み取るように構成され、必要であれば、移行されたデータをシステム１０が格納可能な種類のデータ区画に再配置するように構成されるため、結果として移行プロセスが実行可能である。
【００４０】
２つのシステム間の接続は、システム１１内のいくつかの通信ポートから、たとえばシステム１０内の１つまたは複数のインターフェース２６へと、データを転送する、リンク８４を介して実装可能である。ここからデータは、ホスト５２から着信する任意の種類のＩ／Ｏ書き込み要求の場合のように、対応するキャッシュ２０に向けて送られることになる。
【００４１】
システム１１から着信するデータ区画は、システム１０内の適切なキャッシュ２０に到達した場合、さらにディスク１２に書き込むことができる。キャッシュは、キャッシュの機能を管理するための制御ユニット６４を含むことが可能であり、このユニットは、通常、プロセッサ３０からの命令の下で動作する。別の方法として、キャッシュの挙動は、専用ハードウェア論理によって、またはハードウェア要素およびソフトウェア要素の組み合わせによって、プロセッサ３０の全体的な制御の下で実装可能である。以下では、キャッシュ２０が制御ユニット６４を備えること、ならびに、制御ユニット６４およびプロセッサ３０によって実行される機能は交換可能であることが想定される。
【００４２】
ディスク１２上でデータを格納するために十分なデータ・ブロックが使用可能である場合、制御ユニット６４は、データをディスク上の物理アドレスに格納し、物理ストレージ・アドレスと、ＬＵＮの１つまたは複数のそれぞれの論理区画との間に、リンクを生成する。制御ユニットによって生成されたリンクは、本明細書では区画記述子記録（ＰＤＲ）７０と呼ばれ、ＰＤＲはキャッシュの区画テーブル１７に格納される。ストレージ・システムが、ＬＵＮの論理区画でデータにアクセスするためのＩ／Ｏコマンドを受信した場合、制御ユニットはＰＤＲを使用して必要な物理位置を識別する。
【００４３】
データを格納するための十分なデータ・ブロックが存在しない場合、ストレージ・システム１０はエラー・メッセージを戻す。
【００４４】
本発明の実施形態によれば、移行区画は、初期にデータ・スペース６６内に一時的に格納される。その後、制御ユニットは、区画がゼロ以外のデータを含むかどうかを判別するために区画をチェックする。これは通常、標準のケースである。しかしながら、区画がゼロのみからなるケース、または言い換えれば、そのすべてのビットがオフとなるケースも有り得る。
【００４５】
制御ユニット６４は、データ・スペース６６内の着信区画がゼロのみからなる旨を決定した場合、区画をシステム１０内で定義されるものとみなすが、ディスク上にそのための物理ストレージ・スペースは割り振らず、この区画のコンテンツ（ゼロのみ）はディスクに書き込まない。後に、ホスト５２が、移行された区画のすべてまたは一部を読み取るための要求をストレージ・システム１０に送信した場合、ゼロのみからなる区画をホストに戻すことによって、この要求に対して十分に応答されることになる。
【００４６】
図３は、本発明の実施形態に従った、ストレージ・システム１１からストレージ・システム１０へ移行される区画を格納するための方法を概略的に示す流れ図である。この方法は、データの移行を制御するためのコマンドに応答して、制御ユニット６４によって使用可能である。加えて、または別の方法として、この方法は、ソース・ストレージ・システムからストレージ・システム１０への区画の移行を必要とする場合、プロセッサによって動作される管理ノード２５によって呼び出すことができる。
【００４７】
受信ステップ９０では、キャッシュ２０がストレージ・システム１１から移行されている区画を受信し、制御ユニット６４がこの区画を分析のためにデータ・スペース６６内に一時的に格納することができる。
【００４８】
ＰＤＲ書き込みステップ９２では、制御ユニットが特定のＰＤＲ７０（図２）を作成し、受信された区画の論理アドレス（ＬＡ）をＰＤＲに書き込む。ＰＤＲは、移行された区画の受信を記録するために、区画テーブル１７に格納される。
【００４９】
その後、区画分析ステップ９４では、制御ユニット６４が、すべてのビットが値ゼロを有するかどうかを判別するために、データ・スペース６６内の移行された区画を分析する。制御ユニットは、区画がゼロのみからなるものと決定した場合、確認ステップ１０２で、区画移行が完了した旨を管理ノード２５またはプロセッサ３０に通知することができる。加えて、制御ユニットは、物理スペースが割り振られていないことを示すために、ＰＤＲ７０を更新することができる。
【００５０】
しかしながら、制御ユニット６４は、移行された区画が非ゼロ・データを含むものと決定した場合、十分なスペース判別ステップ９６で、区画に使用可能な十分な物理ストレージがディスク１２上に存在するかどうかをチェックする。使用可能な十分なスペースがディスク上に存在しない場合、エラー応答ステップ９８で、エラー状態が発生する。移行された区画を格納するために使用可能な十分なスペースがディスク上に存在する場合、物理ストレージ・ステップ１００で、制御ユニットは区画データをディスクに書き込み、区画の物理アドレスを記録することによって、移行された区画ＰＤＲを更新する。その後、制御ユニットは、確認ステップ１０２で、区画移行を完了した旨を管理ノード２５またはプロセッサ３０に通知する。流れ図９１の実装は、移行された「ゼロ」の物理ストレージを禁止し、ストレージの効率を向上させ、アプリケーション・データに使用可能なストレージ・スペースを増加させる。
【００５１】
図４は、本発明の実施形態に従った、ストレージ・システム１０内の１つのキャッシュ２０およびそのディスク・サブグループ１２の概略図を示す。図４では、図２を参照しながら上記で説明したキャッシュ２０の要素と同じ参照番号で示されたキャッシュ２０の諸要素は、一般に、構造および動作において同様である。以下の説明では、ディスク１２は、物理データ区画１１０を備えるものと想定される。ストレージ・システム１０は、前述の拡張シン・プロビジョニング・システムを組み込むことによって、そのディスク上で拡張取り消し手順を実装するように構成することが可能である。本発明の一実施形態では、キャッシュは、（概要で前述した）整合性および正当性のチェックの実行に加えて、区画内に格納されたデータがゼロのみである可能性もチェックする。
【００５２】
取り消しでは、制御ユニット６４は、ディスク１２に格納された所与の物理データ区画１１０をデータ・スペース６６にコピーする。物理区画は整合性および正当性がチェックされ、エラーが見つかれば制御ユニットが訂正する。その後、制御ユニットは、データ・スペースに格納されたデータがゼロのみを含む可能性をチェックする。ゼロのみの場合、制御ユニットは区画テーブル１７内のＰＤＲ７０を更新するため、結果として物理アドレスは割り振り解除される一方で、区画は論理アドレスを保持する。区画が非ゼロ・データを含む場合、制御ユニットはデータ・スペース６６内で取り消された区画を、ディスク上の物理データ区画に書き戻す。
【００５３】
整合性および正当性チェックで見つかる可能性のあるエラー・タイプの１つは、物理データ区画が誤って非ゼロ・データを含むが、実際には非ゼロ・データのみを含む場合である。これに当てはまる場合、前述のように、制御ユニットは区画テーブル１７内のＰＤＲ７０を更新し、結果として、物理アドレスは割り振り解除される一方で、区画は論理アドレスを保持する。
【００５４】
図５は、本発明の実施形態に従った、図４のキャッシュによってデータ区画を取り消すための方法を概略的に示す流れ図１２１である。
【００５５】
区画受信ステップ１２０では、制御ユニット６４は、取り消しのためにディスク１２から区画を受信し、これをデータ・スペース６６に一時的に格納することができる。整合性チェック・ステップ１２２では、制御ユニットが区画データの整合性および正当性をチェックする。整合性チェックは、通常、区画データが関連データに従うかどうかのチェックを含み、正当性チェックは、通常、区画データの値が有効であるかどうかのチェックを含む。欠陥データ判別ステップ１２４では、制御ユニットが、区画データがエラーを含むかどうかを判別する。データ訂正ステップ１２６では、欠陥データが見つかれば制御ユニットが訂正する。適用される訂正には、図４を参照しながら上記で説明した訂正が含まれる。
【００５６】
その後、区画分析ステップ１２８では、制御ユニット６４が、すべてのビットが値ゼロを有するかどうかを判別するために、データ・スペース６６内の区画を分析する。ストレージ割り振り解除ステップ１３２では、制御ユニットは、区画がゼロのみからなるものと決定した場合、物理区画を割り振り解除する。これにより、ストレージに使用されるために区画によって以前に占有された、ディスク１２上の物理ディスク・スペースが解放される。
【００５７】
ステップ１３２に続き、ＰＤＲ更新ステップ１３４では、物理アドレスを除去するために、区画に関する区画データ記録が更新され、論理アドレス（ＬＡ）を保持する。制御ユニットは、対応する物理アドレスのない論理アドレスを含む任意のＰＤＲ７０は、区画がゼロのみからなることを示すものと理解する。これにより、後にホスト５２が、区画のすべてまたは一部を読み取るための要求をストレージ・システム１０に送信した場合、ストレージ・システムがゼロのみからなる発信区画をホストに戻すことによって、この要求に対して十分に応答されることが保証される。
【００５８】
区画分析ステップ１２８に戻り、非ゼロの区画データが見つかった場合、制御ユニットは、区画書き込みステップ１３０で、データ・スペース６６からディスクへ区画データを書き込む。ＰＤＲ修正ステップ１３４では、データ訂正が区画サイズを変更した場合、制御ユニット６４は、ＰＤＲ７０に関する物理アドレスを更新することができる。
【００５９】
ステップ１３０または１３４に続き、制御ユニット６４は、確認ステップ１３６で、区画の取り消しを完了した旨を管理ノード２５またはプロセッサ３０に通知する。流れ図１２１の実装により、取り消しプロセス中に見つかった「ゼロ」区画の物理ストレージが消去され、これによってストレージの効率が向上し、アプリケーション・データに使用可能なストレージ・スペースが増加する。
【００６０】
前述の諸実施形態は単なる例として挙げられたものであり、本発明は、上記で具体的に図示および説明された内容に限定されるものでないことを理解されよう。むしろ、本発明の範囲は、上記で説明された様々な特徴の組み合わせおよび副組み合わせの両方、ならびに、当業者が前述の説明を読めば理解されるであろう、また従来技術では開示されていない、その変更および修正を含む。
【図１】
2010541060.tif 000003
【図２】
2010541060.tif 000004
【図３】
2010541060.tif 000005
【図４】
2010541060.tif 000006
【図５】
2010541060.tif 000007
【国際調査報告】
2010541060.tif 000008