JP5102901B2 - データセンタにわたる複数データサーバ間のデータ完全性を保持する方法およびシステム - Google Patents

データセンタにわたる複数データサーバ間のデータ完全性を保持する方法およびシステム Download PDF

Info

Publication number
JP5102901B2
JP5102901B2 JP2011521543A JP2011521543A JP5102901B2 JP 5102901 B2 JP5102901 B2 JP 5102901B2 JP 2011521543 A JP2011521543 A JP 2011521543A JP 2011521543 A JP2011521543 A JP 2011521543A JP 5102901 B2 JP5102901 B2 JP 5102901B2
Authority
JP
Japan
Prior art keywords
data
server
servers
catalog
instructions
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.)
Active
Application number
JP2011521543A
Other languages
English (en)
Other versions
JP2011530127A (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2011530127A publication Critical patent/JP2011530127A/ja
Application granted granted Critical
Publication of JP5102901B2 publication Critical patent/JP5102901B2/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/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
    • 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
    • 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/14Error detection or correction of the data by redundancy in operation
    • 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
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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/2035Error 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 without idle spare hardware

Description

本発明は、データセンタにおけるデータ管理に関する。より具体的には、本発明は、多数のデータセンタのデータサーバにおいて、データの多数のコピーのデータ完全性(data integrity)を保持することに関する。
データセンタは、遠隔通信及びストレージ・システムのような、コンピュータ・システム及びそれらに関連したコンポーネントを収容するために用いられる設備である。ほとんどの大企業は、1つより多いデータセンタを有し、そこでは、膨大な量のデータがストレージ・システム内に格納される。データセンタは、データ、アプリケーション、ウェブ・ホスティング、及びこれらの企業の継続的な活動に不可欠な電子商取引機能を提供する。データセンタは、一般に、冗長電源又はバックアップ電源、冗長データ通信接続、環境制御(例えば、空調設備、消火設備)、及び特別なセキュリティ機器を有する。データセンタは、より優れた障害回復(disaster recovery)及び地理的作業の効率の両方を目的として、異なる地理的位置に分散される。
大部分の企業は、複数のデータセンタを有する。一部の企業は、アクティブ型(active)・データセンタ(即ち、主(primary)データセンタ)内にデータのコピーを有し、データを収納する他のセンタ(即ち、バックアップ・データセンタ)はパッシブ型(passive)のものである、パッシブ−アクティブ型データセンタを用いる。アクティブ型データセンタに災害が起こることは滅多になく、さらにそのバックアップ・データセンタは完全なままであることから、このようなデータセンタの実装は、通常、リソースの無駄である。他の企業は、主データセンタ及びバックアップ・データセンタの両方がアクティブ型のものである、アクティブ−アクティブ型データセンタを用いる。アクティブ−アクティブ型データセンタは、より複雑なものであるが、クライアントへのサービス提供に非常に有効であり、通常の動作のためのサーバの利用を改善する。
しかしながら、アクティブ−アクティブ型データセンタでは、データ完全性を保持し、トランザクション・フローを制御するために、データセンタ間に信頼性のある一定した接続を必要とする。さもなければ、異なるデータセンタにおけるデータは、必要な完全性を有することができず、システム全体が正常に機能しなくなるであろう。さらに、通常、異なるデータセンタが配置された地理的位置にわたって信頼性のある一定した接続を保持するのが非常に困難であるため、アクティブ−アクティブ型データセンタは、現在のところ、厳密なトランザクションを必要としないデータのためだけに、かつ、高価な専用Metrodネットワーク内で使用されている。
多くの企業は、リソースのより優れた拡張性、より高い信頼性、より効率的な使用のために、アクティブ−アクティブ型データセンタを必要としている。好適なアクティブ−アクティブ型データセンタでは、データの大量のアクティブ複製コピーを処理し、かつ、データセンタのネットワーク、コンピュータ、又はコンポーネントがダウンしたときに、データ完全性及びアクティブ・ロール制御を保持できなくてはならない。
第1の態様によれば、複数のデータサーバから主(primary)データサーバを選択してデータ(a piece of data)を格納し、このデータを複数のデータサーバ内の他のデータサーバに複製することと、カタログ・サーバのクラスタを保持することであって、カタログ・サーバの1つをマスター・カタログ・サーバとして選択する、ことと、データのデータ状態情報をマスター・カタログ・サーバに記録し、このデータ状態情報をカタログ・サーバのクラスタ内の他のカタログ・サーバに複製することと、主データサーバの故障に応答して、複数のデータサーバから新しい主サーバを選択し、カタログ・サーバのクラスタを更新することとを含む、多数のデータセンタにわたって複数のデータサーバ内に格納された、データの複数のコピーのデータ完全性を保持するための方法が提供される。
多数のデータセンタのデータサーバにおいて、データの多数のコピーのデータ完全性を保持するための方法、コンピュータ・プログラム製品及びシステムが提供されることが好ましい。カタログ・サーバのクラスタが保持されることが好ましく、カタログ・サーバのうちの1つをマスター・カタログ・サーバとして選択する。データは、データサーバから選択された主データサーバ内に格納されることが好ましい。データは、データサーバから選択された1つ又は複数のバックアップ・データサーバに複製されることが好ましい。データ状態情報は、マスター・カタログ・サーバに記録されることが好ましい。データ状態情報は、カタログ・サーバのクラスタに複製されることが好ましい。主データサーバが故障したとき、データサーバ及びカタログ・サーバのクラスタが更新されることが好ましい。
第2の態様によれば、多数のデータセンタにわたって複数のデータサーバ内に格納された、データの複数のコピーのデータ完全性を保持するためのコンピュータ・プログラム製品が提供され、このコンピュータ・プログラム製品は、コンピュータ使用可能プログラム・コードがその中で具体化されるコンピュータ使用可能媒体を含み、コンピュータ使用可能プログラム・コードは、複数のデータサーバから主データサーバを選択してデータを格納し、このデータを複数のデータサーバ内の他のデータサーバに複製するための命令と、カタログ・サーバのクラスタを保持するための命令であって、カタログ・サーバの1つをマスター・カタログ・サーバとして選択する、命令と、データのデータ状態情報をマスター・カタログ・サーバに記録し、このデータ状態情報をカタログ・サーバのクラスタ内の他のカタログ・サーバに複製するための命令と、主データサーバの故障に応答して、複数のデータサーバから新しい主サーバを選択し、カタログ・サーバのクラスタを更新するための命令とを含む。
第3の態様によれば、プロセッサと、プロセッサと動作可能に結合されたメモリと、プロセッサ及びメモリと動作可能に結合されたストレージ・デバイスと、多数のデータセンタにわたって複数のデータサーバ内に格納された、データの複数のコピーのデータ完全性を保持するためのコンピュータ・プログラム製品とを含むコンピュータ・システムが提供され、コンピュータ・プログラム製品は、コンピュータ使用可能プログラム・コードがその中で具体化されるコンピュータ使用可能媒体を含み、このコンピュータ使用可能プログラム・コードは、複数のデータサーバから主データサーバを選択してデータを格納し、このデータを複数のデータサーバ内の他のデータサーバに複製するための命令と、カタログ・サーバのクラスタを保持するための命令であって、カタログ・サーバの1つをマスター・カタログ・サーバとして選択する、命令と、データのデータ状態情報をマスター・カタログ・サーバに記録し、このデータ状態情報をカタログ・サーバのクラスタ内の他のカタログ・サーバに複製するための命令と、主データサーバの故障に応答して、複数のデータサーバから新しい主サーバを選択し、カタログ・サーバのクラスタを更新するための命令とを含む。
第4の態様によれば、多数のデータセンタ間にわたる複数のデータサーバ内に格納されるデータの複数のコピーのデータ完全性を保持するためのコンピュータ・システムが提供され、このコンピュータ・システムは、複数のデータセンタの1つが故障したときにもたらされる第1及び第2のネットワーク区画(network partition)を検出して管理するように構成されたネットワーク区画マネージャと、第1及び第2のネットワーク区画の少なくとも1つにおけるデータセンタの機能を制御するように構成されたヘッドマスター・コントローラと、第2のネットワーク区画への全ての書き込みトランザクションを第1のネットワーク区画にリダイレクトするように構成されたルータと、第2のネットワーク区画における選択されたデータサーバをヘッドマスター・コントローラに再接続し、ヘッドマスター・コントローラが、選択されたデータサーバの機能制限を除去できるように構成された修理マネージャと、修理マネージャがヘッドマスター・コントローラへの接続を確立した後で、選択されたデータサーバのステータス及び権限情報を回復するように構成された回復マネージャと、故障状態のデータセンタ内の故障状態のデータサーバを除去し、複数のデータサーバ内の他のデータサーバを再編成するように構成された一時的再編成マネージャと、他のデータサーバの各々のサービス能力に応じて、トラフィックを他のデータサーバにリダイレクトするように構成されたロード及びトラフィック・コントローラと、データセンタ間の接続を監視するように構成されたデータセンタ間接続マネージャとを含む。
ここでは、例として、添付の図面を参照して本発明の好ましい実施形態を説明する。
本発明の一実施形態の種々のコンポーネントのブロック図である。 一実施形態に従って、データ完全性及びアクティブ・ロール制御機構がどのように機能するかを示すブロック図である。 一実施形態に従って、本発明が、多数のデータセンタにおけるデータサーバにわたってデータ完全性をどのように保持するかを示すフローチャートである。 1つの好ましい実施形態に従って本発明を用いることができるコンピュータ・システムの概念図である。
ここで、添付図面に示される実施形態を参照しながら、本発明を例としてより詳細に説明する。以下に説明される実施形態は、例として提示されるものにすぎず、本発明の概念をいずれかの特定の物理的構成に限定するものとして解釈されるべきではないことに留意すべきである。さらに、用いられる場合、特に明記されない限り、「上側(upper)」、「下側(lower)」、「前部(front)」、「後部(back)」、「上方に(over)」、「下方に(under)」という用語及びこうした類似の用語は、本発明を特定の配向に限定するものとして解釈されるべきではない。代わりに、これらの用語は相対的に用いられるにすぎない。
当業者には認識されるように、本発明は、システム、方法、又はコンピュータ・プログラム製品として具体化することができる。従って、本発明は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロ・コード等を含む)、又はソフトウェアの態様とハードウェアの態様とを組み合わせた実施形態の形式をとることができ、これらは全て、本明細書において、一般的に「回路」、「モジュール」、又は「システム」と呼ぶことができる。さらに、本発明は、コンピュータ使用可能プログラム・コードが媒体内に具体化された、いずれかの有形の媒体内に具体化されたコンピュータ・プログラム製品の形をとることができる。
1つ又は複数のコンピュータ使用可能又はコンピュータ可読媒体のいずれかの組み合わせを用いることもできる。コンピュータ使用可能又はコンピュータ可読媒体は、これらに限られるものではないが、例えば、電子的、磁気的、光学的、電磁気的、赤外線、又は半導体のシステム、装置、デバイス又は伝搬媒体とすることができる。コンピュータ可読媒体のより具体的な例(非網羅的なリスト)は、以下のもの、即ち、1つ又は複数の配線を有する電気的接続、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、読み出し専用メモリ(ROM)、消去可能なプログラム可能読み出し専用メモリ(EPROM又はフラッシュ・メモリ)、光ファイバ、ポータブル・コンパクト・ディスク読み出し専用メモリ(CD−ROM)、光記憶装置、インターネット又はイントラネットをサポートする伝送媒体、或いは磁気記憶装置を含む。そのプログラムを、例えばその紙又は他の媒体の光学スキャンによって電子的にキャプチャし、次いで、コンパイルし、解釈し、又は必要に応じてそれ以外の適切な方法で処理し、その後、コンピュータ・メモリ内に格納することができるので、コンピュータ使用可能又はコンピュータ可読媒体は、プログラムが印刷された紙又は別の適切な媒体とすることさえできることに留意されたい。本文書との関連において、コンピュータ使用可能又はコンピュータ可読媒体は、命令実行システム、装置、又はデバイスによって使用するため、又はそれらと接続して使用するために、プログラムを収納し、格納し、通信し、伝搬し、又は移送することができるあらゆる媒体とすることができる。コンピュータ使用可能媒体は、コンピュータ使用可能なプログラム・コードがその中で具体化された、ベースバンド内の、又は搬送波の一部としての、伝搬されたデータ信号を含むものとすることができる。コンピュータ使用可能プログラム・コードは、これらに限られるものではないが、無線、有線、光ファイバ・ケーブル、及びRFなどを含む、いずれかの適切な媒体を用いて伝送することができる。
本発明の動作を実行するためのコンピュータ・プログラム・コードは、Java(商標)、Smalltalk、C++等のようなオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様なプログラミング言語のような、従来の手続き型プログラミング言語を含む、1つ又は複数のプログラミング言語の任意の組み合わせで記述することができる。(Java並びに全てのJavaベースの商標及びロゴは、合衆国、他の国々、又はその両方におけるSun Microsystems,Inc.社の商標である。)プログラム・コードは、完全にユーザのコンピュータ上で実行される場合もあり、一部がユーザのコンピュータ上で、独立したソフトウェア・パッケージとして実行される場合もあり、一部がユーザのコンピュータ上で実行され、一部がリモート・コンピュータ上で実行される場合もあり、又は完全にリモート・コンピュータ若しくはサーバ上で実行される場合もある。一番最後のシナリオの場合、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN)若しくは広域ネットワーク(WAN)を含むいずれかのタイプのネットワークを通じてユーザのコンピュータに接続される場合もあり、又は外部のコンピュータへの接続がなされる場合もある(例えば、インターネット・サービス・プロバイダを用いてインターネットを通じて)。
本発明の実施形態による方法、装置(システム)及びコンピュータ・プログラム製品のフローチャート図及び/又はブロック図を参照して、本発明を下記に説明する。フローチャート図及び/又はブロック図の各ブロック、並びにフローチャート図及び/又はブロック図内のブロックの組み合わせは、コンピュータ・プログラム命令によって実施することができることが理解されるであろう。これらのコンピュータ・プログラム命令を、汎用コンピュータ、専用コンピュータ、又は他のプログラム可能データ処理装置のプロセッサに与えて機械を製造し、その結果、コンピュータ又は他のプログラム可能データ処理装置のプロセッサによって実行される命令が、フローチャート及び/又はブロック図の1つ又は複数のブロックにおいて指定された機能/行為を実施するための手段を作り出すようにさせることができる。
これらのコンピュータ・プログラム命令を、コンピュータ又は他のプログラム可能データ処理装置を特定の方法で機能させるように指示することができるコンピュータ可読媒体内に格納し、その結果、そのコンピュータ可読媒体内に格納された命令が、フローチャート及び/又はブロック図の1つ又は複数のブロックにおいて指定された機能/行為を実施する命令手段を含む物品を製造するようにさせることもできる。
コンピュータ・プログラム命令をコンピュータ又は他のプログラム可能データ処理装置上にロードして、一連の動作ステップをコンピュータ又は他のプログラム可能装置上で実行させ、コンピュータ又は他のプログラム可能装置上で実行される命令がフローチャート及び/又はブロック図の1つ又は複数のブロックにおいて指定された機能/行為を実施するためのプロセスを提供するように、コンピュータにより実施されるプロセスを生成することもできる。
図面内のフローチャート及びブロック図は、本発明の種々の実施形態による、システム、方法及びコンピュータ・プログラム製品の可能な実装の、アーキテクチャ、機能及び動作を示す。この点に関して、フローチャート及びブロック図内の各ブロックは、指定された論理機能を実装するための1つ又は複数の実行可能な命令を含む、モジュール、セグメント、又はコードの一部を表すことができる。幾つかの代替的な実装において、ブロック内に記された機能は、図面に記された順序とは異なる順序で行なわれることもあることにも留意すべきである。例えば、連続して図示された2つのブロックが、実際には実質的に同時に実行されることもあり、又はこれらのブロックは、関与する機能に応じて、ときには逆順で実行されることもある。ブロック図及び/又はフローチャート図の各ブロック、並びにブロック図及び/又はフローチャート図内のブロックの組み合わせは、指定された機能又は行為を実行する専用ハードウェア・ベースのシステム、又は専用ハードウェアとコンピュータ命令との組み合わせによって実装することができることにも留意されたい。
本発明は、好ましくは、無駄なデータのコピーが存在せず、多くのデータのコピーが、同時にクライアントの役に立つことができるアクティブ−アクティブ型データセンタを可能にする。従って、本発明は、好ましくは、データセンタ内のサーバ又は機械の利用度及び拡張性を高め、ユーザからのサービス要求に対する応答時間を低減させる。
本発明の一実施形態において、その1つがマスター・カタログ・サーバであるカタログ・サーバのクラスタを用いて、データの状態情報を格納し、それらは、複数の地理的位置にわたるデータセンタ内の他の多くのサーバにも複製される。各データ(例えば、データ・テーブル)は、リーダーとしても知られるその主サーバ、及び多くの(例えば、何千もの)複製サーバ内に格納される。主サーバが故障すると、データ複製サーバの1つが、新しい主サーバとして選択される。どのサーバも、何らかのデータの主サーバ及び他のデータの複製サーバであることができ、従って、全てのサーバの作業負荷及び役割(roll)のバランスをとることができる。リーダー選択機構は、データに対していつでも唯一のリーダーを選択することが可能である。古いリーダーが故障すると、直ちに新しいリーダーが選択される。新しいリーダーの状態情報は、マスター・カタログ・サーバに登録され、カタログ・サーバのクラスタに複製される。サーバの役割によって決まるデータ・コンテキスト認識(data-context-aware)経路指定及び転送システムを用いて、あらゆるサービス要求が、正しい役割(即ち、プライマリ又はレプリケーション)をもった正確なデータを有する最も近いサーバに経路指定されることを保証する。
図1に示すような、本発明の一実施形態において、8個のコンポーネント、即ち、ネットワーク区画マネージャ101、ヘッドマスター・コントローラ102、ルータ103、修理マネージャ104、回復マネージャ105、一時的再編成マネージャ106、ロード及びトラフィック・コントローラ107、並びにデータセンタ間接続マネージャ108がある。ネットワーク区画マネージャ101は、切断されたネットワークを検出して管理し、ネットワークの切断が検出されると、措置を開始する。
ヘッドマスター・コントローラ102は、ネットワーク区画マネージャ101をリッスンし、ネットワークが切断されたときに実行されるデータセンタの機能を制御する。例えば、データセンタが、異常(malfunctioning)コンポーネントによってマジョリティ・グループとマイノリティ・グループに分けられる場合、マイノリティ・データセンタ・グループは、いずれのトランザクションもコミットすることができない(即ち、トランザクション・コミット権限が除去される)が、非ダーティ・リード(non-dirty read)は全て可能である
ルータ103は、全ての書き込みトランザクションをマジョリティ・データセンタ・グループにリダイレクトし、ダーティ・レコードをコンパイルする。
修理マネージャ104は、切断されたマイノリティ・データセンタの各サーバにおいてスレッドをスピンさせ、予定通りに(例えば、最初の10分間は10秒ごと、最初の10分以降は1分間隔で)、区画化されたヘッドマスター・コントローラに常に接続しようと試みるので、ヘッドマスター・コントローラは、サーバ機能(例えば、書き込みトランザクションのコミット)の制限を解除することができる。
修理マネージャがヘッドマスター・コントローラへの接続を確立すると、回復マネージャ105が、サーバの全てのステータス及び権限を回復させる。
一時的再編成マネージャ106は、各グループの各リーダーのピングを実行する(ネットワークの接続を確認する。リーダーに連絡可能でない場合、次に、一時的再編成マネージャ106は、この連絡不能なリーダーが管理する全てのサーバを抽出する。次に、一時的再編成マネージャ106は、連絡不能なリーダーの各メンバーのピングを実行し、連絡可能でないサーバを一時的に除去する。
ロード及びトラフィック・コントローラ107が、それらのサービス能力に応じて、切断されたデータセンタに対するトラフィックを他のデータセンタにリダイレクトする。
データセンタ間接続マネージャ108は、データセンタ間の接続を監視する。
本発明は、複数のデータセンタにわたって大量のアクティブな複製コピーを保持するアクティブ−アクティブ型データセンタを可能にすることが好ましい。例えば、5000のアクティブな複製が、データセンタ内に同時に存在することがある。データ完全性及びアクティブ・ロール制御機構が実装され、これらの大量のアクティブな複製コピーが保持され、適切に更新されることを保証する。
図2は、本発明の一実施形態における、データ完全性及びアクティブ・ロール制御機構がどのように機能するかを示すブロック図である。典型的な作業モードにおいて、データセンタ間接続マネージャ108は、データセンタ間の接続を監視し(状態201)、ネットワーク区画マネージャ101は、起こり得る異常についてネットワークをアクティブに監視する(状態202)。例えば、機械がダウンするか、又はネットワークの一部が適切に働かない場合など、データセンタのコンポーネントが正常に機能しない場合、ネットワーク区画マネージャ101は、残りのデータセンタからの切断されたデータセンタの異常コンポーネントを管理し(状態203)、異常コンポーネントを修理するための措置を開始する(状態204)。異常コンポーネントは、データセンタを2つの部分、即ち、データセンタにおけるサーバのマイノリティ・グループとマジョリティ・グループとに分けることができる。修理モードにおいて、ヘッドマスター・コントローラ102は、ネットワーク区画マネージャ101から異常情報を受け取り、マイノリティ・グループの機能を制御する(状態205)。例えば、ヘッドマスター・コントローラ102は、マイノリティ・グループ内のデータセンタのトランザクション・コミット権限を取り消すことができる。次に、データサーバのマイノリティ・グループからの全ての書き込みトランザクションが、ルータ103によりリダイレクトされる(状態206)。ルータ103はまた、ダーティ・レコードもコンパイルし、これにより、マイノリティ・グループ内に書き込まれたデータの情報が保持される(状態207)。次に、修理マネージャ104は、マイノリティ・グループ内のサーバをヘッドマスター・コントローラ102に接続して、異常サーバを識別し、これをデータセンタから除去しようと試みる(状態208)。サーバとヘッドマスター・コントローラ102との間に接続が確立されると、回復マネージャ105により、サーバについての全てのステータス及び権限が回復される(状態209)。次に、一時的再編成マネージャ106が、各グループの各リーダーのピングを実行する(状態210)。リーダーに連絡可能でない場合、この連絡不能なリーダーが管理する全てのサーバが抽出される。次に、一時的再編成マネージャ106は、連絡不能なリーダーの各メンバーのピングを実行し、連絡可能でないサーバを一時的に除去する。マジョリティ・グループ内の他のデータセンタにアクセスしているトランザクションがある場合、ロード及びトラフィック・コントローラ107が、それらのサービス能力に応じて、トラフィックをそれぞれのデータセンタにリダイレクトする(状態211)。
図3は、本発明が、一実施形態において、多数のデータサーバにわたってデータ完全性をどのように保持するかを示すフローチャートである。状態301において、カタログ・サーバのクラスタを保持して、データサーバ上のデータの情報を保持し、カタログ・サーバの1つを、マスター・カタログ・サーバとして選択する。選択されたデータに対して、主データサーバが選択される。異なるデータに対して、異なる主データサーバを選択することができる(状態302)。次に、このデータは、データサーバから選択された1つ又は複数のバックアップ・データサーバに複製される。状態303において、データ状態情報がマスター・カタログ・サーバに記録され、次に、カタログ・サーバのクラスタに複製される。主データサーバが故障した場合、状態304において、データサーバ及びカタログ・サーバのクラスタを有効に更新することができる。更新プロセスは、3つのステップを含む。第1に、データに対して、新しい主データサーバを選択し(状態311)、この主データサーバの情報をマスター・カタログ・サーバに登録し(状態312)、次に、登録情報を1つ又は複数の他のカタログ・サーバに複製する(状態313)。
図4は、本発明を実施することができるコンピュータ・システム(402)を示す。このコンピュータ・システムは、パーソナル・コンピュータ・システム、ワークステーション・コンピュータ・システム、ラップトップ・コンピュータ・システム、埋込式コントローラ・システム、マイクロプロセッサ・ベースのシステム、デジタル信号プロセッサ・ベースのシステム、ハンドヘルド装置システム、携帯情報端末(PDA)システム、無線システム、無線ネットワーキング・システム等のいずれか1つとすることができる。コンピュータ・システムは、バス(404)又は情報を通信するための他の通信機構と、情報を処理するためにバス(404)と結合されたプロセッサ(406)とを含む。コンピュータ・システムはまた、情報及びプロセッサ(406)により実行される命令を格納するための、バスに結合された、ランダム・アクセス・メモリ(RAM)又は他の動的記憶装置(例えば、ダイナミックRAM(DRAM)、スタティックRAM(SRAM)、シンクロナスDRAM(SDRAM)、フラッシュRAM)のようなメイン・メモリも含む。さらに、プロセッサによって実行される命令の実行中、メイン・メモリ(408)を一時変数又は他の中間情報を格納するために用いることができる。コンピュータ・システムは、静的情報及びプロセッサのための命令を格納するために、バス(404)に結合された読み出し専用メモリROM(410)又は他の静的記憶装置(例えば、プログラム可能ROM(PROM)、消去可能PROM(EPROM)及び電気的消去可能PROM(EEPROM))をさらに含む。情報及び命令を格納するために、磁気ディスク又は光ディスクのようなストレージ・デバイス(412)が設けられ、バスに結合される。このストレージ・デバイスは、コンピュータ可読媒体の一例である。
コンピュータ・システムはまた、コンピュータ・システムを結合するために信号を入力するための入力/出力ポート(430)も含む。こうした結合は、自動制御機能、遠隔制御機能等を実装するための、直接電気接続、無線接続、ネットワーク接続等を含むことができる。適切なインターフェース・カードをインストールして、必要な機能及び信号レベルを与えることができる。
コンピュータ・システムはまた、専用の論理装置(例えば、特定用途向け集積回路(ASIC))又は構成可能な論理装置(例えば、generic array of logic(GAL)又は再プログラム可能フィールド・プログラム可能ゲート・アレイ(FPGA))を含むこともでき、これらは、図1−図3を参照して説明されるような方法のいずれかの部分又は全ての機能を置き換えるために用いることができる。適切な装置バス(例えば、小型コンピュータ・システム・インターフェース(SCSI)バス、enhanced integrated device electronics(IDE)バス、若しくはUltra−direct memory access(DMA)バス)を用いて、他の取り外し可能な媒体装置(例えば、コンパクト・ディスク、テープ及び取り外し可能な磁気光学媒体)又は固定された高密度媒体装置をコンピュータ・システムに付加することができる。コンピュータ・システムは、付加的に、コンパクト・ディスク・リーダー、コンパクト・ディスク・リーダー−ライター・ユニット、又はコンパクト・ディスク・ジュークボックスを含むことができ、その各々を同じ装置バス又は別の装置バスに接続することができる。
コンピュータのユーザに情報を表示及び/又は提供するために、バスを介して、陰極線管(CRT)、液晶ディスプレイ(LCD)、音声合成ハードウェア及び/又はソフトウェア等のようなディスプレイ(414)にコンピュータ・システムを結合させることができる。ディスプレイは、ディスプレイ・カード又はグラフィックス・カードにより制御することができる。コンピュータ・システムは、情報及びコマンド選択をプロセッサ(406)に通信するための、キーボード(416)及びカーソル制御(418)のような入力装置を含む。こうしたコマンド選択は、入力装置(416)として機能する音声認識ハードウェア及び/又はソフトウェアによって実施することができる。カーソル制御(418)は、指示情報及びコマンド選択をプロセッサ(406)に通信し、かつ、ディスプレイ(414)上のカーソルの動きを制御するための、例えば、マウス、トラックボール、カーソル指示キー、タッチスクリーン・ディスプレイ、光学式文字認識ハードウェア及び/又はソフトウェア等である。さらに、プリンタ(図示せず)は、データ構造、情報等の印刷リスト、又は、コンピュータ・システムが格納及び/又は生成する他のいずれかのデータを提供することができる。
コンピュータ・システムは、プロセッサが、メイン・メモリのようなメモリ内に含まれる1つ又は複数の命令の1つ又は複数のシーケンスを実行するのに応答して、本発明の処理ステップの一部又は全てを実行する。こうした命令は、ストレージ・デバイスのような別のコンピュータ可読媒体からメイン・メモリ内に読み取ることができる。多重処理構成の1つ又は複数のプロセッサを用いて、メイン・メモリ内に含まれた命令のシーケンスを実行することもできる。代替的な実施形態においては、ソフトウェア命令の代わりに又はこれと組み合わせて、配線接続回路を用いることもできる。従って、実施形態は、ハードウェア回路及びソフトウェアのいずれかの特定の組み合わせに制限されるものではない。
本発明のコンピュータ・コード装置は、これらに限定されるものではないが、スクリプト、インタプリタ、動的リンク・ライブラリ、Javaクラス及び完全な実行可能プログラムを含む、いずれかの解釈実行型の又は実行可能なコード機構とすることができる。さらに、より優れた性能、信頼性及び/又はコストのために、本発明の処理の一部を分散させることができる。コンピュータ・システムはまた、バスに結合された通信インターフェースも含む。通信インターフェース(420)は、例えばローカル・ネットワーク(424)に接続することができるネットワーク・リンク(422)に結合する双方向データ通信を提供する。例えば、通信インターフェース(420)は、いずれかのパケット交換方式のローカル・エリア・ネットワーク(LAN)に接続するためのネットワーク・インターフェース・カードとすることができる。別の例として、通信インターフェース(420)は、非対称デジタル加入者線(ADSL)カード、総合サービス・デジタル網(ISDN)カード、又は対応するタイプの電話線へのデータ通信接続を提供するためのモデムとすることができる。通信インターフェース(420)を介して、無線リンクを実装することもできる。こうしたいずれの実装においても、通信インターフェース(420)は、様々なタイプの情報を表すデジタル・データ・ストリームを伝える電気信号、電磁信号又は光信号を送受信する。
ネットワーク・リンク(422)は、典型的には、1つ又は複数のネットワークを通じて他のデータ装置へのデータ通信を提供するものである。例えば、ネットワーク・リンクは、ローカル・ネットワーク(424)(例えば、LAN)を通して、又は、通信ネットワーク(426)を通して通信サービスを提供するサービス提供者により動作される機器を通して、コンピュータ(428)への接続を提供することができる。好ましい実施形態において、ローカル・ネットワーク及び通信ネットワークは、デジタル・データ・ストリームを搬送する電気信号、電磁信号又は光信号を用いることが好ましい。コンピュータ・システムとの間でデジタル・データを搬送する、種々のネットワークを通る信号並びにネットワーク・リンク上の信号及び通信インターフェースを通る信号は、情報を運ぶ搬送波の例示的な形態である。コンピュータ・システムは、ネットワーク、ネットワーク・リンク及び通信インターフェースを通して、通知を伝送し、プログラム・コードを含むデータを受信することができる。
本発明は、上記に示され説明された特定のプロセス、構成、材料及びコンポーネントに必ずしも限定されるものではなく、本発明の範囲内の多数の変形をなし得ることを理解すべきである。

Claims (10)

  1. 複数のデータセンタにわたって複数のデータサーバ内に格納された、データの複数のコピーのデータ完全性を保持する方法であって、
    カタログ・サーバのクラスタを保持することであって、前記カタログ・サーバの1つをマスター・カタログ・サーバとして選択する、ことと、
    選択されたデータに対して、前記複数のデータサーバから主データサーバを選択して前記データを格納し、前記データを前記複数のデータサーバ内の他のデータサーバに複製することと、
    前記データのデータ状態情報を前記マスター・カタログ・サーバに記録し、前記データ状態情報を前記カタログ・サーバのクラスタ内の他のカタログ・サーバに複製することと、
    前記主データサーバの故障に応答して、前記複数のデータサーバから新しい主データサーバを選択し、前記カタログ・サーバのクラスタの記録内容を更新することとを含み、
    前記更新することは、
    前記新しい主データサーバを含む新しいデータ状態情報を前記マスター・カタログ・サーバに登録することと、
    前記新しいデータ状態情報を前記カタログ・サーバのクラスタ内の他のカタログ・サーバに複製することと、
    を含む方法。
  2. 前記新しい主データサーバを選択する前に、前記故障状態の主データサーバによって切断されたデータサーバのマジョリティ・グループ及びマイノリティ・グループ(いずれのトランザクションもコミットすることができないが、非ダーティ・リードは全て可能であるグループ)を管理することと、
    前記マイノリティ・グループ内のデータサーバの機能を制御することと、
    前記データサーバのマイノリティ・グループにおいてデータのダーティ・レコードをコンパイルすることと、
    前記マイノリティ・グループ内の各サーバをヘッドマスター・コントローラに接続しようと試みることによって、前記故障状態の主データサーバを除去することと、
    前記ヘッドマスター・コントローラに接続された前記データサーバを再編成することと、
    をさらに含む、請求項1に記載の方法。
  3. ユーザからのサービス要求を、前記複数のデータサーバ内の最も近いデータサーバに経路指定することをさらに含む、請求項1または請求項2に記載の方法。
  4. 多数のデータセンタにわたって複数のデータサーバ内に格納された、データの複数のコピーのデータ完全性を保持するためのコンピュータ・プログラムであって、
    カタログ・サーバのクラスタを保持するための命令であって、前記カタログ・サーバの1つをマスター・カタログ・サーバとして選択させる、命令と、
    選択されたデータに対して、前記複数のデータサーバから主データサーバを選択して前記データを格納し、前記データを前記複数のデータサーバ内の他のデータサーバに複製させるための命令と、
    前記データのデータ状態情報を前記マスター・カタログ・サーバに記録し、前記データ状態情報を前記カタログ・サーバのクラスタ内の他のカタログ・サーバに複製させるための命令と、
    前記主データサーバの故障に応答して、前記複数のデータサーバから新しい主データサーバを選択し、前記カタログ・サーバのクラスタの記録内容を更新させるための命令とを含み、
    前記更新させるための命令は、
    前記新しい主データサーバを含む新しいデータ状態情報を前記マスター・カタログ・サーバに登録させるための命令と、
    前記新しいデータ状態情報を前記カタログ・サーバのクラスタ内の他のカタログ・サーバに複製させるための命令と、
    を含むコンピュータ・プログラム。
  5. 前記新しい主データサーバを選択させるための命令の前に、前記故障状態の主データサーバにより切断されたデータサーバのマジョリティ・グループ及びマイノリティ・グループ(いずれのトランザクションもコミットすることができないが、非ダーティ・リードは全て可能であるグループ)を管理させるための命令と、
    前記マイノリティ・グループ内のデータサーバの機能を制御させるための命令と、
    前記データサーバのマイノリティ・グループにおいてデータのダーティ・レコードをコンパイルさせるための命令と、
    前記マイノリティ・グループ内の各サーバをヘッドマスター・コントローラに接続しようと試みることによって、前記故障状態の主データサーバを除去させるための命令と、
    前記ヘッドマスター・コントローラに接続された前記データサーバを再編成させるための命令と、
    をさらに含む、請求項4に記載のコンピュータ・プログラム。
  6. ユーザからのサービス要求を、前記複数のデータサーバ内の最も近いデータサーバに経路指定させるための命令をさらに含む、請求項4または請求項5に記載のコンピュータ・プログラム。
  7. プロセッサと、
    前記プロセッサと動作可能に結合されたメモリと、
    前記プロセッサ及び前記メモリと動作可能に結合されたストレージ・デバイスと、
    多数のデータセンタにわたって複数のデータサーバ内に格納された、データの複数のコピーのデータ完全性を保持するためのコンピュータ・プログラムと、
    を含み、
    前記コンピュータ・プログラムは、前記メモリに格納されて、前記プロセッサにより実行される命令であって、
    カタログ・サーバのクラスタを保持するための命令であって、前記カタログ・サーバの1つをマスター・カタログ・サーバとして選択する、命令と、
    選択されたデータに対して、前記複数のデータサーバから主データサーバを選択して前記データを格納し、前記データを前記複数のデータサーバ内の他のデータサーバに複製するための命令と、
    前記データのデータ状態情報を前記マスター・カタログ・サーバに記録し、前記データ状態情報を前記カタログ・サーバのクラスタ内の他のカタログ・サーバに複製するための命令と、
    前記主データサーバの故障に応答して、前記複数のデータサーバから新しい主データサーバを選択し、前記カタログ・サーバのクラスタの記録内容を更新するための命令とを含み、
    前記コンピュータ・プログラムは、前記カタログ・サーバのクラスタの記録内容を更新するために、
    前記新しい主データサーバを含む新しいデータ状態情報を前記マスター・カタログ・サーバに登録するための命令と、
    前記新しいデータ状態情報を前記カタログ・サーバのクラスタ内の他のカタログ・サーバに複製するための命令と、
    を前記プロセッサに実行させるコンピュータ・システム。
  8. 前記新しい主データサーバを選択するための命令の前に、前記故障状態の主データサーバによって切断されたデータサーバのマジョリティ・グループ及びマイノリティ・グループ(いずれのトランザクションもコミットすることができないが、非ダーティ・リードは全て可能であるグループ)を管理するための命令と、
    前記マイノリティ・グループ内のデータサーバの機能を制御するための命令と、
    前記データサーバのマイノリティ・グループにおいて、データのダーティ・レコードをコンパイルするための命令と、
    前記マイノリティ・グループ内の各サーバをヘッドマスター・コントローラに接続しようと試みることによって、前記故障状態の主データサーバを除去するための命令と、
    前記ヘッドマスター・コントローラに接続された前記データサーバを再編成するための命令と、
    をさらに含む、請求項7に記載のコンピュータ・システム。
  9. ユーザからのサービス要求を、前記複数のデータサーバ内の最も近いデータサーバに経路指定するための命令をさらに含む、請求項7または請求項8に記載のコンピュータ・システム。
  10. コンピュータ上で実行されたときに、請求項1から請求項3までのいずれか一項に記載の方法の全てのステップを実行するコンピュータ・プログラム。
JP2011521543A 2008-08-05 2009-07-31 データセンタにわたる複数データサーバ間のデータ完全性を保持する方法およびシステム Active JP5102901B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/185,863 US8676760B2 (en) 2008-08-05 2008-08-05 Maintaining data integrity in data servers across data centers
US12/185,863 2008-08-05
PCT/EP2009/059931 WO2010015574A1 (en) 2008-08-05 2009-07-31 Maintaining data integrity in data servers across data centers

Publications (2)

Publication Number Publication Date
JP2011530127A JP2011530127A (ja) 2011-12-15
JP5102901B2 true JP5102901B2 (ja) 2012-12-19

Family

ID=41172355

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011521543A Active JP5102901B2 (ja) 2008-08-05 2009-07-31 データセンタにわたる複数データサーバ間のデータ完全性を保持する方法およびシステム

Country Status (7)

Country Link
US (1) US8676760B2 (ja)
EP (1) EP2281240B1 (ja)
JP (1) JP5102901B2 (ja)
KR (1) KR101547719B1 (ja)
CN (1) CN102105867B (ja)
AT (1) ATE518189T1 (ja)
WO (1) WO2010015574A1 (ja)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003058483A1 (en) 2002-01-08 2003-07-17 Seven Networks, Inc. Connection architecture for a mobile network
US8438633B1 (en) 2005-04-21 2013-05-07 Seven Networks, Inc. Flexible real-time inbox access
WO2006136660A1 (en) 2005-06-21 2006-12-28 Seven Networks International Oy Maintaining an ip connection in a mobile network
US8805425B2 (en) 2007-06-01 2014-08-12 Seven Networks, Inc. Integrated messaging
US9002828B2 (en) 2007-12-13 2015-04-07 Seven Networks, Inc. Predictive content delivery
US8862657B2 (en) 2008-01-25 2014-10-14 Seven Networks, Inc. Policy based content service
US20090193338A1 (en) 2008-01-28 2009-07-30 Trevor Fiatal Reducing network and battery consumption during content delivery and playback
US8909759B2 (en) 2008-10-10 2014-12-09 Seven Networks, Inc. Bandwidth measurement
CA2806527A1 (en) 2010-07-26 2012-02-09 Seven Networks, Inc. Mobile network traffic coordination across multiple applications
US8838783B2 (en) 2010-07-26 2014-09-16 Seven Networks, Inc. Distributed caching for resource and mobile network traffic management
WO2012060995A2 (en) 2010-11-01 2012-05-10 Michael Luna Distributed caching in a wireless network of content delivered for a mobile application over a long-held request
US8484314B2 (en) 2010-11-01 2013-07-09 Seven Networks, Inc. Distributed caching in a wireless network of content delivered for a mobile application over a long-held request
US8843153B2 (en) 2010-11-01 2014-09-23 Seven Networks, Inc. Mobile traffic categorization and policy for network use optimization while preserving user experience
WO2012071384A2 (en) 2010-11-22 2012-05-31 Michael Luna Optimization of resource polling intervals to satisfy mobile device requests
EP2661697B1 (en) 2011-01-07 2018-11-21 Seven Networks, LLC System and method for reduction of mobile network traffic used for domain name system (dns) queries
WO2012145544A2 (en) 2011-04-19 2012-10-26 Seven Networks, Inc. Device resource sharing for network resource conservation
GB2505585B (en) 2011-04-27 2015-08-12 Seven Networks Inc Detecting and preserving state for satisfying application requests in a distributed proxy and cache system
EP2702827A4 (en) 2011-04-27 2014-10-22 Seven Networks Inc MOBILE DEVICE DISCHARGING REQUESTS MOBILE APPLICATION TO REMOTE ENTITY TO KEEP MOBILE DEVICE RESOURCES AND NETWORK RESOURCES AND RELATED METHODS
US8671308B2 (en) 2011-05-02 2014-03-11 International Business Machines Corporation Optimizing disaster recovery systems during takeover operations
US8522068B2 (en) * 2011-05-02 2013-08-27 International Business Machines Corporation Coordinated disaster recovery production takeover operations
US8934414B2 (en) 2011-12-06 2015-01-13 Seven Networks, Inc. Cellular or WiFi mobile traffic optimization based on public or private network destination
WO2013086214A1 (en) * 2011-12-06 2013-06-13 Seven Networks, Inc. A system of redundantly clustered machines to provide failover mechanisms for mobile traffic management and network resource conservation
WO2013086455A1 (en) 2011-12-07 2013-06-13 Seven Networks, Inc. Flexible and dynamic integration schemas of a traffic management system with various network operators for network traffic alleviation
US9277443B2 (en) 2011-12-07 2016-03-01 Seven Networks, Llc Radio-awareness of mobile device for sending server-side control signals using a wireless network optimized transport protocol
US20130159511A1 (en) 2011-12-14 2013-06-20 Seven Networks, Inc. System and method for generating a report to a network operator by distributing aggregation of data
GB2499306B (en) 2012-01-05 2014-10-22 Seven Networks Inc Managing user interaction with an application on a mobile device
US8812695B2 (en) 2012-04-09 2014-08-19 Seven Networks, Inc. Method and system for management of a virtual network connection without heartbeat messages
US10263899B2 (en) 2012-04-10 2019-04-16 Seven Networks, Llc Enhanced customer service for mobile carriers using real-time and historical mobile application and traffic or optimization data associated with mobile devices in a mobile network
WO2014011216A1 (en) 2012-07-13 2014-01-16 Seven Networks, Inc. Dynamic bandwidth adjustment for browsing or streaming activity in a wireless network based on prediction of user behavior when interacting with mobile applications
US9591080B2 (en) 2012-09-17 2017-03-07 Tencent Technology (Shenzhen) Company Limited Method of establishing a network socket with a data server
CN103685398B (zh) * 2012-09-17 2015-08-19 腾讯科技(深圳)有限公司 通信连接建立方法及通信系统
US9161258B2 (en) 2012-10-24 2015-10-13 Seven Networks, Llc Optimized and selective management of policy deployment to mobile clients in a congested network to prevent further aggravation of network congestion
US20150227599A1 (en) * 2012-11-30 2015-08-13 Hitachi, Ltd. Management device, management method, and recording medium for storing program
US20140177497A1 (en) 2012-12-20 2014-06-26 Seven Networks, Inc. Management of mobile device radio state promotion and demotion
US9271238B2 (en) 2013-01-23 2016-02-23 Seven Networks, Llc Application or context aware fast dormancy
US8874761B2 (en) 2013-01-25 2014-10-28 Seven Networks, Inc. Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols
US9326185B2 (en) 2013-03-11 2016-04-26 Seven Networks, Llc Mobile network congestion recognition for optimization of mobile traffic
US9065765B2 (en) 2013-07-22 2015-06-23 Seven Networks, Inc. Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network
US9626261B2 (en) * 2013-11-27 2017-04-18 Futurewei Technologies, Inc. Failure recovery resolution in transplanting high performance data intensive algorithms from cluster to cloud
CN104714853B (zh) * 2013-12-16 2018-05-04 雅特生嵌入式计算有限公司 使用cots组件的容错故障安全计算机系统
US20160021171A1 (en) * 2014-07-18 2016-01-21 Jive Communications, Inc. Datacenter event stream processing in a network-based communication system
US10055307B2 (en) * 2015-06-30 2018-08-21 Vmware, Inc. Workflows for series of snapshots
US10656991B2 (en) * 2015-08-24 2020-05-19 International Business Machines Corporation Electronic component having redundant product data stored externally
CN105302865B (zh) * 2015-09-22 2019-04-26 中国联合网络通信集团有限公司 一种实现数据处理的方法及装置
US10681113B2 (en) 2015-10-14 2020-06-09 International Business Machines Corporation Geographically distributed highly available mailbox
US10346270B2 (en) 2016-05-25 2019-07-09 Arista Networks, Inc. High-availability network controller
US10621145B2 (en) 2016-10-18 2020-04-14 Arista Networks, Inc. Cluster file replication
US10270646B2 (en) * 2016-10-24 2019-04-23 Servicenow, Inc. System and method for resolving master node failures within node clusters
KR20180089682A (ko) * 2017-02-01 2018-08-09 삼성전자주식회사 블록체인 기반의 데이터의 무결성을 검증하는 전자 장치 및 방법
CN108196984A (zh) * 2017-12-30 2018-06-22 安华智能股份公司 一种用于维护数据完整性的计算机系统
US10951395B2 (en) * 2018-08-20 2021-03-16 Fujitsu Limited Data fetching in data exchange networks
US11068351B2 (en) * 2018-11-19 2021-07-20 International Business Machines Corporation Data consistency when switching from primary to backup data storage

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5596716A (en) * 1995-03-01 1997-01-21 Unisys Corporation Method and apparatus for indicating the severity of a fault within a computer system
KR0147150B1 (ko) * 1995-06-29 1998-09-15 김주용 디코더를 이용한 순환 리던던시 체크 오류 검출 및 정정 장치
JP4689137B2 (ja) 2001-08-08 2011-05-25 株式会社日立製作所 リモートコピー制御方法、及びストレージシステム
US7774469B2 (en) * 1999-03-26 2010-08-10 Massa Michael T Consistent cluster operational data in a server cluster using a quorum of replicas
US6865591B1 (en) * 2000-06-30 2005-03-08 Intel Corporation Apparatus and method for building distributed fault-tolerant/high-availability computed applications
US7574499B1 (en) * 2000-07-19 2009-08-11 Akamai Technologies, Inc. Global traffic management system using IP anycast routing and dynamic load-balancing
US20030126197A1 (en) * 2001-12-28 2003-07-03 Black Brad R. Efficient content placement using network proximity
US20030158909A1 (en) * 2002-02-20 2003-08-21 Simpson Shell S. Composite image generation
US7096228B2 (en) * 2002-03-27 2006-08-22 Microsoft Corporation Method and system for managing data records on a computer network
US7035858B2 (en) * 2002-04-29 2006-04-25 Sun Microsystems, Inc. System and method dynamic cluster membership in a distributed data system
JP3923863B2 (ja) * 2002-07-09 2007-06-06 株式会社日立製作所 リクエストルータ装置
US20040083213A1 (en) * 2002-10-25 2004-04-29 Yuh-Cherng Wu Solution search
JP4037257B2 (ja) 2002-12-26 2008-01-23 株式会社日立製作所 情報処理システムの制御方法、情報処理システム、及びプログラム
JP2004318743A (ja) * 2003-04-21 2004-11-11 Hitachi Ltd ファイル移送装置
US7747586B2 (en) * 2003-04-23 2010-06-29 International Business Machines Corporation Apparatus and method to map and copy computer files
US7120825B2 (en) * 2003-06-06 2006-10-10 Hewlett-Packard Development Company, L.P. Adaptive batch sizing for asynchronous data redundancy
JP2005196683A (ja) 2004-01-09 2005-07-21 Hitachi Ltd 情報処理システム、情報処理装置、及び情報処理システムの制御方法
US7523341B2 (en) * 2004-05-13 2009-04-21 International Business Machines Corporation Methods, apparatus and computer programs for recovery from failures in a computing environment
JP4377790B2 (ja) 2004-09-30 2009-12-02 株式会社日立製作所 リモートコピーシステムおよびリモートコピー方法
US7451347B2 (en) 2004-10-08 2008-11-11 Microsoft Corporation Failover scopes for nodes of a computer cluster
US7577805B2 (en) 2004-11-01 2009-08-18 Hitachi, Ltd. Using bandwidth and capacity parameters to control remote copy operations in storage systems
JP2006139477A (ja) 2004-11-11 2006-06-01 Hitachi Ltd 計算機システム、管理方法及びストレージネットワークシステム
US7490111B2 (en) * 2006-06-07 2009-02-10 International Business Machines Corporation Efficient handling of mostly read data in a computer server
US7480827B2 (en) 2006-08-11 2009-01-20 Chicago Mercantile Exchange Fault tolerance and failover using active copy-cat
US7975115B2 (en) * 2007-04-11 2011-07-05 Dot Hill Systems Corporation Method and apparatus for separating snapshot preserved and write data
US7849354B2 (en) * 2007-06-12 2010-12-07 Microsoft Corporation Gracefully degradable versioned storage systems
US8271967B2 (en) * 2008-06-09 2012-09-18 Ricoh Company, Ltd. MFP software update using web service

Also Published As

Publication number Publication date
US20100036885A1 (en) 2010-02-11
CN102105867B (zh) 2014-03-26
KR101547719B1 (ko) 2015-08-26
CN102105867A (zh) 2011-06-22
US8676760B2 (en) 2014-03-18
WO2010015574A1 (en) 2010-02-11
JP2011530127A (ja) 2011-12-15
EP2281240B1 (en) 2011-07-27
ATE518189T1 (de) 2011-08-15
KR20110044858A (ko) 2011-05-02
EP2281240A1 (en) 2011-02-09

Similar Documents

Publication Publication Date Title
JP5102901B2 (ja) データセンタにわたる複数データサーバ間のデータ完全性を保持する方法およびシステム
JP6514308B2 (ja) 複製されたデータインスタンスのためのフェイルオーバーおよび復旧
US9280430B2 (en) Deferred replication of recovery information at site switchover
US9519656B2 (en) System and method for providing a virtualized replication and high availability environment
US8230256B1 (en) Method and apparatus for achieving high availability for an application in a computer cluster
KR100326982B1 (ko) 높은 크기 조정 가능성을 갖는 고 가용성 클러스터 시스템 및 그 관리 방법
JP5443614B2 (ja) 複製されたデータインスタンスのモニタリング
US7490205B2 (en) Method for providing a triad copy of storage data
CN112099918A (zh) 容器化环境中的集群的实时迁移
US6757836B1 (en) Method and apparatus for resolving partial connectivity in a clustered computing system
US8856091B2 (en) Method and apparatus for sequencing transactions globally in distributed database cluster
CN110807064B (zh) Rac分布式数据库集群系统中的数据恢复装置
US20020194015A1 (en) Distributed database clustering using asynchronous transactional replication
JP2002041348A (ja) 可用性が高い通信を提供する通信パススルー共有システムリソース、ネットワークファイルサーバ及び方法
US8082344B2 (en) Transaction manager virtualization
US20100023564A1 (en) Synchronous replication for fault tolerance
US20070174657A1 (en) System and method for the management of failure recovery in multiple-node shared-storage environments
US20080172679A1 (en) Managing Client-Server Requests/Responses for Failover Memory Managment in High-Availability Systems
KR102016095B1 (ko) 트랜잭셔널 미들웨어 머신 환경에서 트랜잭션 레코드들을 유지하기 위한 시스템 및 방법
JP2002024069A (ja) 実行状態の回復が可能なファイルサーバ、トランザクションロギング機構、システムリソース及び実行状態の回復方法
JP2008059583A (ja) クラスタ・システムならびにクラスタ・システム内でレプリカをバックアップする方法およびプログラム製品
US7702757B2 (en) Method, apparatus and program storage device for providing control to a networked storage architecture
CN111949444A (zh) 一种基于分布式服务集群的数据备份与恢复系统及方法
CN106331166A (zh) 一种存储资源的访问方法及装置
CN107291821A (zh) 一种同城双活架构快速切换的方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120406

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120515

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120809

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: 20120904

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120928

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

Free format text: PAYMENT UNTIL: 20151005

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5102901

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150