(57)【要約】データセットを利用してデータを管理する装置及び方法を示す。一つの形態では、上記装置はデータセットをデータマネジメントポリシに適合させるための、適合チェッカと適合エンジンとを含む。適合チェッカはデータセットの状態を該データセットに関連するデータマネジメントポリシに対して比較するように動作し得る。適合エンジンは、データセットが現在データマネジメントポリシに反すると適合チェッカが判定するならば、データセットをデータマネジメントポリシに適合させ得る。別の形態では、上記方法は、データストレージシステムのアドミニストレータが、複数のストレージオブジェクトを有するデータセットを定義でき更に該データセットをデータマネジメントポリシと関連付けできることを含む。上記方法は更に、上記データマネジメントポリシに従って単一のユニットとして上記データセットを管理するストレージマネジャを利用することを含み得る。
2010519646.tif 000002
【特許請求の範囲】
【請求項１】
データセットの状態をデータセットに関連するデータマネジメントポリシに対して比較して、データセットがデータマネジメントポリシに適合するかどうかを判定する適合チェッカと、
上記適合チェッカと結合し、データセットがデータマネジメントポリシに反すると上記適合チェッカが判定すればデータセットをデータマネジメントポリシに適合させる適合エンジンと
を含むストレージマネジャ。
【請求項２】
更に、クライアントマシンとインタフェースしアドミニストレータからのインプットを受け取るアプリケーションプログラミングインタフェース（ＡＰＩ）を含み、
上記適合チェッカが、上記インプットに応答して、データセットの状態をデータマネジメントポリシに対して比較する
ことを特徴とする請求項１に記載のストレージマネジャ。
【請求項３】
上記インプットが、データマネジメントポリシをデータセットに適合させるアドミニストレータからのリクエストを含む
ことを特徴とする請求項２に記載のストレージマネジャ。
【請求項４】
上記インプットが、データセットとデータマネジメントポリシとの少なくとも一方に対する変更を含む
ことを特徴とする請求項２に記載のストレージマネジャ。
【請求項５】
アドミニストレータからのインプットを、ストレージサーバの実行可能な命令に翻訳しデータセットをデータマネジメントポリシに適合させるトランスレータを、上記適合チェッカが含む
ことを特徴とする請求項２に記載のストレージマネジャ。
【請求項６】
上記適合エンジンが上記ストレージサーバに結合するストレージアダプタを含み、上記適合エンジンが上記ストレージアダプタを介して上記ストレージサーバに対して命令を発行するように動作する
ことを特徴とする請求項５に記載のストレージマネジャ。
【請求項７】
データセットが、データマネジメントポリシに関連する複数のストレージオブジェクトを含み、
上記複数のストレージオブジェクトの各々が、ストレージコンテナに格納されるデータの表現を含み、
上記ストレージコンテナが、上記表現から独立しており、
上記データセットの状態が、データマネジメントポリシの下での上記複数のストレージオブジェクト間の関係を含む
ことを特徴とする請求項６に記載のストレージマネジャ。
【請求項８】
請求項７に記載のストレージマネジャを含み、
更に上記ストレージサーバを含む
データストレージシステム。
【請求項９】
更に、上記ＡＰＩに結合し、アドミニストレータからインプットを受け取るグラフィカルユーザインタフェース（ＧＵＩ）を提供するクライアントマシンを
含む請求項８に記載のデータストレージシステム。
【請求項１０】
データセットの状態をデータセットに関連するデータマネジメントポリシに対して比較して、データセットがデータマネジメントポリシに適合するかどうかを判定するステップと、
データセットがデータマネジメントポリシに反するのであればデータセットをデータマネジメントポリシに適合させるタスクをストレージサーバに実行させるステップと
を含むマシン実装方法。
【請求項１１】
更に、アドミニストレータからインプットを受け取るステップを含み、
データセットの状態をデータマネジメントポリシに対して比較するステップが、上記インプットに応答して実行される
ことを特徴とする請求項１０に記載の方法。
【請求項１２】
上記インプットが、データマネジメントポリシをデータセットに適合させるアドミニストレータからのリクエストを含む
ことを特徴とする請求項１１に記載の方法。
【請求項１３】
上記インプットが、データセットとデータマネジメントポリシとの少なくとも一方に対する変更を含む
ことを特徴とする請求項１１に記載の方法。
【請求項１４】
更に、アドミニストレータからのインプットを、タスクを実行するストレージサーバの実行可能な命令に翻訳するステップを含む
請求項１１に記載の方法。
【請求項１５】
タスクをストレージサーバに実行させるステップが、上記ストレージサーバに対して上記命令を発行するステップを含む
請求項１４に記載の方法。
【請求項１６】
データセットが、データマネジメントポリシに関連する複数のストレージオブジェクトを含み、
上記複数のストレージオブジェクトの各々が、ストレージコンテナに格納されるデータの表現を含み、
上記ストレージコンテナが、上記表現から独立しており、
上記データセットの状態が、データマネジメントポリシの下での上記複数のストレージオブジェクト間の関係を含む
ことを特徴とする請求項１０に記載の方法。
【請求項１７】
上記比較するステップが、周期的に実行される
ことを特徴とする請求項１０に記載の方法。
【請求項１８】
アドミニストレータからのリクエストに応じて、複数のストレージオブジェクトを含むデータセットにデータマネジメントポリシを適用する複数のタスクを生成するステップと、
上記複数のタスクを確認する情報を人の読み取れる形式で確認のためにアドミニストレータにアウトプットするステップと、
アドミニストレータから確認を受け取ることに応じて、ストレージサーバに上記複数のタスクを実行させるステップと
を含む動作を、プロセッサにより実行される場合に、プロセッサに実行させる命令を格納するマシンアクセス可能媒体。
【請求項１９】
上記動作が更に、
上記リクエストに応じて、データセットの状態をデータマネジメントポリシに対して比較するステップを含む
請求項１８に記載のマシンアクセス可能媒体。
【請求項２０】
上記リクエストが、データセットとデータマネジメントポリシとの少なくとも一方に対する変更を含む
ことを特徴とする請求項１９に記載のマシンアクセス可能媒体。
【請求項２１】
上記動作が更に、
上記複数のタスクを実行するためにストレージサーバの実行可能な複数の命令を生成するステップを含む
請求項１９に記載のマシンアクセス可能媒体。
【請求項２２】
上記複数のタスクを上記ストレージサーバに実行させるステップが、上記ストレージサーバに対して上記複数の命令を発行するステップを含む
請求項２１に記載のマシンアクセス可能媒体。
【請求項２３】
上記複数のストレージオブジェクトの各々が、ストレージコンテナに格納されるデータの表現を含み、
上記ストレージコンテナが、上記表現から独立しており、
上記データセットの状態が、データマネジメントポリシの下での上記複数のストレージオブジェクト間の関係を含む
ことを特徴とする請求項２２に記載のマシンアクセス可能媒体。
【請求項２４】
コンピュータに実装される方法であって、
データストレージシステムのアドミニストレータが、複数のストレージオブジェクトを含むデータセットを定義し、上記データセットをデータマネジメントポリシと関連付けるステップであって、上記複数のストレージオブジェクトは、上記データストレージシステム内の複数のストレージサーバにより管理される複数のストレージコンテナ内に格納される論理表現を含み、上記複数のストレージコンテナの物理的表現は、上記論理表現から独立している、ステップと、
上記データマネジメントポリシに従って、単一のユニットとしてデータセットを管理するストレージマネジャを利用するステップと
を含む方法。
【請求項２５】
更に、
上記複数のストレージオブジェクトのリストを、上記ストレージマネジャのアクセス可能な持続性の記憶装置内に格納するステップを
含む請求項２４に記載の方法。
【請求項２６】
更に、
データマネジメントポリシに関する情報を含むインプットを上記アドミニストレータから受け取るためのユーザインタフェースを形成するステップであって、上記データマネジメントポリシはデータ保護ポリシを含む、ステップを
含む請求項２４に記載の方法。
【請求項２７】
単一のユニットとしてデータセットを管理するステップが、
上記データ保護ポリシを上記複数のストレージオブジェクトの各々に適用するステップと、
上記データマネジメントポリシ内の変更に応じて、上記変更を上記複数のストレージオブジェクトの各々に適用するステップと
を含む請求項２６に記載の方法。
【請求項２８】
上記データ保護ポリシが、データの収集の複製とデータの収集との間の保護関係の構造の記述と、
上記構造の複数の要素の各々に関する特性設定と
を含む請求項２７に記載の方法。
【請求項２９】
上記保護関係が、バックアップ及びミラーの関係を含む
請求項２８に記載の方法。
【請求項３０】
上記データ保護ポリシを適用するステップが、
上記データ保護ポリシに従って上記複数のストレージオブジェクトの第１のサブセットをバックアップするステップと、
上記データ保護ポリシに従って上記複数のストレージオブジェクトの第２のサブセットをミラー化するステップと
を含む請求項２７に記載の方法。
【請求項３１】
上記複数のストレージオブジェクトのうちの第１のものは、基本ストレージオブジェクトである
ことを特徴とする請求項２４に記載の方法。
【請求項３２】
上記複数のストレージオブジェクトのうちの第２のものは、基本ストレージオブジェクトへの参照である
ことを特徴とする請求項３１に記載の方法。
【請求項３３】
更に、
上記複数のストレージオブジェクトの各々のステータスパラメータの値を決定するステップと、
上記複数のストレージオブジェクトの各々のステータスパラメータの値から、上記データセットの対応するステータスパラメータの値を導出するステップと
を含む請求項２４に記載の方法。
【請求項３４】
上記データセットの対応するステータスパラメータの値を導出するステップが、
上記複数のストレージオブジェクトの各々のステータスパラメータの値の間での最大値を選択し、上記データセットの対応するステータスパラメータの値とするステップを含む
請求項３３に記載の方法。
【請求項３５】
更に、
ストレージオブジェクトの物理的実装からアドミニストレータを保護するための抽出層を設けるステップと、
データマネジメントポリシに反することなく、ストレージオブジェクトの物理的実装を修正するステップと
を含む請求項２４に記載の方法。
【請求項３６】
データストレージシステムのアドミニストレータが、複数のストレージオブジェクトを有するデータセットを定義でき、上記データセットをデータマネジメントポリシと関連付けられるユーザインタフェースを、形成するためのユーザインタフェースモジュールであって、上記複数のストレージオブジェクトは、上記データストレージシステム内の複数のストレージサーバにより管理される複数のストレージコンテナ内に格納される論理表現を含み、上記複数のストレージコンテナの物理的表現は、上記論理表現から独立している、ユーザインタフェースモジュールと、
単一のユニットとして上記データセットを管理するストレージマネジャと
を含む装置。
【請求項３７】
上記ユーザインタフェースを上記ストレージマネジャとインタフェースさせるアプリケーションプログラミングインタフェース（ＡＰＩ）を更に含む
請求項３６に記載の装置。
【請求項３８】
上記ストレージマネジャと結合し、上記複数のストレージオブジェクトのリストを格納する持続性の記憶装置を、更に含む
請求項３６に記載の装置。
【請求項３９】
上記ユーザインタフェースが、
複数のデータマネジメントポリシと、
複数のデータセットと、
アドミニストレータが、上記複数のデータマネジメントポリシのうちの一つを上記複数のデータセットのうちの一つに適用できる、第１の複数のユーザインタフェースコントロールと
を表示するグラフィカルユーザインタフェース（ＧＵＩ）を、
含む請求項３６に記載の装置。
【請求項４０】
上記ＧＵＩが更に、
アドミニストレータがデータセットを追加でき更にデータセットを削除できる、第２の複数のユーザインタフェースコントロールと、
アドミニストレータが、データマネジメントポリシを定義し更に上記定義されたデータマネジメントポリシを上記複数のデータセットに適用できる、第３の複数のユーザインタフェースコントロールと
を含む、請求項３９に記載の装置。
【請求項４１】
上記ＧＵＩが更に、
対応するデータセット内の上記複数のストレージオブジェクトの各々の値に基づいて、上記複数のデータセットの各々のステータスをアウトプットするステータスディスプレイ
を含む、請求項３９に記載の装置。
【請求項４２】
上記データマネジメントポリシを上記複数のストレージオブジェクトの各々に適用し、更にデータマネジメントポリシ内の変更に応じて、該変更を上記複数のストレージオブジェクトに適用することによって、
上記ストレージマネジャが、単一のユニットとして上記データセットを管理する、
請求項３６に記載の装置。
【請求項４３】
データストレージシステムであって、
複数のストレージサーバと、
上記データストレージシステムのアドミニストレータが、複数のストレージオブジェクトを有するデータセットを定義でき、上記データセットをデータマネジメントポリシと関連付けでき、更に上記データセットを単一のユニットとしてモニタできる、ユーザインタフェースを提供するように動作する、クライアントマシンと
を含み、
上記複数のストレージオブジェクトの各々が、データの収集及び該データの収集の複製の論理表現を含み、該論理表現は上記ストレージサーバにより管理される複数のストレージコンテナ内に格納され、上記複数のストレージコンテナは上記論理表現から独立している
データストレージシステム。
【請求項４４】
更に、
上記データマネジメントポリシを上記複数のストレージオブジェクトの各々に適用し、更にデータマネジメントポリシ内の変更に応じて、該変更を上記複数のストレージオブジェクトに適用することによって、上記データマネジメントポリシに従って単一のユニットとして上記データセットを管理する、上記複数のストレージサーバ及び上記クライアントマシンと結合するストレージマネジャを含み、
上記ストレージマネジャは、上記ユーザインタフェースを上記ストレージマネジャとインタフェースさせるアプリケーションプログラミングインタフェース（ＡＰＩ）を含む
請求項４３に記載のデータストレージシステム。
【請求項４５】
上記ストレージマネジャと結合し、上記複数のストレージオブジェクトのリストを格納する持続性の記憶装置を、更に含む
請求項４４に記載のデータストレージシステム。
【請求項４６】
複数のデータマネジメントポリシと、
複数のデータセットと、
上記アドミニストレータが、上記複数のデータマネジメントポリシのうちの一つを上記複数のデータセットのうちの一つ若しくはそれ以上に適用できる、第１の複数のユーザインタフェースコントロールと
を表示するグラフィカルユーザインタフェース（ＧＵＩ）を、
上記ユーザインタフェースが含む、請求項４３に記載のデータストレージシステム。
【請求項４７】
上記ＧＵＩが更に、
上記アドミニストレータがデータセットを追加でき更にデータセットを削除できる、第２の複数のユーザインタフェースコントロールと、
上記アドミニストレータが、データマネジメントポリシを定義し更に上記定義されたデータマネジメントポリシを上記複数のデータセットに適用できる、第３の複数のユーザインタフェースコントロールと
を含む、請求項４６に記載のデータストレージシステム。
【請求項４８】
上記ＧＵＩが更に、
対応するデータセット内の上記複数のストレージオブジェクトの各々の値に基づいて、上記複数のデータセットの各々のステータスをアウトプットするステータスディスプレイ
を含む、請求項４６に記載のデータストレージシステム。
【請求項４９】
アドミニストレータからのリクエストに応じて、ネットワークデータストレージシステム内の複数のストレージオブジェクトをデータセットに構成する工程であって、上記複数のストレージオブジェクトの各々がストレージコンテナ内に格納されたデータの収集の論理表現を含み、該論理表現がストレージコンテナから独立している、工程と、
上記リクエストに従って上記データセットをデータマネジメントポリシと関連付ける工程と、
上記データマネジメントポリシに従って単一のユニットとして上記データセットを管理する工程と
を含む動作を、プロセッサが実行する場合に、該プロセッサに実行させる命令を格納する機械アクセス可能の媒体。
【請求項５０】
更に、上記動作が、
ストレージマネジャによりアクセス可能な持続性の記憶装置内に上記複数のストレージオブジェクトのリストを格納する工程を含む
請求項４９に記載の機械アクセス可能の媒体。
【請求項５１】
更に、上記動作が、
上記アドミニストレータから上記リクエストを受け取るユーザインタフェースを形成する工程であって、上記リクエストが上記データマネジメントポリシに関する情報を含み、上記データマネジメントポリシがデータ保護ポリシを含む、工程を含む
請求項４９に記載の機械アクセス可能の媒体。
【請求項５２】
単一のユニットとして上記データセットを管理する工程が、
上記データ保護ポリシを上記複数のストレージオブジェクトの各々に適用する工程と、
上記データ保護ポリシ内の変更に応じて、該変更を上記複数のストレージオブジェクトの各々に適用する工程と
を含む、請求項５１に記載の機械アクセス可能の媒体。
【請求項５３】
上記データ保護ポリシが、
データの収集の複製とデータの収集との間の保護関係の構造の記述と、
上記構造の複数の要素の各々に関する特性設定と
を含む請求項５２に記載の機械アクセス可能の媒体。
【請求項５４】
上記保護関係が、バックアップ及びミラーの関係を含む
請求項５３に記載の機械アクセス可能の媒体。
【請求項５５】
上記データ保護ポリシを適用する工程が、
上記データ保護ポリシに従って上記複数のストレージオブジェクトの第１のサブセットをバックアップする工程と、
上記データ保護ポリシに従って上記複数のストレージオブジェクトの第２のサブセットをミラー化する工程と
を含む請求項５２に記載の機械アクセス可能の媒体。
【請求項５６】
上記データ保護ポリシに従って上記複数のストレージオブジェクトの第２のサブセットをミラー化する工程が、
上記複数のストレージオブジェクトの上記第２のサブセットのデータが格納される第１の複数のストレージコンテナを特定する工程と、
上記複数のストレージオブジェクトの上記第２のサブセットのミラーイメージのために、第２の複数のストレージコンテナを設定する工程と、
上記第１の複数のストレージコンテナと上記第２の複数のストレージコンテナの間に複数のミラー関係を確立する工程と
を含む、請求項５５に記載の機械アクセス可能の媒体。
【請求項５７】
更に、上記動作が、
上記複数のミラー関係の一つが失敗すると、データセットの一般的なエラーを報告する工程を含む、請求項５６に記載の機械アクセス可能の媒体。
【請求項５８】
更に、上記動作が、
上記複数のストレージオブジェクトの各々に関する、対応するステータスパラメータに基づいて、上記データセットのステータスパラメータの値を決定する工程を含む、請求項４９に記載の機械アクセス可能の媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この特許に係る文書の開示の一部は、著作権保護の対象である要素を含む。著作権者は、この特許に係る文書に関する複製について、即ち特許開示について、異議を唱えるものではない。特許商標庁では他でもない特許ファイル若しくは記録が、全ての著作権を何があっても留保するからである。
【０００２】
本発明は、ネットワーク化されたデータストレージシステムに関し、特にデータセットを用いてデータストレージを管理することに関する。
【背景技術】
【０００３】
ネットワーク化されたデータストレージシステムは、多数のユーザアクセスを共有データに向けること、又は、バックアップ若しくはデータミラーリングを促進することなどの、様々な目的に用いられ得る。ネットワーク化されたストレージシステムは、多数のストレージサーバを含み得る。ストレージサーバは、ディスクなどのマスストレージデバイス上のデータにアクセスし体系化することに係るサービスを、提供し得る。ファイラ若しくはファイルサーバと一般に称されるストレージサーバも存在する。それらストレージサーバは、データへのファイル−レベルアクセスを提供するからである。これらファイラには更に、データへのサブ−ファイルレベルアクセス（例えば、ブロック−レベルアクセス）をクライアントに提供するものもある。そのようなストレージサーバの例は、カリフォルニア州サニーヴェール市のネットワークアプライアンスインクにより製造されるファイラプロダクツである。ストレージサーバは、特定用途のコンピュータ、若しくは特定な用途にプログラムされた一般用途のコンピュータでインプリメントされる。アプリケーションに依存するが、種々のネットワーク化されたストレージシステムは、様々な数のストレージサーバを含み得る。
【０００４】
ファイル、ディレクトリ、ボリューム、論理装置番号（ＬＵＮ）などの、ストレージの論理装置は、ストレージサーバ上に形成され操作され得る。このような論理装置は、本明細書中ではストレージオブジェクトと称される。単体のストレージオブジェクトを形成することは通常時間も掛からず容易であるが、長い時間ストレージオブジェクトを管理するのは困難となり得る。ストレージの管理者は、ストレージオブジェクトのために利用可能なスペースを如何にしてモニタするか、データバックアップを如何にしてスケジュールするか、バックアップを如何にして構成するか、データをミラー化するか否か、データはどこにミラーされるか、等の、多数の判断をしなければならない。上記問題への答は、データマネジメントポリシに持たせることができ、ポリシが決定されると、ポリシが全ての関連するストレージオブジェクト上に正確に実装されること、要求されるスペースが利用可能であること、データ保護操作がうまくいくこと、等を、アドミニストレータは補償する必要がある。アドミニストレータが（例えば、バックアップが保持される時間量を拡張するなど）ポリシを変更することを決定するならば、アドミニストレータは、影響を受けるストレージオブジェクトを全て見出し、関連する設定を全て手動で再構成しなければならない。
【０００５】
ストレージオブジェクトの数がシステム内で増加するに連れて、アドミニストレータの仕事は、より困難且つ複雑になる。何のポリシが所与のストレージオブジェクトに適用すると考えられるか、若しくは何故所与のボリュームがミラー化されるか、をアドミニストレータが即座に決定できない可能性が高まっている。更に、アドミニストレータは、個々のストレージオブジェクトのために多数のつまらない手動操作を実施せねばならず、このことが間違いを生じやすく信頼できない。大きいデータセンタは、数百から千を超えるファイラを有することがある。個々のファイラは、数百のボリュームと数千のｑツリーを管理することがある。このことにより、同様の数のバックアップ及びミラー関係を管理するために、全体として数万から数十万のボリューム及びｑツリーの管理に繋がってしまう。オブジェクトの数は、情報技術の頭数よりも早く大きくなり、よって個々のアドミニストレータはますます多くのオブジェクトを管理している。結局、非常に多くのオブジェクトのために、アドミニストレータがデータマネジメントポリシを確実に実装することが、不可能ではないにせよ、実現できないものとなっている。よって、何のストレージオブジェクトがストレージシステム内に存在するのか、ストレージオブジェクトがどのように他のオブジェクトと関連しているのか、ストレージオブジェクトにどのポリシが適用されるべきか、追跡する助けを、ストレージアドミニストレータは必要としている。
【０００６】
ストレージアドミニストレータのための他の重要なチャレンジは、そのストレージインフラストラクチャをどのように管理するか決定すること、及び、そのストレージシステムが決定された方法で管理されることを保証すること、を含む。第１のチャレンジは、データマネジメントポリシに関する決定の問題である。ストレージアドミニストレータは、いつポリシに関する決定をするか多量の為すべき選択を有している。データをどれだけ頻繁にバックアップすべきか、バックアップコピーをどれだけ長く保持すべきか、ローカルスナップショットを利用してローカルバックアップを設けるか否か、ストレージオブジェクトをミラー化すべきか否か、等を彼らは決定する必要がある。通常、データを管理する一つの方法は、データが何のタイプのデータであるか、及びデータが如何に重要かに依存する。例えば、ミッションクリティカルな製品オーダデータベースのためのデータは、元従業員のホームディレクトリとは異なるデータマネジメントポリシを要求する。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
アドミニストレータがデータマネジメントポリシを明確にすると、他のアドミニストレータがポリシを理解し実行できるように、ポリシは記述され若しくはエンコードされなくてはならない。この記述は、人間のコミュニケーションで一般に利用される自然言語で書かれた操作マニュアルの形式であることがしばしばであり、それ故、この記述はストレージマネジメントスタッフの他のメンバに読み取られ解釈され得る。現在、この形式で書かれたポリシの自動化された実装は存在しない。更に、自動的にデータセンタを監査し、ポリシに従って、管理されていないストレージオブジェクトを見つける方法は現在存在しない。従来からアドミニストレータは、アドホックのツールを書き及び／又はアドホックのクエリを利用して、ストレージ環境をモニタしてポリシとストレージオブジェクトの状態との間の不一致を探す。アドミニストレータが不一致を見つければ、状況を改めるために何の行動を取るべきか手動で決定しなければならない。このことは非常に時間が掛かり且つ間違いが生じやすく、たいていの大きいデータセンタは、自らのデータマネジメントポリシに従ってデータを管理しているかどうか殆ど自信を持てていない。
【課題を解決するための手段】
【０００８】
本発明は、データセットを利用してデータを管理する装置及び方法を含む。一つの実施形態では、上記装置は、データセットをデータマネジメントポリシに適合させるための、適合チェッカと適合エンジンとを含む。適合チェッカはデータセットの状態を該データセットに関連するデータマネジメントポリシに対して比較し、データセットが現在データマネジメントポリシに適合するかどうか判定するように動作し得る。適合エンジンは、データセットが現在データマネジメントポリシに反すると適合チェッカが判定するならば、データセットをデータマネジメントポリシに適合させ得る。
【０００９】
一つの実施形態では、上記方法は、データストレージシステムのアドミニストレータが、複数のストレージオブジェクトを有するデータセットを定義でき更に該データセットをデータマネジメントポリシと関連付けできることを含む。上記ストレージオブジェクトの各々は、データの収集及び該データの収集の複製の論理表現を含む。上記データの収集はストレージコンテナ内に格納される。ストレージコンテナはデータストレージシステム内のストレージサーバにより管理されるが、ストレージコンテナは上記データの収集の上記論理表現から独立している。上記方法は更に、上記データマネジメントポリシに従って単一のユニットとして上記データセットを管理するストレージマネジャを利用することを含み得る。
【発明の効果】
【００１０】
本発明の他の特徴は、添付の図面から及び以下の発明の詳細な説明から明らかであろう。
【図面の簡単な説明】
【００１１】
本発明は例示により説明されるが添付の図面の図により限定されるものではない。図面では同じ符号は同じ部位を示す。
【図１】ネットワーク化されたストレージシステムの実施形態を示す。
【図２】ストレージマネジャの実施形態を示す。
【図３Ａ】データマネジメントポリシの一つの実施形態のツリーグラフを示す。
【図３Ｂ】データセットがデータマネジメントポリシと適合するか否かを判定する適合チェッカにより実施されるプロセスの一つの実施形態のフロー図を示す。
【図３Ｃ】データセットがデータマネジメントポリシと適合するか否かを判定する適合チェッカにより実施されるプロセスの一つの実施形態のフロー図を示す。
【図４】ストレージマネジャの実施形態の機能図を示す。
【図５】データセットをデータセットマネジメントポリシに適合させるプロセスの実施形態のフロー図を示す。
【図６Ａ】新しいデータセットを作成する一連のＧＵＩ画面の実施形態を示す。
【図６Ｂ】新しいデータセットを作成する一連のＧＵＩ画面の実施形態を示す。
【図６Ｃ】新しいデータセットを作成する一連のＧＵＩ画面の実施形態を示す。
【図６Ｄ】データマネジメントポリシをデータセットに適用するためのＧＵＩ画面の実施形態を示す。
【図７】データセットを利用してデータを管理するプロセスの実施形態のフロー図を示す。
【発明を実施するための形態】
【００１２】
以下の記述では多数の詳細例を説明する。しかしながら、本発明の実施形態はこれら詳細例が無くとも実施され得ることが理解される。他の例では、この記述の理解を混乱させないために、周知の要素、構成、及び技術が詳細には示されていない。
【００１３】
データセットをデータマネジメントポリシに自動的に適合させる装置及び方法を説明する。一つの実施形態では、装置は、適合チェッカ及び適合エンジンを含む。適合チェッカは、データセットの状態をそのデータセットに関連するデータマネジメントポリシに対して比較をして、データセットがデータマネジメントポリシと適合するか否かを判定するように動作する。適合エンジンは、データセットがデータマネジメントポリシに違反すると適合チェッカが判定すれば、データセットをデータマネジメントポリシに適合させる。本明細書に記載する適合チェッカ及び適合エンジンはストレージアドミニストレータにとって非常に有用である。なぜならば、アドミニストレータに非常な負担を掛けることなく、データセットが自動的に且つ頻繁にチェックされ得るからである。データセット、ストレージオブジェクト、データマネジメントポリシ、適合チェッカ、及び適合エンジンについて以下でより詳細に説明する。
【００１４】
データストレージシステム内のデータセットを利用して、データを管理する方法及び装置についても、記述する。一つの実施形態では、方法は、ネットワークデータストレージシステムのアドミニストレータが、ストレージオブジェクトのセットをデータマネジメントポリシに関連させるデータセットを定義できることを、含む。個々のストレージオブジェクトは、データの収集の論理的表現、及びデータの収集の複製を、含み得る。データの収集は、一つ若しくはそれ以上のストレージコンテナ内に格納される。ストレージコンテナは、データストレージシステム内の一つ若しくはそれ以上のストレージサーバにより管理される。ストレージコンテナは、論理的表現から独立している。方法は更に、ストレージマネジャを利用して、データマネジメントポリシに従って、単一のユニットとしてデータセットを管理することを含む。以下の説明との関連で、単一のユニットは、一つ若しくはそれ以上のメンバを有するグループであり、グループの個別のメンバに言及することなく全体としてアドミニストレータにより操作され得る。単一のユニットとしてデータセットを管理するために、データマネジメントポリシ及びその変更は、データセット内のストレージオブジェクトの全てに適用される。データセット及びデータマネジメントポリシを利用することにより、ストレージアドミニストレータの作業負荷は大幅に減少され、同様に、データマネジメントポリシ内で変更を展開する際にエラーを生じるリスクも大幅に減少する。データセット、ストレージオブジェクト、及びデータマネジメントポリシについて以下でより詳細に説明する。
【００１５】
システム概観
図１は、本発明の或る実施形態に係るネットワーク化されたデータストレージシステム１００を示す。システム１００は、クライアントマシン１１０、１１２、１１４、ストレージマネジャ１２０、ストレージマネジャデータベース１３０、ストレージサーバ１６０、バックアップストレージサーバ１４０、及び、ミラーストレージサーバ１５０を含む。上記の構成要素は、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）などの、種々のタイプの一つ若しくはそれ以上のネットワークを介して相互に結び付けられ得る。更に、ネットワーク接続は、有線、無線、若しくは両方の組み合わせであってもよい。よって、上記の構成要素は、異なる地理的位置に配置されてもよいし配置されなくてもよい。
【００１６】
一つの実施形態では、データは、データストレージシステム１００内においてファイル単位で格納され転送される。従って、システム１００は、ファイルをベースにしたネットワーク化されたストレージシステムである。そのような実施形態では、システム１００は、ファイルレベルでクライアントにデータへのアクセスをさせるネットワーク付属ストレージ（ＮＡＳ）システムであればよい。ＮＡＳシステムは、例えば、ネットワークファイルシステム（ＮＦＳ）若しくはコモンインタネットファイルシステム（ＣＩＦＳ）などの、データを検索するためのファイルアクセスプロトコルを利用する。ファイルは、論理上、ディレクトリ内に構成される。大量のストレージデバイスが、一つ若しくはそれ以上のディレクトリに割り振られ得る。一方、システム１００がストレージエリアネットワーク（ＳＡＮ）を含み若しくはその一部であり、ストレージサーバのブロックレベルでクライアントにデータへのアクセスをさせてもよい。ブロックは、ＳＡＮ内でデータを格納するのに利用されるデータの基本単位である。一方、データストレージシステム１００は、ブロックレベルとファイルレベルの両方でクライアントにデータへのアクセスをさせてもよい。
【００１７】
ここで留意すべきは、本発明に係る種々の実施形態にて、システム１００の構成要素及び関連するハードウェアのどれでも若しくは全てが利用され得ることである。しかしながら、ネットワーク化されたデータストレージシステムの他の構成が上述のものよりもより多い若しくはより少ないデバイスを含み得ることが、理解され得る。
【００１８】
一つの実施形態では、クライアントマシン１１０はストレージアドミニストレータにより利用されるので、管理者クライアントと称されることがある。対照的に、他のクライアントマシン１１２、１１４は、データにアクセスするためのネットワークデータストレージシステム１００のユーザにより利用されるので、ストレージクライアントと称されることがある。もちろん、ストレージクライアントと管理者クライアントは相互に排他的ではなく、即ち、管理者及びユーザは或る実施形態では同じクライアントマシンを利用することもある。クライアントマシン１１０、１１２、１１４は、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、特定目的計算デバイス等に実装され得る。
【００１９】
一つの実施形態では、クライアントマシン１１０は、ストレージマネジャ１２０に結合され、該ストレージマネジャ１２０は更にストレージマネジャデータベース１３０に結合される。ストレージマネジャ１２０は、一つ若しくはそれ以上のサーバ、パーソナルコンピュータ（ＰＣ）、特定目的計算デバイス等に実装され得るソフトウエアアプリケーションである。データマネジャを実装するのに利用可能なマシンの一つの実施形態の詳細が、図２に示される。ストレージマネジャ１２０は、クライアントマシン１１０とのインタフェースとなるアプリケーションプログラミングインタフェース（ＡＰＩ）を含み得る。更に、ストレージマネジャ１２０は、データセットと呼ばれるストレージ利用エンティティを管理する。データセットの詳細は以下で説明する。一つの実施形態では、ストレージマネジャ１２０は、ユーザインタフェース（例えば、グラフィカルユーザインタフェース（ＧＵＩ）、コマンドラインインタフェース（ＣＬＩ）など）を作成し、ＡＰＩ１２４を介してユーザインタフェースをクライアントマシン１１０に与える。ＡＰＩ１２４は、ストレージマネジャ１２０とクライアントマシン１１０との間で結合される独立サーバ上に実装され得る。クライアントマシン１１０は、（一般的にアドミニストレータとも称される）データストレージシステム１００のストレージアドミニストレータに、ユーザインタフェース（例えば、ＧＵＩ１１８）を提供するディスプレイ（例えば、モニタ）を含む。ＧＵＩ１１８を利用して、アドミニストレータは、ストレージマネジャ１２０に対して、データセット及び／又はデータマネジメントポリシをインプットできる。或る実施形態では、ＧＵＩ１１８は、クライアントマシン１１０上で動作する、インタネットブラウザなどの、ネットワークアクセスアプリケーションを介して、提供される。
【００２０】
一つの実施形態では、ストレージマネジャ１２０は、データセットを利用してストレージを管理するデータセットサポートモジュール１２２を含み得る。ストレージマネジャ１２０は更に、ユーザインタフェース（例えば、グラフィカルユーザインタフェース（ＧＵＩ）、コマンドラインインタフェース（ＣＬＩ）など）を作成し、ＡＰＩ１２４を介してユーザインタフェースをクライアントマシン１１０に与える、ユーザインタフェースモジュール１２６を含み得る。ＧＵＩ１１８の画面ディスプレイの或る例示の実施形態は、図６Ａ〜図６Ｄ内に示される。“ストレージマネジャ”の用語は本明細書では、ストレージマネジャ１２０の全ての形態を含むものとして利用されている。
【００２１】
アドミニストレータインプットに基づいて、ストレージマネジャ１２０はデータセットを作成し、除去し、及び／又は更新するが、個々のデータセットはデータマネジメントポリシと関連付けされる。データセット及びデータマネジメントポリシを表すオブジェクトは、ストレージマネジャデータベース１３０内に格納される。ストレージマネジャデータベース１３０は、ディスク、読み取り専用メモリ（ＲＯＭ）などの、データを持続的に格納するストレージデバイスを利用して、実装され得る。データセット及びデータマネジメントポリシを利用して、ストレージマネジャ１２０は、ネットワーク化されたデータストレージシステム１００内でデータを管理する。データセット、データマネジメントポリシ、及びデータセットを利用するデータマネジメントは、後で説明する。
【００２２】
クライアント１１０及びストレージマネジャデータベース１３０に加えて、ストレージマネジャ１２０は更に、ストレージサーバ１６０、バックアップストレージサーバ１４０
及びミラーストレージサーバ１５０に結合される。ストレージサーバ１４０、１５０、１６０は図１においてストレージサーバの例として例示の目的のためにのみ示されているのは明らかである。データストレージシステムの他の実施形態は、より多い若しくはより少ないストレージサーバを含み、夫々のストレージサーバは、様々な構成において磁気ディスク、光学ディスク、テープドライブなどの、物理ストレージデバイスを管理する。図１に戻り、ストレージサーバ１６０は、２つのディスク１６２Ａ、１６２Ｂを管理する。ディスク１６２Ａ、１６２Ｂは、全体又は一部において、種々のストレージコンテナを保持し得る。ストレージコンテナは、ファイル、ディレクトリ、ボリューム、（スペース利用割り当てと関連付けられることがある、ボリュームのサブセットである）ｑツリー、ＬＵＮなどの、データ格納のための論理単位である。例えば、ディスク１６２Ａは、２つのｑツリー１６４Ａ、１６４Ｂを保持する。一方、ディスクはストレージコンテナの一部を保持してもよい。例えば、ディスクはボリュームの一部を保持してもよく、この場合、ボリュームは複数のディスクに渡るものである。
【００２３】
クライアントマシン１１２、１１４は、ストレージサーバ１６０により管理されるディスク内のデータにアクセスできる。留意すべきは、データはｑツリー、ディレクトリ、ボリュームなどの種々の形式及び／又は構成のストレージコンテナ内で格納され得ることである。例えば、クライアントマシン１１２はｑツリー１６４Ａ内にデータを格納し、クライアントマシン１１４はｑツリー１６４Ｂ内にデータを格納する。ｑツリー１６４Ａ、１６４Ｂ内のデータを保護するために、ストレージサーバ１６０はｑツリー１６４Ａ、１６４Ｂ内のデータをバックアップサーバ１４０に送ってもよく、該バックアップサーバ１４０は、ディスク１４２内のｑツリー１６４Ａ、１６４Ｂ内のデータのバックアップコピーを作成する。更に、バックアップファイラ１４０は、ミラーストレージサーバ１５０に管理されるディスク１５２上にディスク１４２をミラー化してもよい。或る実施形態では、クライアントマシン１１２は、内部ディスク（図示せず）内にデータを格納し、バックアップストレージサーバ１４０に管理されるディスク１４２内に内部ディスクのバックアップを取らせる。留意すべきは、上記事項はデータ保護ポリシトポロジの一つの例に過ぎないということである。多くの様々なデータ保護ポリシトポロジがシステム１００で実装され得ることも理解される。
【００２４】
ストレージサーバ及びストレージデバイスの数がデータストレージシステム１００内で増えるに連れて、データマネジメントの複雑さに加えて作業負荷も増加することは、理解されるところである。従って、アドミニストレータがシステム１００内で手動でデータを管理することはより困難になる。効率を向上させエラーを起こすリスクを減少させるために、ストレージマネジャ１２０は、アドミニストレータからのデータマネジメントポリシに従って、データストレージシステム１００内のデータを管理するデータセットを自動的に利用する。データセットの詳細及びその利用については、後で説明する。
【００２５】
データセット及びストレージオブジェクト
データを効率的に管理するために、ストレージマネジャ１２０は、或る実施形態では、データを管理するために、データセットと呼ばれるエンティティを利用する。一つの実施形態では、データセットは、データマネジメントポリシと関連するストレージオブジェクトのセットを含む。データマネジメントポリシは、データセット内のストレージオブジェクトに適用されるのであり、アドミニストレータがストレージオブジェクト内のデータをどのように単一のユニットとして管理することを望むかに関するものである。換言すると、データセットは、単一のユニットとして管理されるストレージオブジェクトによってグループ化されるストレージオブジェクトの収集である。例えば、ストレージオブジェクトは、会社の従業員のホームディレクトリと定義され得るのであり、該ホームディレクトリは、会社の全従業員のホームディレクトリのデータセットのメンバである。ストレージオブジェクトは、データセットのメンバとされ得る。更にデータセット及びデータマネジメントポリシに関する詳細に進む前に、ストレージオブジェクトの詳細について以下で説明する。
【００２６】
ストレージオブジェクトは、一つ若しくはそれ以上のストレージコンテナ内のデータの収集の論理的表現、及びデータの収集の複製（例えば、データのミラー化されたコピー及び／又はデータのバックアップ化されたコピー）を、含み得る。上述の例を再び参照して、従業員のホームディレクトリのストレージオブジェクトの論理的表現は、“ｊｓｍｉｔｈ”などの従業員識別（ＩＤ）であってもよい。データの収集は、データ格納システム１００のユーザ若しくはアドミニストレータにより作成され得る。或る実施形態では、ストレージオブジェクトのデータは、データストレージシステム１００の（ストレージサーバ１６０などの）一つ若しくはそれ以上のストレージサーバにより管理される（例えば、ディスク１６２Ａなどの）ストレージコンテナ内で若しくはストレージコンテナのセット内で、格納される。例えば、上記例内の従業員のホームディレクトリのコンテンツは、ディスク１６２Ａのｑツリー１６４Ａ内で格納され得る。
【００２７】
ストレージオブジェクトの例は、ｑツリー、ボリューム、ディレクトリなどの中のデータを含む。これらの例は、基本ストレージオブジェクトと称されることもある。なぜなら、それらは、データセットとして、ネットワーク化されたデータストレージシステム１００内のストレージの基本単位でのデータの論理的表現であるからである。更に、ストレージオブジェクトは、ストレージサーバ上の全てのボリュームへの参照符などの、基本ストレージオブジェクトの収集への参照符となり得る。
【００２８】
留意すべきは、ストレージコンテナの物理的実装は、データの論理的表現から独立していることである。よって、データは、データが格納される位置や、データがアクセスされる方法によっては、管理されない。むしろ、データは、論理的表現により管理されるのであり、その論理的表現はデータのコンテンツと関連し得るものである。例えば、データは、ディスク１６２Ａ内に格納されるワードプロドキュメント“ｅｍｐｌｏｙｅｅ＿ｒｅｖｉｅｗ．ｄｏｃ”であってもよい。この例では、論理的表現は、ドキュメント名（即ち、“ｅｍｐｌｏｙｅｅ＿ｒｅｖｉｅｗ．ｄｏｃ”）であってもよい。ストレージマネジャ１２０は、ドキュメントが格納されるストレージコンテナ（即ち、この例でのディスク１６２Ａ）によって若しくはストレージコンテナのセットによって、ではなく、ドキュメント名（即ち、“ｅｍｐｌｏｙｅｅ＿ｒｅｖｉｅｗ．ｄｏｃ”）によって、ドキュメントを管理してもよい。ディスク１６２Ａの物理的実装は、ディスク１６２Ａ内に格納されるドキュメント名（即ち、“ｅｍｐｌｏｙｅｅ＿ｒｅｖｉｅｗ．ｄｏｃ”）から独立している。よって、ストレージオブジェクトを有するデータセットに加えて、ストレージオブジェクトは、どの実際の物理的ロケーションにもストレージコンテナにも拘束されず、時間経過と共に別のロケーション若しくは別のストレージコンテナに移動し得る。例えば、データセットに関連するストレージコンテナが時間経過と共にパフォーマンスを退化させ、ストレージマネジャ１２０が、アドミニストレータに警告して若しくは警告せずに、データを新しいストレージコンテナに移動することも可能である。データの物理的位置から論理的表現を分離するために、どのデータセットの移動もクライアントの観点からは実質的に透過であってもよい。よって、ストレージマネジャ１２０は、時間経過と共にデータストレージシステム１００内のリソース（例えば、ディスク１６２Ａ、１６２Ｂ、１４２、１５２）を再平衡させ得る。換言すると、データセットは、データを保持するのに利用される物理ストレージコンテナを仮想化する。
【００２９】
或る実施形態では、データセットは、メタデータに加えてユーザ作成データを含む。メタデータは、ユーザ作成データに関する情報を含む。メタデータの例は、エクスポート名、言語セッティング、ストレージサーバ結合、ＬＵＮマッピング、複製構成、割り当て、ポリシ、コンシステンシグループなどを含む。メタデータは、対応するデータセットを移動するのに若しくは復元するのに、利用され得る。従って完全なデータセットバックアップは、障害回復シナリオを処理するのに有用である。データセットに関連するプライマリストレージセットのホストとなるストレージサーバ（例えば、ファイラ）が破壊されると、データセットは、プライマリデータセットの複製である別のストレージセットを利用して別のストレージサーバ上に再構成され、アドミニストレータによる手動の構成無しでクライアントデータアクセスを提供し得る。
【００３０】
更に、データセットは、それが含むストレージオブジェクトに関する、２つのタイプのメンバシップ、即ち静的メンバシップと動的メンバシップを有し得る。静的メンバは、ローレベルのストレージオブジェクト（ボリューム、ディレクトリ、ＬＵＮ）であり、それら自身により管理可能である。言い換えれば、上述の基本ストレージオブジェクトは静的メンバである。動的メンバは、他のストレージオブジェクトを含み得るストレージオブジェクトのことである。例えば、アドミニストレータは、静的メンバとして、データセットにユーザのホームディレクトリを追加できる。一方、所与のストレージサーバが、ホームディレクトリを保持しデータセットに対して動的メンバとしてストレージサーバそれ自身を追加するのにのみ、利用されることが、アドミニストレータは理解できる。このことは後でのアドミニストレータの作業を減ずるものである。なぜなら、ディレクトリはそのストレージサーバ上で形成され破壊されるのであり、ディレクトリは動的にデータセットに追加され若しくはデータセットから除去され得るからである。
【００３１】
メンバシップ以外にも、データセットは、本発明の或る実施形態においては、そのメンバのステータスを統合する。アドミニストレータが追跡を望むステータスパラメータは複数存在し得る。或る例示のステータスパラメータは、データ利用可能性ステータス、データ保護ステータス、及び、データ保護ポリシ適合ステータスを含む。データ利用可能性ステータスは、データセットの要素の全てが利用可能であるか否かを示す。データ保護ステータスは、データセットメンバの全てがデータ保護ポリシにより保護されていることを示す。データ保護ポリシ適合ステータスは、データ保護メカニズム（例えば、スナップショット、バックアップ及びミラー）がデータ保護ポリシによって構成されていることを示す。ストレージマネジャ１２０は、データセットのメンバの対応するステータスをロールアップして、データセットの対応するステータスの値を導出する、若しくは生成することができる。
【００３２】
一つの実施形態では、ステータスパラメータは複数のレベルを有し、各々は一つの値に関連する。データセットの中でメンバの対応するステータスのパラメータを組み合わせて、ストレージマネジャ１２０は、メンバの、全ての対応するステータスの間で最大の値を選択できる。例えば、ステータスは、６つの可能なレベル、つまり、「通常」、「情報」、「警告」、「エラー」、「危機」、及び「緊急事態」、を有し得るのであり、ここで、「通常」は１の値を有し、「情報」は２の値を有し、「警告」は３の値を有する、等である。例示のデータセットが、３つのメンバを有し、それらの対応するステータスパラメータ値が２、３及び５であることを、想定する。ストレージマネジャ１２０は、全体のデータセットの対応するステータスパラメータ値を５に決定できる。この値は３つの値の内で最大値である。
【００３３】
個別のオブジェクトステータスパラメータ値を単一のデータセットステータスパラメータ値の中に組み合わせることにより、アドミニストレータは、ずっと少ない数の値を追跡できる。データセットのステータスパラメータの値が、所定のしきい値より大きい若しくは等しいならば、アドミニストレータは、個別のオブジェクトステータス値をチェックする必要がない。逆に、データセットステータスパラメータがしきい値より小さいならば、ストレージマネジャ１２０は、アドミニストレータにエラーの原因を調査するように警告できる。ステータスを複数レベルに分解することは、アドミニストレータに対して、エラーの性質を示すことになり、アドミニストレータに対し問題を解決する際に有利なスタートを与えることになる。
【００３４】
データセットへの動作
或る実施形態では、ストレージマネジャ１２０は、アドミニストレータ要求に応じる等して、データセット上で種々の動作を実行できる。その動作の例は、データセットの関連するデータマネジメントポリシを変更若しくは修正するステップ、新しいメンバをデータセットに設定するステップ、データセット内にメンバをリストするステップ、メンバをデータセットに加えるステップ、メンバをデータセットから削除若しくは除去するステップ、データセットをストレージコンテナの別のセットに移動するステップ、データセットに特有のパフォーマンスビューを生成するステップ、データセットのストレージ利用レポートを生成するステップ、データセット上に、若しくはデータセット内部の個別のメンバ上に割り当てをセットするステップを、含む。これらは、ストレージマネジャ１２０がデータセットに関して実行しうる幾つかの動作の例示に過ぎないことが、理解され得る。上記のリストは、可能な動作の全ての排他的リストではない。
【００３５】
データマネジメントポリシ
上述のように、データセット内のストレージオブジェクトはデータマネジメントポリシに関連する。一般に、データマネジメントポリシは、関連するデータセットの所望のビヘイビアの記載をふくむ。例えば、データマネジメントポリシは、ストレージがどのように利用され構成されるか、記載できる。一つの例示のデータマネジメントポリシは、データ保護ポリシであり、それはデータセット内のストレージオブジェクトがどのように保護されるかを記載する。データマネジメントポリシの他の例は、パフォーマンスマネジメントポリシ、設定ポリシなどを含む。データマネジメントポリシに関連する属性は、可能な最も高いレベルで抽出され、基本技術の実装が、アドミニストレータに悪影響を与えることなく時間経過と共に変更することが可能になる。言い換えれば、抽出層は、アドミニストレータと、データが格納されるストレージコンテナの物理的実装との間に、設けられる。物理的実装は、データマネジメントポリシに違反する若しくは悪影響を与えることなく、修正され得る。よって、アドミニストレータは、データセットが自動的に利用可能になったときにデータセットがより新しい技術を利用できる種々の基本的技術の特異性から、守られ得る。アドミニストレータが所望のメンバをデータセットに加えると、ストレージマネジャ１２０は、データセットに関連するデータマネジメントポリシを、データセット内の全てのメンバに適用することを、自動的に開始し得る。例えば、ストレージマネジャ１２０は、データマネジメントポリシに従って、データセット内にストレージオブジェクトを構成し、データセット内のストレージオブジェクトのバックアップをスケジュールし、等し得る。アドミニストレータが異なるデータマネジメントポリシをデータセット内のストレージオブジェクトのサブセットに適用することを試みるならば、ストレージマネジャ１２０はアドミニストレータに警告するエラーメッセージを生成し、該アドミニストレータは、ストレージオブジェクトのそのサブセットを別のデータセットに再割り当てすることによって、若しくは、ストレージオブジェクトのそのサブセットのための新しいデータセットを作成することによって、応答を行うことができる。
【００３６】
或る実施形態では、データマネジメントポリシは、複数のノード及びブランチを有するツリーグラフにより表され得る。図３Ａは、データマネジメントポリシの一つの実施形態のツリーグラフを示す。ツリーグラフ２１０は、ノード２１１〜２１６とブランチ２５１〜２５５を含む。個々のノードはストレージオブジェクトを示し、ブランチを介して別のノードと結合し、このことは２つの対応するストレージオブジェクト間の関係を記述する。例えば、ブランチ２５３には、ノード２１２とノード２１４間の“バックアップ”結合が付されている。よって、ノード２１４により示されるストレージオブジェクトは、ストレージオブジェクト２１２のバックアップコピーである。グラフ２１０は、アドミニストレータがデータストレージシステム内のデータをどのように管理する意図であるのかを示す。
【００３７】
或る実施形態では、データマネジメントポリシは、ポリシをストレージマネジャ１２０に実装する技術の構成及び選択にアドミニストレータが満足する、放置するということから、データの属性を記述する。ポリシ内の属性は、概略、ソフトウエア技術及びハードウェア選択ではなく、所望のデータ保護ビヘイビア及び構成のセッティングに、争点を合わせる。ハードウェアの選択はストレージのパフォーマンス及びコストに相当に影響を与え得るが、物理的器具の選択は、以下により詳細に説明する簡素なラベルスキームにより促進され得る。上述の属性の例は、コスト、パフォーマンス、利用可能性、信頼性、データ保護のタイプ、容量関連作用、セキュリティセッティング、容量などを含む。
【００３８】
或る実施形態では、システム１００内のストレージコンテナは（全体的にリソースプールと称されてもよく、）“層−１”、“層−２”、“層−３”などの、ユーザ定義のストリングのラベルを付される。そのようなラベルは、物理的ストレージリソースを選択データセットに限定する設定ポリシの一部として、特定され得る。ストレージを設定するとき、データアクセス名は、結果としてのデータセットの所望のビヘイビアのためのポリシに加えて、特定され得る。データアクセス名は、必要なエクスポート構成（例えば、ＮＦＳ、ＣＩＦＳ、ＩＳＣＳＩ、ＦＣＰ等）を構成するように利用される。
【００３９】
データセットに関連するデータマネジメントポリシはアドミニストレータにより明示的に変更され得ることに留意すべきである。例えば、階層的ストレージシステムでは、層−１ストレージ内のデータが古くなるに連れて、データの検索能力若しくは重要性が減少し、よって、層−１のストレージから層−２のストレージへデータは移動し得る。或る実施形態では、アドミニストレータは、どのデータセットが移動のための候補であるかを決定し、そのデータセットを層−２ストレージ内のデータのために作成されたポリシと関連付けることができる。
【００４０】
或る実施形態では、アドミニストレータが所望のメンバをデータセットに追加すると、ストレージマネジャ１２０は、データセットに関連するデータマネジメントポリシを、データセット内の全てのメンバに適用することを自動的に開始する。例えば、ストレージマネジャ１２０は、データマネジメントポリシに従って、データセット内のストレージオブジェクトを構成し、データセット内のストレージオブジェクトバックアップをスケジュールし、等することができる。データセット及び／又はデータマネジメントポリシ内の変更に応じて、ストレージマネジャ１２０はデータセットを自動的にチェックしてデータセットがポリシに未だ適合するか否か判定し、もし適合しないならばストレージマネジャ１２０はポリシをデータセットに再び適用して、データセットをポリシに適合させることもできる。例えば、アドミニストレータが新しいメンバをデータセットに加えると、ストレージマネジャ１２０は、出たセットに関連するデータマネジメントポリシを新しいメンバに自動的に適用する。別の例では、アドミニストレータがデータセットに関連するデータマネジメントポリシに警告すると、ストレージマネジャ１２０は、警告されたデータマネジメントポリシに関連するデータセットを自動的に特定する。影響を受けるデータセットを特定するために、ストレージマネジャ１２０はストレージマネジャデータベース１３０にアクセスし、警告されたポリシに関連するデータセットを見出す。続いてストレージマネジャ１２０は自動的にチェックして、データセット内のストレージオブジェクトが警告されたデータマネジメントポリシに未だ適合するか否か判定する。適合しなければ、ストレージマネジャ１２０は、警告されたポリシを、データセット内のストレージオブジェクトに自動的に適用する。例えば、ストレージマネジャ１２０は、警告されたポリシに従って、ストレージサーバ間の関係だけでなく、ストレージサーバ（例えば、ストレージサーバ１４０、１５０、１６０）及び／又はストレージデバイス（例えば、ディスク１４２、１５２、１６２Ａ、１６２Ｂ）を、自動的に再構成し得る。
【００４１】
或る実施形態では、ストレージマネジャ１２０は、データセットをデータマネジメントポリシに適合させるためにストレージマネジャ１２０が何のアクションを取るように構成されているかに関するプレビュをもアドミニストレータに与えるのであり、これにより、アドミニストレータは、アクションが為される前にアクションが正しいことを確認できる。或る実施形態では、ストレージマネジャ１２０は、或る解決されていない状況を発見しそれらを手動で解決するためアドミニストレータに報告し得る。
【００４２】
データマネジメントポリシに関する種々の動作が利用可能である。或る例は、ポリシ管理及びクローニングを含む。ポリシ管理のために、アクセスコントロールメカニズムに基づく役割によって許される許可を条件として、災害回復要求に従って、ポリシは修正され得る。クローニングのために、クローニング動作を利用して、同一の属性を伴うポリシの新しい複製が生成され得る。
【００４３】
データセットを利用するデータマネジメントの利点
本明細書に記載のデータセット及びデータマネジメントポリシを利用すれば、ストレージアドミニストレータの作業負荷が大幅に減少する。本明細書に記載のデータセットを利用して手動の管理作業が減少する促進となりより信頼性の高いポリシ実装が保証される、少なくとも２つの方法がある。
【００４４】
先ず、ストレージアドミニストレータがモニタしなければならないオブジェクトの数を減少させることから、データセットを利用することが作業を減少し得る。データセンタは数十万のディレクトリを有し得るのであり、これらはずっと少ない数の収集の中に分類され、より少ない数のポリシにより管理され得る。例えば、大企業内のあらゆるユーザは、ホームディレクトリを有するが、これらは全て同じように管理される必要がある。よって、これらのホームディレクトリは、データ保護ポリシに関連する単一のデータセット内に収集され得る。企業がどれだけ成長しても、新しいユーザのために日々の管理義務を追加する必要はない。新しいホームディレクトリが形成されると、他のホームディレクトリを含むデータセットに、手動で若しくは自動で追加され、アドミニストレータは、何千ものホームディレクトリを個別に管理することなく、それ以降単一のユニットとしてデータセットを管理し得る。
【００４５】
データセットが作業を減少する第２の方法は、データマネジメントポリシの実装及び変更を自動化することである。例えば、当初ユーザのホームディレクトリを決定したデータセンタはバックアップされたが、バックアップを保持する二次的なストレージは更なる保護を必要としなかった、と仮定する。更に、アドミニストレータがこれは十分でないと続いて判定し、ホームディレクトリバックアップがオフサイトストレージにミラーされる、と仮定する。従来の環境では、これは莫大なタスクであり、例えば、ホームディレクトリバックアップを常に保持する二次的なボリューム全てトラックダウンすること、適切なミラー化されたストレージを設定すること、ミラープロセスを全て構成すること、及び、ミラー動作がうまくいっていることをモニタすること等を含む。データマネジメントポリシに関連するデータセットを利用すれば、アドミニストレータはミラーリングステージを加えるようにデータマネジメントポリシを修正しさえすればよい。これによりストレージマネジャ１２０は、現状ではミラーを必要としミラー化されたストレージを設定し関係を確立している、全てのボリュームを見つけることに関する退屈なタスクを、実施できることになる。継続的に、ストレージマネジャ１２０は、ミラーが稼動していることをモニタし、稼動していなければデータセットの広範なエラーステータスを報告することができる。
【００４６】
本発明の或る実施形態に従って、データセット、ストレージオブジェクト、データマネジメントポリシのコンセプトに対して、上述の導入を行い、ストレージマネジャ１２０、及び、データセットをデータマネジメントポリシに適合させるプロセスに関する、或る実施形態の更なる詳細を、以下に説明する。
【００４７】
ストレージマネジャ
ストレージマネジャ１２０の一つの実施形態は、図２に示すようなサーバ上に実装され得る。図２を参照して、ストレージマネジャ２００は、プロセッサ２２２、メモリ２２４、ネットワークインタフェース２２６、及びストレージアダプタ２２８を含み、それらはバスシステム２３０を介して相互に結合する。バスシステム２３０は、一つ若しくはそれ以上のバス及び／又は相互接続を含み得る。ストレージマネジャ２００は、ネットワークインタフェース２２６を介してネットワーク（例えば、インタネット）と通信し、該ネットワークインタフェース２２６はイーサネット（登録商標）アダプタ、ファイバチャネルアダプタ等であればよい。ネットワークインタフェース２２６は、データストレージシステムのアドミニストレータにより利用可能な（図１のクライアントマシン１１０などの）クライアントマシンと通信するために、公衆通信回線、専用通信回線、若しくは両方の組み合わせに、結合することができる。
【００４８】
一つの実施形態では、プロセッサ２２２はメモリ２２４から命令を読み取りその命令を実行する。メモリ２２４は、例えば、ランダムアクセスメモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、フラッシュメモリ、一つ若しくはそれ以上の大量ストレージデバイス（例えば、ディスク）などの、あらゆる様々なタイプのメモリデバイスを含み得る。メモリ２２４は、オペレーティングシステム２３０の命令を格納する。プロセッサ２２２はメモリ２２４から命令を検索し、オペレーティングシステム２３０を稼動することができる。ストレージマネジャ２００は、ストレージアダプタ２２８を介して一つ若しくはそれ以上のストレージサーバ（例えば、図１のストレージサーバ１４０、１５０、１６０など）とインタフェースするが、該ストレージアダプタ２２８は、小型コンピュータ用周辺機器インタフェース（ＳＣＳＩ）アダプタ、ファイバチャネルアダプタ等を含み得る。
【００４９】
適合チェッカ及び適合エンジン
図４は、ストレージマネジャ３００の一つの実施形態の機能図を示し、該機能図は図１のストレージマネジャ１２０を示すことも可能である。ストレージマネジャ３００は、ＡＰＩ３３０、適合チェッカ３１０、及び適合エンジン３２０を含む。ＡＰＩ３３０は動作上適合チェッカ３１０に結合し、該適合チェッカ３１０は動作上適合エンジン３２０に結合する。適合チェッカ３１０は、トランスレータ３１２を含む。適合エンジン３２０はストレージアダプタ３２２を含む。ＡＰＩ３３０はＧＵＩ３４０と通信上結合し、該ＧＵＩ３４０はクライアントマシン（例えば、図１のクライアントマシン）により提供され得る。ストレージマネジャ３００はデータベース３５０と結合し、該データベース３５０はデータセット及びデータマネジメントポリシの表現を格納し、それらデータセット及びデータマネジメントポリシの表現はオブジェクトとも称される。一般に、適合チェッカ３１０は、データセットのストレージオブジェクトが、データセットに関連するデータマネジメントポリシに適合するか否かをチェックする。データマネジメントポリシに適合するために、データセットのストレージオブジェクトは、データマネジメントポリシにより特定されるように、相互の関係を有さなければならない。言い換えれば、ストレージオブジェクトが、データマネジメントポリシ内で特定されるように相互に関係しないならば、データセットはデータマネジメントポリシに反することになる。例えば、データセットが３つのボリューム、即ち、ボリュームＡ、ボリュームＢ、ボリュームＣを含むとする。データセットはデータマネジメントポリシと関連しており、該データマネジメントポリシは、相応のバックアップとボリューム間のミラーリング関係とを特定する保護ポリシである、とする。特にこの保護ポリシは、ボリュームＡはボリュームＢ上でバックアップされ、ボリュームＢはボリュームＣへミラー化される、と特定しているとする。そうすると、ボリュームＡがボリュームＢ上でバックアップされ、ボリュームＢがボリュームＣへミラー化されているならば、データセットは保護ポリシに適合する。一方で、ボリュームＡがボリュームＢ上でバックアップされず、及び／又はボリュームＢがボリュームＣへミラー化されていないならば、データセットは保護ポリシに反する。もちろん、（この場合、保護ポリシである）データマネジメントポリシは、ストレージオブジェクト間の関係（例えば、バックアップとミラーリングの頻度）に関してより詳細に特定してもよい。データセットがデータマネジメントポリシに適合するか若しくは反するかを、適合チェッカ３１０がどのようにして判定するかにつき、より詳細に以下で説明する。
【００５０】
或る実施形態では、ＧＵＩ３４０は、データセット及び／又はデータマネジメントポリシに関するアドミニストレータインプット３０１を受け取る。アドミニストレータインプット３０１は、例えば、データマネジメントポリシをデータセットに適用するリクエスト、現存のデータマネジメントポリシ及び／又は現存のデータセットへの変更、新しいデータマネジメントポリシ及び／又は新しいデータセットを作成するリクエストなどを含み得る。アドミニストレータインプット３０１は、構造化された機械読み取り可能なフォーマットの、単語、語句などの人間が読み取れる用語で、通常書かれている。ＡＰＩ３３０は、ＧＵＩ３４０からアドミニストレータインプット３０１を受け取り適合チェッカ３１０にインプット３０５を送る。
【００５１】
適合チェッカ３１０内のトランスレータ３１２は、アドミニストレータインプット３０１を機械読み取り可能な用語に翻訳する。或る実施形態では、クライアントマシン（例えば、図１のクライアントマシン１１０）で稼動するクライアントプログラムはＡＰＩ３３０を呼び出し、該ＡＰＩ３３０は、通常オブジェクトと称されるデータセット及び関連するデータ保護ポリシの、インメモリ表現を構築し得る。これらのオブジェクトは、上述のストレージオブジェクトとは異なるソフトウエアエンティティであることに、留意されたい。続いてＡＰＩ３３０は、データセット及びポリシに対応するオブジェクトへのポインタにより、適合チェッカ３１０内のメインエントリポイントを呼び出す。適合チェッカ３１０は、データセットの状態をデータマネジメントポリシに対して比較し、データセットがデータマネジメントポリシに適合するかどうか判定する。例えば、適合チェッカ３１０は、データセットに適用されるポリシを表すツリーグラフの結合を介して、繰り返される。図３Ａに戻り、適合チェッカ３１０は、ブランチ２５１〜２５５により表される結合を介して繰り返される。例えば、適合チェッカ３１０は、ブランチ２５１からブランチ２５２へのツリーグラフ２１０を介して繰り返され、ブランチ２５３、２５４、２５５へのツリーグラフ２１０を介して繰り返され得る。一方、適合チェッカ３１０は、ブランチ２５１からブランチ２５３、２５４へのツリーグラフ２１０を介して繰り返され、ブランチ２５２へのツリーグラフ２１０を介して繰り返され、最後にブランチ２５５へのツリーグラフ２１０を介して繰り返され得る。夫々の結合に対して、適合チェッカ３１０は、種々の判定を行うことによって、ノード２１１〜２１６により表されるストレージオブジェクトの状態を比較する。本発明の一つの実施形態に従って、適合チェッカ３１０により行われる判定を示すフローチャートが、図３Ｂ及び図３Ｃに示される。
【００５２】
図３Ｂを参照して、適合チェッカ３１０は、ツリーグラフのソースノードに対応するデータセットの夫々のメンバが、ポリシに従ってストレージサーバ間の関係により保護されるかどうかを判定する（ブロック２６１）。例えば、適合チェッカ３１０は、データストレージシステムの設定ファイルを調査し、ストレージオブジェクトを管理するストレージサーバ間の関係を見出し得る。例えば、ポリシが、ボリュームＡがボリュームＢにミラーされることを要求しているとする。ここでボリュームＡはストレージサーバＡに在り、ボリュームＢはストレージサーバＢに在るものとする。適合チェッカ３１０は、データストレージシステムの設定ファイルを調査して、ストレージサーバＡがボリュームＡをストレージサーバＢのボリュームＢにミラーしているかどうかを判定できる。言い換えれば、適合チェッカ３１０は、ストレージサーバＡとストレージサーバＢとの間にミラーリングの関係があるかどうかをチェックできる。もし無ければ、データセットは適合状態には無いことになる。もし有れば、適合チェッカ３１０はブロック２６２に進み、ツリーグラフの目的ノードで終端とならない関係により保護されるソースノードがあるかどうか判定する。もしあれば、データセットは適合状態には無い。もし無ければ、適合チェッカ３１０は、ソースノードに対応しない関係のためのエンドポイントである目的ノードがあるかどうか判定する（ブロック２６３）。もしあれば、データセットは適合状態には無い。次に、適合チェッカ３１０は、ツリーグラフ内に欠けている物理的関係が存在するかどうか判定する（ブロック２６４）。もし存在すれば、データセットは適合状態に無い。もし存在しなければ、処理は図３Ｃに進む。
【００５３】
図３Ｃを参照して、適合チェッカ３１０は、ソースノードのコピーを保持するための現存のストレージオブジェクトがデータセット内にすでに有るかどうかを判定する（ブロック２６５）。もし無ければ、データセットは適合状態には無い。もし有れば、適合チェッカ３１０は、ストレージオブジェクトがデータを保持する程十分に大きいかどうか判定する（ブロック２６６）。もし大きくなければ、データセットは適合状態には無い。次に、適合チェッカ３１０は、適切な目的オブジェクトがあるかどうか判定する（ブロック２６７）。もしあれば、データセットは適合状態にある。もし無ければ、適合チェッカ３１０は、適切な目的オブジェクトが構築され得るかどうか判定する（ブロック２６８）。もしされ得るのであれば、データセットは適合状態にある。もしされ得ないのであれば、データセットは適合状態には無い。
【００５４】
適合チェッカ３１０がデータセットがデータマネジメントポリシと適合していないと判定すると、適合チェッカ３１０はタスク若しくはタスクのセットを生成するが、これらはデータセットをデータマネジメントポリシに適合させるためのものである。タスクは、ストレージサーバに、ストレージオブジェクトを作成すること、ストレージオブジェクトのセットの間で関係を作成すること、ストレージオブジェクトを削除することなどの、特定の機能を実行させるための、一つ若しくはそれ以上の特定の機械実行可能の、若しくは既空き読み取り可能の命令を含んでいる。例えば、適合チェッカ３１０が、データセット内にソースノードを保持するストレージオブジェクトが現存しないのでデータセットがデータマネジメントポリシと適合しないと判定すると、適合チェッカ３１０は、新しいストレージオブジェクトを作成するためにストレージを設定する命令を含むタスクを生成できる。タスクは更に、データセットをそのポリシに適合させるために、為されるべきニーズのパラメータを含んでもよい。上記問題の中には、適合チェッカ３１０により解決できない状況に繋がるものもある。例えば、データセットが、接続の目的ノードのための十分なストレージオブジェクトを含んでいないとき、適合チェッカ３１０は、アドミニストレータがより多くのストレージオブジェクトを供給しないならばこの問題を解決できない。これら状況に対応するタスクは解決不可能なものと考えられる。他のタスクは解決可能である。つまり、適合チェッカ３１０が適切な矯正的アクションに関して判定できる十分な情報を備える、ということである。適合チェッカ３１０は生成されたタスクをタスクリストの中に置く。
【００５５】
或る実施形態では、トランスレータ３１２は、タスクリストを人間の読み取り可能な記述３０３Ｂに翻訳し、この記述３０３Ｂは適合チェッカ３１０からＡＰＩ３３０に送られる。例えば、個々のタスクは特定ピースのコードと関連付けられ、タスクを対応する人間の読み取り可能な記述に翻訳する。ＡＰＩ３３０は、タスクリストに関する人間の読み取り可能な記述３０３ＡをＧＵＩ３４０に送り、該ＧＵＩ３４０は、タスクリストに関する人間の読み取り可能な記述３０３Ａをアドミニストレータにアウトプットする。例えば、ＧＵＩ３４０は、タスクリストに関する人間の読み取り可能な記述３０３Ａを画面ディスプレイ内にアウトプットする。アドミニストレータは、タスクリストに関する人間の読み取り可能な記述３０３Ａを照合でき、正しければ、アドミニストレータは、タスクリストに関する人間の読み取り可能な記述３０３Ａが正しいことをＧＵＩ３４０を介して確認できる。これらの記述によって、ユーザは適合チェッカ３１０の“リハーサル”を見ることができる。アドミニストレータは、リハーサルの結果を受け入れることもできるし、動作をキャンセルすることもできる。このようにリハーサルの結果は、データセット若しくはポリシオブジェクトの何れかの修正されたコピーを適合チェッカ３１０に送るのに有用である。アドミニストレータは、これらのオブジェクトに対する変更を暫定的に作成でき、適合チェッカ３１０を呼び出すことができる。リハーサルの結果は、アドミニストレータが変更をデータストレージシステムに引き渡すならば何が為されるべきか、を示す。比較的破壊的な変更もあり得るので、変更を実装する前にアドミニストレータが変更の影響を確認できることにより、アドミニストレータはそのような破壊的な変更をすることに対するセーフティネットが与えられることになる。
【００５６】
アドミニストレータから確認を受けると、適合チェッカ３１０は、機械読み取り可能なタスクリスト３０７を適合エンジン３２０に進め得る。適合エンジン３２０はリスト３０７内のタスクを順々に、例えば先入れ先出し（ＦＩＦＯ）で処理し、適切なコマンド若しくは命令３０９をストレージサーバ（例えば、図１のストレージサーバ１４０、１５０、１６０）に送り、ポリシに適合するストレージシステムを再設定する。適合エンジン３２０はポリシに基づいて判定を行うのではなく、適合エンジン３２０は適合チェッカ３１０の代わりにタスクを処理するに過ぎないことに留意されたい。よって、適合エンジン３２０は、リスト３０７内のタスクの順序を変更しない。
【００５７】
或る実施形態では、適合エンジン３２０は、図１のストレージサーバ１４０、１５０、１６０などの、データストレージシステム内の一つ若しくはそれ以上のストレージサーバとインタフェースするネットワークアダプタ３２２を含む。ストレージサーバは、ストレージマネジャ３００により管理される。ネットワークアダプタ３２２は、データセットをデータマネジメントポリシに適合させるために、タスクリスト内の命令を関連するストレージサーバに発行し、ストレージサーバに命令に従った機能を実行させる。例えば、ストレージマネジャ３００からの命令は、ストレージサーバに対して、データマネジメントポリシに従ってデータバックアップをスケジュールすること、データマネジメントポリシに従ってストレージサーバにより管理されるストレージの幾つかを再設定すること、データマネジメントポリシに従ってストレージデバイスを再割り当てすること、などを行わせ得る。タスクが実行を終了すると、ストレージマネジャ３００は、データセットをデータマネジメントポリシに適合させたことになる。
【００５８】
適合チェッカ及び適合エンジンを利用することの利点
上述のように、ストレージアドミニストレータは従来、或る機械読み取り不可能なフォーム（例えば、英文で）データマネジメントポリシを記述し、ポリシに対するストレージシステム設定を手動でチェックし、問題があるかどうか確認する。ポリシが正しく実装されていることを確認するため上述のストレージマネジャ３００を利用することには、従来のアプローチに比べて多くの利点がある。
【００５９】
先ず、上述のストレージマネジャ３００は、アドミニストレータに対して大きな利便性をもたらす。ストレージマネジャ３００の適合チェッカ３１０は適合のために自動的にチェックするので、データストレージシステム内のデータセットはより早くより頻度多くチェックされ得る。このことは、アドミニストレータに手動でデータセットをチェックさせるよりも、より早く問題を検出することを助ける。更に、適合チェッカ３１０が問題を検出すると、アドミニストレータは状況を解決するためのコマンドを手動で入れなくてもよい。逆に、適合チェッカ３１０はタスクのリストを生成する。該リストは、データセットをデータマネジメントポリシに適合させるように実行され得る。手動でコマンドや命令を入力することは退屈でありエラーの元となる。よって、ストレージマネジャ３００は、データマネジメントポリシを変更する際エラーを生じるリスクを減少する助けとなる。
【００６０】
更に、適合チェッカ３１０と適合エンジン３２０との夫々によりサポートされる２つのステージに、適合プロセスを分割することにより、アドミニストレータは、費用のかかる、若しくはやり直しのきかないアクションを行う前に、何のタスクが実行されるべきか確認できる。アドミニストレータが適合チェッカ３１０により推奨されたタスクを受け入れないと決定したならば、アドミニストレータは実行する前にタスクをキャンセルできる。更に、アドミニストレータがデータ保護ポリシを変更すると決定したならば、適合チェッカ３１０は、そのポリシを用いる全てのデータセットを特定し、データセットを適合させるのに必要な動作を導き出すことができる。上述のように、このことは、データマネジメントポリシ内の変更のリハーサルとして考え得る。リハーサルをプレビュすることにより、アドミニストレータは、データマネジメントポリシ内に変更を実装する前に、その変更が破壊的すぎないか若しくは費用がかかりすぎないか、判定できる。
【００６１】
データセットをデータマネジメントポリシに適合させる動作
図５は、データセットを用いてデータストレージシステム内のデータを管理する処理の一つの実施形態のフロー図を示す。プロセスは、（例えば、回路、専用論理などの）ハードウェア、（汎用コンピュータシステムや、図１のストレージマネジャ１２０などの専用機などで稼動する）ソフトウエア、ファームウエア、若しくはそれらの組み合わせを含む、処理論理により、実行される。
【００６２】
図５を参照して、処理論理は、データストレージシステムのアドミニストレータからのインプットを受ける（処理ブロック４１０）。処理論理は続いて、データマネジメントポリシをデータセットに適用するリクエスト、若しくは、データマネジメントポリシとデータセットの少なくとも一つに対する変更が、あるかどうかチェックする（処理ブロック４２０）。もしリクエストも変更もなければ、処理論理は処理ブロック４９０に移行し、処理が終わる。もし何れかが有れば、処理論理は処理ブロック４３０に移行する。
【００６３】
或る実施形態では、処理論理は、データマネジメントポリシに対してデータセットの状態を比較する（処理ブロック４３０）。処理論理は、データセットがポリシに適合するかどうかチェックする（処理ブロック４４０）。もし適合すれば、処理論理は処理ブロック４９０に移行し、処理が終わる。もし適合しなければ、処理論理は処理ブロック４５０に移行する。
【００６４】
処理論理は続いて、アドミニストレータからのインプットを翻訳してストレージサーバにより実行可能である命令の中に入れる（処理ブロック４５０）。或る実施形態では、これらの命令は、人間の読み取り可能なタスクリストの中に翻訳し戻され、確認のためにアドミニストレータにアウトプットされる。アドミニストレータは、タスクリストを受け入れても拒絶してもよい。アドミニストレータがタスクリストを受け入れれば、処理論理はストレージサーバに命令を発行し、ストレージオブジェクトをポリシと適合する状態にするアクションをストレージサーバに行わせることができる（処理ブロック４６０）。それから処理論理は処理ブロック４９０に移行し、処理が終わる。上記動作の或る実施形態の詳細は、前述した。
【００６５】
ユーザインタフェース
図６Ａ〜図６Ｃは、アドミニストレータが新しいデータセットを作成できる一連のＧＵＩのディスプレイの一つの実施形態を示す。図６Ａを参照して、新しいデータセットを作成するためのＧＵＩが示される。ＧＵＩ６１０は、図１のクライアントマシン１１０により作成されるウィンドウを介して表示され得る。ＧＵＩ６１０は、データセットの名前のエントリのためのフィールド６１２と、データセットの記述のエントリのためのフィールド６１４とを含む。現状の例では、アドミニストレータは、新しいデータセットの名前として、“Ａｃｃｏｕｎｔ  Ｄａｔａ”をインプットしたところである。或る実施形態では、ＧＵＩ６１０は、オーナ、コンタクト、タイムゾーンなどの、データセットの他の属性若しくは情報のエントリのための更なるフィールドを含む。
【００６６】
図６Ｂは、新しいデータセットを形成する際に利用されるＧＵＩのディスプレイの一つの実施形態を示す。ＧＵＩ６２０は、新しいデータセットの中に加えられる物理的リソース（例えば、利用可能なディレクトリ）のリスト６２２を含む。アドミニストレータは、特定のリソース上をクリックすることにより物理的リソースから選択できる。ＧＵＩ６２０は更に、アドミニストレータが選択された物理的リソースを新しいデータセットに加えられるユーザインタフェースコントロール６２４のセットを含む。ＧＵＩ６２０は、データセット内の選択された物理的リソースを表示するフィールド６２６を含む。
【００６７】
図６Ｃは、新しいデータセットを形成する際に利用されるＧＵＩのディスプレイの一つの実施形態を示す。ＧＵＩ６３０は、図６Ａ及び図６ＣのＧＵＩ６１０及びＧＵＩ６２０を利用して形成される新しいデータセットのサマリを示す。アドミニストレータはＧＵＩ６３０を利用して新たに形成されたデータセットを照合でき、所望であれば、ＧＵＩ６２０及び／又はＧＵＩ６２０に戻りユーザインタフェースコントロール６３２を用いて変更することもできる。アドミニストレータは、ユーザインタフェースコントロール６３４を作動することにより、新しいデータセットの形成を確認できる。最後に、ユーザインタフェースコントロール６３６を作動することにより、新しいデータセットの形成をキャンセルできる。
【００６８】
図６Ｄは、データマネジメントポリシをデータセットに適用するためのＧＵＩのディスプレイの一つの実施形態を示す。ＧＵＩ６４０は、形成されたデータセットを表示するフィールド６４２、データマネジメントポリシを表示するフィールド６４４、選択されたデータマネジメントポリシの詳細を表示するフィールド６４６を示す。アドミニストレータは、フィールド６４２のデータセット上をクリックしてデータセットを選択できる。例えば、データセット“ＮＹ  Ｐａｙｒｏｌｌ”が、図６Ｄで示す例では選択されている。ＧＵＩ６４０は更に、アドミニストレータがデータセットを追加し、編集し、若しくは削除できるユーザインタフェースコントロール６４８を含む。アドミニストレータは、選択するために所望のデータマネジメントポリシ及び所望のデータセット上をクリックし更に選択されたポリシを選択されたデータセットに適用する“Ａｐｐｌｙ”ボタン６４９を作動することによって、フィールド６４４内のデータマネジメントポリシの一つを選択し選択したデータセットに適用することができる。現下の例では、アドミニストレータは、フィールド６４４の“Ｂａｃｋｅｄ  ｕｐ，ｔｈｅｎ  ｍｉｒｒｏｒｅｄ”のポリシを選択しており、このポリシの詳細は、図形、テキスト、若しくは両方の組み合わせで表示される。
【００６９】
データを管理する処理
図７は、データセットを利用してデータストレージシステムを管理する処理の一つの実施形態のフロー図を示す。プロセスは、ハードウェア（例えば、回路、専用論理）、（図１のストレージマネジャ１２０などの、汎用コンピュータシステム若しくは専用機上で稼動するような）ソフトウエア、若しくは両方の組み合わせを含む、処理論理により、実行される。
【００７０】
図７を参照して、処理論理はデータストレージシステムのアドミニストレータからインプットを受け取るためのＧＵＩを形成する（処理ブロック７１０）。処理論理は続いて、データセット及び／又はデータマネジメントポリシに関するアドミニストレータインプットを受け取る（処理ブロック７２０）。例えば、アドミニストレータは、ＧＵＩを介して情報を提供してデータセットを定義し（例えば、データセットの名称及び記述、データセット内に含まれるストレージオブジェクト、など）、データマネジメントポリシを定義する（例えば、データ保護ポリシなど）。処理論理は、アドミニストレータにより特定されたストレージオブジェクトを、アドミニストレータのインプットに基づいてデータセット内に構成する（処理ブロック７３０）。処理論理は、個々のデータセットのストレージオブジェクトのリストを持続性の記憶装置に格納する（処理ブロック７４０）。処理論理は、対応するデータマネジメントポリシをデータセットに適用することによって、単一のユニットとして個々のデータセットを管理する（処理ブロック７５０）。例えば、処理論理は、データマネジメントポリシに従って、ストレージオブジェクトを構成すること、ストレージオブジェクトのバックアップをスケジュールすることなどにより、データマネジメントポリシを適用できる。
【００７１】
更に、処理論理は、夫々のデータセット内の個々のストレージオブジェクトの対応するステータスに基づいて、個々のデータセットのステータスの値を判定できる（処理ブロック７７０）。データセット、データマネジメントポリシ、及びそれらを利用するデータの管理の詳細は、上記で詳しく説明した。
【００７２】
前述の詳細な説明のうちには、コンピュータメモリ内でのデータビットに関する動作のアルゴリズム及び符号表現の形式で、示されるものもある。これらのアルゴリズム記述及び表現は、自分達のワークの内容を他の当業者に最も効率的に伝達するための、データ処理の分野の当業者により利用されるツールである。本明細書において及び一般的にも、アルゴリズムは、所望の結果に導く首尾一貫した一連の動作であると解される。動作は、物理量の物理的処置を要求するものである。必ずしも必須ではないが、通常、これら量は、格納可能な、転移可能な、組み合わせ可能な、比較可能な、更に別途の処置が可能な、電気若しくは磁気信号という形をとる。これら信号を、ビット、数値、要素、符号、キャラクタ、項、数などとして参照することは、主として共通利用のためには、便利であることが明らかになっている。
【００７３】
しかしながら、これら及び類似の用語の全ては、適切な物理量と関連付けられるべきであり、これら量に適用される便利なラベルに過ぎない、ということに留意すべきである。前記説明から明白であるとして特に別途記述していないならば、当然ながら、明細書全体において、“処理する”、“計算する”、“算定する”、“判定する”若しくは“表示する”などの用語を用いる記載は、コンピュータシステムのレジスタ及びメモリ内部の物理（電子）量として表されたデータを、コンピュータシステムのメモリ若しくはレジスタ、又は、他の同様の情報格納、伝達若しくは表示デバイス内部の物理量として同様に表される他のデータの中に、操作して変換する、コンピュータシステム若しくは類似の電子計算デバイスの作用及び処理に言及するものである。
【００７４】
本発明は、本明細書で説明する動作を実行する装置にも関する。この装置は、所要の目的のために特に構成されてもよいし、コンピュータ内に格納されるコンピュータプログラムにより選択して作動し若しくは再構成される汎用コンピュータを含んでもよい。そのようなコンピュータプログラムは、フロッピディスク、光学ディスク、ＣＤ−ＲＯＭ、及び磁気光学ディスクを含むあらゆるタイプのディスク、読み取り専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気若しくは光学カード、又は、電子命令を格納するのに適したあらゆるタイプの媒体などの（但し、これらに限定されない）、コンピュータ読み取り可能媒体とも称され、各々がコンピュータシステムバスに結合する機械アクセス可能媒体内に格納される。
【００７５】
本明細書で示されるプロセス及びディスプレイは、本質的に特定のコンピュータや他の装置に関連するものではない。種々の汎用システムが、本開示に係るプログラムにより利用され得るのであり、又は、記述された動作を実行するためのより専用の装置を構成することは、有用であることが明らかである。種々のこれらシステムのための所要の構成は、以下の記述から明白になるであろう。加えて、本発明は、特定のプログラミング言語を基準にして記述されたものではない。当然ながら、本明細書に記載の本発明の開示を実装するのに様々なプログラミング言語が利用され得る。
【００７６】
前述の説明は、本発明の例示の実施形態を記述したに過ぎない。上記の説明、添付の図面及び請求項から、本発明の範囲から乖離することなく種々の修正が為され得ることが、当業者には容易に理解され得る。
【符号の説明】
【００７７】
１１０、１１２、１１４・・・クライアントマシン、
１２０・・・ストレージマネジャ、
１２２・・・データセットサポートモジュール、
１２６・・・ユーザインタフェースモジュール、
１３０・・・ストレージマネジャデータベース、
１４０・・・バックアップストレージサーバ、
１４２、１５２・・・ディスク、
１５０・・・ミラーストレージサーバ、
１６０・・ストレージサーバ、
１６２Ａ、１６２Ｂ、１６２Ｃ・・・ｑツリー、
２００・・・ストレージマネジャ、
２１１・・・プライマリデータ、
２１２・・・ミラー１、
２１３・・・ミラー２、
２１４・・・バックアップ１、
２１５・・・ロックされたバックアップ、
２１６・・・バックアップ２、
２２２・・・プロセッサ、
２２４・・・メモリ、
２２６・・・ネットワークインタフェース、
２２８・・・ストレージアダプタ、
２３０・・・オペレーティングシステム、
２５１・・・ミラー、
２５２・・・ミラー、
２５３・・・バックアップ、
２５４・・・ロックボールト、
２５５・・・バックアップ、
３００・・・ストレージマネジャ
３０１・・アドミニストレータインプット
３０３Ａ・・・タスクリストに関する人間の読み取り可能な記述
３０３Ｂ・・・タスクリストに関する人間の読み取り可能な記述
３０５・・・データセット及び／又はデータマネジメントポリシに関するインプット
３０７・・・機械読み取り可能なタスクリスト
３０９・・・ストレージサーバへの命令
３１０・・・適合チェッカ
３１２・・・トランスレータ
３２０・・・適合エンジン
３２２・・・ネットワークアダプタ
３５０・・・データベース。
【図１】
2010519646.tif 000003
【図２】
2010519646.tif 000004
【図３Ａ】
2010519646.tif 000005
【図３Ｂ】
2010519646.tif 000006
【図３Ｃ】
2010519646.tif 000007
【図４】
2010519646.tif 000008
【図５】
2010519646.tif 000009
【図６Ａ】
2010519646.tif 000010
【図６Ｂ】
2010519646.tif 000011
【図６Ｃ】
2010519646.tif 000012
【図６Ｄ】
2010519646.tif 000013
【図７】
2010519646.tif 000014
【国際調査報告】
2010519646.tif 000015
2010519646.tif 000016
2010519646.tif 000017