(57)【要約】  ストレージシステムを動作させる方法及び装置が提供される。一例において、ストレージシステムは、ストレージサーバと、仮想マシンにおいて実装される仮想ストレージ装置（ＶＳＡ）とを含む。ストレージサーバは、データの第１の共有名前空間へのアクセスを提供する。ＶＳＡは、ネットワーク接続を介してストレージサーバシステムに動作可能に接続され、ネットワーク接続を介したデータの第２の共有名前空間へのアクセスを提供する。第２の共有名前空間は、ポリシーによって定義され、第１の共有名前空間のサブセットを含む。ＶＳＡはまた、ＶＳＡにおいてデータの第３の共有名前空間のデータを複製して、ネットワーク接続が利用可能ではないとき、第３の共有名前空間をＶＳＡにおいて利用可能にする。第３の名前空間は、ポリシーによって定義され、第２の共有名前空間のサブセットを含む。
2015520890.tif 000002
【特許請求の範囲】
【請求項１】
データの第１の共有名前空間を含むストレージサーバシステムと、
ネットワーク接続を介して前記ストレージサーバシステムに動作可能に接続された、仮想マシンにおいて実装される仮想ストレージ装置（ＶＳＡ）と、を備え、
前記仮想ストレージ装置（ＶＳＡ）は、
ネットワーク接続を介したデータの第２の共有名前空間へのアクセスを提供し、ここで前記第２の共有名前空間は、ポリシーによって定義されて前記第１の共有名前空間の共有されるサブセットを含み、
前記ＶＳＡにおいて第３の共有名前空間のデータを複製して、ネットワーク接続が利用可能ではないとき、前記第３の共有名前空間の前記複製されたデータを前記ＶＳＡにおいて利用可能にし、ここで前記第３の共有名前空間は、前記ポリシーによって定義されて前記第２の共有名前空間のサブセットを含む、
ストレージシステム。
【請求項２】
前記ＶＳＡは、
ネットワーク接続が利用可能ではないとき、前記ＶＳＡにおける前記第３の共有名前空間におけるデータセットの変更を許可して、
ネットワーク接続が利用可能であるとき、前記ポリシーに基づいて、前記変更を前記第１の共有名前空間と同期させる、
ように構成される、
請求項１記載のストレージシステム。
【請求項３】
前記ＶＳＡは
ネットワーク接続が利用可能ではないとき、前記ＶＳＡにおける前記第３の共有名前空間において新たなデータセットの生成を許可し、
ネットワーク接続が利用可能であるとき、前記新たなデータセットを前記第１の共有名前空間に付加する、
ように構成される、
請求項１記載のストレージシステム。
【請求項４】
ネットワーク接続を介して前記ストレージサーバシステムに動作可能に接続された、前記仮想マシンにおいて実装されたピアＶＳＡを更に備え、
前記ピアＶＳＡは、
ネットワーク接続を介したデータの第４の共有名前空間へのアクセスを提供し、ここで前記第４の共有名前空間は、前記ポリシーによって定義されて前記第１の共有名前空間のサブセットを含み、
前記ピアＶＳＡにおけるデータの第５の名前空間のデータを複製して、ネットワーク接続が利用可能ではないとき、前記第５の名前空間のデータを前記ピアＶＳＡにておいて利用可能にし、ここで前記第５の名前空間は、前記第４の共有名前空間のサブセットである、
請求項１記載のストレージシステム。
【請求項５】
前記ＶＳＡ及び前記ピアＶＳＡはＶＳＡクラスタを備える、
請求項４記載のストレージシステム。
【請求項６】
前記ストレージサーバシステムは、連合されたグループとして動作される複数のデータストレージ装置を備える、
請求項１記載のストレージシステム。
【請求項７】
前記仮想マシンはエンドユーザコンピュータ装置において実装される、
請求項１記載のストレージシステム。
【請求項８】
仮想マシンにおける仮想ストレージ装置（ＶＳＡ）とストレージサーバシステムとの間のネットワーク接続を確立するステップと、
ネットワーク接続を介した前記ＶＳＡにおけるデータの第２の共有名前空間へのアクセスを提供するステップであって、前記第２の共有名前空間は、前記ストレージサーバシステムの第１の共有名前空間の、ポリシーによって定義されるサブセットである、ステップと、
前記ＶＳＡにおいてデータの第３の共有名前空間のデータを複製して、ネットワーク接続が利用可能ではないとき、前記第３の共有名前空間のデータを前記ＶＳＡにおいて利用可能にするステップであって、前記第３の共有名前空間は、前記第２の共有名前空間の、ポリシーによって定義されるサブセットである、ステップと、
を含むストレージシステムの動作の方法。
【請求項９】
ネットワーク接続が利用可能ではないとき、前記ＶＳＡにおける前記第３の共有名前空間におけるデータセットの変更を許可するステップと、
ネットワーク接続が利用可能であるとき、前記変更を前記第１の共有名前空間と同期させるステップと、
を更に含む、請求項８記載の方法。
【請求項１０】
ネットワーク接続が利用可能ではないとき、前記ＶＳＡにおける前記第３の共有名前空間において新たなデータセットの生成を許可するステップと、
ネットワーク接続が利用可能であるとき、前記新たなデータセットを前記第１の共有名前空間に付加するステップと、
を更に含む、請求項８記載の方法。
【請求項１１】
ピアＶＳＡにおけるネットワーク接続を介したデータの第４の共有名前空間へのアクセスを提供するステップであって、前記第４の共有名前空間は、前記第１の共有名前空間の、ポリシーによって定義されるサブセットである、ステップと、
前記ピアＶＳＡにおけるデータの第５の共有名前空間のデータを復元して、ネットワーク接続が利用可能ではないとき、前記第５の共有名前空間のデータを前記ピアＶＳＡにおいて利用可能にするステップであって、前記第５の共有名前空間は、前記第４の共有名前空間の、ポリシーによって定義されるサブセットである、ステップと、
を更に含む、請求項８記載の方法。
【請求項１２】
前記ピアＶＳＡは前記仮想マシンにおいて実装される、
請求項１１記載の方法。
【請求項１３】
前記ピアＶＳＡは別の仮想マシンにおいて実装される、
請求項１１記載の方法。
【請求項１４】
前記ＶＳＡを介して前記第５の名前空間の前記複製されたデータにアクセスするステップ、
を更に含む、請求項１１記載の方法。
【請求項１５】
前記ストレージサーバシステムは、連合されたグループとして動作される複数のデータストレージ装置を備える、
請求項８記載の方法。
【請求項１６】
前記ＶＳＡは前記連合されたグループに含まれる、
請求項１５記載の方法。
【請求項１７】
前記仮想マシンは、携帯用エンドユーザコンピュータ装置において実装される、
請求項８記載の方法。
【請求項１８】
１つ又は複数のプロセッサによって実行されるとき、
仮想マシンにおける仮想ストレージ装置（ＶＳＡ）とストレージサーバシステムとの間のネットワーク接続を確立し、
前記ＶＳＡにおけるデータの第２の共有名前空間へのアクセスを提供し、ここで前記第２の共有名前空間は、前記ストレージサーバシステムの第１の共有名前空間の、ポリシーによって定義されるサブセットであり、
前記ＶＳＡにおいてデータの第３の共有名前空間のデータを複製して、ネットワーク接続が利用可能ではないとき、前記第３の共有名前空間のデータを前記ＶＳＡにおいて利用可能にし、ここで前記第３の共有名前空間は、前記第２の共有名前空間の、ポリシーによって定義されるサブセットであり、
ネットワーク接続が利用可能ではないとき、前記ＶＳＡにおける前記第３の共有名前空間におけるデータセットの変更を許可し、
ネットワーク接続が利用可能であるとき、前記変更を前記第１の共有名前空間と同期させる、
ように前記１つ又は複数のプロセッサを指示する、
命令を格納する非一時的な機械読み出し可能なストレージ媒体。
【請求項１９】
前記命令はさらに、
ネットワーク接続が利用可能ではないとき、前記ＶＳＡにおける前記第３の共有名前空間において新たなデータセットの生成を許可し、
ネットワーク接続が利用可能であるとき、前記新たなデータセットを前記第１の共有名前空間に付加する、
ように前記１つ又は複数のプロセッサを指示する、
請求項１８記載の機械読み出し可能なストレージ媒体。
【請求項２０】
前記命令はさらに、
ピアＶＳＡにおけるネットワーク接続を介したデータの第４の共有名前空間へのアクセスを提供し、ここで前記第４の共有名前空間は、前記第１の共有名前空間の、ポリシーによって定義されるサブセットであり、
前記ピアＶＳＡにおけるデータの第５の共有名前空間のデータを複製して、ネットワーク接続が利用可能ではないとき、前記第５の共有名前空間のデータを前記ピアＶＳＡにおいて利用可能にし、ここで前記第５の共有名前空間は、前記第４の共有名前空間の、ポリシーによって定義されるサブセットである、
ように前記１つ又は複数のプロセッサを指示する、
請求項１８記載の機械読み出し可能なストレージ媒体。
【請求項２１】
前記ピアＶＳＡは前記仮想マシンにおいて実装される、
請求項２０記載の機械読み出し可能なストレージ媒体。
【請求項２２】
前記ピアＶＳＡは別の仮想マシンにおいて実装される、
請求項２０記載の機械読み出し可能なストレージ媒体。
【請求項２３】
前記命令はさらに、
前記ピアＶＳＡにおける前記第５の名前空間の前記複製されたデータへのＶＳＡアクセスを提供する、
ように前記１つ又は複数のプロセッサを指示する、
請求項２０記載の機械読み出し可能なストレージ媒体。
【請求項２４】
前記ストレージサーバシステムは、連合されたグループとして動作される複数のデータストレージ装置を備える、
請求項１８記載の機械読み出し可能なストレージ媒体。
【請求項２５】
前記ＶＳＡは連合されたグループに含まれる、
請求項１８記載の機械読み出し可能なストレージ媒体。
【請求項２６】
ネットワーク接続を介してストレージサーバシステムに動作可能に接続された仮想ストレージ装置（ＶＳＡ）を含む仮想マシンを備え、
前記仮想マシンは、
ネットワーク接続を介したデータの第２の共有名前空間へのアクセスを提供し、ここで前記第２の共有名前空間は、前記ストレージサーバシステムにおけるデータの第１の共有名前空間のサブセットであり、
前記ＶＳＡにおいてデータの第３の共有名前空間のデータを複製し、ここで前記第３の共有名前空間は、前記第２の共有名前空間のサブセットであり、
ネットワーク接続が利用可能ではないとき、前記ＶＳＡにおける前記第３の共有名前空間における既存のデータセットの変更を許可し、
ネットワーク接続が利用可能であるとき、前記変更を前記第１の共有名前空間と同期させ、
ネットワーク接続が利用可能ではないとき、前記ＶＳＡにおける前記第３の共有名前空間において新たなデータセットの生成を許可し、
ネットワーク接続が利用可能であるとき、前記新たなデータセットを前記第１の共有名前空間に付加する、
処理装置。
【請求項２７】
前記仮想マシンは、クラスタとして前記ＶＳＡと共に動作するように構成された別の複数のＶＳＡを含む、
請求項２６記載の処理装置。
【請求項２８】
前記ＶＳＡ及び前記ストレージサーバシステムは連合されたグループを備える、
請求項２６記載の処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願の種々の実施形態は一般に、データストレージシステムの管理の分野に関する。より具体的には、本出願の種々の実施形態は、仮想ストレージ装置を使用して、遠隔位置から、共有されるデータシステムへのアクセスを提供する方法及びシステムに関する。
【背景技術】
【０００２】
現代のデータセンターは多くの場合、ストレージシステムと、ストレージ制御装置と、大容量ストレージ装置と、データを管理し、格納し、そしてデータへのアクセスを提供する他の装置とを含む。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
これらのデータセンターは多くの場合、地理的に分散されたユーザにデータサービスを提供する。ユーザは多くの場合、幅広い種々のストレージ要求とアクセス要求を持つ。多くのユーザは、基幹となるサイトで、又は重要なコンピュータ資源とネットワークリソースを有する施設において作業を行う。同時に、端又は遠隔の位置における他のユーザは、コンピュータ資源及び／又はネットワーク接続へのアクセスが制限されている場合がある。遠隔及び端の位置は、信頼性が無い、遅い、又は断続的なネットワーク接続を有する場合がある。いくつかの場合において、ネットワークアクセスは、相対的に高価な無線手段を介して利用可能であるだけの場合があり、及び／又は、予算上の理由により控えめに利用される必要がある場合がある。ネットワークの接続性はまた、ホームオフィス及びモバイル位置で作業を行う従業員の増加によって、断続的である場合がある。
【０００４】
いくつかの場合において、専用のストレージ機器は、ネットワークの停止と遅延の悪影響を最小化するために、端の位置において実装される。しかしながら、遠隔又は端の位置において専用のストレージ装置を実装することは、機器費用、サポート費用、十分な又は信頼性のある電力の欠如、ロケーションの数、セキュリティの問題、及び／又は、物理的な空間の可用性によって、実行可能ではない場合がある。これらの問題は多くの場合、モバイルの従業員にとってさらに大きな課題をもたらす。各作業位置において別の専用のストレージ機器を運んでセットアップすることは、多くの場合において実行可能である。
【０００５】
例えば、放射線専門医は、ホーム又は別の遠隔の位置で作業を行う場合がある。放射線専門医はまた、いくつかの地理的に分散された医療施設にサービスを提供する場合がある。放射線専門医及び医療施設は、医用画像及び他の関連するデータへの、共用され且つ信頼性のあるアクセスを必要とする。しかしながら、このアクセスはまた、プライバシー及び法規制の遵守の理由で、慎重に管理される必要がある。多くの場合において、医用画像又は他のデータに対する全ての要求は、ネットワーク接続を介して、データの要求を基幹ストレージ位置に送信してデータを受信することを必要とする。遅い又は遮断されたネットワーク接続は、放射線専門医の生産性、他の関連する医療サービス提供者の有効性、及び／又は、治療の適時性に、重大な影響を有する場合がある。
【０００６】
遠隔測定アプリケーションにおいて、コンピュータ装置は多くの場合、遠隔位置に導入されて、データを集める。これらの位置におけるネットワークの接続性は最低限である場合があり、また、その環境は補足的なストレージ及び処理機器の導入に適していない場合がある。これらの遠隔位置における専用のストレージハードウェアの実装は、費用、環境、又は他の理由によって、実行可能でない場合がある。
【０００７】
いくつかの場合において、クラウドゲートウェイなどの専用のストレージ装置は、データアクセスを促進するために、遠隔位置において導入される。しかしながら、これらの装置は、基幹ストレージ位置におけるデータの専用の名前空間へのアクセスを提供するのみであり、別のハードウェアの費用でそのようにする。名前空間は、データストレージシステムに格納されたファイル又はデータに対する識別子の論理グループである。多くの場合において、名前空間は、複数のシステム又はユーザの間で共有され得る。専用の名前空間におけるデータセットは、複数のユーザによるアクセス及び／又は変更のために簡単に入手可能ではない。共有名前空間は通常、データアクセスを複数のユーザに提供するために、集中化されたロケーションに格納される。いくつかの解決方法は、遠隔位置において現在又は最近アクセスされた複数のファイルをキャッシュし、ネットワークの接続性にかかわらずそれらを利用可能にする。しかしながら、現在又は最近アクセスされた複数のファイルは通常、データの共有名前空間全体のうちの小さなサブセットでしかない。ネットワーク接続が利用不可能であるか、効果的なリアルタイムアクセスを提供するには不十分な帯域幅を有する期間の間、ユーザは、データのより大きな又は代替のサブセットにアクセスする必要がある場合がある。また、クラウドゲートウェイのような専用のハードウェア装置は多くの場合、付加的な、電力、空間、実装、温度、空気濾過、及び／又は、セキュリティを含む他の制限を課す。また、これらの専用のハードウェア装置は、変化する要求を満たすように簡単に又は迅速に拡縮可能ではない。
【０００８】
上述の接続性の問題に加えて、集中化されたデータアクセスは、コンピュータシステム及びストレージシステムの発展性により、課題となり得る。組織は理想的には、単一のフレームワーク及び／又はファイルシステム内で管理されるそれらのデータの全てを有することが好ましい場合があるが、技術の発展は多くの場合、データが複数のシステムに亘って広がる場合がある、ということを意味する。適切なアクセス制御を維持しながら、これらのユーザに簡単化されたアクセスを提供することが望まれる。これらの問題の全ては、ユーザ、特に端又は遠隔の位置におけるユーザに、複数のシステムの間で共有されるデータへの簡単化され且つ信頼性のあるアクセスを提供するという課題を示す。これらの課題は、益々分散される労働力、データ中心の作業内容、集中型のデータ管理に向けた継続的な動き、及び、常に発展しているデータシステムの組み合わせによって、継続する可能性がある。
【課題を解決するための手段】
【０００９】
分散ストレージシステムにおいて、集中型ストレージロケーションへのネットワーク接続が利用可能でないとき、又は、ネットワークの利用が何らかの他の理由によって制限されるとき、遠隔位置におけるユーザは、共有名前空間にアクセスすることが困難であり得る。専用のストレージシステムハードウェアは、遠隔位置において導入され集中型ストレージロケーションと同期されて、共有名前空間へのローカルアクセスを提供することができる。しかしながら、遠隔位置において専用のストレージシステムハードウェアを導入することは多くの場合、費用、電力要件、空間要件、サポートの必要性、又は他の理由によって、望まれない。したがって、仮想ストレージ装置（ＶＳＡ）が本明細書において紹介される。この仮想ストレージ装置（ＶＳＡ）は、ネットワーク接続が利用可能ではないとき、遠隔位置において導入され又は維持されるべき別のコンピュータハードウェアを必要とすることなく、遠隔位置において、既存の固定されたコンピュータハードウェアと携帯型のコンピュータハードウェアにおいて実装されることができ、また、共有名前空間、又は共有名前空間の好ましい（複数の）サブセットへのローカルアクセスを提供することができる。
【００１０】
一例において、ストレージシステムは、ストレージサーバと、仮想マシンにおいて実装されたＶＳＡとを含む。ストレージサーバは、データの第１の共有名前空間へのアクセスを提供する。ＶＳＡは、ネットワーク接続を介してストレージサーバシステムに動作可能に接続されて、ネットワーク接続を介したデータの第２の共有名前空間へのアクセスを提供する。第２の共有名前空間は、ポリシーによって定義され、第１の共有名前空間のサブセットを含む。ＶＳＡはまた、ＶＳＡにおいてデータの第３の共有名前空間のデータを複製して、ネットワーク接続が利用可能ではないとき、第３の共有名前空間をＶＳＡにおいて利用可能にする。第３の名前空間は、ポリシーによって定義され、第２の共有名前空間のサブセットを含む。本ストレージシステムは、第２の共有名前空間が複数のファイルシステムにまたがるときであっても、遠隔ユーザが第２の共有名前空間の全体にアクセスすることを可能にし、また、ネットワーク接続が利用可能ではないときであっても、遠隔ユーザが第３の共有名前空間におけるデータの使用を継続することを許す。
【００１１】
上述のＶＳＡは、他の目的も果たすコンピュータ装置において実装されてもよく、それによって、別の又は専用のストレージハードウェアの必要性を生じること無くデータアクセスを改善する。ＶＳＡは、遠隔位置における既存のサーバ又はコンピュータ装置上の仮想マシンにおいて実装されてもよい。いくつかの場合において、コンピュータ装置は、エンドユーザのパーソナルコンピュータ又は携帯型コンピュータ装置であってもよい。いくつかの場合において、ストレージシステムの種々の要素は、連合されたグループとして管理されてもよい。
【００１２】
ＶＳＡは、ネットワーク接続が利用可能であるとき、ネットワーク接続を介して、ストレージサーバ上の共有名前空間へのアクセスを提供する。共有名前空間は、複数のユーザ又はシステムによってアクセスされてもよい。また、ＶＳＡは、ネットワーク接続が利用可能ではないとき、関連するデータ名前空間をＶＳＡにおいて利用可能にするために、共有名前空間の別の部分を格納する。ローカルに格納される名前空間を構成するデータは、ネットワーク接続が利用可能ではないときであっても、アクセス及び／又は変更されることができる。ＶＳＡは、ネットワーク接続が利用可能であるとき、データがポリシーに基づいてＶＳＡとストレージシステムの他の要素との間で同期されるように、ストレージシステムの要素として動作される。
【００１３】
１つの実施形態において、上述の方法はまた、ネットワーク接続が利用可能ではないときであっても、ＶＳＡにおいて複製された第３の共有名前空間におけるデータセットの変更を許可するステップを含む。データセットに対する変更は、ネットワーク接続が利用可能となるとき、ストレージシステムの他の要素と同期される。また、ポリシーは、ＶＳＡにおいて新たなデータセットの生成を許可してもよい。新たなデータセットは、複製された名前空間の一部であり、また、ネットワーク接続を介して、ストレージシステムと最終的に同期される。
【００１４】
１つの実施形態において、１つ又は複数の別のＶＳＡはまた、システムにおいて実装されてもよい。ＶＳＡの数は動的に増減されて、システムの変化する要求に応えてもよい。別の複数のＶＳＡは、同一の物理的なマシン上で、又は異なる位置における別の物理的なマシンにおいて実装されてもよい。基幹ストレージシステムとのデータのアクセス及び同期に加えて、複数のＶＳＡはまた、お互いからのデータにアクセスしてもよく、また、お互いの間でデータを同期させてもよい。
【００１５】
本発明の実施形態はまた、他の方法、種々の構成要素を有するシステム、及び複数の命令を格納する非一時的な機械読み出し可能なストレージ媒体を含み、上記複数の命令は、１つ又は複数のプロセッサによって実行されるとき、１つ又は複数のプロセッサに、本明細書において説明される方法、方法の変形例、又は他の動作を実行するように指示する。実施形態が開示されたが、本発明の例示的な複数の実施形態を示して説明する以下の詳細な説明から、更に他の実施形態が当業者に明らかとなる。理解されるように、本発明は、本発明の範囲から全く逸脱することなく、種々の態様における変更が可能である。したがって、図面及び詳細な説明は、事実上例示として見なされるべきであり、制限的に見なされるべきものではない。
【図面の簡単な説明】
【００１６】
【図１】本発明のいくつかの実施形態が利用されることができる動作環境を示す。
【図２】ストレージシステムの動作の方法の例を示す。
【図３】単一のＶＳＡを含むストレージシステムの例を示す。
【図４】複数のＶＳＡを含むストレージシステムの例を示す。
【図５】複数のＶＳＡを有するストレージシステムの動作の方法の例を示す。
【図６】ストレージシステムの構成要素を実装するために使用されることができるシステムのブロックダイアグラムを示す。
【発明を実施するための形態】
【００１７】
本出願は、２０１２年４月２７日付け提出の米国特許出願第１３／４５８１９９号の優先権を主張するものであり、参照によってその全体が本明細書に組み込まれる。
【００１８】
本発明の実施形態は、添付の図面を用いて記載され説明される。
【００１９】
図面は必ずしも縮尺の通りに描かれている必要はない。例えば、図面におけるいくつかの要素の寸法は、本発明の実施形態の理解を深めることを助けるために、拡大され、又は縮小される場合がある。同様に、いくつかの構成要素及び／又は動作は、本発明の実施形態のいくつかの議論の目的のために、異なる複数のブロックに分離される場合があり、又は単一のブロックに組み合わせられる場合がある。さらに、本発明は種々の変更及び置換の形式に従うが、特定の実施形態は、図面において例示によって示され、以下に詳細に説明される。その意図はしかしながら、本発明を、説明される特定の実施形態に限定することではない。むしろ、本発明は、添付の特許請求の範囲によって定義される本発明の範囲内に含まれる全ての変更、均等、及び置換を含むことが意図される。
【００２０】
本出願の種々の実施形態は一般に、データストレージシステムを管理する分野に関する。より具体的には、本出願の種々の実施形態は、仮想ストレージ装置を使用して、遠隔位置から、共有されるデータシステムへのアクセスを提供する方法及びシステムに関する。
【００２１】
コンピュータ環境において、集中型の又は基幹のデータストレージ設備に対する信頼性は増し続けている。集中型のデータ設備は、地理的に分散したユーザを含む多数のユーザに対して、データへの共有されたアクセスを提供することだけでなく、より信頼性を有するデータ管理サービスを提供することができる。データユーザは通常、これらの集中型ロケーションからデータにアクセスするために、ネットワーク接続に依存している。あるユーザは、集中的に格納されたデータへの断続的な及び／又は信頼性の無いネットワーク接続を有してもよい。データが遠隔位置においてローカルで格納されない場合、各データアクセスは、遠隔位置と基幹データストアとの間のネットワークを介して、運び戻される。低速の、信頼性の無い、又は利用可能ではないネットワークアクセスは、遠隔位置において、作業活動を著しく妨害してしまう。
【００２２】
本発明は、遠隔位置において仮想マシンにＶＳＡを実装することによって、これらの及び他の問題点を解決する。仮想マシンは、既存の、非専用のコンピュータハードウェアにおいて実装されてもよく、ネットワーク接続を介してポリシーが特定された共有名前空間へのアクセスを提供する。また、ＶＳＡは、ネットワーク接続が利用可能ではない又は不十分な帯域幅しか持たないときの使用のための、共有名前空間の特定された部分のデータを複製して、データアクセスの必要性に応える。ＶＳＡは、ネットワーク接続が利用可能であるときにＶＳＡにおいて複製される名前空間のデータセットの変更又は当該データセットへの付加がストレージシステムと同期されるように、ストレージシステムを構成する装置の連合されたグループの要素として動作されてもよい。別の複数のＶＳＡは、１つ又は複数の遠隔位置において変化する要求を満たすために、同一の物理的なマシンにおいて、又は他の物理的なマシンにおいて実装されてもよい。
【００２３】
本発明の実施形態について一般的に説明したが、次に図１に注目する。図１は、本発明のいくつかの実施形態が利用されることができる動作環境を示す。動作環境１００は、コンピュータ１１０と、ストレージサーバシステム１３０と、クライアント１８０Ａ及び１８０Ｂと、ネットワーク１９０とを含む。
【００２４】
ストレージサーバシステム１３０は、ストレージサーバ１４０と、ストレージサーバ１５０と、ドライブ１４２Ａ，１４２Ｂ，１５２Ａ，及び１５２Ｂとを含む。ストレージサーバシステム１３０はまた、異なる種類の他の装置又はストレージ構成要素を含んでもよく、これらは、データ又はデータストレージリソースを管理し、収容し、又はデータ又はデータストレージリソースにアクセスを提供するために使用される。ストレージサーバ１４０及び１５０はコンピュータ装置であり、各々は１つ又は複数のファイルシステムを実装するストレージオペレーティングシステムを含む。本明細書において使用される用語としての「ファイルシステム」は、データの論理コンテナの構造化されたセットであり、これはファイル、ディレクトリ、ボリューム、ＬＵＮｓ、オブジェクト、及び／又は、他の（複数の）種類の論理コンテナであってもよいが、必ずしもこれに限らない。ストレージサーバ１４０及び１５０の各々は、例えば、ドライブ１４２Ａ，１４２Ｂ，１５２Ａ，及び１５２Ｂなどの書き込み可能な持続的ストレージ媒体の情報の統合に関連するストレージサービスを提供する、サーバクラスコンピュータでもよい。ドライブ１４２Ａ，１４２Ｂ，１５２Ａ，及び１５２Ｂは、データを格納する持続的ストレージ媒体を含み、ドライブ１４２Ａ，１４２Ｂ，１５２Ａ，及び１５２Ｂの各々は、ハードディスクドライブ（ＨＤＤ）、フラッシュメモリ、ソリッドステートドライブ（ＳＳＤ）、テープドライブ、又は他の種類の持続的ストレージ装置、若しくはそれらの組み合わせであってもよい。ストレージサーバ１４０又はストレージサーバ１５０はまた、フラッシュメモリ、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、微少電子機械（ＭＥＭｓ）ストレージ装置、又はそれらの組み合わせを含む、他の種類の持続的ストレージ装置を利用してもよい。ストレージサーバ１４０又はストレージサーバ１５０はまた、持続的ストレージ装置にアクセスしてこれを管理するストレージ制御装置を含む、他の装置を使用してもよい。
【００２５】
ストレージサーバ１４０又はストレージサーバ１５０と関連する持続的ストレージ装置のいくつか又は全ては、単一の論理ストレージユニットとして統合されてもよい。例えば、ストレージサーバ１４０のドライブ１４２Ａとドライブ１４２Ｂは、単一の論理ストレージユニットとして作動される独立ディスクの冗長アレイ（ＲＡＩＤ）として構成されてもよい。他のドライブ構成は可能である。ストレージサーバシステム１３０は、モノシリックシステムとして例示されるが、種々の地理的位置に分散されたシステム又は装置を含むことが可能である。ストレージサーバシステム１３０はまた、ストレージサーバ１４０及びストレージサーバ１５０と同一又はこれらと異なるストレージオペレーティングシステムを使用して作動する、別のストレージサーバを含んでもよい。
【００２６】
ドライブ１４２Ａ，１４２Ｂ，１５２Ａ，及び１５２上に格納されるデータは、データの第１の共有名前空間を含む。第１の共有名前空間は、企業全体のための、又はストレージサーバシステム１３０のための、グローバル名前空間であってもよい。グローバル名前空間は、ストレージサーバシステム１３０に含まれるファイル情報の、異種の抽象化である。グローバル名前空間は、異種の及び／又は遠隔のネットワークに基づいたファイルシステムの集約を可能にする。このことは、個別化されたシステムを管理することと該システムにアクセスすることの複雑性を低減することができるこれらのファイルシステムの統合された視点を提供する。例えば、ストレージサーバ１４０及びストレージサーバ１５０は各々、それら自身の個々の名前空間を利用することができ、当該個々の名前空間は種々のファイルシステムを用いて管理される。グローバル名前空間を確立することによって、ストレージサーバ１４０及びストレージサーバ１５０の両方の名前空間は、単一の仮想化されたファイルシステム名前空間としてシームレスにアクセス可能である。
【００２７】
図１は、非分散装置としてストレージサーバ１４０及びストレージサーバ１５０を示すが、当業者であれば、分散化された装置又は仮想化された装置のいずれかとして実装可能であることを理解するであろう。さらに、ストレージサーバ１４０及び１５０の機能は、ネットワークアッタチトストレージ（ＮＡＳ）システム、ストレージアッタチトネットワーク（ＳＡＮ）、又はダイレクトアッタチトストレージ（ＤＡＳ）システムを含む、多様なストレージサーバのアーキテクチャ又は技術に適合されてもよい。用語「ストレージサーバ」は、データへのファイルベースのアクセス、データへのブロックベースのアクセス、データへのオブジェクトベースのアクセス、別の種類のアクセス、又はそれらの組み合わせを提供するストレージサーバを含む構成を含むように、広範に使用される。
【００２８】
ストレージサーバ１４０及び１５０は、図１に示すように、直接的に又はネットワーク１９０を介して、他の装置とインタフェースする。ネットワーク１９０は、情報を交換する１つ又は複数の装置を含む。例えば、ネットワーク１９０は、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、メトロポリタンネットワーク（ＭＡＮ）、遠隔通信ネットワーク、インターネット、又はそれらの任意の組み合わせを含んでもよい。ネットワーク１９０はまた、各々、ルータ、ハブ、コンピュータ、サーバ、又は他の種類のコンピュータ装置を含んでもよい。ネットワーク１９０は、有線ネットワーク、無線ネットワーク、又はそれらの組み合わせであってもよい。
【００２９】
クライアント１８０Ａ及び１８０Ｂは、アプリケーション又はシステムであり、これらは、ネットワーク１９０を介してストレージサーバ１４０又はストレージサーバ１５０と通信して、持続的ストレージ媒体上に格納されるデータにアクセスする。
【００３０】
コンピュータ１１０は処理装置であり、サーバ、パーソナルコンピュータ、タブレットコンピュータ、アプリケーション特定ハードウェア、携帯型コンピュータ装置、又はスマートフォンを含んでもよい。コンピュータ１１０は、仮想マシン１１４を含む。仮想マシンは、オペレーティングシステム（ＯＳ）又はアプリケーションがインストール可能なコンピュータ環境であり、ホストシステムハードウェアとＯＳ内で動作する。仮想マシン１１４は物理的なコンピュータ環境をエミュレートするが、ＣＰＵ、メモリ、ハードディスク、ネットワークの接続性、又は他のリソースへのリクエストは、仮想化層によって管理される。ここで、仮想化層は、これらのリクエストをコンピュータ１１０の物理的なリソースに移す。仮想マシン１１４は、ホストコンピュータ１１０のＯＳの上で動作するハイパーバイザ又は仮想化プラットフォームなどの、仮想化層内で構築されてもよい。仮想化層は、コンピュータ１１０内で、別の孤立した仮想マシン環境を構築するために使用可能である。
【００３１】
仮想マシン１１４は、仮想ストレージ装置（ＶＳＡ）１１６を含む。ＶＳＡ１１６は仮想マシン１１４上で動作するアプリケーションであり、これはストレージサーバシステム１３０などの外部システムがコンピュータ１１０のストレージリソースを利用することを許す。一例において、ＶＳＡ１１６は、コンピュータ１１０において利用可能なＨＤＤ空間の一部が、ストレージサーバシステム１３０の拡張として使用されることを許す。オペレーティングシステムから見ると、仮想マシン１１４は、ＶＳＡ１１６の動作をコンピュータ１１０の他の処理動作から孤立させて、ＶＳＡ１１６が、ホストコンピュータ１１０のＯＳとは異なるＯＳに実装されることを許す。ＶＳＡ１１６が仮想マシン１１４内で動作するため、ＶＳＡ１１６は簡単に移転可能であり、多くの異なる種類の装置上に実装されることができる。ＶＳＡ１１６はまた、仮想ストレージネットワーク装置又は仮想ストレージ最適化装置として見なされてもよい。
【００３２】
図２は、ストレージシステムの動作の方法２００を示す。動作環境１００における実施に関する方法２００について以下に説明する。しかしながら、他の動作環境における方法２００の実施は可能であり、動作環境１００の構成要素に関する以下の説明は限定を意図するものではない。
【００３３】
方法２００の一実施において、ネットワーク接続は、ネットワーク１９０を介して、仮想マシン１１４におけるＶＳＡ１１６とストレージサーバシステム１３０との間で確立される（ステップ２１０）。ネットワーク接続はまた、ＶＳＡ１１６と、ストレージサーバシステム１３０に含まれる１つ又は複数の個々のストレージサーバとの間で確立されてもよい。ストレージサーバシステム１３０はデータの第１の共有名前空間を含み、該第１の共有名前空間は、クライアント１８０Ａ及び１８０Ｂを含む他のユーザ又はシステムと共有されてもよい。本方法は、ネットワーク接続を介して、ＶＳＡを介したデータの第２の共有名前空間へのアクセスを提供するステップを含む（ステップ２２０）。第２の共有名前空間は、第１の共有名前空間の、ポリシーによって定義されるサブセットである。本明細書において使用される名前空間の「サブセット」は、名前空間の一部であってもよく、又は、第１の共有名前空間全体であってもよい。第１の共有名前空間は、ストレージサーバ１４０及びストレージサーバ１５０の各々の、個別の名前空間のうちのいくつか又は全てを含んでもよい。ポリシーは、第１の共有名前空間のどの１つ又は複数のサブセットがＶＳＡ１１６においてアクセス可能な第２の共有名前空間に含まれるか、を決定する。ポリシーは、最も一般的にはストレージサーバシステム１３０に格納されるが、いくつかの場合においてＶＳＡ１１６に格納されてもよい。ポリシーはまた、第２の共有名前空間に含まれない第１の名前空間の部分へのアクセスを回避してもよい。システム管理者又は他の関係者は、ポリシーを適切に作成又は変更することによって、第１の名前空間のどの部分がＶＳＡ１１６によってアクセス可能であるかを制御してもよい。仮想マシン１１４はエンドユーザのコンピュータ装置において実装されてもよいため、ポリシーは、アクセス制御を、個々のユーザレベルに下げて提供することができる。
【００３４】
引き続き図２を参照し、本方法はまた、ＶＳＡ１１６において第３の共有名前空間のデータを複製して、ネットワーク１９０が利用可能ではないとき、又は何らかの理由によってネットワーク接続が確立されることができないとき、第３の共有名前空間のデータをＶＳＡ１１６において利用可能にするステップを含む（ステップ２３０）。第３の共有名前空間はまたポリシーによって定義され、また、第２の共有名前空間のサブセットである。このように、ネットワーク接続が利用可能ではないか、データアクセスの要求をサポートするに十分な帯域幅を提供しないかのいずれかのとき、コンピュータ１１０のユーザは、第３の共有名前空間内の任意のデータセットへのアクセスを継続することができる。ネットワーク接続を介するよりもむしろＶＳＡ１１６において第３の名前空間におけるデータセットへアクセスすることはまた、ネットワーク接続が利用可能であるときであっても他の利点を有する場合がある。例えば、ピーク利用時の間、ネットワーク帯域幅は費用がよりかかる場合があり、また、これらのピーク期間の間、ローカルアクセスのための共有名前空間データのキャッシングは、費用効率がより高い場合がある。
【００３５】
図３は、ストレージシステム３００の動作を示す。ストレージシステム３００は、図１に示す動作環境の一例である。ストレージサーバシステム１３０は、ドライブ１４２Ａ，１４２Ｂ，１５２Ａ，及び１５２Ｂ上に格納されるデータを含む。ストレージサーバ１４０及びストレージサーバ１５０は両方、ストレージサーバシステム１３０の構成要素であり、種々のファイルシステムを利用してそれらのそれぞれのデータセットを管理してもよい。ストレージサーバシステム１３０はまた、別のストレージサーバ、別の持続的ストレージ装置、又は他の装置を含んでもよい。
【００３６】
ストレージサーバシステム１３０に含まれるデータの種々のサブセットを含む、多くの種類の論理名前空間が、定義されることができる。説明の目的のために、名前空間３６０は、ドライブ１４２Ａ，１４２Ｂ，及び１５２Ａ上のデータを表す。しかしながら、データセットは通常複数のディスクに亘って広がるために、名前空間は通常、ディスク（又は他のストレージ装置）全体を含む若しくは除外するが、これは断定的ではない。例えば、典型的なＲＡＩＤ実装において、データの最小ブロックでさえも複数のディスクに亘って広がる。しかしながら、名前空間３６０が特定のドライブを含む図３の図示において、名前空間３６０が、ストレージサーバ１４０及びストレージサーバ１５０によって管理されるデータのサブセットを含むことを示すことが、意図されている。いくつかの場合において、名前空間３６０はまた、他の地理的位置におけるシステムを含む、他のストレージサーバ及び／又は他のストレージサーバシステムと関連するデータを含むことも可能である。
【００３７】
名前空間３６０は共有名前空間であり、すなわち、名前空間３６０におけるデータは、複数のユーザ又はシステムによってアクセスされもよく、またいくつかの場合において変更されてもよい。ポリシーは、どのユーザ、コンピュータ、及び／又はシステムが名前空間３６０にアクセスすることが許可されるかを定義する。個々のポリシーは、各ユーザ、各コンピュータ、各仮想マシン、及び／又は各ＶＳＡに対して、作成されてもよい。代替例として、これらの個々のポリシーの要素は、単一のポリシーにおいて定義されてもよい。コンピュータ１１０上で動作するアプリケーションからの、共有名前空間３６０におけるデータへのアクセスの要求は、ＶＳＡ１１６によって処理されて、ネットワーク１９０を介してストレージサーバシステム１３０に転送される。共有名前空間３６０からのデータへのアクセスは、ポリシーに従って許可又は拒否される。いくつかの場合において、ポリシーはさらなる許可の詳細を定義してもよい。例えば、特定のデータセットに対して、読み出し特権が与えられる一方で、書込特権が与えられなくともよい。これらのポリシーは、要求されるデータセットの現在の状態に応じて、且つ、データセットが他のユーザ又はシステムによって現在アクセスされているか否かに応じて、変更されてもよい。
【００３８】
ＶＳＡ１１６によってアクセス可能であるストレージサーバシステム１３０におけるデータのサブセットを定義することに加えて、ポリシーはまた、ＶＳＡ１１６において複製されることとなるアクセス可能な名前空間のサブセットを定義する。この例において、名前空間３６２は、ネットワーク接続が利用可能ではないときにＶＳＡ１１６において利用可能であることが望まれる、データのサブセットを定義する。いくつかの場合において、名前空間３６２は、名前空間３６０の全てを含み当該名前空間３６０に論理的に等価であってもよい。名前空間３６２を構成するデータは、ネットワーク接続が利用可能であるとき、ＶＳＡ１１６に複製される。このように、名前空間３６２に含まれる任意のデータセットは、ネットワーク接続が利用可能ではないとき、コンピュータ１１０にてローカルで利用可能となる。
【００３９】
また、アクセス速度を改善し、ネットワークの混雑を最小化し、費用を低減し、又は他の理由のために、ネットワーク接続が利用可能であるときであっても、名前空間３６２におけるデータセットは、ＶＳＡ１１６におけるローカルコピーからアクセスされてもよい。名前空間３６２のデータはＶＳＡ１１６に複製されるにもかかわらず、名前空間３６２は共有名前空間であり、そのデータは、他のクライアント、ユーザ、又はシステムによって、ストレージサーバシステム１３０から、更にアクセスされてもよい。例えば、コンピュータ１１０のユーザは、クライアント１８０Ａがストレージサーバシステム１３０から同一のデータセットにアクセスしている同一の時間期間の間、ＶＳＡ１１６の複製された名前空間３６２におけるデータセットにアクセスすることができる。ネットワーク接続が利用可能であるとき、ストレージサーバシステム１３０は、ＶＳＡ１１６における複製された名前空間３６２の同期を管理して、名前空間３６０において生じた任意の変更を含める。同期の詳細は、ポリシーによって更に定義されてもよい。
【００４０】
既存のツールは、地理的に分散されたリポジトリに亘ってデータセットをインテリジェントに管理及び同期させる技術分野において知られている。ポリシーエンジンは、どのようにデータが格納され、配置され、マージされ、同期され、置換され、及び／又は、保護されるかを管理する。ポリシーエンジンはまた、バージョン管理機能を実行してルールを確立し、このことは、たとえ他のユーザ又はシステムがストレージサーバシステム１３０から名前空間３６２のデータセットにアクセスしている又は当該データセットを変更しているとしても、ＶＳＡ１１６における複製された名前空間３６２のデータセットが変更されることを可能にする。バージョン管理の種々の方法及び種々のバージョン管理システムは技術分野において知られている。本明細書において説明されるポリシーは、名前空間のどのサブセットがＶＳＡ１１６においてアクセス可能であり複製されることとなるかを説明し、当該ポリシーは、既存のバージョン管理システム又はポリシーエンジンにおいて実装されてもよく、又は独立に実装されてもよい。
【００４１】
ストレージサーバシステム１３０及び／又はストレージサーバ１４０及び１５０は、ドライブ１４２Ａ，１４２Ｂ，１５２Ａ，及び１５２Ｂ上のこれらのデータセットの１つ又は複数のインスタンスを用いて、ＶＳＡ１１６における複製された名前空間３６２のデータセットに対してなされた任意の変更を自動的に同期させるように構成されてもよい。同期は、ネットワーク接続が利用可能となるとすぐに自動的に行われてもよく、又は所定の時刻において行われるようにスケジュールされてもよい。同期処理はまた、ＶＳＡ１１６によって、又はＶＳＡ１１６を介して、トリガ又は制御されてもよい。
【００４２】
ＶＳＡ１１６に複製される名前空間３６２の１つ又は複数のデータセットの変更を許可するステップに加えて、ポリシーはまた、新たなデータセットが名前空間３６２内に作成されることを許してもよい。ＶＳＡ１１６は、たとえいかなるネットワーク接続もこの時点においてＶＳＡ１１６とストレージサーバシステム１３０との間で利用可能でないとしても、この新たなデータセットが、名前空間３６２の複製されたインスタンス内に作成されることを許してもよい。ネットワーク接続が利用可能であるとき、追加されたデータセットは、ポリシーに規定されるルールに従って、ストレージサーバシステム１３０における名前空間３６２に更新され、又は当該名前空間３６２とマージされる。
【００４３】
いくつかの場合において、ストレージサーバシステム１３０は、連合されたストレージシステムとして動作されてもよい。連合されたストレージシステムは、共通の管理システムによって管理される自律的なストレージリソース又はノードの集合であり、ここで、共通の管理システムは、データがストレージネットワークに亘ってどのように格納され、管理され、そして移行されるかに関するルールを提供する。ストレージリソースは、種々のファイルシステムを使用する種々のコントローラ又は装置によって管理されるストレージ容量を含んでもよい。いくつかの場合において、ＶＳＡ１１６は、連合されたストレージシステムの論理的拡張として管理される。この場合において、ＶＳＡ１１６は、ストレージサーバ１４０及び１５０に亘るデータセットを管理するために使用された方法と類似する方法で、連合されたノードとして操作される。
【００４４】
上述の方法でのＶＳＡ１１６の使用は、ネットワーク接続が利用可能ではないときに共有名前空間へのアクセスを提供するだけでなく、遅い且つ断続的なネットワーク接続の悪影響を最小化する。共有名前空間３６２における１つ又は複数のデータセットと関連する処理は、これらの期間の間、コンピュータ１１０を介して継続してもよい。同時に、クライアント１８０Ａ又は１８０Ｂなどの他のユーザは、ストレージシステム１３０の名前空間３６２からのデータセットを利用することを継続してもよい。この機能は、モバイルの従業員にとって、特に有用であり得る。この機能はまた、ネットワークアクセスが利用可能ではない遠隔位置においてコンピュータ１１０が使用されることとなるとき、有益である場合がある。ＶＳＡ１１６は、コンピュータ１１０における仮想マシン１１４において実装されるため、いかなる追加のハードウェアも実装のために必要とされない。いくつかの場合において、仮想マシン１１４及びＶＳＡ１１６は、モバイルの従業員が場所から場所へ既に携行しているラップトップ型コンピュータ又は他の携帯型コンピュータ装置において、実装されてもよい。
【００４５】
名前空間３６０及び名前空間３６２は、ストレージサーバシステム１３０に含まれる任意のデータを含むように、そして最大でストレージサーバシステム１３０における全てのデータを含むように、定義されてもよい。しかしながら、実際問題として、通常は他の制限があり、該制限は、名前空間３６０と名前空間３６２が全ての利用可能なデータのより小さなサブセットとなることを必要とする。これらの制限は、コンピュータ１１０上のストレージ容量、ネットワーク帯域幅、データ管理オーバーヘッド制限、及びユーザアクセス許可を含んでもよい。名前空間３６０は、コンピュータ１１０のユーザがアクセスを許可されているストレージサーバシステム１３０におけるデータのサブセット全体として、定義されてもよい。ユーザはネットワーク接続が利用可能であるときにＶＳＡ１１６を介して名前空間全体にアクセスしてもよいが、名前空間全体はＶＳＡ１１６に複製するには大き過ぎる場合がある。したがって、より重大である又はアクセスのためのより高い優先度を現在有するデータのより小さなサブセットは、コンピュータ１１０上の、他のリソースはもちろん利用可能なストレージ空間を最大限に活用するために、複製のために定義されてもよい。
【００４６】
一例において、名前空間３６０は、コンピュータ１１０のユーザが取り組んだ全てのプロジェクトと関連するデータセットを含む一方、名前空間３６２は、ユーザが現在取り組んでいるプロジェクトと関連するデータセットのみを含む。ユーザの時間の多くが現在のプロジェクトに取り組むことに費やされることが予期されるため、現在実施中のプロジェクトを含むように名前空間３６２を定義することは、コンピュータ１１０のストレージリソースを保存している間にネットワーク接続が利用可能ではないときに、必要とされるデータセットを利用可能にすることの可能性を向上させる。時間と共に、名前空間３６０及び３６２を定義するポリシーは、ユーザの変化する要求、コンピュータ資源の利用可能性、及び／又はネットワーク接続の利用可能性を満たすために変更してもよい。一例において、ポリシーは、ユーザの作業の割り当てが変更されるときに、名前空間３６０の別のサブセットとして名前空間３６２を定義するように変更されてもよい。
【００４７】
図４は、本発明の１つ又は複数の実施形態が利用されることができるストレージシステム４００を示す。ストレージシステム４００は、コンピュータ４１０と、コンピュータ４２０と、データシステム４３０と、ネットワーク４９２，４９４，４９６とを含む。ネットワーク４９２，４９４，及び４９６は、ネットワーク１９０の例である。
【００４８】
データシステム４３０は、企業又は組織全体のデータ操作の論理的な表現である。データシステム４３０は、データセンター４３２と、データセンター４３４とを含む。データセンター４３２及び４３４は、家庭用コンピュータシステム、及びストレージシステムなどの関連する構成要素のために使用される装置を含む。データセンター４３２及び４３４はまた、電源と、通信機器と、環境制御装置とを含んでもよい。データシステム４３０は通常、インタフェース機器などの他の装置を含むこととなる。しかしながら、例示の目的のために、データセンター４３２及び４３４のみが図示されている。データセンター４３２及びデータセンター４３４は、２つの異なる地理的位置に配置されてもよく、また１つ又は複数のネットワークによって動作可能に接続されてもよい。データセンター４３２及び４３４は、データの１つ又は複数の論理名前空間が定義されて２つのデータセンターに広がるように、協調され且つ連合された方法で動作されてもよい。例えば、名前空間４６３は、２つのデータセンターの各々からのデータを含む。
【００４９】
コンピュータ４１０及び４２０はコンピュータ１１０の例である。コンピュータ４１０及び４２０は、異なる地理的位置における２つの個別の処理装置、同一のラックにおける２つのサーバ、又は同一のハードウェア装置内の２つのプロセッサであってもよい。仮想マシン４１４，４１５，及び４２４は仮想マシン１１４の例である。仮想マシン４１４はＶＳＡ４１６を含み、仮想マシン４１５はＶＳＡ４１８を含む。仮想マシン４２４はＶＳＡ４２６を含む。ＶＳＡ４１６，４１８，及び４２６はＶＳＡ１１６の例である。
【００５０】
ＶＳＡ４１６は、ポリシーに基づいて、データセンター４３２の共有名前空間４６１へのアクセスを提供する。ＶＳＡ４１６はまた、共有名前空間４６１のサブセットである共有名前空間４６２を複製する。ＶＳＡ４１８は類似の方法で動作するが、共有名前空間４６３及び４６４に関するこれらの機能を実行する。名前空間４６３及び４６４の両方は、２つのデータセンターに広がる。ＶＳＡ４１６及び４１８はコンピュータ４１０において互いに独立に動作するが、各々は、その関連する仮想マシンを介して、そのそれぞれの関連する名前空間へのアクセスを提供する。コンピュータ４１０に実装されるＶＳＡの数は、要求の変化に応じて増減されてもよい。一例において、複数のユーザはコンピュータ４１０を使用してもよく、ＶＳＡ４１６及び４１８のうちの１つは、各ユーザ専用であってもよい。別の例において、ＶＳＡ４１６及び４１８は各々、コンピュータ４１０を用いて実行される異なるアプリケーション又は動作をサポートしてもよい。このように、特定のコンピュータ、サイト、又はロケーションにおける要求は、ＶＳＡを付加又は取り除くと同時にいくつかのＶＳＡを変更しないことによって、拡縮されることができる。
【００５１】
ＶＳＡ４１６及びＶＳＡ４１８は、重複しない名前空間へのアクセスを提供するものとして示される。しかしながら、ＶＳＡ４１６及び４１８はまた、同一の名前空間への、又は部分的に重複する名前空間へのアクセスを提供するように構成されてもよい。他の例において、ＶＳＡ４１６及びＶＳＡ４１８はＶＳＡクラスタとして動作されてもよい。クラスタ化されたＶＳＡは、名前空間への冗長化されたアクセスを提供してもよく、フェイルオーバ又はフェイルバックの機能を提供してもよく、及び／又は、機能しなくなったＶＳＡと関連する他の復帰機能を提供してもよい。
【００５２】
図４の代替の実施形態において、コンピュータ４１０は複数の仮想マシンを含んでもよく、そして１つ又は複数のＶＳＡは、各仮想マシンに実装されてもよい。
【００５３】
仮想マシン４２４のＶＳＡ４２６は名前空間４６５へのアクセスを提供して、図３に関して説明された方法と類似する方法で、名前空間４６６のデータを複製する。図示するように、名前空間４６５及び４６６は、他のＶＳＡを介してアクセス可能である他の名前空間に重複してもよい。例えば、名前空間４６３にも含まれる同一のデータセットがＶＳＡ４１８を介してアクセスされている間、ＶＳＡ４２６において複製された名前空間４６６のデータセットは、コンピュータ４２０においてローカルでアクセスされてもよい。
【００５４】
図５は、複数のＶＳＡを含むストレージシステムを動作させる方法５００を示す。図５は、図４のＶＳＡ４１８に関して説明される。しかしながら、方法５００の他の実施例は可能である。この例において、コンピュータ４１０において、名前空間４６３におけるデータセットにアクセする要求がある。要求されたデータセットは名前空間４６４におけるデータセットにおいて利用可能ではなく、ここで名前空間４６４はＶＳＡ４１８において複製されている。
【００５５】
ステップ５１０において、ＶＳＡ４１８は、ネットワーク接続がネットワーク４９２を介してコンピュータ４１０とデータシステム４３０との間で利用可能であるかを判別する。ネットワーク接続が利用可能であるとき、データセットは、前述の例において説明したように、ネットワーク４９２を介して、データシステム４３０からアクセスされる（ステップ５７０）。データシステム４３０へのネットワーク接続が利用可能ではないとき、ピアＶＳＡ４２６へのネットワーク接続がネットワーク４９６を介して利用可能であるか否かについての判別が行われる（ステップ５２０）。この接続が利用可能であるとき、次いで、要求されたデータセットがピアＶＳＡ４２６において利用可能であるか否かの判別が行われる（ステップ５３０）。データセットがＶＳＡ４２６において利用可能であるとき、データセットは、ＶＳＡ４２６からＶＳＡ４１８によってアクセスされる（ステップ５８０）。データセットがＶＳＡ４２６において利用可能ではないとき、ネットワーク接続がネットワーク４９４を介してコンピュータ４２０とデータシステム４３０との間で利用可能であるか否かについての判別が行われる。ネットワーク接続が利用可能であるとき、データセットは、ＶＳＡ４２６、ネットワーク４９６、及びネットワーク４９４を介して、データシステム４３０からＶＳＡ４１８によってアクセスされる。
【００５６】
上記の例において、ＶＳＡ４２６は、要求されたデータセットと関連する許可に関するポリシーを確認してＶＳＡ４１８が要求されたデータセットにアクセスする許可を有するかを判別するように、構成されてもよい。いくつかの場合において、ＶＳＡ４１８は、ＶＳＡ４２６がポリシーに従ってアクセスすることが許可されていないデータセットを、要求していてもよい。この場合において、コンピュータ４２０のユーザがデータセットにアクセスすることが許可されない場合があるが、ＶＳＡ４２６は、ＶＳＡ４１８とデータシステム４３０との間の安全な接続又はトンネルの準備を補助してもよい。
【００５７】
上記の例の変形例において、ＶＳＡ４１６又はＶＳＡ４１８は、ＶＳＡ４２６などのピアＶＳＡからのデータにアクセスしてもよいが、ネットワーク４９２は利用可能である。このことは、ネットワーク４９２及び／又はデータシステム４３０が何らかの理由によって過負荷を掛けられ又は低い働きをするときに、有益である場合がある。ＶＳＡ４１６，４１８，及び４２６のうちの１つ又は複数は、それらがデータシステム４３０の要素に論理的になるように、データシステム４３０の連合された要素として動作されてもよい。
【００５８】
図６は、ストレージシステムの構成要素を実装するために使用されることができるシステム６００のブロックダイアグラムである。例えば、図６のシステムは、クライアントシステム、コンピュータ、ネットワーク装置、又はストレージサーバを実装するために使用可能である。図示の実施形態において、システム６００は、（複数の）プロセッサ６１０と、メモリ６２０と、ネットワークアダプタ６４０と、ストレージアダプタ６５０とを含み、全ては相互接続部６６０によって相互接続される。
【００５９】
メモリ６２０はストレージロケーションを含み、このストレージロケーションは、本明細書において導入した技術と関連するソフトウェアプログラムコードとデータ構造を格納するための、（複数の）プロセッサ６１０並びにアダプタ６４０及び６５０によってアクセス可能である。（複数の）プロセッサ６１０並びにアダプタ６４０及び６５０はまた、ソフトウェアコードを実行してデータ構造を操作するように構成された処理要素及び／又は論理回路を含んでもよい。種々の機械読み出し可能なストレージ媒体を含む他の処理及びメモリ実装が、本明細書において導入した技術に関連するプログラム命令を格納して実行するために使用されてもよいということは、当業者にとって明白であろう。
【００６０】
ネットワークアダプタ６４０は、ポイントツーポイントリンク、ワイドエリアネットワーク、公衆ネットワーク上に実装された仮想プライベートネットワーク、又は共有されたローカルエリアネットワークを介して、システム６００を１つ又は複数の他のシステムと結合させるための複数のポートを含む。ネットワークアダプタ６４０は、システム６００をネットワーク１９０などのネットワークに接続するために必要とされる、機械的構成要素及び電気回路を含むことができる。１つ又は複数のシステムは、ＴＣＰ／ＩＰなどの予め規定されたプロトコルにしたがってデータのパケット又はフレームを交換することによって、ネットワーク１９０を介して、他のシステムと通信することができる。
【００６１】
ストレージアダプタ６５０は、（複数の）プロセッサ６１０上で動作するオペレーティングシステムとインタフェースして、付属のストレージ装置上の情報にアクセスする。情報は、ハードディスクドライブ（ＨＤＤ）、磁気テープ、光ディスク、フラッシュメモリ、ソリッドステートドライブ（ＳＳＤ）、ランダムアクセスメモリ（ＲＡＭ）、ＭＥＭｓメモリ、及び／又は情報を格納することに適合された任意の他の類似の媒体などの、付属する、任意の種類の書き込み可能ストレージ媒体のアレイ上に格納されてもよい。ストレージアダプタ６５０は、Ｉ／Ｏ相互接続配置を介してディスクと結合させる入力／出力（Ｉ／Ｏ）インタフェース回路を有する複数のポートを含む。
【００６２】
本発明の複数の実施形態は、上述された種々のステップ及び動作を含む。これらの種々のステップ及び動作は、ハードウェア構成要素によって実行されてもよく、又は、機械実行可能な命令において具現化されてもよく、これらは、命令を用いてプログラムされた１つ又は複数の一般目的又は特定目的のプロセッサに、ステップを実行させるために使用されてもよい。代替例として、ステップはハードウェア、ソフトウェア、及び／又はファームウェアの組み合わせによって実行されてもよい。
【００６３】
本発明の実施形態はコンピュータプログラム製品として提供されてもよく、コンピュータプログラム製品は命令を非一時的に格納している機械読み出し可能な媒体を含んでもよく、コンピュータ又は他の電子装置をプログラムして本明細書において説明されたいくつかの又は全ての動作を実行するために使用されてもよい。機械読み出し可能な媒体は、光ディスク、コンパクトディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）、磁気光ディスク、フロッピー（登録商標）ディスク、ＲＯＭ、ランダムアクセスメモリ（ＲＡＭ）、消去可能プログラム可能読み出し専用メモリ（ＥＰＲＯＭ）、電気的消去可能プログラム可能読み出し専用メモリ（ＥＥＰＲＯＭ）、磁気又は光カード、フラッシュメモリ、又は、電子的な命令を格納することに適する他の種類の機械読み出し可能な媒体を含んでもよいが、これらに限定されない。さらに、本発明の実施形態はまた、コンピュータプログラム製品としてダウンロードされてもよく、プログラムは、搬送波において具現化されるデータ信号の手段で、又は通信回線を介した他の伝送媒質の手段で、遠隔コンピュータから要求しているコンピュータに転送されてもよい。
【００６４】
表現「いくつかの実施形態において」、「いくつかの実施形態によれば」、「示される実施形態において」、「他の実施形態において」、「いくつかの例において」などは一般的に、その表現に続く特定の特徴、構造、又は特性を意味し、本発明の少なくとも１つの実施形態に含まれ、また、本発明の１つよりも多くの実施形態に含まれてもよい。また、そのような表現は、同一の実施形態又は異なる実施形態を参照する必要はない。
【００６５】
本発明の１つ又は複数の実施形態の詳細な説明は上述されたが、種々の置換、変更、及び均等は、本発明の精神から逸脱することなく当業者にとって明白であろう。例えば、上述の実施形態は特定の特徴を参照するが、本発明の範囲はまた特徴の異なる組み合わせを有する実施形態、及び説明された特徴の全てを含んでいない実施形態を含む。したがって、本発明の範囲は、特許請求の範囲内に入るそのような置換、変更、及び変形、並びにそれらの全ての均等を全て包含することが意図される。したがって、上記の説明は本発明の範囲を限定するものとされるべきではなく、本発明は請求項によって定義される。
【図１】
2015520890.tif 000003
【図２】
2015520890.tif 000004
【図３】
2015520890.tif 000005
【図４】
2015520890.tif 000006
【図５】
2015520890.tif 000007
【図６】
2015520890.tif 000008
【国際調査報告】
2015520890.tif 000009
2015520890.tif 000010