(57)【要約】記憶サーバは、少なくとも１つのディスクを含む第１組の記憶装置に１次ボリュームの第１ミラーを生成し、少なくとも１つのディスクを含む第２組の記憶装置に２次ボリュームの第２ミラーを生成する。次に、サーバは、第２組の記憶装置を休止する。次に、ユーザは、第２組の記憶装置を記憶サーバから分離し、第２組の記憶装置をサイト外に移送する。次に、記憶サーバは、特定されたバックアップスケジュールに従って１次ボリュームの１以上の増分バックアップを第１組の記憶装置に保管する。特定される増分スケジュールにより、ユーザは、第２組の記憶装置を記憶サーバに再結合する。記憶サーバは再結合を検出し、第２ミラーを自動的に１次ボリュームに再同期し、第１と第２のミラーの活動的ステータスと非活動的ステータスを交換する。この処理は、必要なときに繰り返される。【特許請求の範囲】
【請求項１】
記憶サーバの運用方法であって、
ａ）ネットワークを介してクライアントにデータ記憶サービスとデータ検索サービスを提供し、
ｂ）不揮発性大容量記憶装置を含む第１組の記憶装置で、１次ボリュームの第１ミラーボリュームを作成し、
ｃ）不揮発性大容量記憶装置を含む第２組の記憶装置で、上記１次ボリュームの第２ミラーボリュームを作成し、
ｄ）上記第２組の記憶装置を休止し、
ｅ）上記第２組の記憶装置の上記記憶サーバからの切り離しを検出し、
ｆ）上記第２組の記憶装置が上記記憶サーバに結合されない間に、上記第１組の記憶装置で上記１次ボリュームのバックアップ増加分を作成し、
ｇ）上記第２組の記憶装置の上記記憶サーバへの再結合を検出し、
ｈ）上記再結合の検出に応答して、
ｈ１）上記第２ミラーボリュームを上記１次ボリュームに同期し
ｈ２）上記第１組の記憶装置および第２組の記憶装置の活動的ステータスと非活動的ステータスを交換する
方法。
【請求項２】
さらに、ｉ）上記第１組の記憶装置と第２組の記憶装置の役割を交換して、上記ｄ）〜ｈ）を繰り返す、請求項１に記載された方法。
【請求項３】
上記第２組の記憶装置の休止がユーザの行動に対応している、請求項１に記載された方法。
【請求項４】
さらに、上記のユーザの行動の前に、ユーザに、上記第２組の記憶装置を休止させることをプロンプトで促す、請求項３に記載された方法。
【請求項５】
さらに、上記増分バックアップの生成の後のある時間に、第１組の記憶装置と第２組の記憶装置を交換することをユーザにプロンプトで促す、請求項１に記載された方法。
【請求項６】
上記１次ボリュームの増分バックアップの生成は、バックアップスケジュールにより行う、請求項１に記載された方法。
【請求項７】
第１組の記憶装置と第２組の記憶装置は、複数のディスクを含むRAID-1アグリゲートを含む、請求項１に記載された方法。
【請求項８】
第１組の記憶装置と第２組の記憶装置は、それぞれ、複数のディスクを含むRAID-0アグリゲートを含む、請求項１に記載された方法。
【請求項９】
請求項１に記載された方法であって、さらに、
第１組の記憶装置と第２組の記憶装置における各々の大容量記憶装置のため、当該大容量記憶装置が記憶サーバに結合されているか否かを示す第１状態値と、当該大容量記憶装置が活動的ステータスか非活動的ステータスかを示す第２状態値とを含むデバイス状態情報を記憶サーバに記憶する、方法。
【請求項１０】
請求項９に記載された方法であって、さらに、
記憶サーバにおける上記デバイス状態情報を使用して、第１組の記憶装置と第２組の記憶装置の中で現在のバックアップ・ターゲットを識別する、方法
【請求項１１】
a)複数のクライアントにネットワークを介してデータ記憶サービスとデータ検索サービスを提供する記憶サーバを操作し（この操作は、１次データボリュームを記憶サーバに維持させることを含み）、
ｂ）不揮発性大容量記憶装置を含む第１組の記憶装置で、上記１次ボリュームの第１ミラーボリュームを上記記憶サーバに作成させ、
ｃ）不揮発性大容量記憶装置を含む第２組の記憶装置で、上記１次ボリュームの第２ミラーボリュームを上記記憶サーバに作成させ、
ｄ）上記第２組の記憶装置を休止させ、
ｅ）上記第２組の記憶装置の上記記憶サーバからの切り離し、上記第２組の記憶装置を上記第１組の記憶装置に対してリモートの位置に移動し、
ｆ）上記第２組の記憶装置が上記記憶サーバに結合されない間に、バックアップスケジュールにより上記第１組の記憶装置で上記１次ボリュームの増分バックアップを上記記憶サーバに作成させ、
ｇ）上記増分バックアップが作成された後にユーザにより選択された時間に、上記第２組の記憶装置を上記記憶サーバに再結合し、
ｈ）上記第２ミラーボリュームを上記１次ボリュームに同期し
ｉ）上記第１ミラーボリュームおよび第２ミラーボリュームの活動的ステータスと非活動的ステータスを交換し、
ｊ）上記ｄ）〜ｉ）を繰り返し、このｄ）〜ｉ）の繰り返しごとに、上記第１組の記憶装置および第２組の記憶装置の役割を交換する
方法。
【請求項１２】
請求項１１に記載された方法において、上記第１組の記憶装置と上記第２組の記憶装置は、それぞれ、複数のディスクから成るRAID-1アグリゲートを含む、方法。
【請求項１３】
請求項１１に記載された方法において、上記第１組の記憶装置と上記第２組の記憶装置は、それぞれ、複数のディスクから成るRAID-0アグリゲートを含む、方法。
【請求項１４】
記憶サーバであって、
複数のクライアントとネットワークを介して通信するための通信インタフェースと、
上記複数のクライアントにデータ記憶と検索サービスを提供する第１論理回路と、
第２論理回路とからなり、
上記第２論理回路は、
不揮発性大容量記憶デバイスを含む第１組の記憶装置に１次ボリュームの第１ミラーデータを生成し、
不揮発性大容量記憶デバイスを含む第２組の記憶装置に１次ボリュームの第２ミラーデータを生成し、
第２組の記憶装置を休止し、
記憶サーバから上記第１組の記憶装置の取り外しを検出し、
第２組の記憶装置が上記記憶サーバに結合されない間に、第１組の記憶装置に１次ボリュームの増分バックアップを生成し、
記憶サーバへの第２組の記憶装置の再結合を検出し、
第２ミラーボリュームを１次ボリュームと同期することにより上記再結合の検出に応答し、
第１ミラーボリュームと第２ミラーボリュームの活動的ステータスと非活動的ステータスを交換する
記憶サーバ。
【請求項１５】
上記第２組の記憶装置がユーザの指示行動に対応して休止される、請求項１４に記載された記憶サーバにおいて、
【請求項１６】
請求項１５に記載された記憶サーバにおいて、さらに、ユーザの上記指示行動の前に第２組の記憶装置を休止させることをユーザにプロンプトで促す、方法。
【請求項１７】
請求項１４に記載された記憶サーバにおいて、さらに、上記増分バックアップの生成の後の時間に、第１組の記憶装置と第２組の記憶装置を交換することをユーザにプロンプトで促す、請求項１４に記載された記憶サーバ。
【請求項１８】
請求項１４に記載された記憶サーバにおいて、１次ボリュームの増分バックアップは、特定されたバックアップスケジュールにより生成される、記憶サーバ。
【請求項１９】
請求項１４に記載された記憶サーバにおいて、第１組の記憶装置と第２組の記憶装置は、それぞれ、複数のディスクを含むRAID-1アグリゲートからなる、記憶サーバ。
【請求項２０】
請求項１４に記載された記憶サーバにおいて、第１組の記憶装置と第２組の記憶装置は、それぞれ、複数のディスクを含むRAID-0アグリゲートからなる、記憶サーバ。
【請求項２１】
請求項１４に記載された記憶サーバにおいて、さらに、第１組の記憶装置と第２組の記憶装置における各々の大容量記憶装置のため、当該大容量記憶装置が記憶サーバに結合されているか否かを示す第１状態値と、当該大容量記憶装置が活動的ステータスか非活動的ステータスかを示す第２状態値とを含むデバイス状態情報を記憶する論理回路を含む、記憶サーバ。
【請求項２２】
請求項２１に記載された記憶サーバにおいて、さらに、上記デバイス状態情報を使用して、第１組と第２組の記憶装置から現在のバックアップ・ターゲットを識別する論理回路を含む、記憶サーバ。
【請求項２３】
ネットワークを介してデータ記憶サービスと検索サービスとをクライアントに提供する、不揮発性の大容量記憶装置を含む第１記憶サーバを操作し、
上記１組の記憶装置を休止させ、
上記１組の記憶装置を上記第１記憶サーバから切り離し、
上記１組の記憶装置を第２記憶サーバに結合し、
上記第２記憶サーバで、上記１組の記憶装置を活性化させ、
上記第２記憶サーバを操作し、
第１記憶サーバの上記操作は、１次ボリュームのミラーボリュームを上記第１記憶サーバに結合させることを含み、
第２記憶サーバの上記操作は、上記第２記憶サーバで上記ミラーボリュームに向けられるクライアントの要求に答えることを含む
方法。
【請求項２４】
上記１組の記憶装置が１つのディスクからなる、請求項２３に記載された方法。
【請求項２５】
上記１組の記憶装置が複数のディスクからなる、請求項２３に記載された方法。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の少なくとも１つの実施形態は、ネットワーク記憶システムに関するものであり、より詳細には、ネットワーク記憶サーバのためのリムーバブル携帯データバックアップの解決に関するものである。
【背景技術】
【０００２】
いま、ネットワークアッタチトストレージ(NAS)、ストレージエリアネットワーク(SAN)などの種々の形のネットワーク記憶システムが存在する。ネットワーク記憶システムは、一般に、重要なデータのバックアップ、共有データへの複数ユーザのアクセスの提供などのさまざまな目的のために用いられている。
【０００３】
ネットワーク記憶システムは、少なくとも１つの記憶サーバを含む。記憶サーバは、１以上のクライアント処理システム（「クライアント」）のためにデータを記憶（格納）し、検索するように構成される処理システムである。NASの文脈では、記憶サーバは一般にファイルサーバであり、ファイルサーバは時には「ファイラー」(filer)ともいう。ファイラーは、１以上のクライアントのために動作して、共有ファイルを記憶し、管理する。ファイルは、１以上の配列の磁気ディスク、光ディスク、テープなどの大容量記憶装置を含む記憶サブシステムに、RAID（レイド、Redundant Array of Inexpensive Disks）を用いて、記憶できる。こうして、各配列における複数の大容量記憶装置は、１以上の別々のRAIDグループに組織できる。
【０００４】
SANの文脈において、記憶サーバは、クライアントに、ファイル・レベルのアクセスよりはむしろ、ブロック・レベルのアクセスなどの、ファイルより下位の粒度のレベルで、記憶されたデータへのアクセスを提供する。いくつかの記憶サーバ（たとえばカリフォルニア州サニーヴェイルのネットワーク・アプライアンス社により作られたファイラー）は、ファイル・レベルでのアクセスとブロック・レベルのアクセスの両方をクライアントに提供できる。
【０００５】
上に述べたように、データのバックアップは、ネットワーク記憶システムの１つの一般的な用途である。企業レベルでの、特に（限定されないが）中小ビジネス(SMB)のためのネットワーク記憶装置のためのよいバックアップの解決のために要望がある。多くの中小ビジネスのユーザは、独立のバックアップ用のソフトウェア、サーバおよびシステムに投資または維持することを望まず、また、データまたは媒体を管理するための有効な運用処理を持たない。そのようなユーザは、障害復旧（DR）またはアーカイブデータのための使いやすく一体化された解決を望む。この解決は、事務所のスタッフまたは情報技術(IT)の一般的スタッフにより設定でき、運用できる。
【０００６】
この文脈において、ネットワーク記憶装置のための、使いやすく低価格のデータバックアップの解決がしばしば望まれる。これにより、１次データのバックアップ・コピーが「サイト外」(off-site)、すなわち、１次データの位置に対してリモートである位置に、記憶される。さらに、信頼性が高く、容易に持ち運べ、比較的早いデータの記憶と検索を可能にする解決がしばしば望まれる。
【０００７】
ネットワーク記憶のための種々のバックアップの解決が知られていて、それらは、すべて、上述の基準について短所をもつ。たとえば、１つの可能なアプローチは、リモートサイトに、１次サイトにデータをミラーする完全なミラーリングシステムを提供することである。ミラーリングシステムは、独立のファイルサーバと、付随する記憶装置（たとえばディスク）を含む。その結果、このアプローチは、高価であり携帯性がよくない傾向がある。
【０００８】
別の一般的なアプローチは、データのバックアップ・コピーをテープに保管することである。このアプローチは、独立したテープドライブを必要とし、したがって、費用が高くなり携帯性がよくない傾向がある。さらに、テープドライブは、１次記憶装置として典型的に用いられるディスクドライブに比べて、遅く丈夫でない傾向がある。
【０００９】
データバックアップへの他の既知のアプローチは、個々のパーソナルコンピュータ(PC)で用いるために設計されたものを含む。たとえば、マイクロソフト社のウィンドウズ・オペレーティング・システムの最近のバージョンは、あるドライブ（たとえばＣドライブ）の時点(point-in-time)イメージを他のドライブに生成する能力を有する。個々のＰＣにて使用するために設計されたこのアプローチおよび他のアプローチは、ネットワーク記憶システムにおける大規模な使用には適していない。
【発明の開示】
【００１０】
本発明は、記憶サーバと、記憶サーバの作動方法を含む。この方法は、ａ）ネットワークを介してクライアントにデータ記憶サービスとデータ検索サービスを提供し、ｂ）不揮発性大容量記憶装置を含む第１組の記憶装置で、１次ボリュームの第１ミラーボリュームを生成し、ｃ）不揮発性大容量記憶装置を含む第２組の記憶装置で、上記１次ボリュームの第２ミラーボリュームを生成し、ｄ）第２組の記憶装置を休止し、ｅ）第２組の記憶装置の上記記憶サーバからの取り外しを検出し、ｆ）第２組の記憶装置が記憶サーバに結合されない間に、第１組の記憶装置で上記１次ボリュームのバックアップ増加分を生成し、ｇ）第２組の記憶装置の記憶サーバへの再結合を検出し、ｈ）上記再結合に応答して、上記第２ミラーボリュームを上記１次ボリュームに同期し、第１組および第２組の記憶装置の活動的ステータスと非活動的ステータスを交換する。
【００１１】
本発明の他の面は添付の図面と以下の詳細な説明から明らかになる。
【００１２】
本発明の１以上の実施形態は、例を用いて説明されるが、添付の図面に示されたものに限定されない。なお、図において、同じ参照数字は同様なものを示す。
【図面の簡単な説明】
【００１３】
【図１】記憶サーバを組み込んだネットワーク環境の簡単な１例の図
【図２】記憶サーバのオペレーティングシステムのアーキテクチャの１例の図
【図３】２つのミラーボリュームに分割された１つの１次ボリュームを概念的に示す図
【図４】データバックアップとディスク回転のためのスケジュールの１例の図
【図５】発明の１実施形態によるデータをバックアップする処理のフローチャート
【図６】バックアップスケジュールを構成するためのグラフィック・ユーザ・インタフェースの１例の図
【図７】ユーザにバックアップ・ディスクの回転を促がすためのグラフィック・ユーザ・インタフェースの１例の図
【図８】記憶サーバのアーキテクチャの１例を示す高レベルブロック図
【発明を実施するための最良の形態】
【００１４】
ネットワーク記憶システムのための利用しやすく、より低コストで、信頼性が高く、携帯性のよいデータバックアップの解決が記載される。この明細書において、「１つの実施形態」などは、記載されている特徴、構造、性質などが本発明の少なくとも１つの実施形態に含まれることを意味する。明細書においてそのような文言が現れるとき、必ずしも同じ実施形態をいうものではない。
【００１５】
ここで説明されるバックアップの解決は、ある実施形態では、１次(primary)データの単独ディスクの、複数組のリムーバブル・バックアップを生成する。バックアップディスクは、ネットワーク記憶システムから除去でき、サイト外に記憶できる。後の説明で明らかであるが、この解決は、使いやすく、比較的低価格であり、他の用途にも有用であるけれども中小ビジネスに特に適している。
【００１６】
この明細書の目的のために、バックアップされるべき記憶サーバにおいて、１次データは、RAID-4、RAID-5、RAID-DPなどのRAIDの実施により、ディスクの障害に対して保護されることが仮定される。またホットスペアも構成できる。さらに、永続性時点イメージ(PPI, persistent_point-in-time)が、記憶サーバで取り込まれ、ファイルレベルの回復を可能にすることが仮定される。これらの特徴は、一般に１次データに対してデータ保護を提供する。ここで導入されるイン−ボックス・バックアップの解決の１つの目的は、１次データのための一体化されてサイト外保護の解決を追加することである。そのような性能は、ローカルな障害を扱うRAIDブラススペア(RAID-plus-spare)保護を補足する。合わせて、これらの技術は、非常に効果的な「すべて一体になった(all-in-one)」データ保護の解決を提供する。
【００１７】
ここに導入される解決により、以下に説明されるように、記憶サーバは、第１組の記憶装置における第１データボリュームの第１ＰＰＩ（第１の「ミラー」、これは全体(full)バックアップである）を作成する。第１組の記憶装置は、１組の１以上のリムーバブル不揮発性大量記憶装置（たとえば１以上のリムーバブルディスク）である。このＰＰＩは、１次データボリュームのミラーである。また、記憶サーバは、第２組の記憶装置における１次データボリュームの第２ＰＰＩ（第２の「ミラー」、これは全体バックアップである）を作成する。第２組の記憶装置は、また、１組の１以上のリムーバブル不揮発性大量記憶装置（たとえば１以上のリムーバブルディスク）である。簡単な実施形態では、第１組と第２組の記憶装置は、各々、１つのリムーバブルディスクを含み、１対のバックアップディスクとして扱われる。記憶サーバは、上述の第１組と第２組の記憶装置に加えて、１組以上の記憶装置を含んでいてもよい。いくつかの実施形態では、記憶サーバは、１以上のディスクからなる１次アグリゲートを維持し、第１組と第２組の記憶装置は、この１次アグリゲートに追加される。
【００１８】
ミラーを生成した後、記憶サーバは、第２組の記憶装置へのさらなるバックアップを停止しディスクの回転を止めることにより、第２組の記憶装置を休止(quiesce) (非活性化)する。ネットワーク管理者などのユーザは、次に、記憶サーバから第２組の記憶装置を切り離し、第２組の記憶装置（前述のとおり、これは１つのディスクであってもよい）を、安全なリモートの記憶場所へとサイト外にする。次に記憶サーバは、特定されたバックアップスケジュールを開始して、第１組の記憶装置での１以上の増分バックアップを保管（セーブ）する。
【００１９】
後で、ユーザまたは特定の回転スケジュールにより任意に決定された時間に、ユーザは、第２組の記憶装置を記憶サーバに再結合する。ユーザは、記憶サーバで実行されるソフトウェアにより、これを行うことをプロンプトで促されてもよい。記憶サーバは、第２組の記憶装置の再結合を検出し、これに応答して、第２ミラーボリュームを１次ボリュームと再同期し、次に、第１組と第２組の記憶装置の活動的ステータスと非活動的ステータスを交換する。この処理は繰りかえされる。すなわち、ユーザは、第１組の記憶装置を記憶サーバから切り離し、第１組の記憶装置をサイト外にし、記憶サーバは、第１組の記憶装置が記憶サーバに再結合されるまで、第２組の記憶装置に１次ボリュームの１以上の増分バックアップを保管する。以下、同様である。
【００２０】
１次ボリュームの損失、破壊またはアクセス不可能のイベントにおいて、データは、サイト外の１組の記憶装置でのミラーボリュームから急速かつ容易に回復され得る（対照的に、バックアップテープからの回復は典型的には遅くまた長たらしい）。サイト外の１組の記憶装置は、簡単に記憶サーバから再結合され、リストア命令は、ユーザにより入力される。データは、１組のバックアップ記憶装置での全体バックアップの時間より、または、その問題を経験した１組の記憶装置についてなお損なわれていずアクセス可能であり得るその後の増分バックアップより、回復可能である。
【００２１】
この明細書では、「増分」バックアップの用語は、全体バックアップと対照的に用いられる。ここで、「増分」バックアップとは、完全な１組のオリジナルデータを含まない１組のバックアップデータ（またはそれを作成するプロセス）をいう。増分バックアップは、１組のオリジナルデータまたは全体バックアップでない前のバックアップに対する変化のみを含む。したがって、ここで用いられる「増分」バックアップの用語は、そうでないと記載されていない限り、一般的に「差分」バックアップといわれているバックアップをも含む。
【００２２】
図１は、記憶サーバ２を組み込んだネットワーク環境の簡単な１例を示し、ここで導入される上述の解決が具体化されている。記憶サーバ２は、磁気ディスク、光ディスクなどの、多数のリムーバブル内部不揮発性大量記憶デバイス５を備える。また、記憶サーバ２は、外部記憶サブシステム４にも（図示されるように）接続されるが、外部記憶サブシステム４も、磁気ディスク、光ディスクなどの１組のリムーバブル内部不揮発性大量記憶デバイス５を備える。また、記憶サーバ２は、ネットワーク３を介して１組の記憶クライアント１（以下では単にクライアントという）に結合される。ネットワーク３は、たとえば、ＬＡＮ（ローカルエリアネットワーク）、ＷＡＮ（ワイドエリアネットワーク）、インターネットなどのＧＡＮ（グローバルエリアネットワーク）またはそれらの組合せである。各々のクライアント１は、たとえば、通常のＰＣ（パーソナルコンピュータ）、ワークステーションなどである。
【００２３】
内部大量記憶デバイス５や外部大量記憶デバイス４に記憶されるデータは、記憶サーバ２により管理される。記憶サーバ２は、当該記憶サーバ２により維持されているデータに関連して、クライアント１から種々のリードとライトの要求を受け取り応答する。
【００２４】
記憶サーバ２は、その動作を制御するオペレーティングシステム（１例は図２に示される）を含む。オペレーティングシステム(OS)２０は、好ましくは、ソフトウエアとして実装される。しかし、いくつかの実施形態では、その代わりに、オペレーティングシステム２０の一部または全部の要素は、ハードウェア（たとえば特別に設計された回路）またはハードウェアとソフトウェアの組合せの形で実装される。
【００２５】
図に示されるように、オペレーティングシステム２０は、複数のモジュールすなわち「層」を含む。これらの層は、ファイルシステム・マネージャ２１を含む。ファイルシステム・マネージャ２１は、（すくなくとも１つの実施形態では）記憶サーバ２により管理される１以上のファイルシステムを管理するソフトウェアである。「ファイルシステム」は、ここで用いられる用語としては、構造化され（たとえば階層構造化され）、独立に管理され、それだけで完備した１組の記憶されるデータ（たとえばファイル、ディレクトリおよび／または他の種類のデータコンテナ）である。ファイルシステム・マネージャ２１は、記憶されるデータに階層構造（たとえばディレクトリ／ファイル構造）を課し、クライアントが開始するリードとライトの動作を高レベルで（オペレーティングシステム２０のより低い層にいくつかの機能を委任しつつ）管理する。
【００２６】
記憶サーバ２がネットワーク３を介して（たとえばクライアント１と）通信できるようにするため、オペレーティングシステム２０は、ネットワークアクセス層２３と、ファイルマネージャ２１とネットワークアクセス層２３の間に結合されるプロトコル層２２とを含む。ネットワークアクセス層２３は、ネットワークを介して通信するための、より低レベルのプロトコルを具体化した１以上のドライバ（たとえばイーサネット、ファイバチャネル）を含む。
【００２７】
プロトコル層２２は、多数のより高いレベルのネットワークプロトコル、たとえばＮＦＳ（ネットワーク・ファイル・システム）、ＣＩＦＳ（コモン・インターネット・ファイル・システム）、ＨＴＴＰ（ハイパーテキスト・トランスファ・プロトコル）、ＴＣＰ／ＩＰ（トランスミッション・コントロール・プロトコル／インターネット／プロトコル）、を実装する。プロトコル層２２は、これらのプロトコルの各々を実装するための別々の複数のモジュールを含む。各モジュールは、ネットワークを介して受け取った指令または他のメッセージを、ファイルシステム・マネージャ２１により理解可能なフォーマットに変換でき、また、ファイルシステム・マネージャ２１により生成された指令または他のメッセージを、あるクライアントによりネットワーク３を介する通信のために使用される適当なプロトコルに変換できる。
【００２８】
記憶サーバ２がその内部大容量記憶デバイス５や外部記憶サブシステム４と通信することを可能にするため、オペレーティングシステム２０は、記憶ドライバ層２５と、ファイルシステム・マネージャ２１と記憶ドライバ層２５の間に結合される記憶冗長層２４とを含む。記憶アクセス層２４は、RAID-4、RAID-5、RAID-6などのより高レベルのディスク冗長プロトコルを実装し、記憶ドライバ層２５は、ファイバチャネルプロトコル(FCP)、SCSIなどのより低レベルの記憶デバイス・アクセスプロトコルを実装する。記憶アクセス層２４は、本明細書では「RAID層」ともいう。
【００２９】
また、オペレーティングシステム２０は、コマンドライン・インタフェース(CLI)および／またはグラフィカル・ユーザ・インタフェース（GUI)を生成するユーザインタフェース２６を含み、ローカルまたはリモートの端末からの記憶サーバ２の管理制御と構成を可能にする。図２は、クライアントにより開始されたリードまたはライトの要求に関連して、オペレーティングシステム２０をとおるデータの流れを示す。
【００３０】
また、オペレーティングシステム２０は、ユーザインタフェース２６、ファイルシステム・マネージャ２１およびＲＡＩＤ層２４とのインタフェースであるミラーリング層２８を含む。ミラーリング層２８は、少なくとも、ここに説明される機能のいくつか、たとえば、ＰＰＩの作成や増分バックアップの作成、１次ディスクとバックアップディスクの回転のプロンプトのユーザへの表示、バックアップからの回復などを実装する。なお、ミラーリング層２８は、オペレーティングシステム２０の１要素として実装される必要はない。むしろ、ミラーリング層２８は、別の、独立した(self-contained)ソフトウェアパッケージとして実装できる。
【００３１】
２次的媒体保護は、十分なレベルの信頼性と、リムーバブル／ＤＲの解決のための連続的データ保護(CDP)とをサポートするために望ましい。これを達成するために、発明の少なくとも１つの実施形態により、バックアップディスクは、上述のように、対で組織化される。発明の他の実施形態では、その代わりに、それぞれ２以上のディスクを含む複数対の記憶装置の組を用いる。任意の時点において、上記１対の中の１つのディスクは、記憶サーバ２の中に（または少なくとも記憶サーバ２に接続されて）設置されるべきであり、他方のディスクは、サイト外に（記憶サーバ２に接続されないで）維持されるべきである。この明細書の記述において、「設置される」の用語は、少なくとも記憶サーバ２に結合されることを意味し、また、（必ずしも必要ではないが）物理的に記憶サーバ２のハウジングの中にあることを意味する。同様に、この記述において、「除去する」の用語は、少なくとも、記憶サーバ２との結合をしないことを意味し、また、（必ずしも必要ではないが）物理的に記憶サーバ２のハウジングにあるならばハウジングから当該デバイスを物理的に取り出すことを意味する。
【００３２】
記憶サーバ２は、どのディスクが活動的バックアップ・ターゲットとして設置されるかを自動的に処理する。上記１対の中の複数のディスクは、データの同期の要求なしに、ユーザにより除去されてサイト外にされ、または、システムに戻される。
【００３３】
上記１対の中の２つのディスクが記憶サーバ２の中に設置されるとき、記憶サーバ２におけるソフトウェア（たとえばミラーリング層２８）は、デフォルトのターゲット回転スケジュールを自動的に行わせ、バックアップをサイト外にしまたはディスク媒体を回転する必要をユーザに通知する。しかし、ユーザは、いずれかの実際の回転スケジュールに従うこともでき、または、回転スケジュールに従わなくてもよい（これは、「パートタイム勤務者の管理」や「最善努力(best efforts)」のサイト外保護パラダイムの使用例に合う）。バックアップ／記憶とアーカイブの２つの目的のため、ミラーリング層２８は、ディスクの同定、データ回復、データ管理事故の件数の減少および安全な実務を用いたユーザの案内を助けるカタログを維持する。
【００３４】
図３に戻って説明すると、記憶サーバ２は、ここで導入される解決によりバックアップされるべきデータの１次ボリュームV1を維持する。したがって、記憶サーバ２は、１次ボリュームV1の２つのミラーV1AとV1Bを作成する。ここで、ある１つの時において、一方が活動であれば他方は非活動的（受動的または「休止」）である。ミラーボリュームV1AとV1Bは、１対のリムーバブルバックアップディスクの別々のディスクに記憶される。
【００３５】
１対のリムーバブルディスクが組織化できる少なくとも２つの方法がある。１つの方法では、ディスク対を１つのRAID-1アグリゲートとして構成する(configure)。他の方法では、ディスク対を２つの別々のRAID-０アグリゲートとして構成する。「アグリゲート」は、物理的記憶の論理的アグリゲーション、すなわち、記憶プールのための論理コンテナであり、１以上の物理的大容量記憶装置（たとえばディスク）またはその部分を１つの論理的記憶オブジェクトに組み合わせる。この論理的記憶オブジェクトは、より高レベルの抽象（たとえばボリューム）で１組以上の他の論理データのための記憶を含み、または、提供する。
【００３６】
RAID-1アプローチを用いる１つの効果は、バックアップの完全な履歴が１つのディスクで利用できることである。しかし、１つのディスクが常にサイト外にあるので、アグリゲートは常に劣化される。ディスクの回転は、サイト外のディスクをシステムに挿入することや、RAID-1ミラーを再建造することや、イン−ボックス・ディスクを除去することを含む。これは、予想可能な速い動作ではない。その結果、RAID-1の実装は、データ同期ステップなしに媒体をすぐに回転できるべきパートタイムの運用スタッフの使用の場合に適切ではないかもしれない。
【００３７】
２つのRAID-0アグリゲートを用いるアプローチでは、１対の中の１つのディスクがサイト外にされるとき、他方のディスクには影響はない。ディスクの回転は、サイト外ディスクをシステムに挿入することや、２つのディスクの間のミラー関係を休止することや、設置されたディスクを除去することを含む。これは、非常に急速かつ容易に達成できる。
【００３８】
したがって、説明の便宜のために、以下では、バックアップディスクは複数対のRAID-0アグリゲートとして組織化されると仮定される。１次ボリュームは、１つの対の２つのディスクにバックアップされる。１次ボリュームごとに、２つのミラー関係がある（対応する１対のバックアップディスクの中の各々のディスクについて１つのミラー関係がある）。１つの時刻で、１対の中で１つのディスクのみが活動的である。他方のディスクは、非活動的であって、サイト外に記憶され、使用されない。これは、いつの時刻でも２つのミラー関係の中の１つのみが活動的であることを意味する。
【００３９】
周期的に、１対の中の複数のディスクは、ネットワーク管理者などのユーザにより交換される。記憶サーバ２は、ユーザが構成可能なディスク回転スケジュールで構成される。回転の時間になると、通知が、ディスクを回転するためにユーザに送られる。サイト外のディスクが交換でシステムに戻されるとき、対応するミラー関係が活動的にされ、ミラーが再同期される。１対の中の第２のディスクが既にシステム内にあるときは、バックアップ・ターゲットは自動的に他方のディスクに切り換えられる。これは、１対の中の２つのディスクの一様な利用を確保するために行われる。バックアップ履歴を提供するため、１つのPPIスケジュールが各々のミラーターゲットで実行される。
【００４０】
図４は、バックアップされるべき１次ボリュームのためのバックアップディスクの回転スケジュールの１例を示す。まず、ボリュームＶ１の完全なベースラインＰＰＩ（フルバックアップまたはミラー）は、バックアップ対の各々のディスク、ディスクＡとディスクＢ）に記憶される。ディスクＡに記憶されるバックアップ（ミラー）ボリュームをボリュームＶ１Ａといい、ディスクＢに記憶されるバックアップ（ミラー）ボリュームをボリュームＶ１Ｂという。次に、ディスクＡは、活動的なバックアップ・ターゲットにされるが、ディスクＢは、休止され、除去され、サイト外にされる。
【００４１】
示されたスケジュールは、活動的なバックアップディスクとサイト外(非活動的)バックアップディスクとの週単位での交換を含む。また、増分バックアップは、活動的なバックアップディスクに日単位で保管される。もちろん、異なる回転スケジュールおよび／または増分バックアップスケジュールも使用できる。
【００４２】
回転のための時間になると。ディスクＢは、システムに再結合され、ミラー関係が再同期される。これは、ディスクＢでの１次ボリュームＶ１の新しい増分バックアップを作成することを含む。次に、ディスクＢは、活動的なバックアップディスクと指定され、ディスクＡは、休止され、除去され、サイト外にされる。この処理は、こうして無限に続く。
【００４３】
図５は、ここに説明した技法による、データのバックアップの全体の処理の例を示す。ある実施形態では、図５における動作は、ユーザにより行われるとして説明された動作を別にして、記憶サーバ２におけるミラーリング層２８により行われる。
【００４４】
はじめに、ステップ５０１で、ユーザは、記憶サーバ２にバックアップスケジュールを構成する。これは、オペレーティングシステム２０のミラーリング層２８により生成される簡単なグラフィカルユーザインタフェースにより完了される。図６は、そのようなグラフィカルユーザインタフェースの一例を示す。記憶サーバ２は、ステップ５０２で、２つのバックアップディスクにベースラインＰＰＩを保管する。次に、ステップ５０３で、はじめに活動的と非活動的であるべきディスクが指定される。図７に示されるような簡単なグラフィカルユーザインタフェース（たとえばウィザード）は、その処理でユーザを案内するために使用できる。
【００４５】
最初のＰＰＩが生成され、活動的バックアップディスクと非活動的バックアップディスクが指定された後に、ユーザは、指定された非活動的バックアップディスクをシステムから除去して、サイト外にする（これは、強制的ではないが、障害に対する最善の保護のために好ましい）。したがって、ステップ５０４で、図７に示されるような簡単なグラフィカルユーザインタフェース（たとえばウィザード）は、非活動的ディスクでのバックアップセッションを安全に休止してシステムから除去する処理を通じてユーザを案内する。
【００４６】
増分バックアップのための時間になるとき(ステップ５０５)、ステップ５０７で、記憶サーバ２は、すべての活動的なミラーセッションのため活動的なバックアップディスクに増分バックアップを保管する。ディスク回転のための時間になるとき(ステップ５０６)、記憶サーバ２は、ステップ５０８で、回転されるべきディスクがシステムに存在する（設置されている）か否かを決定する。もし回転されるべきディスクがシステムに存在しなければ、記憶サーバ２は、ステップ５０９で、ユーザに回転が行われるべきであることを通知する。この通知は、適当な通信モードにより（たとえば、電子メールにより、または、グラフィカルユーザインタフェースにより、提供される。
【００４７】
もし回転されるべきディスクがシステム内に存在するならば、または、存在するとき、記憶サーバ２は、ステップ５１０で、そのディスクに新しい増分バックアップを保管し、複数のディスクを再同期する。ステップ５１１で、活動的なディスクですべてのミラーセッションを休止し、非活動的なディスクですべてのミラーセッションを活性化し、これらの２つのバックアップディスクの活動的ステータスと非活動的ステータスを交換する。記憶サーバ２は、非活動的なディスク（これは前は活動的ディスクであった）を除去しサイト外にする準備ができたことをユーザに通知する。この処理は、前に説明したように、ステップ５０４からくり返さす。
【００４８】
もしバックアップディスク（すなわちアグリゲート)がいっぱいになったなら、ユーザは、バックアップスケジュールが進まないことを通知される。処理を進めるために３つの代替案が提案できる。１）ディスク上のバックアップ履歴（PPI)を除去してスペースを空けるか、２）全体のバックアップボリュームを除去して、対応する１次ボリュームについてスケジュールからバックアップ動作をはずすか、または、３）新しい１対のディスクをシステムに追加し、１次ボリュームについてのバックアップを新しいディスク対に移動する（これは、また、移動される１次ボリュームのためのバックアップボリュームが除去され、バックアップの履歴が失われることを意味する）。
【００４９】
１つのボリュームは、バックアップから１つのディスク対の中のいずれのディスクにも回復できる。もし２つのディスクがシステム内にあれば、２つのディスクの中の利用可能なバックアップ履歴が組み合わされる。もし１つのディスクのみがシステム内にあれば、他のディスクにおけるバックアップは、もちろん、利用できない。回復動作の間、選択されたバックアップディスクは、１次ボリュームとして扱われ、実際の１次ボリュームは、バックアップとして扱われる。バックアップボリュームは、１次ボリュームに同期される。同期が完了すると、バックアップ−１次の関係は壊される。リムーバブルディスクは、新しい１次ボリュームのための新しい１対のバックアップとして取り扱われる。
【００５０】
リムーバブルディスクの取り扱いにおいてユーザを助けるために、簡単な媒体カタログ動作の特徴がミラーリング層２８に組み込まれる。バックアップのために現在使用されているディスク対を識別する情報は、記憶サーバ２に記憶される。とくに、ディスクのシリアル番号は、各々のディスクを一意に識別するために用いられる。さらに、すべてのディスクについて、ディスクの状態に関する以下の性質もまた記憶される。
【００５１】
１）物理的状態[イン-ボックス/サイト外]：  この状態は、ディスクが記憶サーバ２に設置されるか否かを示す。
【００５２】
２）論理状態[活動的/非活動的/不具合]:  この状態は、ディスクがバックアップ・ターゲットとして活動的に使用されているか、非活動的(消極的/休止）モードにあるかを示す。ディスクは、ユーザがそのディスクをシステムから除去しなくても非活動的であり得る。その場合、１対のディスクの中の１つのディスクのみが使用されていても、１対の２つのディスクはボックスの中に存在できる。バックグラウンドスクラブ(background scrubs)の間に発見された媒体エラーまたはファイルシステム破壊(corruptions)があれば、ディスクは破壊されている。
【００５３】
３）バックアップ状態[書き込み可能(Writable)、アーカイブ、コンプライアンス]：  この状態は、データ保護における進歩した特徴（たとえば読み取り専用コピー（アーカイブ）としてのバックアップボリュームのロックまたは調節コンプライアンスのためのバックアップボリュームの使用）をサポートするために使用できる。
【００５４】
さらに、各ディスクの「所有者」（記憶サーバ）は、ディスクに記録される。もしディスクがいずれの記憶サーバによっても所有されないならば、データは、そのディスクにバックアップされない。ユーザは、ディスクのコンテンツを消去し所有権を変更することを選択せねばならない。これは、記憶システムの間で偶然にディスクを交換することからユーザを防止するためである。このスキームは、データが回復される前に追加の認証ステップを提供するために拡張できる。
【００５５】
上述の情報を記憶する主な目的は、ディスクでの１組のデータを識別し合法性を与え、バックアップディスクの誤った取り扱いを最小にするためユーザに適当な情報を与えるためである。上述の状態情報は、記憶サーバのルートボリュームにあるレジストリに記憶できる。レジストリは、１次データアグリゲート（すなわち、ここで説明しているリムーバブルディスクから離れた１組のディスク）にある。
【００５６】
図８は、高レベルでの記憶サーバ２のアーキテクチャの１例を示すブロック図である。本発明に密接な関係がない、ある標準の周知のコンポーネントは、図に示されない。記憶サーバ２は、１以上のプロセッサ８１とメモリ８２を含み、おのおのインターコネクト８３に結合される。図８に示されるインターコネクト８３は、１以上のバス、ポイント間(point-to-point)接続、および／または、他の種類の接続を表す抽象であり、１以上の適当なブリッジ、アダプタおよび／または制御器を含む。したがって、インターコネクト８３は、たとえば、プロセッサを主メモリに接続するシステムバスや、周辺コンポーネント・インターコネクト(PCI)バス、ハイパー・トランスポート・スタンダート・アーキテクチャ(ISA)バス、スモール・コンピュータ・システム・インタフェース(SCSI)バス、ユニバーサル・シリアル・バス(USB)、インターＩＣ(I2C)バス、または、ファイアワイヤ(IEEE標準1314）接続の１つの形を含む。
【００５７】
プロセッサ８１は、記憶サーバ２の中央処理ユニット(CPU)であり、その全体の動作を制御する。ある実施形態では、プロセッサ８１は、メモリに記憶されたソフトウェアを実行することにより、これを達成する。そのようなプロセッサは、１以上の一般目的または特定目的のプログラマブル・マイクロプロセッサ、ディジタル・シグナル・プロセッサ(DSP)、プログラマブル制御器、用途特定集積回路(ASIC)、プログラマブル論理デバイス(PLD)など、またはそれらの組合せであってもよく、またそれを含んでいてもよい。
【００５８】
メモリ８２は、記憶サーバ２の主メモリを含む。メモリ８２は、ランダム・アクセス・メモリ(RAM)、リード・オンリー・メモリ(ROM)、フラッシュメモリなど、またはそれらの組合せのいずれかの形をいう。メモリ８２は、（なかでも）記憶サーバのオペレーティングシステム２０を記憶し、オペレーティングシステム２０は、ここで説明した技法の少なくともいくつかを実装する。
【００５９】
また、複数のリムーバブル内部ディスク８５、記憶アダプタ８６およびネットワーク・アダプタ８７がプロセッサ８１にインターコネクト８３を介して接続される。ネットワーク・アダプタ８７は、記憶サーバ２に、リモートのデバイス（たとえばクライアント１）とネットワークを介して通信する性能を提供する。ネットワーク・アダプタ８７は、たとえば、イーサネット・アダプタ、ファイバ・チャネル・アダプタなどである。記憶アダプタ８６は、記憶サーバ２が外部の記憶サブシステム４にアクセスすることを可能にし、たとえば、フィイバ・チャネル、SCSIアダプタなどである。別の実施形態では、記憶サーバ２は、内部の大容量記憶装置８５を含んでいない。また、別の実施形態では、記憶サーバ２は、内部の大容量記憶装置８５を含み、外部の大容量記憶装置にはアクセスしない。
【００６０】
上述のように作成された１組のバックアップ記憶装置の他の可能な用途は、第２の独立の記憶サーバにバックアップをさせ、または、１次データを独立に維持させることである。たとえば、１組の記憶装置（１以上のディスク）が１次データで作成され第１記憶サーバから外された後に、その１組の記憶装置は、第２の記憶サーバに移送(transport)でき、第２の記憶サーバ内に設置できる。第２の記憶サーバは、第１の記憶サーバに対してローカルまたはリモートであってもよく、第１の記憶サーバとの通信リンクを持たなくてもよい。第２記憶サーバは、１組の記憶装置に記憶されたミラーボリュームに向けられた、１組のクライアントからの、クライアント要求を満たす。第２の記憶サーバにより要求が満たされる１組のクライアントは、第１の記憶サーバにより要求が満たされる１組のクライアントとは完全に離れていてもよく、また、同一であってもよく、また、部分的に重複していてもよい。
【００６１】
こうして、ネットワーク記憶システムのためのより低コストの、信頼性や携帯性が高い解決が説明された。
【００６２】
ここで説明した技法を実装するソフトウェアは機械読み出し可能な媒体に記憶できる。（ここで用いる用語である）「機械によりアクセス可能な媒体」は、機械（たとえば、コンピュータ、ネットワーク装置、パーソナルディジタルアシスタント（PDA)、製造ツール、１組の１以上のプロセッサを備えたデバイスなど）によりアクセス可能な形で情報を提供（すなわち、記憶および／または転送）する任意の機構を含む。たとえば、「機械によりアクセス可能な媒体」は、記録可能な媒体／記録可能でない媒体（たとえば、読み取り専用メモリ（ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイスなど）を含む。
【００６３】
ここで用いられる「論理」という用語は、たとえば、配線された電気回路、プログラマブル回路、ソフトウェアまたはこれらの組合せを含む。
【００６４】
本発明は、特定の実施形態を用いて説明されたけれども、本発明は、記載された実施形態に限定されない。本発明は、添付の請求項の精神および範囲の中で変形して実施できる。したがって、明細書と図面は、限定的な意味よりは、実例の説明を意図していると見るべきである。
【００６５】
たとえば、記憶サーバ２は、独立な(self-contained)要素として図示されるけれども、分散アーキテクチャを持っていてもよい。たとえば、分離されたＮ（「ネットワーク」）モジュールと、Ｄ（「ディスク」）モジュール（図示しない）を含んでいてもよい。そのような実施形態では、Ｎモジュールは、クライアント１と通信するために使用されるが、Ｄモジュールは、ファイルシステム機能性(functionality)を含み、記憶サブシステム４と通信するために使用される。ＮモジュールとＤモジュールは、インターネットプロトコルを用いて相互に通信する。その代わりに、記憶サーバ２は、一体化されたアーキテクチャを持っていてもよい。ここで、ネットワークコンポーネントとデータコンポーネントは、１つのボックスにすべて収容される。さらに、記憶サーバ２は、自身のローカル記憶サブシステムを有する他の同様な記憶サーバ（図示しない）にスイッチ枠組み(fabric)を通して結合できる。こうして、すべての記憶サブシステムは、１つの記憶プールを形成でき、それに、他のいずれかの記憶サーバのいずれかのクライアントがアクセスする。
【００６６】
この特許文献の開示の一部は、著作権保護を受ける材料を含む。著作権者は、特許庁における特許ファイルまたは記録において現れるような特許文献または特許の開示の複製に対して異議はないが、そうでない場合、著作権者はすべての著作権を保有する。
【図１】
2009544100.tif 000002
【図２】
2009544100.tif 000003
【図３】
2009544100.tif 000004
【図４】
2009544100.tif 000005
【図５】
2009544100.tif 000006
【図６】
2009544100.tif 000007
【図７】
2009544100.tif 000008
【図８】
2009544100.tif 000009
【国際調査報告】
2009544100.tif 000010
2009544100.tif 000011
2009544100.tif 000012
2009544100.tif 000013
2009544100.tif 000014