JP2010509686A - プライマリー・クラスタの高速リカバリ - Google Patents

プライマリー・クラスタの高速リカバリ Download PDF

Info

Publication number
JP2010509686A
JP2010509686A JP2009536477A JP2009536477A JP2010509686A JP 2010509686 A JP2010509686 A JP 2010509686A JP 2009536477 A JP2009536477 A JP 2009536477A JP 2009536477 A JP2009536477 A JP 2009536477A JP 2010509686 A JP2010509686 A JP 2010509686A
Authority
JP
Japan
Prior art keywords
cluster
metadata
content data
repaired
replaced
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2009536477A
Other languages
English (en)
Other versions
JP5260536B2 (ja
Inventor
バーナード,ベンジャミン,ケイ.ディー.
メイソン,ロバート,エス.ジュニア
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Vantara LLC
Original Assignee
Archivas Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Archivas Inc filed Critical Archivas Inc
Publication of JP2010509686A publication Critical patent/JP2010509686A/ja
Application granted granted Critical
Publication of JP5260536B2 publication Critical patent/JP5260536B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • G06F11/1662Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit the resynchronized component or unit being a persistent storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)

Abstract

個々のアーカイブが好ましくは対称ノードのストレージ・クラスタである一連の分散型アーカイブに亘ってクラスタ・リカバリ・プロセスを実行する。クラスタのそれぞれのノードは典型的には固定コンテンツ・データおよび関連メタデータのオブジェクト-ベースのストレージを提供するアプリケーションのインスタンスを実行する。このストレージ方法では、先ず第1クラスタと第2クラスタの間に連携関係または「リンク」を確立することによってコピー・プロセスを容易にする。第1クラスタは「プライマリー」クラスタと呼称され、第2クラスタは「レプリカ」クラスタと呼称されることがある。リンクが形成されると、第1クラスタの固定コンテンツ・データおよびメタデータが第1クラスタから第2クラスタへ、好ましくは連続的に、コピーされる。但し、第1クラスタに故障が発生すると、フェイルオーバー・オペレーションが行なわれ、第1クラスタのクライアントが第2クラスタへリダイレクトされる。第1クラスタが修理されるかまたは取替えられると(「復旧」)、修理されるかまたは取替えられた第1クラスタは第1クラスタのクライアントにサービスする権限を取り戻す。この復旧オペレーションは好ましくは2段階で行なわれる:即ち、好ましくは第1クラスタのメタデータの「バルク」転送を伴う「高速リカバリ」段階と、これに続く、固定コンテンツ・データの転送を伴う「フェイルバック」段階である。第2クラスタからメタデータを受信すると、フェイルバック段階が完了したか、開始されたばかりかに関係なく、修理された、または取替えられた第1クラスタはクライアントにサービスする権限を取り戻す。

Description

発明の背景
本願は2007年11月8日付け米国出特許願第60/857,728号をベースとし、該出願に基づく優先権を主張する。
本発明は分散コンピュータ・ネットワークにおける可用性、信頼性および永続性にすぐれたデータ保存に関する技術一般に係わる。
関連技術の説明
「固定コンテンツ」を、従来のテープや光学的記憶手段に代わる、またはこれらを補完する可用性、信頼性および永続性にすぐれた態様で記録保存するアーカイブ保存に対する需要が高まりつつある。「固定コンテンツ」とは典型的には、参考資料として不変の状態で保存したいディジタル情報を指す。このような固定コンテンツの例として、特に、eメール、公文書、診断画像、チェック画像、音声記録、フィルム、ビデオなどが挙げられる。従来の冗長独立ノード・アレイ方式(RAIN)の保存アプローチはこのような固定コンテンツ情報資産を保存する大規模なオンライン・アーカイブを形成するのに最適のアーキテクチャとして出現した。個々のノードが必要とするクラスタと結合・離脱できるから、RAINアーキテクチャは1つまたは2つ以上のノードが故障しても保存クラスタを防護する。複数のノードにデータをコピーすることによって、RAIN-タイプのアーカイブはノードの故障または撤去を自動的に埋め合わせすることができる。典型例として、RAINシステムはクローズドシステム内で同じコンポーネントから設計されたハードウェア・アプライアンスとして実施される。
クラスタ回復のプロセスは個々の独立アーカイブが好ましくは対称ノードを有する保存クラスタである一連の分散アーカイブに亘って実施される。クラスタのそれぞれのノードは多くの場合固定コンテンツ・データおよび関連のメタデータをオブジェクトに基づいて保存するアプリケーションのインスタンスを実行する。この保存方法では、第1クラスタと第2クラスタとの間の関連付けまたは「リンク」を先ず設定することによってコピーを容易にする。第1クラスタを「一次」、第2クラスタを「レプリカ」と呼称することがある。リンクが設定されたら、次いで第クラスタの固定コンテンツ・データおよびメタデータを第1クラスタから第2クラスタに、好ましくは連続的にコピーする。但し、第1クラスタに異常が発生すると、フェイルオーバー動作が起こり、第1クラスタのクライアントが第2クラスタにリダイレクトされる。第1クラスタの異常が修理または置換(「復元」)されると、修理または置換された第1クラスタがそのクライアントに対してサービスする権威を取り戻す。この復元動作は2段階で行なわれることが好ましい:即ち、好ましくは、第1クラスタ・メタデータの「バルク」転送を伴う「高速回復」段階と、これに続く固定コンテンツ・データの転送を伴う「フェイルバック」段階である。第2クラスタからメタデータを受信すると、フェイルバック段階が完了したか、開始されたかに関係なく修理または置換された第1クラスタがクライアントにサービスする権威を取り戻す。
本発明の比較的核心的な特徴の幾つかを以上に概説した。上述した特徴は飽くまでも説明のためのものである。ここに開示する発明を異なる態様で適用するか、または後述するように発明に変更を施すことによって上記以外の有益な成果を得ることができる。
図1は本発明を実施することによって得られる固定コンテンツ保存アーカイブの簡略化したブロックダイヤグラムである。 図2はそれぞれが対称であり、本発明のアーカイブ・クラスタ・アプリケーションを支援する冗長独立ノード・アレイを示す簡略図である。 図3は所与のノードにおいて実行されるアーカイブ・クラスタ・アプリケーションの種々のコンポーネントを示すハイレベル図解である。 図4はアーカイブをベースとするビジネスの継続性および/または障害回復を容易にするためコンテンツを1つまたは2つ以上の遠隔アーカイブ・サイトにコピーする本発明の方法を示す説明図である。 図5は管理者がクラスタ間にリンクを設定することによりオブジェクト・レベルのコピーを容易にすることを可能にする本発明の方法を示す説明図である。 図6は単向性トポロジーでの一次クラスタ障害を伴う第1使用事例を示す説明図である。 図7は双方向トポロジーを伴う第2使用事例におけるフェイルオーバーの説明図である。 図8は双方向トポロジーを伴う第2使用事例における回復段階の説明図である。 図9は本発明によるソース・クラスタから送り先クラスタへのバルク転送プロセスのための種々の処理状態およびデータ・フローを示す説明図である。
拡張可能なディスク-ベース保存管理システム、好ましくは冗長独立ノード・アレイに基づくシステム・アーキテクチャを提供することもまた公知である。それぞれのノードが異なるハードウェアから成り、「異機種環境にある」と考えることができる。ノードは典型例として、実物理的な記憶ディスク、またはストレージ・エリア・ネットワーク(SAN)の場合のように仮想記憶ディスクから成る1つまたは2つ以上の記憶ディスクへのアクセスを有する。それぞれのノードに支持されているアーカイブ・クラスタ・アプリケーション(および、場合によっては、このアプリケーションを実行する内在オペレーティング・システム)は同じか、または実質的に同じである。図示例では、それぞれのノードに存在する(オペレーティング・システムを含む)ソフトウェア・スタックが対称であるのに対して、ハードウェアは異種であることができる。図1に示すようなシステムを使用して、企業は文献、eメール、衛星画像、診断画像、チェック画像、音声記録、ビデオなどのような多様な固定コンテンツ情報を永久保存することができる。上記情報の種類は説明の便宜上列記下に過ぎないことが言うまでもない。独立サーバー、またはいわゆるストレージ・ノードにデータをコピーすることによって高度の確実性が達成される。それぞれのノードがそのピアと対称であることが好ましい。従って、好ましくはどのノードもすべての機能を実行できるから、いずれか1つのノードが故障してもアーカイブの利用度には殆ど影響しない。
米国特許第7,155,466号明細書に記述されているように、それぞれのノードにおいて実行される分散ソフトウェア・アプリケーションはディジタル資産をファイル転送し、保存し、管理し、検索する。図2の実施例において、個々のアーカイブの物理的境界はクラスタと呼称される。典型的には、クラスタは単一のデバイスではなく、デバイスの集積である。デバイスは同質であってもよいし、異種であってもよい。典型的なデバイスは例えばLinuxのようなオペレーティング・システムを運用するコンピュータまたはマシーンである。コモディティ・ハードウェアにおいてホストとして機能するLinux-ベース・システムのクラスタは少数のストレージ・ノード・サーバーから数千テラバイトのデータを保存する多数のノードまで拡張可能なアーカイブを提供する。このアーキテクチャによって、常にストレージ容量を組織が必要とするアーカイブの増大に合わせることができる。アーカイブが常時デバイスの故障から保護されるように、クラスタ全体に亘ってデータがコピーされることが好ましい。ディスクまたはクラスタが故障すると、クラスタは同じ
データのコピーを保持する他のノードのクラスタへ自動的に切り替わる。
図示のクラスタは好ましくは大別して下記のコンポーネントから成る:ノード202、1対のネットワーク・スイッチ204、配電ユニット(PDU)206、および無停電電源(UPS)208。ノード202は典型例として、1つまたは2つ以上のコモディティ・サーバーから成り、CPU(例えば、Intel x86)、適当なランダム・アクセス・メモリ(RAM)、1つまたは2つ以上のハード・ドライブ(例えば、標準的なIDE/SATA、SCSIなど)、および2つ以上のネットワーク・インターフェース(NIC)カードを含む。典型的なノードは2.4GHzチップ、512MBRAM、および6つの200GBハード・ドライブを含む2Uラック・マウント方式ユニットである。但し、本発明はこれに制限されるものではない。ネットワーク・スイッチ204はノード間のピア対ピア通信を可能にする内部スイッチ205、および追加クラスタがそれぞれのノードにアクセスすることを可能にする外部スイッチ207から成る。いずれのスイッチもクラスタ中のすべてのノードを取扱うのに充分な数のポートを必要とする。この条件を満たすためにはEthernetまたはGigEスイッチを使用すればよい。すべてのノードおよびスイッチに対する給電にはPDU206を使用し、すべてのノードおよびスイッチを保護するためにはUPS208を使用する。クラスタは多くの場合、公衆インターネット、企業イントラネット、またはその他の広域または構内ネットワークのようなネットワークと接続可能である。図示例の場合、クラスタは企業環境内に実装される。このクラスタには、例えば、サイトの企業ドメイン・ネーム・システム(DNS)ネーム・サーバーを介してナビゲートすることによって到達することができる。例えば、クラスタのドメインが既存ドメインの新しいサブドメインである場合が考えられる。代表的な実施例として、このサブドメインは企業DNSサーバーにおいてクラスタ自体におけるネーム・サーバーに任せられる。エンドユーザーは公知のインターフェースまたはアクセス・ツールを利用してクラスタにアクセスする。即ち、クラスタへのアクセスは、例えば、API、またはその他の公知またはその後開発されたアクセス方法、サービス、プログラムまたはツールを介して、IP-ベースのプロトコル(HTTP、FTP、NFS、AFS、SMB、ウェブ・サービスなど)に従って実行することができる。
クライアント・アプリケーションは標準的なUNIXファイル・プロトコル、またはHTTP APIのような1種類または2種類以上の外部ゲートウェイを介してクラスタにアクセスする。アーカイブは標準的なUNIXファイル・プロトコル設計の仮想ファイル・システム、例えば、NFS、FTP、SMB/CIFSなどを介して表示することが好ましい。
1つの実施例では、アーカイブ・クラスタ・アプリケーションが(例えば、Ethernetを介して)クラスタとしてネットワーク化された冗長独立ノード・アレイ(H-RAIN)で実行される。所与のノードのハードウェアは異質であってもよい。但し、確実性のため、それぞれのノードは図3に示すように幾つかのランタイム・コンポーネントから成る(同じインスタンスか、または実質的に同じインスタンスである)分散アプリケーションのインスタンス300を実行することが好ましい。即ち、ハードウェアは異質であってもよいが、(少なくとも本発明に関する限り)ノードにおけるソフトウェア・スタックは同じである。これらのソフトウェア・コンポーネントはゲートウェイ・プロトコル層302、アクセス層304、ファイル・トランザクション/管理層306、およびコア・コンポーネント層308から成る。尚、ここに使用する「層」という表現は説明の便宜上の表現であって、その機能を別の表現でも特徴付けできることは当業者のよく知るところである。1つまたは2つ以上の層(またはこれに含まれるコンポーネント)は一体化されていてもいなくてもよい。複数の層に亘って幾つかのコンポーネントを共用してもよい。メタデータをファイルとして表示しながら、アーカイブ・コンテンツを元のフォーマットにすることが好ましい。
ゲートウェイ・プロトコル層302におけるゲートウェイ・プロトコルは既存のアプリケーションに対して透過的である。具体的には、ゲートウェイはカスタム・アプリケーションを構成するためNFS310やSMB/CIFS312のようなネイティブ・サービスおよびウェブ・サービスAPIを提供する。アクセス層304はアーカイブへのアクセスを可能にする。具体的には、本発明の場合、固定コンテンツファイル・システム(FCFS)316がネイティブ・ファイル・システムをエミュレートすることによってアーカイブ・オブジェクトへのフルアクセスを可能にする。FCFSは普通のファイルであるかのようにアプリケーションがアーカイブ・コンテンツに直接アクセスすることを可能にする。メタデータをファイルとして表示しながら、アーカイブ・コンテンツをオリジナル・フォーマットにすることが好ましい。FCFS316はディレクトリの標準的なビュー、許可およびルーチン・ファイル-レベル・コールを提供するから、管理者は慣れた態様で固定コンテンツ・データをセットアップすることができる。ファイル・アクセス・コールを好ましくはユーザー-スペース・デーモンが傍受して(層308の)該当するコア・コンポーネントへ伝送し、この該当コア・コンポーネントが呼出しアプリケーションに対する適切なビューを動的に作成する。自主的なアーカイブ管理を容易にするため、FCFSコールをアーカイブ・ポリシーによって制約することが好ましい。1例として、管理者またはアプリケーションは保存期間(所定のポリシー)が未だ有効なアーカイブを消去できない。
アクセス層304はウェブ・ユーザー・インターフェース(UI)318およびSNMPゲートウェイ320をも含むことが好ましい。ウェブ・ユーザー・インターフェース(UI)318はファイル・トランザクション/管理層306中の管理エンジン322への対話型アクセスを可能にする管理コンソールとして実施することが好ましい。管理コンソール318はアーカイブ・オブジェクトおよび個々のノードを含めてアーカイブの動的なビューを提供する、パスワードで保護されたウェブ-ベースGUIであることが好ましい。SNMPゲートウェイ320はストレージ管理アプリケーションが管理エンジン322に容易にアクセスしてクラスタ・アクティビティを確実にモニターし且つ制御することを可能にする。管理エンジンはシステムおよびポリシー事象を含めてクラスタ・アクティビティをモニターする。ファイル・トランザクション/管理層306はリクエスト・マネジャー324をも含む。リクエスト・マネジャー324は(アクセス層304を介して)外界からのすべてのリクエストを統合するとともに、コア・コンポーネント層308中のポリシー・マネジャー326からの内部リクエストをも統合する。
コア・コンポーネントはポリシー・マネジャー326のほかに、メタデータ・マネジャー328、およびストレージ・マネジャー308の1つまたは2つ以上のインスタンスをも含む。好ましくはメタデータ・マネジャー328をそれぞれのノードにインストールする。全体として、クラスタ中のメタデータ・マネジャーはすべてのアーカイブ・オブジェクトを管理する分散データベースとして作用する。所与のノードにおいて、メタデータ・マネジャー328は、好ましくはそれぞれのオブジェクトが外部ファイル(「EF」、即ち、保管されるためアーカイブに加わったデータ)とアーカイブ・データが物理的に位置づけられている一連の内部ファイル(それぞれの「IF」)との間に位置するアーカイブ・オブジェクトのサブセットを管理する。同じメタデータ・マネジャー328が他のノードからコピーされた一連のアーカイブ・オブジェクトをも管理する。従って、すべての外部ファイルの現況を幾つかのノードにおける複数のメタデータ・マネジャーが利用することができる。ノードに故障が発生した場合、このオペレーションについては詳しく後述する。ストレージ・マネジャー330は分散アプリケーションにおける他のすべてのコンポーネントが利用できるファイル・システム層を提供する。好ましくは、これがノードのローカル・ファイル・システム中にデータ。オブジェクトを保管する。所与のノードにおけるそれぞれのドライブはこのドライブ独自のストレージ・マネジャーを有することが好ましい。これにより、ノードは個別のドライブを排除してスループットを最適化することが
できる。ストレージ・マネジャー330はまた、システム情報、データに対する完全性チェックおよびローカル・ディレクトリ構造検討能力を提供する。
図3に示すように、クラスタは通信ミッドウェア332およびDNSマネジャー334を介して内部および外部通信を管理する。インフラストラクチャー332はアーカイブ・コンポーネント間の通信を可能にする効率的且つ信頼度の高いメッセージ-ベースのミッドウェア層である。図示例の場合、この層がマルチキャストおよび2地点間通信を可能にする。DNSマネジャー334はすべてのノードを企業サーバーに接続する分散ネーム・サービスを運用する。好ましくは、DNSマネジャーが(独自に、またはDNSサービスと協働して)すべてのノードに亘ってリクエストを負荷平衡させることによってクラスタのスループットおよび利用度を最大限に高める。
図示の実施例では、ArCアプリケーション・インスタンスがRed Hart Linux 9.0のようなベース・オペレーティング・システム336において実行される。通信ミッドウェアは使い勝手の良い分散型通信メカニズムである。その他のコンポーネントとして固定コンテンツファイル・システム(FCFS)316に利用できるFUSE(ファイルシステム・イン・USErspace)を含むことができる。NFSゲートウェイ310は標準nfsd Linux Kernel NFSドライバーのユーザー・スペース・インプレメンテーションであるUnfsdによって実施することができる。それぞれのノードにおけるデータベースは、例えば、オブジェクト関連データベース管理システム(ORDBMS)である(本明細書においてPostgresとも呼称する)PostgreSQとして実装することができる。ノードはJavaHTTPサーバー/サーブレット・コンテナーであるJettyのようなウェブ・サーバーを含むことができる。言うまでもなく、上記メカニズムは説明のための例に過ぎない。
所与のノードにおけるストレージ・マネジャー330は物理的保管デバイスを管理する。好ましくは、それぞれのストレージ・マネジャー・インスタンスが、すべてのファイルが配置アルゴリズムに従って配置されるシングル・ルート・ディレクトリの管理に責任を負う。1つのノードにおいて複数のストレージ・マネジャー・インスタンスを同時に実行され、それぞれのインスタンスがシステムにおける異なる物理的ディスクを表わすのが普通である。ストレージ・マネジャーはドライブを取り除き、システムの残余部分からインターフェース技術が利用される。ファイルの書込みを要求されると、ストレージ・マネジャー・インスタンスは任せられた表現のためのフルパスおよびファイル・ネームを生成する。図示の実施例では、ストレージ・マネジャーに保存すべきそれぞれのオブジェクトが未加工データとして受信され、ストレージ・マネジャーはこれを保存する際にファイルにこのストレージ・マネジャー自体のメタデータを付加することによって種々の情報を記録する。例えば、このメタデータは下記要素を含む:EFの長さ(バイトで表わされる外部ファイルの長さ)、IFセグメントのサイズ(このファイル部分のサイズ)、EP保護表現(EF保護モード)、IF保護役割(この内部ファイルの表現)、EF作成タイムスタンプ(外部ファイルのタイムスタンプ)、シグネチャ(シグネチャのタイプを含む書込み(PUT)時における内部ファイルのシグネチャ)およびEFファイル・ネーム(外部ファイルのファイル・ネーム)。内部ファイルのデータと共にこの付加メタデータを保存することによって保護レベルを高めることができる。具体的には、スキャベンジングによって、内部ファイルに保存されているメタデータからデータベース中の外部ファイル記録を作成できる。
上述したように、内部ファイルは好ましくはアーカイブ・オブジェクトにおけるオリジナル・ファイルの一部を表わすデータの「チャンク」であり、好ましくは種々のノードに配置されて分散化および保護ブロックを実現する。典型例としては、それぞれのアーカイブ・オブジェクトごとのメタデータ・マネジャーに1つの外部ファイル項目が存在し、そ
れぞれの外部ファイル項目ごとに多数の外部ファイル項目が存在する。多くの場合、内部ファイルのレイアウトはシステムに応じて異なる。実施態様によっては、ディスクにおけるこのデータの実際の物理フォーマットが一連の可変長レコードとして保存される。
リクエスト・マネジャー324はシステム内の他のコンポーネントとの対話によってアーカイブ・アクションを実行するのに必要な一連のオペレーションを実行する任務を有する。リクエスト・マネジャーは種類の異なる多くの同時アクションを支援し、失敗したトランザクションをロールバックすることができ、実行に長時間を要するトランザクションを支援する。リクエスト・マネジャーはまた、アーカイブにおける読取/書込みオペレーションが正しく行なわれ、すべてのリクエストが常に既知の状態にあることを保証する。複数のノードに亘る複数の読取/書込みオペレーションを協調させることによって所与のクライアントのリクエストを満足させるようにトランザクション制御機能をも有する。さらにまた、リクエスト・マネジャーは最近使用されたファイルをキャッシュに格納して、セッションおよびデータブロックのためのバッファリング機能をも果す。
クラスタの主要任務は無限数のファイルを確実にディスクに保存することである。所与のノードが、何らかの理由で到達できない、または利用できないという意味で「信頼できない」と考えられる場合がある。このような信頼できない複数のノードが協働して信頼できる利用度の高いストレージを作成する。一般に、保存しなければならない2種類の情報がある:即ち、ファイルそのものと、ファイルに関するメタデータとの2種類である。
以上に既知のアーカイブ・クラスタを説明した。企業(またはその他の事業体)が分散クラスタを実現し、クラスタのコピーおよび回復を可能にする方法を以下に説明する。
クラスタ・リカバリ
以下に説明する本発明には下記の述語が適用される。
レプリケーション:プライマリー・クラスタからレプリカ・クラスタへ効率的にデータをコピーするプロセス。正常な操作条件下ではプライマリー・クラスタにおけるオーソリテーティブ・ネームスペースがレプリカ・クラスタにおけるバックアップ・ネームスペースへコピーされるデータのソースである。
プライマリー・クラスタ(PC):正常な操作条件下においてオーソリテーティブ・ネームスペースを含むクラスタ。プライマリー・クラスタは「ソース」と呼称されることがある。フェイルオーバーまたはフェイルバック手順の過程ではプライマリー・クラスタ指定は変化しないことが好ましい。必ずしも制限的な意味ではないが、多くの場合、プライマリー・クラスタは地理的な位置で特定される。プライマリー・クラスタが故障している間、プライマリー・クラスタは一時的にアーソリテーティブ・ネームスペースを提供することを止め、リカバリの間バックアップ・ネームスペースとなることができる。リカバリが完了すると、プライマリー・クラスタは多くの場合オーソリテーティブ・ネームスペースとしての役割を取り戻す。リカバリ・シナリオによっては、故障したプライマリー・クラスタを新しいプライマリー・クラスタに置き換え、前者は新しい場所で動作することになる。
レプリカ・クラスタ(RC):正常な操作条件下でバックアップ・ネームスペースを提供するクラスタ。レプリカ・クラスタは「ターゲット」または「レプリカ」と呼称されることがある。必ずしも制限的な意味ではないが、多くの場合、レプリカ・クラスタは地理的な位置で特定される。フェイルオーバーまたはフェイルバック手順の過程ではレプリカ・クラスタ指定は変化しないことが好ましい。プライマリー・クラスタが故障している間、レプリカ・クラスタがクライアントに対してオーソリテーティブ・ネームスペースを提
供することができる。
ネームスペース(NS):一連のファイルおよびディレクトリのための論理的容器。ネームスペースは収容しているオブジェクトに関連する文脈を提供して(異なるネームプレース中に存在する)同名のアイテムとの弁別を可能にする。好ましくは完全なファイルシステム・ツリーを提供する。従って、異なるネームスペース中に存在する限り、同名のファイルが同じクラスタに共存することを可能にする。クラスタは(外部クライアントにより書込み可能な)オーソリテーティブ・ネームスペースまたは(外部クライアントのよる読出し専用の)バックアップ・ネームスペースを提供することができる。クラスタは役割の異なる複数のネームスペースを同時に主宰することができる。
オーソリテーティブ・ネームスペース(AS):オブジェクトの最新バージョンを収納している書込み可能なネームスペース。所与のオブジェクト群に関して常時唯一のオーソリテーティブ・ネームスペースが存在できることが好ましい。クラスタはプライマリー・クラスタにおけるオーソリテーティブ・ネームスペースから、レプリカ・クラスタによって主宰される1つまたは2つ以上のバックアップ・ネームスペースにコピーするように構成されている。オーソリテーティブ・ネームスペースを提供するクラスタがバックアップ・ネームスペースを提供するように格下げされることになる。フェイルオーバーおよびリカバリの過程ではネームスペースは一時的にオーソリテーティブ・コピーを失うことになる。
バックアップ・ネームスペース(BN):外部クライアントによる書込みが不能であり、コピーするプロセスを介してオーソリテーティブ・ネームスペースからデータを受信するネームスペース。コピー・プロセスはゲートウェイ・アクセスと非同期であるから、コピーされたデータは常に最新データではないと考えねばならない。バックアップ・ネームスペースを提供するクラスタはフェイルオーバーのプロセスにおいて格上げされてオーソリテーティブ・ネームスペースを提供することができる。
レプリケーション:プライマリー・クラスタからレプリカ・クラスタへ効率的にデータをコピーするプロセス。正常な操作条件下ではプライマリー・クラスタにおけるオーソリテーティブ・ネームスペースがレプリカ・クラスタにおけるバックアップ・ネームスペースへコピーされるデータのソースである。
フェイルオーバー:プライマリー・クラスタに故障が発生した際に、レプリカ・クラスタをバックアップ・ネームスペース提供からオーソリテーティブ・ネームスペース提供に切替えるプロセス。このプロセスの一部として、クラスタ・クライアントをプライマリー・クラスタからレプリカ・クラスタへリダイレクトすることができる。
リカバリ:レプリカ・クラスタからプライマリー・クラスタへ迅速且つ効率的にデータをコピーするプロセス。高速リカバリは最初にコピーされた固定コンテンツ・データとは別にPCからRCへメタデータを転送することによって可能となる。PCがメタデータを取り戻すと、PCは直ちに第1アーカイブに対する支配権を取り戻すことができる。リカバリ・プロセスはプライマリー・クラスタがレプリカ・クラスタへ障害迂回し、修理および/または取替えされた後に行なわれる。レプリカ・クラスタにおけるオーソリテーティブ・ネームスペースはそのデータをプライマリー・クラスタにおけるバックアップ・ネームスペースにコピーする。
フェイルバック:リカバリ・プロセスが完了すると同時にレプリカ・クラスタがオーソリテーティブ・ネームスペース提供からバックアップ・ネームスペース提供に切り替わり、プライマリー・クラスタがバックアップ・ネームスペース提供からオーソリテーティブ
・ネームスペース提供に切り替わるプロセス。このプロセスの一部として、クラスタ・クライアントをレプリカ・クラスタからプライマリー・クラスタへリダイレクトすることができる。
リンク:コピー・プロセスのため2つのクラスタ間に設定される連携。このリンクは一連のデータをソースからターゲットにコピーする方法を表わす。1つの実施例として、最小の「データ・セット]はネームスペースである。リンクは多くの場合、ソース・クラスタDNSネーム、ターゲット・クラスタDNSネーム、コピー・プロセスのスケジュール、移送の形態、コピーされるネームスペース、および認証情報を含む。
チェンジ・ログ:所与のソース-クラスタ領域および時間範囲に関する変更の順序付リスト。
コンプリート・チェンジ・ログ:完全変更の記述を含む変更ログ。
チェンジ:例えば、形成、削除、保存などのような動機付けゲートウェイ・オペレーションに関して提示されることが多い所与のアーカイブ・オブジェクトの状態変更。変更は通常ソース・クラスタにおいてのみ行なわれ、特定した上でターゲット・クラスタへ移動させねばならない。
チェンジ・デスクリプション:アーカイブ・オブジェクトに対する1つまたは2つ以上の変更の圧縮された部分ビュー。変更記述は変更の事実と変更後のオブジェクトの望ましい最終状態を示す。変更記述は内部ファイルとは対照的に、アーカイブ・データベースから得られる情報で構成することが好ましい。(ユーザー・メタデータを閉じる、またはファイルを作成する、などのような)幾つかのオペレーションには、変更記述が変更を表わすのに必要なすべてのデータを含むのではなく、必要なデータのソースに関する参照を含まねばならない。
ローカル・チェンジ・デスクリプション:ローカル・クラスタにすべての参照データが含まれている完全変更記述または変更記述。
リモート・チェンジ・デスクリプション:完全変更記述ではなく、リモート・クラスタにおけるデータに関する参照を含む変更記述。リモート・クラスタは変更ログで特定される。
インビジブル・ファイル:いかなるゲートウェイを介してもアクセスできないアーカイブ・ファイル。これらのファイルは究極的にはデータベースに加えられる可能性がある記録の安全な中間的保存手段として利用される。インビジブル・ファイル・コンテンツは通常、メッセージ層-符号化構造であるが、これに限定されるものではない。
アドミニストレータ:クラスタ管理者。典型的には、管理すべきクラスタに関する管理パスワードを有し、クラスタの構成と管理を任務とする。「管理者」という名称の頭に所管のコピー・クラスタの名称が付記されることが多い。
図4は3つのレプリカ・クラスタ402(1つは米国ウォバシャに、1つは英国ルートンに、1つは日本国京都に設置されている)と共にプライマリー・クラスタ400を示す。多くの場合、クラスタは異なる地理的位置に設置されるが、これは必須条件ではない。PC400からそれぞれのRC402に(コピー・プロセスによって)コンテンツをコピーすることによって事業の継続性や災害の復旧を可能にする。即ち、機能停止の事態が発生した場合、クライアント・アプリケーションはレプリカ・クラスタに切替えることによ
ってシステムの停止時間を最短にとどめることができる。復旧機能(リカバリー・プロセス)は新しいプライマリー・クラスタの迅速な再生を可能にし、この新しいプライマリー・クラスタは元のままに再生/復元されたPCであるか、または全く新しいPCである。
図5はクラスタ間のコピーイング・リンク形成を可能にする管理コンソールのグラフィカル・ユーザー・インターフェース(GUI)500を示す。上述したように、リンクはソース・ネームスペースを特定のターゲット・クラスタにコピーすることを可能にする。リンクを構成するには1つまたは2つ以上の選択肢がある。即ち、ディジタル・シグネチャー・オプションを選択すれば、リンクの信頼性を確保することができる。圧縮オプションを選択すれば、リンク全体に亘ってデータを圧縮することによりWAN帯域幅条件を極力軽減することができる。暗号化オプションを選択すれば、もしリンクが(インターネットのような)パブリック・ネットワークを包含する場合に安全確保を必要とする場合に、(例えば、SSLのような)暗号化を採用することができる。さらにまた、スケジューリング・オプションはコピーが行われる適時とコピーの重要度の選択を可能にする。これらのオプションが管理者によって組み合わされることが好ましい。PCから1つまたは2つ以上のRCへのアーカイブ・オブジェクトのコピー・プロセスは同期的に且つ確実に行なわれることが好ましい。
好ましくは、固定コンテンツ・データ、メタデータ、およびポリシー情報(例えば、属性の分断など)を含めてオブジェクト・レベルでコピーを追跡チェックする。GUIは、例えば、オブジェクトの数および容量などのようなメトリクスを表示することもできる。如何なるアーカイブも、管理者が本発明のコピー・プロセス、リカバリ、およびフェイルバックのためにアーカイブを設定することを可能にするマシーンを含むことができる。
多重コピーイング・トポロジー方式を実行することができる。簡単な方式としては、単一のプライマリー・クラスタがそのデータ・オブジェクトを単一のレプリカ・クラスタにコピーする方式がある。これは1対1(PC対RC)のコピー・プロセスである。単一のPCが図4に示すように複数のRCにそのデータをコピーする場合もある。このような1対多数方式のアプローチは保存に要するコストという点でコストが高くなる。「多数対1」方式は複数のプライマリー・クラスタが大容量の中央レプリカ・クラスタにコピーする場合に採用される。「双方向」アプローチでは、第1および第2クラスタが互いに相手にコピーする。「、マルチ-ホップ」アプローチでは、AがBにコピーし、次いでBがCにコピーする。(上記方式を組み合わせる)ハイブリッド方式を実行することもできる。実行されるトポロジーに関係なく、単一または複数のコピーイング・リンクを使用してクラスタ管理者が所与のトポロジーを作成することが好ましい。リンクの構成によって究極的なネットワーク・トポロジーが決定されることが好ましい。また、リンクの形成は2地点間であることが好ましい。例えば、1対多数トポロジーを設定するには、プライマリー・クラスタ管理者はそれぞれのRCとのリンクを形成することになる。次いで、それぞれのRC管理者がこれらのリンクの形成を完成することになる。マルチ-ホップ方式の場合には、中間クラスタを介してまたはエンド・レプリカから直接的にデータを復旧できるためには、リンク構成が「チェーン」コンセプトを理解しなければならないという条件が加わる。
図6は単向性トポロジーにおけるプライマリー・クラスタを伴う第1使用例を示す。この実施例においてはクラスタ600がPCであり、RCとしてのクラスタ602にコピーする。これがステップ601である。即ち、RCはクラスタ600のための専用レプリカである。ここで、PCが完全に故障状態に陥ると仮定する。RC管理者は管理者GUIを利用することによってクラスタ602がクラスタ600のネームスペースに代わってオーソリテーティブになるように操作する。その結果、クラスタ600のクライアント604はクラスタ602にリダイレクトされて読出し/書込みを行なうことになる。その後、ク
ラスタ600に代わって新しいクラスタ606がインストールされると仮定する。クラスタ606の管理者は管理者UIを介してクラスタ602とのリンクを復旧する。ステップ605において、クラスタ602の管理者はそのUIを介してリカバリを開始する。リカバリが完了すると(または完了に近づくと)、クラスタ602の管理者はネームスペースを「読出し専用」としてマーキングする。新しいクラスタ606へのメタデータ転送を完了すると、クラスタ602はクラスタ606に対してクラスタ606が読出し/書込みモードになることを指示するメッセージを送信する。こうしてリカバリが完了する。この時点でクラスタ606は支配権を取り戻し、クライアントはクラスタ602からクラスタ606へリダイレクトされる。好ましくは、ステップ607に示すように、コピー・プロセスが両方向に継続する。即ち、クラスタ606はクライアント(クラスタ600の元のクライアント)に読出し/書込みアクセスを提供しながらクラスタ602からデータを引き出し続ける。このオペレーションはクラスタ606がすべてのデータを回復するまで続く。同時に、クラスタ606はクラスタ602に向かってすべての新しい変更をコピーし、クラスタ602は本来のRC状態に戻る。
図6に示すオペレーションはPCに部分的な故障が生じた場合も同様であり、この場合、PCは全体が置き換えられるのではなく、修理されるだけである。
第1クラスタにメタデータが復帰すると、クライアントは第1クラスタからすべてのデータを読み出すことができる。この時点で、アーカイブはクライアントのため、未だ第2クラスタから返還されていないコンテンツを検索する。多くの場合、クライアントはリダイレクトされず、コンテンツが返還されていないことに気付いていない。第2クラスタから引き出されるのと並行して読出しが行われる時、クライアントは性能の低下を経験することがある。
図7および図8は双方向トポロジーを伴う第2使用例のフェイルオーバーおよびリカバリ段階を示す。この実施例では、それぞれのクラスタが他のクラスタにコピーしている。即ち、クラスタ700はクラスタ702にコピーされるネームスペースAを有するプライマリー・クラスタであり、クラスタ702はクラスタ700にコピーされるネームスペースBを有するプライマリー・クラスタである。ステップ701は正規の双方向コピー・プロセスを示す。ステップ703において、クラスタ700に故障が生じた。上述したように、ネームスペースAのクライアントはクラスタ702へリダイレクトされる。図8に示すように、本発明の高速クラスタ・リカバリがクラスタ702において開始された(この実施例では、図6に示す実施例の場合のように全体を新しいクラスタと交換するのではなく、クラスタ700がバックアップした場合を想定している)。リカバリ段階がステップ801である。クラスタ700がスタンドアップした後、クラスタ702からクラスタ700へ矢印で示すようにネームスペースAのメタデータが提供される。このようなリカバリの進行中にもネームスペースAのクライアントはクラスタ702のサービスを受けている。これと同時に、ネームスペースBは再びクラスタ700へのコピー・プロセスを開始する。リカバリが完了すると、ステップ803に示すようにフェイル-段階が始まる。この時点で、ネームスペースAは再びクラスタ700へのコピー・プロセスを開始する。(初めにクラスタ700からクラスタ702にコピーされた)データがクラスタ700のネームスペースAへ返還される。しかし、メタデータが高速でリカバリされるから、リカバリ段階(ステップ801)が完了すると同時に、ネームスペースAのクライアントはデータがクラスタ700に返還されるのを待つことなくクラスタ700からサービスを受けることができる。
以下に、コピー・プロセス、フェイルオーバー、およびリカバリに関してさらに詳細に説明する。
レプリケーション(コピー・プロセス)
コピー・プロセス・マネジャーは他のコピー・プロセス・コンポーネントを統括する最上位のコンポーネントである。その役割はコピー・プロセス全体と構成およびコピー状態情報とを調整することにある。コピー・プロセス・マネジャーの常態における制御流れは下記の通りである。即ち、起動すると、先ず構成をロードする。それぞれのコピー・プロセス・リンクごとに、コピー・プロセス・マネジャーは下記のアルゴリズムを繰返す:コピー・プロセス・リンク・オブジェクトを作成し;スケジューラに事象を記録し;コピー・オブジェクトを作成し;リンクがネームスペース・マスターであるかどうかを確認して、もしマスターであればコピー・スタート送信機能( )をコールし;さもなければ(即ち、リンクがネームスペース・マスターでなければ)、コピー・スタート受信機能( )をコールする。コピー・プロセス・マネジャーはスケジューラ/優先順位に変化があればこれに応答して該当のリンクでコピー・セット優先度機能( )をコールする。停止の必要があれば、これに応答してコピー・プロセス・マネジャーはすべてのリンクでコピー停止機能( )をコールする。
コピー・プロセス・マネジャーはコピー・プロセスの全面的なトップ・レベル制御を行なう。コピー・プロセス・リンクの両端は同じアルゴリズムを繰返すことが好ましい。両端はスケジュールに従って起動・停止するだけであるから、このプロセスにクラスタ間の制御通信は不要である。一方の端部でリンクが中断された場合にのみ、他方の端部におけるコピー・プロセス・マネジャーに対してプロセス中止のメッセージが送信される。
「常態」制御流れと「復旧」制御流れはコピー・プロセスに伝達される制御フラッグに幾つかの相違点があることを除けば殆ど同じである。
好ましくは、管理エンジン(図3を参照)によってコピー・プロセス・マネジャーを起動させる。上述したように、コピー・プロセス・マネジャーはコピー・プロセス構成をロードし、この構成で1つまたは2つ以上のコピー・プロセス・リンクを形成する。好ましくは、コピー・プロセス・マネジャーが起動、停止および優先度変更に関する通告をすべて受信してレジスタに記録し、これらの情報を調整機構としての役割に利用することによって挙動の変更を必要とすることをリンクに通告する。スケジューラの起動・停止に対応して、コピー・プロセス・マネジャーは該当リンクと連携するコピー・プロセス・ワーカー・スレッド、例えば、リンクごとの変更ログ・コレクション・コンポーネントなどを協調させる。リンクがスケジュールされれば、コピー・プロセス・マネジャーはスケジューラからの事象「起動」指令に従って該当のリンクを作動させるだけである。上述したように、リンクが起動メッセージを受信すると、コピー・オブジェクトを作成し、ネームスペースの状態(オーソリテーティブかバックアップか)に応じてコピー・オブジェクトの送信開始または受信開始をコールする。スケジューラから優先度変更を受信すると、コピー・プロセス・マネジャーは優先度設定機能を介して該当のリンクに状態変更を通告する。コピー・プロセスは適当な時点において優先度が変更されるように調整される。プロセスを停止しなければならない時には、コピー・プロセス・マネジャーが停止をコールし、このコールでコピー・プロセスは直ちに終了する。
リンクの管理
ここに使用するレプリケーション・リンクという表現はコピー・プロセスのため2つのクラスタを連携させる構成を指す。リンクの管理にはこのような連携構成の形成、変更および削除が含まれる。リンク・マネジャーはこの機能性を実現する。
リンクの形成
コピー・プロセスのため2つのクラスタを連携させる必要が生じた場合、レプリケーション・リンクを形成しなければならない。後述するセキュリティ上の観点から、リンクの
形成はプライマリー・クラスタとレプリカ・クラスタの双方からの管理を伴う2-ステップ・プロセスであることが好ましい。
このプロセスを起動させるため、PC管理者は管理UIを利用してレプリケーション・リンクの形成を起動させる。この場合、管理者がRCのDNSネーム、優先度およびスケジュール情報、および何らかの認証情報(ユーザーネーム/パスワード)の提供を要求されることが好ましい。このオペレーションの結果、これらの情報を含む構成オブジェクトがPCに形成され、RC側のレプリケーション・マネジャーに対して、リンクの形成を要請するメッセージが送信される。このメッセージは典型的には以下に挙げる情報を含む:プライマリー・クラスタのDNSネーム;認証情報、および(もしSSLが使用されるなら)プライマリー・クラスタのSSL証明書の公開部分;コピー・プロセスのための転送構成(例えば、HTTP、SSLに採用されているHTTPなど);コピーされるネームスペース;データ・トラフィックを圧縮すべきかどうかを記述するフラッグ。レプリカ・クラスタにこれらの情報が保存され、レプリカ管理者の管理UIにリクエストが提示される。レプリカ管理者はリクエストを受容れるか拒絶するかを選択することができる。リンクが形成され、双方の管理者によって認可されるまでにn回のレプリケーション・オペレーションが許されることが好ましい。既にネームスペースが存在するなら、リンク形成が実現しないことが好ましい。必要とあれば、リンクの形成にセーフ・メッセージング・プロトコルを利用することができ、この場合、リンク形成のための情報交換の状態がプライマリー・クラスタ側に記録される。「リンクが形成された」という返事が来ない場合、プライマリー・クラスタ管理者はリンク形成オペレーションを再度試みることができる。リプレイの問題を防止するため、リンク形成メッセージに独自のIDが含まれることが好ましい。レプリカ側からのリンク認定メッセージが受信されると、システムはたとえ最初のリンク形成メッセージに対する返事が受信されなくても、リンクが正しく形成されたと想定する。
レプリカ・クラスタからの成功の返事が受信されるまで、プライマリー・クラスタ側の構成状態が持続しないことが好ましい。好ましくは、リンク形成メッセージが独自の識別子を含み、リモート・クラスタが再試行なのか、違法な真似リクエストなのかを検知できるようにする。リンク形成失敗の場合、レプリカ・クラスタ管理者が部分的に形成されているリンクを消去しなければならないことがある。持続的なリンク構成は極めて固定的であり、(作動中、停止状態、などのような)リンク状態はレプリケーション・マネジャーにおいて持続する。リンクが形成されたら、プライマリー・クラスタは構成された情報を利用することによって(DNSを介して)レプリカ・クラスタの場所を特定し、レプリケーション・オペレーションを開始することができる。それぞれのクラスタは相手クラスタに認定させるためのクライアント証明書としてSSLサーバー証明書を利用することができる。プライマリー・クラスタからレプリカ・クラスタへのメッセージが失敗すれば、リンク形成も失敗に終わり、PC管理者はプロセスを再開しなければならない。
リンクの修正
スケジュール、優先度、転送および圧縮設定はすべて既存のリンクで修正することができる。その他の変更に際しては、リンクを削除し、再形成することが好ましい。
リンクの削除
レプリケーション・リンクはいずれの管理者によっても削除することができる。2つのクラスタ間の接続性に問題がなければ、リモート・クラスタに対してそちら側でもリンクを削除するようリグエストするメッセージが送信される。リモート・クラスタとの接触が不可能なら、ローカル・リンク構成だけが削除される。
リンクが削除されると、削除された側の構成状態が削除され、リモート側に対してメッ
セージが送信される。リモート側はリンク・ダウンをマーキングするが、状態の削除は一切行なわない。リモート側の管理者がリンクを削除すれば、状態は削除される。この時点で、トラッキング状態の設定変更もすべて削除される。レプリカ・クラスタの管理者がリンクを削除する時、管理者はこのリンクと連携するネームスペースを削除するか否かを選択することができる。リンク削除に関する互いの通信には、リンク成形プロセスの時と同じ「安全」メッセージ・プロトコルを使用することが好ましい。レプリカ側に対応のリンクが構成されていない状態でPCがレプリカ側に情報をコピーしようとすると、コピー・プロセスは拒絶される。
リンクの状態
レプリケーション・リンクは一時停止させることができる。その結果、すべての形成設定変更が即時停止し、レプリカ・クラスタに対してデータ・リクエストを停止するようメッセージが送信される。このリンクが管理者によって復旧されるまでこのリンクでのコピー・プロセスは継続されない。一時停止または復旧の状態はリンク構成の残りの部分とともに持続するから、クラスタの再起動によってコピー・プロセスが問題なく再開される。
セキュリティ
上述したように、クライアント側の証明書を含むSSLセキュリティを利用することがレプリケーション・リンクのセキュリティの観点から好ましい。
フェイルオーバー
フェイルオーバーはプライマリー・クラスタに故障が生じた場合に、クラスタ・クライアントがレプリカ・クラスタから、およびレプリカ・クラスタに、引き続き読出し、書込みをできるようにするプロセスである。典型的には、フェイルオーバーは幾つかのステップから成る:即ち、故障の特定、(もし可能なら)プライマリー・クラスタを書込み不能に変更し;レプリカ・クラスタへのバックログ書込みを処理し;クライアントをリダイレクトしてレプリカ・クラスタを使用させる。
所与の時点において、所与のデータ・セットに関して、書込み可能なクラスタが2つ以上存在しないことが好ましい。フェイルオーバー・プロセスによって、2つの書込み可能なコピーが存在するのを防止しながら随時にデータのコピーを読出し/書込みすることができる。
故障の特定
クラスタの故障は管理者によって特定されるのが普通である。必要とあれば、自動的フェイルオーバーも可能であるが、プライマリー・クラスタの故障なのか、プライマリー・クラスタとレプリカ・クラスタとの間のネットワークの故障なのかを自動的に判断するのは多くの場合困難であり、好ましい技術ではない。後者の場合、2つの書込み可能なコピーが生ずることになり、混乱を招く。しかも、プライマリー・クラスタの故障が正確に検出されたとしても、レプリカ側には、クライアントに対してレプリカ・クラスタを利用するように切替える必要があることを知らせる術がない。
書込みを認めないようにプライマリー・クラスタを変更
或る容量まではプライマリー・クラスタを利用できるにも拘らず、管理者がレプリカ・クラスタへのフェイルオーバーを決定した場合、先ず、プライマリー・クラスタを読出し専用であるとマーキングしなければならない。これはプライマリー・クラスタ管理者によって管理UIを介して手動で行なわれることが好ましい。クライアントがプライマリー・クラスタとレプリカ・クラスト双方における同じネームスペースに書き込むとネーミングの不一致を解決することが極めて困難になるから、手動で構成することが望ましい。
バックログを処理
データ・コピー(レプリケーション)プロセスの異なる段階でメタデータおよびデータが移動することが好ましい。即ち、故障が発生した場合、処理すべきメタデータがレプリカ・クラスタに存在することになる。もしプライマリー・クラスタを利用できなければ、このメタデータと連携するデータにアクセスできない。この場合、管理者が一旦フェイルオーバー(書込み可能にする)の意図を通報したら、すべてのメタデータをできるだけ迅速にしょりしなければならない。
書込み可能状態にレプリカを変更
書込み可能となるようにレプリカ・クラスタを切替えるプロセスはレプリカ・クラスタ管理者によって手動で行なわれることが好ましい。管理UIにおいて、レプリカ・クラスタ管理者は該当のリンクまたはリンク群を選択し、これらのリンクを介してコピーされるデータへの読出し/書込みアクセスの提供を開始する。これらのリンクによってサービスされるネームスペースに読出し/書込み可能としてマーキングされ、クラスタはそれぞれのネームスペースに対する書込みを受容れる。
クライアントをレプリカへリダイレクト
クライアント自身の、DNS中の、またはクライアントとクラスタの間のネットワークにおけるレプリカ・クラスタにクライアントをダイレクトすることができる。
リカバリ
リカバリはレプリカ・クラスタにおけるUI「リカバー」ボタンを介して管理者によって起動される。このボタンを作動させるには2つの主要条件を満たさねば成らない:プライマリー・クラスタ(マスター)ネームスペースが空であること(後述する部分リカバリを支援する必要がない);およびPCネームスペースが読出し専用モードであること。最悪の故障の場合、新しくインストールされるクラスタが必要であるから、プライマリー・クラスタ・ネームスペースは空である。ソース・クラスタの故障が重大でなければ、プライマリー・クラスタ・ネームスペースを空にしなければならない(部分的リカバリを支援する必要はない)。
部分的リカバリ
所与のクラスタ内に、1つのオーソリテーティブ・コピーが存在し、ゼロまたは多数のバックアップ・コピーが存在することがある。バックアップ・コピーの数は構成パラメータによって制御することができ、このパラメータは「許容故障点数(TPOF)とも呼称される。もしプライマリー・クラスタがTPOF+1を超えるノードを失えば、クラスタ上のすべてのデータを消去して完全に復元するには最適とは言えない。同様に、レプリカ・クラスタにTPOF+1の故障が発生すると、レプリカ全体を消去し、マスターを再コピースルには理想的ではない。いずれの場合も部分復旧から恩恵を受けることになる。
即ち、プライマリー・クラスタにTPOF+1の故障がある場合、完全な故障の際と同様にコピー・プロセス・フェイルオーバーが行なわれる。しかし、レプリカ・クラスタにTPOF+1の故障が発生した場合には、フェイルオーバーは行われない。両クラスタにTPOF+1の故障が発生すると、いずれのシステムもゲートウェイ・ロードを支援できないからフェイルオーバーは不可能である。この場合、それぞれの方向から1回ずつ部分的修理が2回相次いで行われる。この部分リカバリ・プロセスでリカバー可能な紛失データが特定され、適当な変更ログが形成され、必要なら、リカバー不能な紛失データに関して報告する。
コピー
コピー、リカバリ、およびフェイルバックの段階において、データ流れに対してバルク
・コピー・プロセスを実行することが好ましい。
バルク・コピーにはアーカイブへのデータ・ローディングにバッチング・アプローチを採用することが好ましい。ソース・クラスタではクラスタ領域ごとにプロセスが変更記述を集め、ターゲット・クラスタに向かって移動させる。それぞれの変更ログがターゲットに保存される時点で、システムはどのような変更をコピーすべきかを知る。このステップの後にソースが故障すると、システムはどのような変更が失われたかをも知る。プロセスはまたそれぞれの変更記述によって指摘されるデータをターゲット・クラスタに取込み、それぞれのログを「受容れた」としてマーキングする。この時点において、ログのコピーは完全に成功裡に行なわれる。換言すると、固定コンテンツ・データおよびメタデータがコピーされたことになる。このステップの後にソースが故障しても、データが失われることはない。プロセスはまた受容れた変更をターゲット・クラスタ中のデータベースにアップロードし、変更を「統合された」としてマーキングする。この時点において、コピーされた変更はターゲット・クラスタ中のすべてのゲートウェイを介して読出しアクセスに利用することができる。この時点でソースが故障しても、すべての変更を利用することができる。
バルク・コピー・プロセス中、コピー・プロセスのパイプラインの段階によっては特有の変更があり得る。つまり、これらの段階はアトミックではない。所与のコピー・プロセスにおいて、部分的にのみ完全な段階がある。即ち、或る変更はこの段階をクリアし、或る変更はクリアしない。段階ごとに要する時間に差があることが多い。先行の段階が完了する前に後続の段階がはじめることがあるが、先行の段階が完了するまでに後続の段階が完了することはできない。
バルク・コピー・プロセスには幾つかの挙動差がある。最初のコピー・プロセスは既に設定されているプライマリー・クラスタと新しいレプリカ・クラスタとの間で開始される。最高の優先度は先ずPCからRCにすべてのデータをコピーすることにある。追加のネームスペースを主宰し、コピーされたネームスペースに対する読出しアクセスを支援するレプリカの能力は、最初のコピー・プロセスをできる限り迅速に完了するように選択的に先送りすることができる。
正規のコピー・プロセスは連続的なプロセスである。メタデータおよびコンテンツ・データをプライマリー・クラスタからレプリカ・クラスタに安全にコピーすることが要点である。特に、コピーされたファイルはゲートウェイ読み出しアクセスに利用可能でなければならない。但し、この読出しアクセスの重要度は二次的であり、コピー・プロセスよりも後回しになってもよい。コピーされたファイルは故障の際にプライマリー・クラスタの修理に利用できることが重要である。修理のための利用もまたその重要度はプライマリー・クラスタからの最初のコピー・プロセスと比較すれば二次的である。プリマリー・クラスタの故障から修理開始まで遅れは許容される。
リカバリには、プライマリー・クラスタをネームスペース・オーソリティとしてできるだけ早く復旧することが重要である。ネームスペース・オーソリティとして、プライマリー・クラスタは読出しおよび書込みゲートウェイ・サポートの立場を取り戻すことができる。ネームスペース・オーソリティへの移行が尚早に行われた場合、ゲートウェイ読出し性能に問題が生じても許容できる。リカバリング・レプリカが全く新しいクラスタである場合、他のクラスタを使用する場合よりもリカバリに失敗するおそれがあり、これが最大の問題である。例えば、クラスタに追加のネームスペース・サポートを確立することは二次的な問題であり、リカバリング・ネームスペースがオーソリテーティブになるまで遅延してもよい。ゲートウェイ読出しアクセスのためのサポートを早期に確立することも書込みサポートと比較すれば二次的な問題である。読出しサポートの遅延が書き込みサポート
を加速すれば、読出しおよび書き込みゲートウェイ・アクセス・サポートが同時に確立される。
1回のバルク・コピー・プロセスがレプリケーションのすべての条件をサポートする。コピー・プロセス・シナリオに合わせて挙動細部を制御するには、バルク・コピーの2つの属性を規定することが好ましい。第1の属性は「インデックスなし」属性であり、最初のコピー・プロセスに採用することができ、大量のデータをコピーする場合のリカバリにも採用することができる。ターゲットが衝突の恐れがない(例えば、空の状態からスタート)状態であり、他のシステム・プロセスがメタデータ・アクセスを必要としない場合にこの属性を規定する。この場合、コピー・プロセスは随意にデータベース・インデックスを省き、すべてのメタデータ記録をロードしてから、インデックスを付加することができる。第2の属性は「メタデータ優先」属性であり、プライマリー・クラスタの状態復帰を急ぐ場合にこの属性を採用する。即ち、本発明の好ましい実施例において実行される「高速リカバリ」オプションがこれである。この属性を規定すれば、すべてのメタデータが(例えば、クラスタ・データベースへ)ロードされるや否や、プライマリー・クラスタへの固定コンテンツ返送(受信させるだけ)が始まったかどうかに関係なく、ネームスペースは直ちにオーソリテーティブになる。即ち、このオプションでは、関連のデータがローカル・クラスタにコピーされる前にメタデータをデータベースにロードすることができる。読み合わせを支援するため、(プライマリー・クラスタにおける)新しいリモート・データ表現がリカバリ中のリモート(レプリカ)クラスタのどの場所に利用できるデータが存在するかを示唆する。
図9は種々のプロセス状態およびバルク・ムーブ・プロセスにおけるソース・クラスタ900から送り先クラスタ902へのデータ・フローを示す。ソース・アーカイブのデータは「未コピー」の状態からスタートし、「メタデータをコピー」、「データをコピー」の段階を経て、最終的にはターゲット・クラスタにおいて「利用可能状態」となる。それぞれの移行段階はそれぞれのスタート状態にある1つまたは2つ以上のオブジェクトに対する単一のトランザクションとして行なわれる。尚、これらの状態におけるデータはオブジェクトではなく、オブジェクトへの変更である。好ましくは、バルク-ムーブ・プロセスはオブジェクトをコピースルのではなく、ソース・アーカイブからターゲット・アーカイブへの変更をコピーする。例えば、「削除」変更はソース・アーカイブにおいて行なわれた削除動作をターゲット・アーカイブにまで伝播するのに必要な情報だけを含む。「オブジェクト形成」変更は必然的に新しいオブジェクトを表現するのに必要なすべてのデータを含む。
図9に示す状態を以下に説明する。
「未コピー」:この状態でのデータ量はターゲット・クラスタにとって既知の時間によって制約される。ターゲット・クラスタはこのデータに関するその他の情報は全く持っていない。もしソース・クラスタが完全に故障すると、この段階でのデータは失われる。失われたデータは限られた時間に亘って記述されるはずであった部分だけである。
「メタデータ・コピー」:メタデータ属性の変化はターゲット・クラスタにコピーされている。これらの属性は変更のタイプ、変更されるオブジェクトの名称、所有者、団体、サイズ、ハッシュ値、その他のメタデータ特性を含む。「削除」のような変更はメタデータだけで表現される。これらのメタデータ・オンリーの変更はこの初期状態に達すれば成功裡にコピーされる。「オブジェクト形成」変更は、オブジェクト-コンテンツが未だ転送されていないからこと段階では不完全である。この時点でソース・クラスタが故障すると、「オブジェクト形成」変更は部分的に失われ;変更記述のためのメタデータは存続し、連携のファイル・コンテンツは失われる。
「データ・コピー」:この段階において、すべての変更を表現するのに必要なデータはすべてターゲット・クラスタにコピーされる。もしソース・クラスタが完全に故障しても、この段階までになされた変更はすべて完全にコピーされる。
「利用可能」:この段階でデータのコピー・プロセスは完了した。ターゲット・クラスタにアクセスするクライアントはこれらの変更を利用することができる。
ここで再び図9の状態図を参照してコピー・プロセスのさらなる詳細を説明する。これらの状態移行を実行する種々のプロセスは図示の通りであり、ソフトウェアで容易に実行することができる。ボックスはプロセスを示す。これらのボックスは一括してグループ化されており、プロセスはクラスタ中の単一ノードにおいて実行される。尚、クラスタは好ましくはメタデータ・オブジェクトの形でメタデータを組織化し、所与のメタデータへのアクセスを可能にするメタデータ管理システムを含む。それぞれのメタデータは独自のネームを有し、メタデータ・オブジェクトは、多くの場合、領域として組織されている。このようなメタデータ管理システムに関する詳細は参考のため本願明細書にも組み込んだ米国特許出願第11/190,402号に開示されている。
先ず、ソース・クラスタにおいて実行される変更ログ回収プロセスを介して変更が特定される。ソース・クラスタでは変更ログの保存は行なわれない。次いで、変更ログが変更ログ・メッセージ・レシーバによって受信され、不可視ファイルとして保存される。変更ログ通信が適度にランダムなら、ローカル・ストレージ・マネジャー(SM)が変更ログを保存する。不可視ファイルには変更ログのタイプ(完全またはリモート、ソース・クラスタ、ドメイン、および時間)をラベリングする。不可視ファイルを保存した後、変更ログ・メッセージ・レシーバは送信側に対して受信を確認する。変更ログが「完全」でなければ、ローカル・バッチ・ビルダーでバッチ・ビルド・プロセスが起動される。
リモート変更ログは下記のサブ-ステップに従ってローカル変更ログに変換される。第1のステップとして、バッチ・ビルダーがリモート変更ログを開き、構文解析する。それぞれの変更がチェックされる。変更記述が完全なら、そのままバッチ・ゲートウェイへ送られる。ソース・クラスタからデータを取込む必要があるような変更記述なら、リモート・ソース転送可能なデータを形成してバッチ・ゲートウェイへ転送する。第2に、形成されたリモート・ソース転送可能なデータが検索コンテンツを変換してインライン化し、有効化する場合がある。このファイルが利用できる外部ファイル・ハッシュが存在しなければ、算出されたハッシュ値をターゲット・クラスタにおいて使用することができる。少なくとも、変換プロセスはソースからの内部ファイル・ハッシュ値をターゲット・ストレージ・マネジャーによる新しい内部ファイル・ハッシュ値と相互照合する。第3に、この場合、バッチ・ゲートウェイが直接ローカル・ノードにおいてコールされる。変更ログ毎に新しいバッチが形成される。次いで、ストリーム・バッチ・メカニズムがローカル変更ログを構成する。ローカル変更ログはリモート変更ログから時間とドメインの情報を受け継ぐ。リモート変更ログが正しくローカル変更ログに変換されたら、リモート変更ログが削除される。何らかの故障が発生しても、リモート変更ログは変化しない。そこで、再試行が行なわれる。
上記のようにリモート変更ログが変換されると、ターゲット・クラスタのリーダー・ノードにおいて作用するシングル・バッチ・マスターが不可視ファイルに記憶されているローカル変更ログを見つける。これらの不可視ファイルに記憶されているローカル変更ログは下記のように仕分けされる:すべてのドメインが安全に保存されるまで(即ち、プライマリー・クラスタが死を宣告されるまで)所与の時間に亘って如何なる変更も処理されない;いずれかのドメインについて次の時間帯に変更ログが処理されるまでに所与の時間に
亘ってすべてのドメインに関してローカル変更ログが処理される。1つの時間帯において変更ログ処理が行われるドメインの順序は任意である。
次いで、バッチ・マスターは個々の不可視ファイルに合わせたサイズのバッチを集合させる。1つの不可視ファイルがバッチにまたがって分割されることはない。バッチ・マスターは個々のファイルに含まれる変更ログを構文解析し、カレント・レジョン・マップに従ってターゲット・クラスタ領域に亘って記述項を分割する。それぞれの領域内にバッチ・ランナーが形成され、変更記述を受信し、コミットを処理する。バッチ・ランナー内で、バッチ・セグメントが不可視ファイル境界に対応する変更を保持する。コミットを実行する時、それぞれのバッチ・ランナーはバッチ・セグメントを走査し、必要な行を挿入するようにデータベースに指令する。これらの指令は局所的に実行され、メッセージとしてすべてのバックアップ領域2送信され、実行される。これらの指令は一度に発信される。それぞれのバッチ・セグメントは指令を2通りの形式のいずれか1つの形式で発信する。そちらの形を使用するかは領域において変更ログの作用が成功したか失敗したかを示唆するマーカー・ファイルに問い合わせることによって決定される。指令の2通りの形式を以下に説明する:
「確実に新しい」:最初に新しいと確証された変更が本当に新しければ(データベース中に存在しないなら)、指令は最適の形を取ることができる。
「必要なら変更」:最初に新しいと確証された変更がオーソリテーティブ領域でもバックアップ領域でも新しくない可能性があれば、「インサート-イフ-アブセントsql」の指令が必要である。
バッチが成功裡にコミットすると、使用されている不可視ファイルがすべて削除される。バッチ実行の一部に失敗があれば、使用されている不可視ファイルすべてがそのまま残される。以後、再試行して無期限にこれらのファイルを再訪することになる。コミットはシステム全体に亘ってアトミックではないから、バッチ・マスターによる変更ログのリプレイは許容しなければならない。上記マーカー・ファイルによって、それぞれの領域エレメント(バックアップまたはオーソリテーティブ)に対するトランザクションは1回だけで済む。
上記バルク・コピー・アプローチはコピー・オペレーションを2段階に分離する:即ち、先ずはバルク・メタデータ、次いでデータである。コピー・プロセスおよびリカバリ・プロセスにはこのバルク-ムーブを利用することが好ましい。メタデータ優先アプローチには重大な利点がある。即ち、非同期的コピー・プロセスは、ソース・クラスタが故障した場合、ある程度のデータ損失を伴う。ソース側で発生したが未だターゲット側には伝えられていない変更は失われる。メタデータ優先アプローチでは、データ損失が軽減され、容易に管理される。メタデータを先ず送信するから、メタデータ変更の損失は比較的小さい。メタデータの伝送は(はるかに大量の、ネットワークにかける負担も遥かに大きい)データ伝送によって妨げられない。従って、ソース・クラスタが完全にダウンした場合、ターゲット・クラスタは詳細な損失を報告することができる。例えば、ターゲット・クラスタは下記のようなデータを示す報告を作成することができる:ソース・クラスタからの変更がすべて失われた故障(A)までの時間;およびデータ変更は失われたがメタデータ変更は失われなかった故障(B)までの時間。例えば、この時間中に削除変更は失われない。「書込みオブジェクト」変更は一部が失われる。オブジェクトのネームおよび属性は失われないが、オブジェクトのコンテンツは失われる。報告はソース・クラスタにおいてかきこまれたがそのデータはコピーされなかったオブジェクト(ネーム、所有者、サイズ、などと共に)の完全リストをも含む。これらの変更はすべて時間(B)内に失われる。尚、AはBよりも遥かに小さく、Bはオブジェクト別コピー・ストラテジーの場合の損失ほど大きくはない(恐らくは、より小さい)。失われたファイルはネームおよびサイズが
判っており、ファイルは故障直前に形成されたものであるから、この詳細な報告を利用することによって企業内の異なるシステムに生き残っているかもしれないこれらのファイルの別のコピーを識別し、見つけ、手動でリカバーできる可能性がある。
メタデータ優先ストラテジーにはほかにも利点がある。帯域幅を制約される構成では妥協を必要とすることが多い。最初にコピーされるから、最新のメタエータは最新のファイル・コンテンツよりも優先される。このストラテジーをうまく実行すれば、上記時間(A)を数秒に短縮することができる。足止めされるデータが蒙る犠牲はメタデータのサイズに正比例する。(データ変更とは異なり)メタデータの変更はその伝送のために必要な帯域幅は遥かに小さいから、せいぜい1メガビット程度の犠牲に止まる。
本発明の幾つかの実施例における特定のオペレーション順序を説明したが、この順序は飽くまでも例であり、実施例によっては、オペレーションをことなる順序で実行するか、オペレーションを組み合わせるか、オーバーラップさせるなど、種々の実施形態が可能である。特定の構成要件、構造、または特性を含む実施例について説明したが、必ずしもこれら特定の構成要件、構造および特性を含まなくてもよい。
方法またはプロセスに関して本発明を説明したが、本発明はオペレーションを実行するための装置にも係わる。この装置は必要な目的のために特別に構成されてもよいが、コンピュータに内蔵されるプログラムによって選択的に作用させるか、または再構成できる汎用コンピュータとして実施することもできる。このようなコンピュータ・プログラムを、それぞれがコンピュータ・システム・バスに接続されるコンピュータ可読記憶媒体、例えば、オプチカル・ディスク、CD−ROM,磁気光学ディスク、読出し専用メモリ(ROM)、ランダム・アクセス・メモリ(RAM)、のようなディスク、磁気または光学カードのほか、電子指令の記憶に適した媒体に記憶させればよい。
システムの所与のコンポーネントを別々に説明したが、当業者には明白なように、機能の幾つかを所与の構成、プログラム・シーケンス、コード部分、などにおいて組み合わせたり、共用したりすることも可能である。
ここに使用する語「ロケーション」は必ずしも「地理的な」ロケーションに限定されない。クラスタは、多くの場合、地理的に互いに離れているが、これは必須条件ではない。プライマリー・クラスタを都市のデータ・センターに配置し、レプリカ・クラスタを同じ都市の別のデータ・センターに配置することができる。また、2つのクラスタを1つのデータ・センター内の異なる場所に配置することもできる。
「固定コンテンツ」のアーカイブに関して本発明を説明したが、本発明はこれに限定されるものではない。ここに記述した技術はコンテンツに変更を加えることを可能にするストレージ・システムにも適用することができる。
以上に説明した本発明の範囲は後記する請求項によって定義される。

Claims (11)

  1. それぞれのロケーションにおいて複数の独立ノードがネットワーク接続されてクラスタを構成し、クラスタを構成するそれぞれのノードが固定コンテンツ・データおよびこれと連携するメタデータのオブジェクト-ベースのストレージを提供するアプリケーションのインスタンスを実行するように一連の分散ロケーションにまたがって有効なストレージ方法であって、
    第1クラスタと第2クラスタとの間に連携関係を構成し;
    第1クラスタから第2クラスタに第1クラスタの固定コンテンツおよびメタデータをコピーし;
    第1クラスタに関連する故障が発生すると、第1クラスタのクライアントを第2クラスタへリダイレクトし;
    第1クラスタが修理または取替えられ、第2クラスタからメタデータを受信すると、第2クラスタから固定コンテンツが転送されたかどうかに関係なく、修理または取替えられた第1クラスタが第1クラスタのクライアントにサービスする権限を取り戻すステップから成ることを特徴とする前記ストレージ方法。
  2. コピー・プロセスのステップにおいて、固定コンテンツ・データに先立って第1クラスタのメタデータが第1クラスタから第2クラスタへ転送させる請求項1に記載の保管方法。
  3. 第1クラスタが修理または取替えられると、固定コンテンツ・データよりも先に第1クラスタのメタデータが第2クラスタから修理または取替えられた第1クラスタへ転送される請求項1に記載の保管方法。
  4. メタデータがあい2クラスタから修理または取替えられた第1クラスタへバルク転送プロセスによって転送される請求項3に記載の保管方法。
  5. 修理または取替えられた第1クラスタに固定コンテンツ・データが復旧したら、修理または取替えられた第1クラスタにおけるノードから固定コンテンツ・データを得るため、クライアントを第1クラスタへダイレクトするステップをも含む請求項1に記載の保管方法。
  6. 第1クラスタがメタデータおよびコンテンツ・データを第2クラスタにコピーする分散型ストレージ・システムにおいて、
    第1クラスタに関連する故障が発生すると、第1クラスタのクライアントを第2クラスタへリダイレクトし;
    修理または取替えられた第1クラスタに対してコンテンツ・データの転送に先立ってメタデータをバルク転送し、メタデータのバルク転送が完了すると同時に、修理または取替えられた第1クラスタが第1クラスタのクライアントにサービスする権限を取り戻すステップから成る方法。
  7. メタデータのバルク転送に続いて、修理または取替えられた第1クラスタにコンテンツ・データを返還するステップをも含む請求項6に記載の保管方法。
  8. 修理または取替えられた第1クラスタにコンテンツ・データが返還されるまで、クライアントのリクエストに応答して、第1クラスタにおいて読出しが行なわれ、第2クラスタにおいて関連のコンテンツ検索が行われる請求項7に記載の保管方法。
  9. メタデータおよびコンテンツ・データを第1クラスタがオーソリテーティブであるネー
    ムスペースと連携させる請求項6に記載の保管方法。
  10. 第1および第2クラスタが複数の独立ノードがネットワーク接続されており、それぞれのノードがそれぞれのノードが固定コンテンツ・データおよびこれと連携するメタデータのオブジェクト-ベースのストレージを提供するアプリケーションのインスタンスを実行する請求項6に記載の保管方法。
  11. コンテンツ・データが固定コンテンツ・データである請求項10に記載の保管方法。
JP2009536477A 2006-11-08 2007-11-08 プライマリー・クラスタの高速リカバリ Active JP5260536B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US85772806P 2006-11-08 2006-11-08
US60/857,728 2006-11-08
PCT/US2007/084053 WO2008058230A2 (en) 2006-11-08 2007-11-08 Fast primary cluster recovery

Publications (2)

Publication Number Publication Date
JP2010509686A true JP2010509686A (ja) 2010-03-25
JP5260536B2 JP5260536B2 (ja) 2013-08-14

Family

ID=39365367

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009536477A Active JP5260536B2 (ja) 2006-11-08 2007-11-08 プライマリー・クラスタの高速リカバリ

Country Status (5)

Country Link
US (2) US7917469B2 (ja)
EP (1) EP2092442B1 (ja)
JP (1) JP5260536B2 (ja)
AT (1) ATE541263T1 (ja)
WO (1) WO2008058230A2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013509656A (ja) * 2009-10-30 2013-03-14 ヒタチデータ・システムズ・コーポレイション 複製による、区分化されたコンテンツプラットフォーム内の固定コンテンツストレージ
JP2013509657A (ja) * 2009-10-30 2013-03-14 ヒタチデータ・システムズ・コーポレイション 名前空間を用いた、区分化されたコンテンツプラットフォーム内の固定コンテンツストレージ
JP2014507028A (ja) * 2011-01-27 2014-03-20 インターナショナル・ビジネス・マシーンズ・コーポレーション コンピュータ・システムにおけるアプリケーション処理の管理のための方法、システム、コンピュータ・プログラム
JP2014523024A (ja) * 2011-06-23 2014-09-08 アリババ・グループ・ホールディング・リミテッド 増分データの抽出
JP2017515212A (ja) * 2014-03-31 2017-06-08 アマゾン・テクノロジーズ・インコーポレーテッド 拡張縮小可能なファイル格納サービス
JP2017534133A (ja) * 2014-11-06 2017-11-16 華為技術有限公司Huawei Technologies Co.,Ltd. 分散ストレージ及びレプリケーションシステム、並びに方法
JP2019509579A (ja) * 2016-09-05 2019-04-04 株式会社日立製作所 情報処理システム

Families Citing this family (156)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005043323A2 (en) * 2003-10-27 2005-05-12 Archivas, Inc. Policy-based management of a redundant array of independent nodes
US7975109B2 (en) 2007-05-30 2011-07-05 Schooner Information Technology, Inc. System including a fine-grained memory and a less-fine-grained memory
US7805632B1 (en) * 2007-09-24 2010-09-28 Net App, Inc. Storage system and method for rapidly recovering from a system failure
US20090106331A1 (en) * 2007-10-22 2009-04-23 General Electric Company Dynamic two-stage clinical data archiving and retrieval solution
US8229945B2 (en) 2008-03-20 2012-07-24 Schooner Information Technology, Inc. Scalable database management software on a cluster of nodes using a shared-distributed flash memory
US8370679B1 (en) * 2008-06-30 2013-02-05 Symantec Corporation Method, apparatus and system for improving failover within a high availability disaster recovery environment
US8229974B2 (en) * 2008-08-05 2012-07-24 Emc Corporation Mechanisms to support fine-grain namespacing
US8341190B2 (en) * 2008-08-05 2012-12-25 Emc Corporation Mechanisms to support multiple name space aware projects
JP5625243B2 (ja) * 2009-02-26 2014-11-19 日本電気株式会社 情報処理システム、ディザスタリカバリ方法及びディザスタリカバリプログラム
US8307003B1 (en) 2009-03-31 2012-11-06 Amazon Technologies, Inc. Self-service control environment
US9207984B2 (en) 2009-03-31 2015-12-08 Amazon Technologies, Inc. Monitoring and automatic scaling of data volumes
US9705888B2 (en) 2009-03-31 2017-07-11 Amazon Technologies, Inc. Managing security groups for data instances
US8060792B2 (en) 2009-03-31 2011-11-15 Amazon Technologies, Inc. Monitoring and automated recovery of data instances
US8332365B2 (en) 2009-03-31 2012-12-11 Amazon Technologies, Inc. Cloning and recovery of data volumes
US8713060B2 (en) * 2009-03-31 2014-04-29 Amazon Technologies, Inc. Control service for relational data management
US8135748B2 (en) * 2009-04-10 2012-03-13 PHD Virtual Technologies Virtual machine data replication
US8112659B2 (en) * 2009-06-19 2012-02-07 Oracle International Corporation Reducing recovery time for business organizations in case of disasters
US9128953B1 (en) * 2009-07-21 2015-09-08 Emc Corporation Asynchronous multi-node filesystem coordinated replication
US9135283B2 (en) 2009-10-07 2015-09-15 Amazon Technologies, Inc. Self-service configuration for data environment
US8074107B2 (en) 2009-10-26 2011-12-06 Amazon Technologies, Inc. Failover and recovery for replicated data instances
US8335765B2 (en) 2009-10-26 2012-12-18 Amazon Technologies, Inc. Provisioning and managing replicated data instances
US8676753B2 (en) 2009-10-26 2014-03-18 Amazon Technologies, Inc. Monitoring of replicated data instances
US8707082B1 (en) 2009-10-29 2014-04-22 Symantec Corporation Method and system for enhanced granularity in fencing operations
US8533161B2 (en) * 2009-10-30 2013-09-10 Hitachi Data Systems Corporation Fixed content storage within a partitioned content platform, with disposition service
US8566290B2 (en) * 2009-10-30 2013-10-22 Hitachi Data Systems Corporation Fixed content storage within a partitioned content platform using namespaces, with versioning
US9098334B2 (en) * 2010-01-15 2015-08-04 Oracle International Corporation Special values in oracle clusterware resource profiles
US20110179173A1 (en) * 2010-01-15 2011-07-21 Carol Colrain Conditional dependency in a computing cluster
US9207987B2 (en) * 2010-01-15 2015-12-08 Oracle International Corporation Dispersion dependency in oracle clusterware
US9069619B2 (en) * 2010-01-15 2015-06-30 Oracle International Corporation Self-testable HA framework library infrastructure
US8949425B2 (en) * 2010-01-15 2015-02-03 Oracle International Corporation “Local resource” type as a way to automate management of infrastructure resources in oracle clusterware
US9164554B2 (en) 2010-04-12 2015-10-20 Sandisk Enterprise Ip Llc Non-volatile solid-state storage system supporting high bandwidth and random access
US8868487B2 (en) 2010-04-12 2014-10-21 Sandisk Enterprise Ip Llc Event processing in a flash memory-based object store
US8677055B2 (en) 2010-04-12 2014-03-18 Sandisk Enterprises IP LLC Flexible way of specifying storage attributes in a flash memory-based object store
US9047351B2 (en) 2010-04-12 2015-06-02 Sandisk Enterprise Ip Llc Cluster of processing nodes with distributed global flash memory using commodity server technology
US8671074B2 (en) * 2010-04-12 2014-03-11 Microsoft Corporation Logical replication in clustered database system with adaptive cloning
US8856593B2 (en) 2010-04-12 2014-10-07 Sandisk Enterprise Ip Llc Failure recovery using consensus replication in a distributed flash memory system
US8181061B2 (en) 2010-04-19 2012-05-15 Microsoft Corporation Memory management and recovery for datacenters
US8996611B2 (en) 2011-01-31 2015-03-31 Microsoft Technology Licensing, Llc Parallel serialization of request processing
US8447833B2 (en) 2010-04-19 2013-05-21 Microsoft Corporation Reading and writing during cluster growth phase
US9813529B2 (en) 2011-04-28 2017-11-07 Microsoft Technology Licensing, Llc Effective circuits in packet-switched networks
US8438244B2 (en) 2010-04-19 2013-05-07 Microsoft Corporation Bandwidth-proportioned datacenters
US9454441B2 (en) 2010-04-19 2016-09-27 Microsoft Technology Licensing, Llc Data layout for recovery and durability
US9170892B2 (en) 2010-04-19 2015-10-27 Microsoft Technology Licensing, Llc Server failure recovery
US8533299B2 (en) 2010-04-19 2013-09-10 Microsoft Corporation Locator table and client library for datacenters
US20110270802A1 (en) * 2010-04-30 2011-11-03 International Business Machines Corporation Method for controlling changes of replication directions in a multi-site disaster recovery environment for high available application
US11726955B2 (en) 2010-06-19 2023-08-15 Hewlett Packard Enterprise Development Lp Methods and apparatus for efficient container location database snapshot operation
US9323775B2 (en) 2010-06-19 2016-04-26 Mapr Technologies, Inc. Map-reduce ready distributed file system
US8954385B2 (en) 2010-06-28 2015-02-10 Sandisk Enterprise Ip Llc Efficient recovery of transactional data stores
US8782434B1 (en) 2010-07-15 2014-07-15 The Research Foundation For The State University Of New York System and method for validating program execution at run-time
US8700571B2 (en) * 2010-09-24 2014-04-15 Hitachi Data Systems Corporation System and method for optimizing protection levels when replicating data in an object storage system
US8621260B1 (en) * 2010-10-29 2013-12-31 Symantec Corporation Site-level sub-cluster dependencies
US9329952B2 (en) 2010-12-07 2016-05-03 International Business Machines Corporation Reducing application downtime during failover
CN103052944B (zh) 2010-12-14 2016-10-12 株式会社日立制作所 信息处理系统中的故障恢复方法和信息处理系统
US20120159234A1 (en) * 2010-12-15 2012-06-21 Microsoft Corporation Providing resilient services
US8694733B2 (en) 2011-01-03 2014-04-08 Sandisk Enterprise Ip Llc Slave consistency in a synchronous replication environment
US8712975B2 (en) 2011-03-08 2014-04-29 Rackspace Us, Inc. Modification of an object replica
US8554951B2 (en) 2011-03-08 2013-10-08 Rackspace Us, Inc. Synchronization and ordering of multiple accessess in a distributed system
US8510267B2 (en) 2011-03-08 2013-08-13 Rackspace Us, Inc. Synchronization of structured information repositories
US8538926B2 (en) 2011-03-08 2013-09-17 Rackspace Us, Inc. Massively scalable object storage system for storing object replicas
US9026499B1 (en) 2011-03-31 2015-05-05 Emc Corporation System and method for recovering file systems by restoring partitions
US9990253B1 (en) * 2011-03-31 2018-06-05 EMC IP Holding Company LLC System and method for recovering file systems without a replica
US8671079B2 (en) 2011-04-05 2014-03-11 International Business Machines Corporation System and method for hierarchical recovery of a cluster file system
US8874515B2 (en) 2011-04-11 2014-10-28 Sandisk Enterprise Ip Llc Low level object version tracking using non-volatile memory write generations
US20120311375A1 (en) * 2011-06-01 2012-12-06 Microsoft Corporation Redirecting requests to secondary location during temporary outage
US8850261B2 (en) 2011-06-01 2014-09-30 Microsoft Corporation Replaying jobs at a secondary location of a service
US10585766B2 (en) 2011-06-06 2020-03-10 Microsoft Technology Licensing, Llc Automatic configuration of a recovery service
US8843502B2 (en) 2011-06-24 2014-09-23 Microsoft Corporation Sorting a dataset of incrementally received data
US8743680B2 (en) 2011-08-12 2014-06-03 International Business Machines Corporation Hierarchical network failure handling in a clustered node environment
US8621603B2 (en) 2011-09-09 2013-12-31 Lsi Corporation Methods and structure for managing visibility of devices in a clustered storage system
US8719417B1 (en) * 2011-10-14 2014-05-06 Google Inc. Resource allocation in distributed systems
US8856583B1 (en) * 2012-01-20 2014-10-07 Google Inc. Failover operation on a replicated distributed database system while maintaining access invariance
US9135064B2 (en) 2012-03-07 2015-09-15 Sandisk Enterprise Ip Llc Fine grained adaptive throttling of background processes
US8583840B1 (en) 2012-04-25 2013-11-12 Lsi Corporation Methods and structure for determining mapping information inconsistencies in I/O requests generated for fast path circuits of a storage controller
US8799746B2 (en) 2012-06-13 2014-08-05 Caringo, Inc. Erasure coding and replication in storage clusters
US9104560B2 (en) 2012-06-13 2015-08-11 Caringo, Inc. Two level addressing in storage clusters
US8762353B2 (en) 2012-06-13 2014-06-24 Caringo, Inc. Elimination of duplicate objects in storage clusters
US9619256B1 (en) * 2012-06-27 2017-04-11 EMC IP Holding Company LLC Multi site and multi tenancy
US9904689B2 (en) * 2012-07-13 2018-02-27 Facebook, Inc. Processing a file system operation in a distributed file system
US9607001B2 (en) * 2012-07-13 2017-03-28 Facebook, Inc. Automated failover of a metadata node in a distributed file system
US8805855B2 (en) 2012-08-17 2014-08-12 International Business Machines Corporation Efficiently storing and retrieving data and metadata
US9778856B2 (en) 2012-08-30 2017-10-03 Microsoft Technology Licensing, Llc Block-level access to parallel storage
US9063721B2 (en) 2012-09-14 2015-06-23 The Research Foundation For The State University Of New York Continuous run-time validation of program execution: a practical approach
US10394611B2 (en) * 2012-11-26 2019-08-27 Amazon Technologies, Inc. Scaling computing clusters in a distributed computing system
US9086991B2 (en) * 2013-02-19 2015-07-21 Infinidat Ltd. Solid state drive cache recovery in a clustered storage system
WO2014133494A1 (en) * 2013-02-27 2014-09-04 Hitachi Data Systems Corporation Multiple collections of user-defined metadata for self-describing objects
WO2014134630A1 (en) 2013-03-01 2014-09-04 RedOwl Analytics, Inc. Modeling social behavior
US9251008B2 (en) * 2013-03-14 2016-02-02 International Business Machines Corporation Client object replication between a first backup server and a second backup server
US11030055B2 (en) * 2013-03-15 2021-06-08 Amazon Technologies, Inc. Fast crash recovery for distributed database systems
US9684571B2 (en) * 2013-05-01 2017-06-20 Netapp, Inc. Namespace mirroring in an expandable storage volume
US9110864B2 (en) * 2013-06-25 2015-08-18 International Business Machines Corporation Fault tolerance solution for stateful applications
JP6208860B2 (ja) 2013-07-02 2017-10-04 ヒタチ データ システムズ エンジニアリング ユーケー リミテッドHitachi Data Systems Engineering Uk Limited 仮想化されたファイル・システムのマイグレーションのための方法および装置、仮想化されたファイル・システムのマイグレーションのためのデータ・ストレージ・システム、ならびにデータ・ストレージ・システム内で使用するためのファイル・サーバ
US9460097B2 (en) 2013-07-02 2016-10-04 Hitachi Data Systems Engineering UK Limited Method and apparatus for migration of a virtualized file system, data storage system for migration of a virtualized file system, and file server for use in a data storage system
CN105593804B (zh) 2013-07-02 2019-02-22 日立数据系统工程英国有限公司 用于文件系统虚拟化的方法和设备、用于文件系统虚拟化的数据存储系统、以及用于数据存储系统的文件服务器
US11422907B2 (en) 2013-08-19 2022-08-23 Microsoft Technology Licensing, Llc Disconnected operation for systems utilizing cloud storage
US9577910B2 (en) 2013-10-09 2017-02-21 Verisign, Inc. Systems and methods for configuring a probe server network using a reliability model
US9264494B2 (en) * 2013-10-21 2016-02-16 International Business Machines Corporation Automated data recovery from remote data object replicas
EP3066569B1 (en) * 2013-11-04 2021-05-26 Amazon Technologies, Inc. Centralized networking configuration in distributed systems
US10002011B2 (en) 2013-11-04 2018-06-19 Amazon Technologies, Inc. Centralized networking configuration in distributed systems
US9712390B2 (en) 2013-11-04 2017-07-18 Amazon Technologies, Inc. Encoding traffic classification information for networking configuration
TWI514250B (zh) * 2013-11-18 2015-12-21 Synology Inc 用來管理一儲存系統之方法與裝置以及計算機程式產品
US9674042B2 (en) 2013-11-25 2017-06-06 Amazon Technologies, Inc. Centralized resource usage visualization service for large-scale network topologies
US9647904B2 (en) 2013-11-25 2017-05-09 Amazon Technologies, Inc. Customer-directed networking limits in distributed systems
US10169440B2 (en) * 2014-01-27 2019-01-01 International Business Machines Corporation Synchronous data replication in a content management system
US9798631B2 (en) 2014-02-04 2017-10-24 Microsoft Technology Licensing, Llc Block storage by decoupling ordering from durability
US9280432B2 (en) * 2014-03-21 2016-03-08 Netapp, Inc. Providing data integrity in a non-reliable storage behavior
US9251017B2 (en) 2014-03-25 2016-02-02 International Business Machines Corporation Handling failed cluster members when replicating a database between clusters
US9317380B2 (en) * 2014-05-02 2016-04-19 International Business Machines Corporation Preserving management services with self-contained metadata through the disaster recovery life cycle
EP3149606B1 (en) * 2014-05-30 2019-05-08 Hitachi Vantara Corporation Metadata favored replication in active topologies
CN106462612A (zh) 2014-07-01 2017-02-22 萨思学会有限公司 用于容错通信的系统和方法
US9483311B2 (en) 2014-09-15 2016-11-01 International Business Machines Corporation Logical data shuffling
US20160100004A1 (en) 2014-10-06 2016-04-07 International Business Machines Corporation Data replication across servers
US9838477B2 (en) 2014-10-30 2017-12-05 Netapp, Inc. Techniques for storing and distributing metadata among nodes in a storage cluster system
US10353918B2 (en) * 2014-11-07 2019-07-16 Amobee, Inc. High availability and disaster recovery in large-scale data warehouse
US10185637B2 (en) 2015-02-16 2019-01-22 International Business Machines Corporation Preserving management services with distributed metadata through the disaster recovery life cycle
US10027559B1 (en) 2015-06-24 2018-07-17 Amazon Technologies, Inc. Customer defined bandwidth limitations in distributed systems
US10977208B2 (en) 2015-09-25 2021-04-13 Micro Focus Llc Setup file system without editing kernel code
US10430283B1 (en) * 2015-09-30 2019-10-01 EMC IP Holding Company LLC Intelligent data dissemination
KR101758558B1 (ko) * 2016-03-29 2017-07-26 엘에스산전 주식회사 에너지 관리 서버 및 그를 갖는 에너지 관리 시스템
US10496498B1 (en) 2017-03-31 2019-12-03 Levyx, Inc. Systems and methods for rapid recovery from failure in distributed systems based on zoning pairs
US10997216B1 (en) * 2017-04-18 2021-05-04 United Services Automobile Association (Usaa) Systems and methods for centralized database cluster management
US20180309826A1 (en) * 2017-04-24 2018-10-25 EITR Systems, Inc. Fault-tolerant storage system using an alternate network
US11888859B2 (en) 2017-05-15 2024-01-30 Forcepoint Llc Associating a security risk persona with a phase of a cyber kill chain
US10999296B2 (en) 2017-05-15 2021-05-04 Forcepoint, LLC Generating adaptive trust profiles using information derived from similarly situated organizations
US10838832B2 (en) * 2017-07-26 2020-11-17 Arris Enterprises Llc Cluster failover to avoid network partitioning
US10318729B2 (en) 2017-07-26 2019-06-11 Forcepoint, LLC Privacy protection during insider threat monitoring
CN107506262A (zh) * 2017-08-18 2017-12-22 郑州云海信息技术有限公司 一种高性能集群用户系统备份与恢复的方法及装置
US10700711B1 (en) 2017-11-03 2020-06-30 Caringo Inc. Multi-part upload and editing of erasure-coded objects
US11314787B2 (en) 2018-04-18 2022-04-26 Forcepoint, LLC Temporal resolution of an entity
US10949428B2 (en) 2018-07-12 2021-03-16 Forcepoint, LLC Constructing event distributions via a streaming scoring operation
US11755584B2 (en) 2018-07-12 2023-09-12 Forcepoint Llc Constructing distributions of interrelated event features
US11810012B2 (en) 2018-07-12 2023-11-07 Forcepoint Llc Identifying event distributions using interrelated events
US11436512B2 (en) 2018-07-12 2022-09-06 Forcepoint, LLC Generating extracted features from an event
US11025638B2 (en) 2018-07-19 2021-06-01 Forcepoint, LLC System and method providing security friction for atypical resource access requests
US11811799B2 (en) 2018-08-31 2023-11-07 Forcepoint Llc Identifying security risks using distributions of characteristic features extracted from a plurality of events
US11025659B2 (en) 2018-10-23 2021-06-01 Forcepoint, LLC Security system using pseudonyms to anonymously identify entities and corresponding security risk related behaviors
US11171980B2 (en) 2018-11-02 2021-11-09 Forcepoint Llc Contagion risk detection, analysis and protection
US10936452B2 (en) * 2018-11-14 2021-03-02 International Business Machines Corporation Dispersed storage network failover units used to improve local reliability
US11055010B2 (en) * 2019-09-05 2021-07-06 Microsoft Technology Licensing, Llc Data partition migration via metadata transfer and access attribute change
US10719517B1 (en) * 2019-12-18 2020-07-21 Snowflake Inc. Distributed metadata-based cluster computing
US11223646B2 (en) 2020-01-22 2022-01-11 Forcepoint, LLC Using concerning behaviors when performing entity-based risk calculations
US11630901B2 (en) 2020-02-03 2023-04-18 Forcepoint Llc External trigger induced behavioral analyses
US11080109B1 (en) 2020-02-27 2021-08-03 Forcepoint Llc Dynamically reweighting distributions of event observations
US11836265B2 (en) 2020-03-02 2023-12-05 Forcepoint Llc Type-dependent event deduplication
US11429697B2 (en) 2020-03-02 2022-08-30 Forcepoint, LLC Eventually consistent entity resolution
US11080032B1 (en) 2020-03-31 2021-08-03 Forcepoint Llc Containerized infrastructure for deployment of microservices
US11360866B2 (en) * 2020-04-14 2022-06-14 International Business Machines Corporation Updating stateful system in server cluster
US11568136B2 (en) 2020-04-15 2023-01-31 Forcepoint Llc Automatically constructing lexicons from unlabeled datasets
US11516206B2 (en) 2020-05-01 2022-11-29 Forcepoint Llc Cybersecurity system having digital certificate reputation system
US11544390B2 (en) 2020-05-05 2023-01-03 Forcepoint Llc Method, system, and apparatus for probabilistic identification of encrypted files
US11895158B2 (en) 2020-05-19 2024-02-06 Forcepoint Llc Cybersecurity system having security policy visualization
US11507507B2 (en) * 2020-07-24 2022-11-22 Dell Products L.P. System and method of backing up data from a volatile memory medium to a non-volatile memory medium
US11704387B2 (en) 2020-08-28 2023-07-18 Forcepoint Llc Method and system for fuzzy matching and alias matching for streaming data sets
US11190589B1 (en) 2020-10-27 2021-11-30 Forcepoint, LLC System and method for efficient fingerprinting in cloud multitenant data loss prevention
US11907085B2 (en) * 2021-03-03 2024-02-20 Jpmorgan Chase Bank, N.A. System and method for implementing a smart failover module
US20230259842A1 (en) * 2022-02-16 2023-08-17 Microsoft Technology Licensing, Llc System and method for on-demand launching of an interface on a compute cluster
US20230409239A1 (en) * 2022-06-21 2023-12-21 Micron Technology, Inc. Efficient command fetching in a memory sub-system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6014669A (en) * 1997-10-01 2000-01-11 Sun Microsystems, Inc. Highly-available distributed cluster configuration database
US20010008019A1 (en) * 1998-04-17 2001-07-12 John D. Vert Method and system for transparently failing over application configuration information in a server cluster
US20050120025A1 (en) * 2003-10-27 2005-06-02 Andres Rodriguez Policy-based management of a redundant array of independent nodes
US7124320B1 (en) * 2002-08-06 2006-10-17 Novell, Inc. Cluster failover via distributed configuration repository

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6014669A (en) * 1997-10-01 2000-01-11 Sun Microsystems, Inc. Highly-available distributed cluster configuration database
JP2001518663A (ja) * 1997-10-01 2001-10-16 サン・マイクロシステムズ・インコーポレーテッド 高度に利用可能なクラスタ構成データベース
US20010008019A1 (en) * 1998-04-17 2001-07-12 John D. Vert Method and system for transparently failing over application configuration information in a server cluster
US7124320B1 (en) * 2002-08-06 2006-10-17 Novell, Inc. Cluster failover via distributed configuration repository
US20050120025A1 (en) * 2003-10-27 2005-06-02 Andres Rodriguez Policy-based management of a redundant array of independent nodes
JP2007511820A (ja) * 2003-10-27 2007-05-10 アーカイヴァス インコーポレイテッド 独立ノード冗長アレイに対するポリシーに基づく管理

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013509656A (ja) * 2009-10-30 2013-03-14 ヒタチデータ・システムズ・コーポレイション 複製による、区分化されたコンテンツプラットフォーム内の固定コンテンツストレージ
JP2013509657A (ja) * 2009-10-30 2013-03-14 ヒタチデータ・システムズ・コーポレイション 名前空間を用いた、区分化されたコンテンツプラットフォーム内の固定コンテンツストレージ
JP2014507028A (ja) * 2011-01-27 2014-03-20 インターナショナル・ビジネス・マシーンズ・コーポレーション コンピュータ・システムにおけるアプリケーション処理の管理のための方法、システム、コンピュータ・プログラム
JP2014523024A (ja) * 2011-06-23 2014-09-08 アリババ・グループ・ホールディング・リミテッド 増分データの抽出
JP2017515212A (ja) * 2014-03-31 2017-06-08 アマゾン・テクノロジーズ・インコーポレーテッド 拡張縮小可能なファイル格納サービス
JP2017534133A (ja) * 2014-11-06 2017-11-16 華為技術有限公司Huawei Technologies Co.,Ltd. 分散ストレージ及びレプリケーションシステム、並びに方法
JP2019509579A (ja) * 2016-09-05 2019-04-04 株式会社日立製作所 情報処理システム

Also Published As

Publication number Publication date
EP2092442B1 (en) 2012-01-11
ATE541263T1 (de) 2012-01-15
US8112423B2 (en) 2012-02-07
WO2008058230A2 (en) 2008-05-15
US20090006888A1 (en) 2009-01-01
WO2008058230A3 (en) 2008-11-13
EP2092442A2 (en) 2009-08-26
JP5260536B2 (ja) 2013-08-14
US20110178983A1 (en) 2011-07-21
US7917469B2 (en) 2011-03-29
WO2008058230A9 (en) 2008-07-31
EP2092442A4 (en) 2010-08-18

Similar Documents

Publication Publication Date Title
JP5260536B2 (ja) プライマリー・クラスタの高速リカバリ
US9898514B2 (en) System and method for aggregating query results in a fault-tolerant database management system
US9672372B2 (en) Method for improving mean time to data loss (MTDL) in a fixed content distributed data storage
JP5254611B2 (ja) 固定内容分散データ記憶のためのメタデータ管理
US8229893B2 (en) Metadata management for fixed content distributed data storage
US8515915B2 (en) System and method for enhancing availability of a distributed object storage system during a partial database outage
US8621270B2 (en) System and method for transparent recovery of damaged or unavailable objects in a replicated object storage system
AU2011265370B2 (en) Metadata management for fixed content distributed data storage

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120907

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20121122

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20121130

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20121130

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20121130

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20121204

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20121221

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130104

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130204

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130307

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130409

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130425

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160502

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5260536

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250