(57)【要約】【課題】システムが潜在的ストレージ・デバイスに関するサービス・クラスを決定できるように、ならびに、ユーザ、管理者、またはアプリケーションが、任意の所与のタイプのデータに対して最低限のサービス・クラスを選択できるように、ストレージ仮想化システムを改良すること。【解決手段】サービスのクラスは、デバイス・タイプおよびアップタイム・データ履歴などの、潜在的ストレージ・デバイスの信頼性を反映する要素に基づく。Ｐ２Ｐ環境では、サービス・クラスは、接続された処理ユニットのタイプ、および接続された処理ユニットを動作させるオペレーティング・システムのタイプなどの、追加の要素も含む。【選択図】  図３
2008541213.tif 000002
【特許請求の範囲】
【請求項１】
オペレータからサービス・クラス要件を獲得すること、
各ストレージ・デバイスのサービス・レベルを分類するためのステップ、
前記各ストレージ・デバイスのサービス・レベルと前記サービス・クラス要件とを比較すること、および、
前記サービス・クラス要件を満たすサービス・レベルを有する１つまたは複数のストレージ・デバイスにデータを格納すること、
を有する、少なくとも２つのストレージ・デバイスからなるストレージ仮想化システムにデータを格納する方法。
【請求項２】
ストレージ・デバイスの前記サービス・レベルに対する変更を検出するための監視ステップと、
前記サービス・レベルが変更された場合、前記ストレージ・デバイスの前記サービス・レベルを再分類するためのステップと、
前記ストレージ・デバイスの前記サービス・レベルと前記サービス・クラス要件とを比較すること、および、
前記再分類されたサービス・レベルが前記サービス・クラス要件を満たさない場合、前記データを、前記ストレージ・デバイスから前記サービス・クラス要件に合致するかまたはこれを超える１つまたは複数の代替ストレージ・デバイスに移動すること、
をさらに有する、請求項１に記載の方法。
【請求項３】
前記データを格納した後、前記オペレータから第２のサービス・クラス要件を獲得すること、
前記データが格納された前記ストレージ・デバイスの前記サービス・レベルと、前記第２のサービス・クラス要件とを比較すること、および
前記データが格納された前記ストレージ・デバイスの前記サービス・レベルが、前記第２のサービス・クラス要件を満たさない場合、前記データを、前記ストレージ・デバイスから、前記第２のサービス・クラス要件を満たす１つまたは複数の代替ストレージ・デバイスに移動すること、
をさらに有する、請求項１に記載の方法。
【請求項４】
前記データを格納した後、前記オペレータから第２のサービス・クラス要件を獲得すること、
前記データが格納された前記ストレージ・デバイスの前記サービス・レベルと、前記第２のサービス・クラス要件とを比較すること、および
前記データが格納された前記ストレージ・デバイスの前記サービス・レベルが、前記第２のサービス・クラス要件を満たさない場合、前記データを、前記ストレージ・デバイスから、前記第２のサービス・クラス要件に合致するかまたはこれを超える１つまたは複数の代替ストレージ・デバイスに移動すること、
をさらに有する、請求項２に記載の方法。
【請求項５】
各ストレージ・デバイスの前記ストレージ・レベルを分類するためのステップが、
サービス・レベルをストレージ・デバイス・タイプおよび非中断サービス時間に関連付けるデータ構造を提供すること、
各ストレージ・デバイスの前記タイプを決定すること、
各ストレージ・デバイスの前記非中断サービス時間を決定すること、および、
前記データ構造内で、前記決定されたストレージ・デバイスのタイプおよび前記決定された非中断サービス時間と関連付けられたサービス・レベルを割り当てること、
を有する、請求項１に記載の方法。
【請求項６】
さらに前記データ構造が、サービス・レベルとオペレーティング・システムとを関連付け、
各ストレージ・デバイスの前記サービス・レベルを分類するためのステップが、各ストレージ・デバイスの前記オペレーティング・システムを決定することをさらに有し、
前記割り当てるステップが、前記決定されたオペレーティング・システムに関連付けられたサービス・レベルを割り当てることをさらに有する、
請求項５に記載の方法。
【請求項７】
オペレータからサービス・クラス要件を獲得すること、
各ストレージ・デバイスのサービス・レベルを分類するためのステップ、
前記各ストレージ・デバイスのサービス・レベルと前記サービス・クラス要件とを比較すること、および、
前記サービス・クラス要件を満たすサービス・レベルを有する１つまたは複数のストレージ・デバイスにデータを格納すること、
を有する方法を、コンピュータに実施させるための命令によって符号化された、コンピュータ読み取り可能メディア。
【請求項８】
前記方法が、
ストレージ・デバイスの前記サービス・レベルに対する変更を検出するための監視ステップと、
前記サービス・レベルが変更された場合、前記ストレージ・デバイスの前記サービス・レベルを再分類するためのステップと、
前記ストレージ・デバイスの前記サービス・レベルと前記サービス・クラス要件とを比較すること、および、
前記再分類されたサービス・レベルが前記サービス・クラス要件を満たさない場合、前記データを、前記ストレージ・デバイスから前記サービス・クラス要件を満たす１つまたは複数の代替ストレージ・デバイスに移動すること、
をさらに有する、請求項７に記載のコンピュータ読み取り可能メディア。
【請求項９】
前記方法が、
前記データを格納した後、前記オペレータから第２のサービス・クラス要件を獲得すること、
前記データが格納された前記ストレージ・デバイスの前記サービス・レベルと、前記第２のサービス・クラス要件とを比較すること、および
前記データが格納された前記ストレージ・デバイスの前記サービス・レベルが、前記第２のサービス・クラス要件を満たさない場合、前記データを、前記ストレージ・デバイスから、前記第２のサービス・クラス要件を満たす１つまたは複数の代替ストレージ・デバイスに移動すること、
をさらに有する、請求項７に記載のコンピュータ読み取り可能メディア。
【請求項１０】
前記方法が、
前記データを格納した後、前記オペレータから第２のサービス・クラス要件を獲得すること、
前記データが格納された前記ストレージ・デバイスの前記サービス・レベルと、前記第２のサービス・クラス要件とを比較すること、および
前記データが格納された前記ストレージ・デバイスの前記サービス・レベルが、前記第２のサービス・クラス要件を満たさない場合、前記データを、前記ストレージ・デバイスから、前記第２のサービス・クラス要件に合致するかまたはこれを超える１つまたは複数の代替ストレージ・デバイスに移動すること、
をさらに有する、請求項８に記載のコンピュータ読み取り可能メディア。
【請求項１１】
サービス・レベルをストレージ・デバイス・タイプおよび非中断サービス時間に関連付けるデータ構造をさらに有し、各ストレージ・デバイスの前記サービス・レベルを分類するためのステップが、
各ストレージ・デバイスの前記タイプを決定すること、
各ストレージ・デバイスの前記非中断サービス時間を決定すること、および、
前記データ構造内で、前記決定されたストレージ・デバイスのタイプおよび前記決定された非中断サービス時間と関連付けられたサービス・レベルを割り当てること、
を有する、請求項７に記載のコンピュータ読み取り可能メディア。
【請求項１２】
さらに前記データ構造が、サービス・レベルとオペレーティング・システムとを関連付け、
各ストレージ・デバイスを分類するためのステップが、各ストレージ・デバイスの前記オペレーティング・システムを決定することをさらに有し、
前記割り当てるステップが、前記決定されたオペレーティング・システムに関連付けられたサービス・レベルを割り当てることをさらに有する、
請求項１１に記載のコンピュータ読み取り可能メディア。
【請求項１３】
通信メディアと、
少なくとも２つのストレージ・デバイスと、
前記通信メディアを介して前記ストレージ・デバイスに結合されたコンピュータと、
前記コンピュータにロードされるサービス・クラス・マネージャ・プログラムであって、前記コンピュータに、
オペレータからサービス・クラス要件を獲得すること、
各ストレージ・デバイスのサービス・レベルを分類すること、
前記各ストレージ・デバイスの前記サービス・レベルと前記サービス・クラス要件とを比較すること、および、
前記サービス・クラス要件を満たすサービス・レベルを有する１つまたは複数のストレージ・デバイスに前記データを格納すること
を実行させることができるプログラムと、
を備える、ストレージ仮想化システム。
【請求項１４】
前記サービス・クラス・マネージャ・プログラムが、前記コンピュータに、
ストレージ・デバイスの前記サービス・レベルにおける変更を検出するために、前記ストレージ・デバイスを監視すること、
前記サービス・レベルが変更された場合、前記ストレージ・デバイスの前記サービス・レベルを再分類すること、
前記ストレージ・デバイスの前記サービス・レベルと前記サービス・クラス要件とを比較すること、および、
前記再分類されたサービス・レベルが前記サービス・クラス要件を満たさない場合、前記データを、前記ストレージ・デバイスから前記サービス・クラス要件を満たす１つまたは複数の代替ストレージ・デバイスに移動すること、
をさらに実行させる、請求項１３に記載のストレージ仮想化システム。
【請求項１５】
前記サービス・クラス・マネージャ・プログラムが、前記コンピュータに、
前記データを格納した後、前記オペレータから第２のサービス・クラス要件を獲得すること、
前記データが格納された前記ストレージ・デバイスの前記サービス・レベルと、前記第２のサービス・クラス要件とを比較すること、および
前記データが格納された前記ストレージ・デバイスの前記サービス・レベルが、前記第２のサービス・クラス要件を満たさない場合、前記データを、前記ストレージ・デバイスから、前記第２のサービス・クラス要件を満たす１つまたは複数の代替ストレージ・デバイスに移動すること、
をさらに実行させる、請求項１３に記載のストレージ仮想化システム。
【請求項１６】
前記サービス・クラス・マネージャ・プログラムが、前記コンピュータに、
前記データを格納した後、前記オペレータから第２のサービス・クラス要件を獲得すること、
前記データが格納された前記ストレージ・デバイスの前記サービス・レベルと、前記第２のサービス・クラス要件とを比較すること、および
前記データが格納された前記ストレージ・デバイスの前記サービス・レベルが、前記第２のサービス・クラス要件を満たさない場合、前記データを、前記ストレージ・デバイスから、前記第２のサービス・クラス要件に合致するかまたはこれを超える１つまたは複数の代替ストレージ・デバイスに移動すること、
をさらに実行させる、請求項１４に記載のストレージ仮想化システム。
【請求項１７】
サービス・レベルをストレージ・デバイス・タイプおよび非中断サービス時間に関連付けるデータ構造をさらに有し、前記サービス・クラス・マネージャ・プログラムが、
各ストレージ・デバイスの前記タイプを決定すること、
各ストレージ・デバイスの前記非中断サービス時間を決定すること、および、
前記データ構造内で、前記決定されたストレージ・デバイスのタイプおよび前記決定された非中断サービス時間と関連付けられたサービス・レベルを割り当てること、
によって、前記コンピュータに、各ストレージ・デバイスの前記サービス・レベルを分類させる、請求項１３に記載のストレージ仮想化システム。
【請求項１８】
さらに前記データ構造が、サービス・レベルとオペレーティング・システムとを関連付け、
さらに前記サービス・クラス・マネージャ・プログラムが、
各ストレージ・デバイスの前記オペレーティング・システムを決定すること、および
前記決定されたオペレーティング・システムに関連付けられたサービス・レベルを割り当てること、
によって、前記コンピュータに、各ストレージ・デバイスを分類させる、請求項１７に記載のストレージ仮想化システム。
【請求項１９】
前記通信メディアがピアツーピア・ネットワークである、請求項１３に記載のストレージ仮想化システム。
【請求項２０】
前記通信メディアがピアツーピア・ネットワークである、請求項１４に記載のストレージ仮想化システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、データをコンピュータ・ファイルとして格納するためのデータ処理装置および対応する方法に関し、この装置は、複数の空間的に分散されたコンピュータおよびストレージ・デバイスを備え、この方法は、ストレージを実施するために、空間的に分散されたコンピュータとストレージ・デバイスとの間でデータを転送するステップを含む。
【背景技術】
【０００２】
現在使用されているほとんどのデータ処理システムは、何らかの形のストレージ・サブシステムを含む。パーソナル・コンピュータでは、ストレージ・サブシステムはしばしば、ストレージ・メディアへのアクセスを制御する中央処理ユニット内の回路基板に接続された磁気ディスクなどの単一のストレージ・メディアのみからなる。より複雑な企業データ処理システムでは、ストレージ・サブシステムは多数の様々なストレージ・デバイスを備えることができる。長年の間、こうしたストレージ・デバイスそれぞれにとって、ネットワーク接続を介して他のユニットにサービスを提供する単一の処理ユニット、または「サーバ」に接続されること、およびこれによって制御されることは、一般的なことであった。こうしたストレージ・サーバのネットワークは、一般にストレージ・エリア・ネットワーク、すなわちＳＡＮと呼ばれる。他のユニットは、接続されたサーバを介して潜在的に任意の所与のストレージ・デバイスにアクセスすることができるが、このアーキテクチャは、多くの単一障害点を作成し、ストレージ拡張を物理的に制限する。しかしながら、近年では、データ処理システムが単一の処理ユニットの束縛からストレージ・デバイスを切り離せるようにする、ストレージ仮想化技法が出現してきている。仮想ストレージ・システムでは、従来、接続された処理ユニットのオペレーティング・システムのために確保されたストレージ管理の責務を、専用ソフトウェアが担う。しかしながらこの専用ソフトウェアは、「論理ストレージ・ボリューム」の作成および管理に関する責務を含む、追加の責務も担う。したがって、この専用ソフトウェアは、時折「ストレージ・ボリューム・コントローラ（ＳＶＣ）」とも呼ばれる。従来のストレージ・デバイスとは異なり、たとえ構成要素となるストレージ・デバイスが１つとして中央処理ユニットに接続されていない場合であっても、論理ストレージ・ボリュームは多くの物理ストレージ・デバイスにわたることが可能である。ＳＶＣは、仮想インターフェースを実施するため、論理ストレージ・ボリュームは、基礎となる物理ストレージ・ハードウェアの組成または構成にかかわらず、データ処理システムの他のコンポーネントに対して任意の他の従来のストレージ・デバイスと同様である。さらに、基礎となる物理ストレージ・ハードウェアの組成および構成はいつでも変更可能であるが、仮想インターフェースは他のコンポーネントが物理的に変更されるのを防ぐ。前述の考察のほとんどが、ＳＶＣの仮想インターフェースがＳＡＮにおけるサーバに代わるものであると想定しているが、ストレージ仮想化技術はピアツーピア（Ｐ２Ｐ）ネットワークにも適用可能である。
【０００３】
拡張ストレージ仮想化技術は、優先ユーザに対して予想可能なサービス品質を提供するために、また中には、データ処理システムに対してオンデマンドで追加のストレージを提供するために、ネットワーク帯域幅を管理することも試行する。しかしながら、こうした機能を利用するためには、管理者がしきい値要件を指定し、予めリソースを確保しておかなければならない。管理者は、ストレージ要件を手動で更新しなければならず、さらに、ＳＡＮに手動でストレージを追加した後、ストレージ仮想化システムがオンデマンドでストレージを提供できるようにもしなければならない。これらの自動プロビジョニング技法は、Ｐ２Ｐネットワークが集中型ではなく、単一のユーザが自動プロビジョニング要件を管理するための十分なアクセス権または制御を有していないことから、こうしたネットワークのＳＶＣには好適ではない。
【０００４】
ストレージ・デバイスのコストおよび信頼性は多種多様であるが、すべてが、その耐用年数中の何らかの時点で必然的に障害を起こす。実際のところ、特に企業との関連において、いくつかのタイプのデータはしばしば他のタイプに比べてより重要であるとみなされ、データの重要性と潜在的なストレージ・デバイスのコストおよび信頼性とのバランスを取ることによって、リソースを最大限にすることができる。
【特許文献１】米国特許出願第１０／９２２２８１号
【発明の開示】
【発明が解決しようとする課題】
【０００５】
現在のストレージ仮想化技術は、多数の多様なストレージ・デバイスを整合性のある堅固なストレージ・システムに統合するための効果的な手段を提供するが、それでもなお、データの重要性に適合するストレージ・デバイスにデータを合致させる必要性に対処できるシステムはない。
【課題を解決するための手段】
【０００６】
本発明の態様によれば、少なくとも２つのストレージ・デバイスからなるストレージ仮想化システムにデータを格納する方法が提供され、この方法は、オペレータからサービス・クラス要件を獲得すること、各ストレージ・デバイスのサービス・レベルを分類するためのステップ、各ストレージ・デバイスのサービス・レベルとサービス・クラス要件とを比較すること、および、サービス・クラス要件を満たすサービス・レベルを有する１つまたは複数のストレージ・デバイスにデータを格納することを有する。したがってストレージ仮想化システムは、システムが潜在的ストレージ・デバイスに関するサービス・クラスを決定できるように、ならびに、ユーザ、管理者、またはアプリケーションが、任意の所与のタイプのデータに対して最低限のサービス・クラスを選択できるように、改良される。サービスのクラスは、デバイス・タイプおよびアップタイム・データ履歴などの、潜在的ストレージ・デバイスの信頼性を反映する要素に基づく。Ｐ２Ｐ環境では、サービス・クラスは、接続された処理ユニットのタイプ、および接続された処理ユニットを動作させるオペレーティング・システムのタイプなどの、追加の要素も含む。
【０００７】
各ストレージ・デバイスのストレージ・レベルを分類するための好ましいステップは、サービス・レベルをストレージ・デバイス・タイプおよび非中断サービス時間に関連付けるデータ構造を提供し、各ストレージ・デバイスのタイプを決定し、各ストレージ・デバイスの非中断サービス時間を決定し、データ構造内で、決定されたストレージ・デバイスのタイプおよび決定された非中断サービス時間と関連付けられたサービス・レベルを割り当てる、技術的特徴を有する。
【０００８】
次に、本発明の好ましい実施形態について、添付の図面を参照しながら単なる例として説明する。
【発明を実施するための最良の形態】
【０００９】
本発明の諸実施形態の原理は、様々なコンピュータ・ハードウェアおよびソフトウェア構成に適用可能である。本明細書で使用される「コンピュータ・ハードウェア」または「ハードウェア」という用語は、データの受け入れ、データ上での論理演算の実行、データの格納、またはデータの表示が可能な、任意のマシンまたは装置を言い表し、無制限にプロセッサおよびメモリを含むものであり、「コンピュータ・ソフトウェア」または「ソフトウェア」という用語は、コンピュータ・ハードウェアにオペレーションを実行させるように動作可能な任意の命令セットを言い表す。本明細書で使用される「コンピュータ」という用語は、無制限にハードウェアおよびソフトウェアの任意の有用な組み合わせを含み、「コンピュータ・プログラム」または「プログラム」は、無制限に、データの受け入れ、データ上での論理演算の実行、データの格納、またはデータの表示を、コンピュータ・ハードウェアに実行させるように動作可能な、任意のソフトウェアを含む。コンピュータ・プログラムは、無制限にサブルーチン、モジュール、関数、メソッド、およびプロシージャを含む、複数のより小規模なプログラミング単位からなることが可能であり、しばしばそうした単位からなる。したがって本発明の諸実施形態の機能は、複数のコンピュータおよびコンピュータ・プログラム間で分配可能である。代替実施形態では、１つまたは複数の汎用コンピュータを構成し、これらを実行可能にする、単一のコンピュータ・プログラムを採用することができる。例示のために、コンピュータ・プログラムとして具体化可能な本発明の方法を「サービス・クラス・マネージャ（ＣＯＳＭ）」と呼ぶ。
【００１０】
加えて、ＣＯＳＭについて、ＣＯＳＭがハードウェア・デバイス間でデータを転送する際に介することのできる、図１に示されるようなハードウェア・デバイスの例示的ネットワークを参照しながら、以下で説明する。「ネットワーク」は、インターネットなどの通信メディアを介して互いに結合され、互いに通信する、任意数のハードウェア・デバイスを備える。「通信メディア」は、無制限に、ハードウェアまたはソフトウェアがデータを伝送する際に介することのできる、任意の物理、光学、電磁、または他のメディアを含む。説明のために、例示的ネットワーク１００は、ワークステーション・コンピュータ１０５、ワークステーション・コンピュータ１１０、サーバ・コンピュータ１１５、および永続ストレージ・ノード１２０〜１２３を含む、限定数のノードのみを有する。永続ストレージ・ノード１２０〜１２３は、集合的にストレージ・エリア・ネットワーク（ＳＡＮ）を表し、図１ではＳＡＮ  １２４としてラベル付けされる。図１には示されていないが、ワークステーション・コンピュータ１０５および１１０、ならびにサーバ・コンピュータ１１５には、それぞれストレージ・サブシステムが直接接続される。ネットワーク接続１２５は、ネットワーク・ノード１０５〜１２０間の通信を可能にするために必要な、すべてのハードウェア、ソフトウェア、および通信メディアを有する。以下のコンテキストで特に示されていない限り、すべてのネットワーク・ノードは、公的に入手可能なプロトコルまたはメッセージング・サービスを使用して、ネットワーク接続１２５を介して互いに通信する。
【００１１】
ＣＯＳＭ  ２００は、通常、図２でメモリ２２０として概略的に表されたメモリに格納される。本明細書で使用される「メモリ」という用語は、無制限に、コンピュータが任意の期間データまたはソフトウェアを格納することが可能な、電気回路、磁気ディスク、または光ディスクなどの、任意の揮発性または永続メディアを含む。単一のメモリは、複数のメディアおよびネットワーク・ノードにわたり、それらにまたがって分配することができる。したがって図２は、単なる説明手段として含まれており、必ずしもメモリ２２０のいずれか特定の物理的実施形態を反映するものではない。しかしながら、図２に示されるように、メモリ２２０は追加のデータおよびプログラムを含むことができる。ＣＯＳＭ  ２００にとって特に重要なことに、メモリ２２０は、ストレージ・ボリューム・コントローラ（ＳＶＣ）２２５、オペレーティング・システム２３０、およびアプリケーション・プログラム２４０を含むことが可能であり、ＣＯＳＭ  ２００はこれらとの対話が可能である。
【００１２】
図３は、所与のサービス・クラス（ＣＯＳ）要件を満たす１つまたは複数のストレージ・デバイスをネットワーク上に配置する新規な機能を含む、本発明の好ましい実施形態で実施される機能の概略図である。Ｐ２Ｐネットワーク環境では、これらの機能は、好ましくは、米国特許出願第１０／９２２２８１号に記載されたインフラストラクチャと協働するＰ２Ｐエージェントとして実施されるが、従来のクライアント／サーバ・アーキテクチャでは、別の方法として、これらの機能はクライアントとＳＡＮサーバとの間で分配される場合がある。わかりやすくするために、以下の考察では、様々な実施に関連付けられたコードの特定の分配を無視し、すべての実施に共通の実施機能に焦点を当てる。通常、アプリケーション・プログラム２４０などのアプリケーション・プログラムが永続ストレージ・メディアにデータを保存するためのオペレーションを開始すると、ＣＯＳＭ  ２００が活動化される（３０５）。活動化されると、ＣＯＳＭ  ２００は第１に、要求されたＣＯＳを獲得する（３１０）。当分野では、プログラムに関する入力を獲得するための多くの知られた技法があり、それらのいずれかがＣＯＳ要件を獲得する際に使用するのに好適である。しかしながら、例には、アプリケーション・プログラムそれ自体のポリシー駆動型論理からＣＯＳ要件を獲得するか、または単に、予めオペレータによってファイル内に格納されたデフォルトＣＯＳを使用する、オペレータが要求されたＣＯＳを選択または入力することのできるダイアログ・ボックスが含まれる。ＣＯＳ要件を獲得した後、ＣＯＳＭ  ２００は、各デバイスからＣＯＳ特徴を獲得するためにネットワーク内のストレージ・デバイスをポーリングし（３１５）、ポーリング・プロセスで発見された特徴に従って、各ストレージ・デバイスを分類する（３２０）。ポーリングは当分野で知られたプロセスであり、本明細書で詳細に説明する必要はないが、ＣＯＳＭ  ２００が、各デバイスのサービス・レベルを分類する前にすべてのストレージ・デバイスをポーリングできること、および、満足できるストレージ・デバイスが見つかるまで各デバイスを個々にポーリングおよび分類できることは、明らかであろう。他の代替実施形態では、ストレージ・デバイスそれら自体が、それら自体のＣＯＳを内部的に評価し、ポーリングに応答してこれをＣＯＳＭ  ２００に提供するように適合可能であり、これによって、処理負荷の一部をＣＯＳＭ  ２００から移行し、いくつかのデバイス間でこれを分散させる。処理負荷がＣＯＳＭ  ２００または個々のストレージ・デバイスのいずれに配置される場合であっても、分類プロシージャはほとんど同じである。本発明の一実施形態では、管理者または他のオペレータは、ストレージ・デバイスの選択された特徴に基づいてサービス・レベルを分類する、テーブルまたは他のデータ構造を提供する。こうしたテーブルの例が図４に示される。図４のテーブル４００は、テーブルの各行で特徴ごとに定義されたＣＯＳに関するラベルを提供する第１の列（「ＣＯＳ」）と、ＣＯＳを定義する選択された特徴を識別する追加の列と、からなる。図４に含まれるラベルは単なる例であり、サービス・レベルを区別および優先順位���けするラベル、クラス、またはカテゴリの任意のシステムが好適である。テーブル４００では、選択された特徴には、オペレーティング・システム（「ＯＳ」）、非中断サービスの可用性パーセンテージ（「アップタイム％」）、およびストレージ・デバイスのハードウェア・タイプが含まれる。テーブル４００の選択された特徴は単なる例示であり、選択可能な特徴のタイプを網羅するものではない。こうした特徴は、オペレータのプリファレンスまたはネットワーク環境によって変更可能である。テーブル４００内の追加の列（「ＲＡＩＤレベル」）は、関連付けられたＣＯＳを必要とするデータを格納するために使用されるべきである、ＲＡＩＤアルゴリズムのタイプを示す。ＲＡＩＤ（「新磁気ディスク制御機構」）とは、デバイス間でデータを共有または複製するために、複数のストレージ・デバイスを使用するシステムである。ＲＡＩＤは当分野でよく知られたシステムであり、本明細書で詳細に説明する必要はない。さらに、参照により本明細書に組み込まれた米国特許出願第１０／９２２２８１号で、ＲＡＩＤをＰ２Ｐストレージ仮想化技術に適用する方法について詳細に説明している。説明のために、ポーリングされた各ストレージ・デバイスについて、ＣＯＳＭ  ２００がストレージ・デバイスを分類する責務を負っていると想定すると、ＣＯＳＭ  ２００は、ポーリング・プロセス中に発見されたストレージ・デバイスの特徴とテーブル内のＣＯＳとを突き合わせ、その後、そのＣＯＳをストレージ・デバイスに割り当てる。たとえば、図４のテーブル４００が与えられた場合、ストレージ・デバイスが、ＩＮＴＥＬ（商標）ハードウェア上で、９５％〜９９％のアップタイム（すなわち、非中断サービスの可用性）でＬＩＮＵＸ（商標）オペレーティング・システムを実行中であることを報告すると、ＣＯＳＭ  ２００はこのストレージ・デバイスに「ゴールド」ＣＯＳを割り当てる。最終的に、ストレージ・デバイスを分類した後、ストレージは、ＣＯＳ要件を満たす（すなわち、合致するかまたは超える）１つまたは複数のストレージ・デバイス上で割り振られ（３２５）、ストレージ・デバイスの数は、格納しなければならないデータの量および各ストレージ・デバイスの使用可能な容量に依存する。ストレージ割り振りは、現在はＳＶＣで実施される機能である。したがって、ＣＯＳＭ  ２００によって決定されたＣＯＳ用件を満たすストレージ・デバイス上でのみ、ストレージを割り振るように、従来のＳＶＣを適合させることができるか、またはこの機能をＣＯＳＭ  ２００に移行させることができる。
【００１３】
図３および添付の説明は、所与のＣＯＳ要件を満たす１つまたは複数のストレージ・デバイス内での初期のデータの配置を示すが、実際には、ＣＯＳＭ  ２００は、ストレージ・デバイスのＣＯＳが変動し、ＣＯＳ要件が変化する可能性のある、動的環境内で動作する。したがって、ＣＯＳＭ  ２００は、初期配置後に、この動的環境内でデータ・ストレージを管理する機能も実施する。これらの機能は図５に示されており、以下で説明する。ＣＯＳＭ  ２００にプログラム可能であるか、あるいは管理者またはオペレータによって指定可能な、所与の時間間隔の後（５０５）、ＣＯＳＭ  ２００は、データが初期に配置されたストレージ・デバイスを再度ポーリングする（５１０）。いずれかの選択されたＣＯＳ特徴が変更された場合、図３および図４を参照しながら上記で述べたように、ＣＯＳＭ  ２００はストレージ・デバイスを再分類する（５１５）。ＣＯＳが変更されていない場合、ＣＯＳＭ  ２００は、所与の時間間隔が再度経過するまでそれ以上のアクションを実行しない。ＣＯＳが変更された場合、ＣＯＳＭ  ２００は、そのＣＯＳが元のＣＯＳよりも低いかどうかを判別する（５２０）。ＣＯＳが向上している場合、ストレージ・デバイスは依然としてＣＯＳ要件を満たすため、ＣＯＳＭ  ２００はそれ以上のアクションを実行しない。しかし、ＣＯＳが低下している場合、図３を参照しながら上記で説明したように、ＣＯＳＭ  ２００は他のストレージ・デバイスをポーリングし、それらを分類して、ストレージを割り振る。その後、ＣＯＳＭ  ２００は、新しく割り振られたストレージ・デバイスまたはＣＯＳ要件を満たすデバイスに、データを移動する（５２５）。別の方法として、管理者または他のオペレータがＣＯＳ要件自体を変更することも可能であり（５３０）、これによっても、図３および５で示すように、新しいＣＯＳ要件を満たす１つまたは複数のストレージ・デバイスを再ポーリング、および再分類し、これらのストレージ・デバイス上でストレージを割り振る。
【００１４】
以上、本発明の好ましい実施形態について図面に示し、上記で説明してきたが、当業者であれば好ましい形の変更が明らかとなろう。
【図面の簡単な説明】
【００１５】
【図１】本発明の諸実施形態を動作させることが可能な、ハードウェア・デバイスの例示的ネットワークを示す図である。
【図２】本発明の好ましい実施形態のコンポーネントが格納された、例示的メモリを示す概略図である。
【図３】所与のサービス・クラス要件を満たす１つまたは複数のストレージ・デバイスをネットワーク上に配置する、本発明の好ましい実施形態で実施される機能を示す概略図である。
【図４】本発明の好ましい実施形態に従って、ストレージ・デバイスの選択された特徴に基づいてサービス・レベルを分類する例示的なデータ構造を示す図である。
【図５】初期の配置後にデータ・ストレージを管理する、本発明の好ましい実施形態で実施される機能を示す図である。PCTのため
【図１】
2008541213.tif 000003
【図２】
2008541213.tif 000004
【図３】
2008541213.tif 000005
【図４】
2008541213.tif 000006
【図５】
2008541213.tif 000007
【国際調査報告】
2008541213.tif 000008
2008541213.tif 000009
2008541213.tif 000010