JP2013257893A - 分散型サーバーシステムにおいてバックアップマネージャを転送するメッセージ - Google Patents

分散型サーバーシステムにおいてバックアップマネージャを転送するメッセージ Download PDF

Info

Publication number
JP2013257893A
JP2013257893A JP2013156995A JP2013156995A JP2013257893A JP 2013257893 A JP2013257893 A JP 2013257893A JP 2013156995 A JP2013156995 A JP 2013156995A JP 2013156995 A JP2013156995 A JP 2013156995A JP 2013257893 A JP2013257893 A JP 2013257893A
Authority
JP
Japan
Prior art keywords
computer system
worker
state
backup
manager
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
JP2013156995A
Other languages
English (en)
Other versions
JP5624655B2 (ja
Inventor
H Gerber Robert
エイチ.ガーバー ロバート
Thomas J Miller
ジェイ.ミラー トーマス
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.)
Microsoft Corp
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2013257893A publication Critical patent/JP2013257893A/ja
Application granted granted Critical
Publication of JP5624655B2 publication Critical patent/JP5624655B2/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
    • 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/2041Error 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 with more than one idle spare processing component
    • 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
    • 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/2033Failover techniques switching over of hardware resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Hardware Redundancy (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】分散型サーバーシステムのワーカコンピューターの数を、セントラルサーバーの通信容量に悪影響を与えることなく増加させる。
【解決手段】主マネージャコンピュータ210に加え、1つまたは複数のバックアップマネージャ220,230を備える。バックアップマネージャは、分散型サーバーシステム200の状態を維持するコマンドを主マネージャから受信し、ワークタスクをワーカー240〜260に転送し、ワーカーから受信した応答を集め主マネージャに送信する。さらに、主マネージャが機能を停止する場合、バックアップマネージャが、主マネージャの機能を担うように再構成される。
【選択図】図2

Description

本発明は、分散型サーバーシステムにおいてバックアップマネージャを転送するメッセージに関する。
分散型サーバーシステムは、ワークタスクを任意の数の通信接続されたコンピューターシステムに分散するセントラルサーバーを含むことができる。セントラルサーバーは、典型的なサーバークラスソフトウェアアプリケーションまたはソフトウェアサービスを実行するサーバーコンピューターとすることができる。通信接続されたコンピューターシステムは、ディスクリートサーバークラスコンピューターシステム、パーソナルコンピューターシステム等とすることができる。通信接続されたコンピューターシステムを、ネットワークによって同じ物理的場所に配置することができ、または異なる物理的場所に分散することができる。
セントラルサーバーによって分散されるワークタスクは、コンピューターシステムがコンピューターソフトウェアにおいて実行することができる任意の種類のタスク、コマンドまたは関数呼び出しとすることができる。例えば、ワークタスクは、計算、データを記憶するコマンド等とすることができる。セントラルサーバーは、任意の典型的なコンピューター通信方法を使用して、ワークタスクを通信接続されたコンピューターシステムに送信することができる。例えば、セントラルサーバーは、HTTP(hypertext transport protocol)、HTTP経由のRPC(remote procedure call)、DCOM(distributed component object model)システム等を使用して、ワークタスクを送信することができる。
セントラルサーバーはさらに、ソフトウェアアプリケーションまたはソフトウェアサービスを実行して、分散型サーバーシステムの現在の「状態」を管理および/または維持することができる。より詳細には、セントラルサーバーは、分散型サーバーシステム外部のエンティティに対して分散型サーバーシステム全体を表すことができる。従って、分散型サーバーシステムの状態に関する情報を探索する外部エンティティは、セントラルサーバーと通信を行い、セントラルサーバーは、分散型サーバーシステム全体の現在の状態に応答することができる。通信接続されたコンピューターシステムは、分散型コンピューターシステムの現在の状態を維持することもできるが、現在の状態はセントラルサーバーによって管理されるため、通信接続されたコンピューターシステムが分散型コンピューターシステムの現在の状態の維持を行うことは必須ではない。さらに、セントラルサーバーは、通信接続されたコンピューターシステムが互いに通信接続されたコンピューターシステムに関してそれぞれが同じ「状態」であることを確保することができる。
そのような分散型サーバーシステムによって実行されるワークタスク量は、セントラルサーバーに通信接続されたコンピューターシステムの数に関連することができる。例えば、各通信接続されたコンピューターシステムは、ワークタスクを実行することができる定率を有することができる。分散型サーバーシステムに割り当てられたワークタスク総量が通信接続されたコンピューターシステムが実行することができる量よりも多い場合、分散型サーバーシステムは、全体のワークタスクを完了させる際に低速化を起こす可能性がある。通信接続されたコンピューターシステムを分散型サーバーシステムにさらに追加することによって、分散型サーバーシステムのワークタスク容量を増加させ、全体のワークタスクを完了させる際のそのような低速化を抑制することができる。
しかし通信接続されたコンピューターシステムを分散型サーバーシステムにさらに追加した結果、1つまたは複数の通信の問題が起こる場合がある。例えば、セントラルサーバーは、効率的にワークタスクを送信し、少数の通信接続されたコンピューターシステムから受信することができるかもしれない。分散型サーバーシステムの仕事容量は、通信接続されたコンピューターシステムのそれぞれを追加するにつれて、増加することができる。従って、セントラルサーバーによって実行される通信量も増加することができる。結果として、セントラルサーバーは、増加した数の通信を効率的に管理できないかもしれないし、そのような分散型サーバーシステムによって実行することができるワークタスク全体の数が減少するかもしれない。
そのような分散型サーバーシステムは、冗長的に情報を格納するよう構成された1つまたは複数のバックアップコンピューターを使用することができる。そのようなバックアップコンピューターシステムは、バックアップマネージャまたはバックアップサーバーとしても知られている。バックアップマネージャまたはバックアップサーバーを、セントラルサーバーを冗長的に格納されてきた特定の「状態」に修復するよう構成することができる。しかし、1つまたは複数のバックアップマネージャまたはバックアップサーバーに対して通信の状態を変更する場合、セントラルサーバーは、実行される通信の総数も増加し、分散型サーバーシステム内の通信性能を再度低下させる結果となる可能性がある。
通信接続されたコンピューターシステムの数を、セントラルサーバーの通信容量に悪影響を与えることなく増加させることができるシステムが有効である。
本開示の簡略化した概要を以下に示し、基本的な理解を読者に提供する。本概要は、本開示の広範囲の要約ではない。本概要は、本発明の重要な/重大な要素を特定するものでも、本発明の範囲を明確にするものでもない。本概要の目的は、後に示すより詳細な説明の前置きとして、本明細書で開示したいくつかの概念を簡略化した形式で示すことである。
本実施例は、分散型サーバーシステムにおいてバックアップマネージャを転送するメッセージの機構および技術を提供する。サーバーは、他のコンピューターシステムに代わってソフトウェアサービスを実施し、実行するコンピューターシステムとすることができる。そのような他のコンピューターシステムは、クライアント、他のサーバー等として知られている。サーバーは、他のコンピューターシステムが要求をサーバーに伝えることができるように、典型的なコンピューター通信ネットワークを使用して他のコンピューターシステムに通信接続することができる。サーバーは、要求への適切な応答を準備し、伝えることができる。
分散型サーバーは、1つまたは複数のサーバーのソフトウェアサービスを実行する単一のコンピューターシステム、またはセントラルサーバーに通信接続された複数のコンピューターシステム等を含むことができる。分散型サーバーシステムの主マネージャサーバーは、1つまたは複数の他のコンピューターシステムまたはサーバーに通信接続することができる。主マネージャは、クライアント要求を受信し、全体の動作または動作の一部を通信接続されたコンピューターシステムに委譲することができる。通信接続されたコンピューターシステムは、動作を実行し、成功または失敗を示す応答メッセージを送信することができる。そのような動作または動作の一部は、「ワーク」として知られている。
主マネージャは、分散型サーバーシステムの「状態」を維持することもできる。そのような状態は、主マネージャによって管理された情報またはソフトウェアアプリケーションの現在の状態を示すことができる。例えば、セントラルマネージャは、分散型サーバーシステムによって格納されたデータベースの現在の状態を維持することができる。
任意の数の通信接続されたコンピューターシステムは、バックアップマネージャまたはバックアップサーバーとして機能するよう指定することができる。主マネージャは、分散型サーバーシステムの状態に関連している情報を冗長的に格納する命令または情報を、1つまたは複数のそのようなバックアップマネージャに送信することができる。主マネージャは、他の情報またはデータを1つまたは複数のバックアップマネージャに送信することもできる。イベントにおいて状態情報、命令、またはデータのいずれかが主マネージャ上で失われた、または破損した場合、それらの状態情報、命令、またはデータを、バックアップマネージャのいずれかから復旧することができる。そのようなバックアップマネージャは、主マネージャにバックアップ動作が成功したことを知らせる実行可能な命令を含むこともできる。
主マネージャを、1つまたは複数のそのようなバックアップマネージャに通信接続することができる。バックアップサーバーのそれぞれを、「ワーカー」とも呼ばれる、1つまたは複数のワーカーコンピューターシステムに通信接続することができる。主マネージャは、コマンドを1つまたは複数のバックアップマネージャに伝え、分散型サーバーシステムの現在の「状態」と関連付けられたIDを閉じる動作を開始することができる。コマンドはさらに、分散型サーバーシステムの現在の状態を持続、または格納する命令を含むことができる。
各バックアップサーバーがコマンドと関連付けられた動作を完了した時点で、各バックアップサーバーは、成功または失敗を示すメッセージを主マネージャに送信することができる。1つまたは複数のバックアップサーバーが応答しない場合、主マネージャは、全てのバックアップサーバーが応答するまで待機するか、または、主マネージャは、応答しないバックアップサーバーに割り当てられた任意のワーカーを応答するバックアップサーバーに再度割り当てるための選択をすることができる。代替的な実施形態において、主マネージャは、バックアップサーバーがまだ応答していないことのみを認めることができ、および、応答しないバックアップサーバーに割り当てられた任意のワーカーを再度割り当てる後の時間まで待機することができる。
主マネージャは次に、コマンドを1つまたは複数のバックアップマネージャのそれぞれに伝え、「ワーク」を送信することができる。そのような「ワーク」は、現在の状態ID(state identifier)によって表された現在のタスクまたは動作と関連付けられたタスクまたは動作とすることができる。それぞれのバックアップマネージャは次に、ワークを実行するコマンドを1つまたは複数の通信接続されたワーカーのそれぞれに転送することができる。各ワーカーがワークを完了すると、各ワーカーは、独立して新しいワークを決定するか、または、他のワーカーと通信を行って実行すべき任意の新しいワークを決定することができる。各ワーカーは次に、ワーカーに割り当てられたバックアップマネージャと通信を行うことができ、現在の状態IDと関連付けられたワークが完了したことを確認し、新しいワークを要求することができる。
1つまたは複数のバックアップマネージャのそれぞれは次に、1つまたは複数のワーカーのそれぞれから受信した情報を集めることができる。ワーカーの1つが応答しなかったイベントにおいて、バックアップマネージャは、応答しない状態に関する情報を集められた情報に追加することができる。1つまたは複数のバックアップサーバーのそれぞれは次に、主マネージャと通信を行い、現在の状態IDが閉じていることを示すことができる。1つまたは複数のバックアップマネージャのそれぞれは、ワーカーのいずれかから受信した任意の新しいワーク要求を転送することもできる。
付随する特徴の多くは、添付図面面に関連して考慮される以下の詳細な説明を参照することによって、より容易に認識されると同時に、より理解されるようになるだろう。
本説明は、添付図面面を踏まえて読まれる以下の詳細な説明によってより理解されるだろう。
従来の分散型サーバーシステムを示すブロック図である。 分散型サーバーシステムにおいてバックアップサーバーを転送する例示的なメッセージを示すブロック図である。 図2に見られる分散型サーバーシステムの状態と関連付けられたIDを閉じることと関連付けられた例示的な通信を示す図である。 主マネージャが低速化している、または応答しないバックアップマネージャを処理する例示的な方法を示す図である。 バックアップマネージャが低速化している、または応答しないワーカーを処理する例示的な方法を示す図である。 説明したシステムおよび方法を実施する例示的なコンピューター装置を示す図である。
同種の参照数字は、添付図面面の同種の部分を指定するのに使用される。
添付図面に関連して以下に与えた詳細な説明は、本実施例の説明を意図しており、本実施例を構成または利用できる唯一の形態を表すことを意図していない。本説明は、本実施例の機能および本実施例を構成し、動作するステップの順序を示す。しかし、同一のもしくは同等の機能および順序を、異なる実施例によって達成することができる。
本実施例を、分散型サーバーシステムにおいてバックアップマネージャを転送するメッセージを実施するものとして本明細書に説明し、示すが、説明するシステムは、例示として与えられており、これに限定されない。当業者が理解するように、本実施例は、さまざまな異なる種類の動的なフラグメントマッピングシステムのアプリケーションに適している。
図1は、従来の分散型サーバーシステム100を示すブロック図である。従来の分散型サーバーシステム100は、従来型セントラルサーバー120、従来型バックアップサーバー140、従来型バックアップサーバー150、従来型サーバー160、従来型サーバー170、および従来型サーバー180を含むことができる。
例示的な従来の分散型サーバーシステム100において、従来型バックアップサーバー140と従来型バックアップサーバー150のそれぞれを、従来型セントラルサーバー120に通信接続することができる。従来型サーバー160、従来型サーバー170、および従来型サーバー180のそれぞれを、従来型セントラルサーバー120に通信接続することもできる。そのような従来の分散型サーバーシステム100は、本来論理的であって、つまりそのような通信接続は物理的に存在しないので、その代わりに、そのような通信接続は、従来の分散型サーバーシステム100において参加者間で通信する順序を示すことができる。
従来の分散型サーバーシステム100は、任意の種類の従来の分散型サーバーアーキテクチャとすることができる。例えば、従来の分散型サーバーシステム100は、従来の分散型データベースサーバーシステム、従来の分散型媒体サーバーシステム等とすることができる。従来型セントラルサーバー120は、ソフトウェアサービスを他のコンピューターシステムに提供するよう構成された任意の種類の従来型サーバーコンピューターシステムとすることができる。従来型セントラルサーバー120は、外部エンティティからの要求を受信することができる。例えば、エラー!参照ソースが見つからない(Error!Reference source not found.)等で、別のサーバーは、従来型セントラルサーバー120と同じネットワークドメインにおいて実行するワールドワイドウェブサーバー、またはインターネットを経由して通信接続された外部クライアント等とすることができる。
従来型セントラルサーバー120は、要求を任意の従来型サーバー160、従来型サーバー170、および/または従来型サーバー180に送信し、タスクを実行することができる。従来型サーバー160、従来型サーバー170、および/または従来型サーバー180のそれぞれは、タスクを実行し、従来型セントラルサーバー120に応答してタスクの完了を示すことができる。さらに、従来型セントラルサーバー120は、バックアップコマンド、または冗長的に情報を格納するコマンドを任意の従来型バックアップサーバー140および/または従来型バックアップサーバー150に送信することができる。
任意の数の従来型サーバーを従来の分散型サーバーシステム100に追加し、従来の分散型サーバーシステム100の全体のタスク実行容量を増加することができる。より多くの従来型サーバーが従来型セントラルサーバー120に通信接続されるので、従来型セントラルサーバー120によって送受信される通信量は、従来型セントラルサーバー120に通信の低速化が起こる程度まで増加する可能性がある。
より多くの従来型サーバーを、付随する通信ボトルネックなしで従来型サーバーシステムに追加することができるシステムが有効である。
図2は、分散型サーバーシステム200においてバックアップサーバーを転送する例示的なメッセージを示すブロック図である。分散型サーバーシステム200は、主マネージャ210、バックアップマネージャ220、バックアップマネージャ230、ワーカー240、ワーカー250、およびワーカー260を含むことができる。
分散型サーバーシステム200において、主マネージャ210を、バックアップマネージャ220およびバックアップマネージャ230のそれぞれに通信接続することができる。バックアップマネージャ220を、ワーカー240およびワーカー250のそれぞれに通信接続することができる。バックアップマネージャ230を、ワーカー260に通信接続することができる。このような分散型サーバーシステム200は、ほんの一例である。任意の数のバックアップマネージャを、主マネージャ210に通信接続することができる。同様に、任意の数のワーカーを、任意の数のバックアップマネージャに通信接続することができる。例えば、バックアップサーバーの数は、エージェントサーバーの数の平方根とすることができる。そのような分散型サーバーシステム200も、本来論理的であって、つまりそのような通信接続は物理的に存在しないので、その代わりに、そのような通信接続は、分散型サーバーシステム200において参加者間で通信する順序を示すことができる。
通信接続のそれぞれを、WAN(wide area network)、LAN(local area network)等のコンピューターネットワークを使用して行うことができる。代替的な実施例において、主マネージャ、バックアップマネージャ、およびワーカーのそれぞれは、単一のコンピューターシステム上で実行するソフトウェアサービスとすることができ、それらの通信接続のそれぞれを、マイクロソフトWindows(登録商標)等のオペレーティングシステムに含まれるソフトウェア通信サービスを使用して行うことができる。
主マネージャ210は、サーバークラスオペレーションシステムを実行するサーバーコンピューターシステムおよびそれに関連するソフトウェアサービスとすることができる。主マネージャ210はさらに、分散型サーバーシステム200の「状態」と関連付けられた1つまたは複数のIDを作成し、管理するためのソフトウェアサービスを実行することができる。そのような状態は、分散型サーバーシステム200の代わりに主マネージャ210によって管理し、維持される情報のディスクリートスナップショット、または一時的な表示を示すことができる。つまり状態は、システムの任意の時点における任意の数のデータ配列、命令等を表すことができる。このように主マネージャ210は、特定の時点における分散型サーバーシステム200の状態を一意的に識別することができる状態に対応するIDを割り当てることができる。
主マネージャ210を、ワーク「タスク」を管理し、分散するよう構成することもできる。ワーク「タスク」は、コンピューターシステムによって実行することができる任意の種類の機能性とすることができる。例えば「ワーク」は、数値計算、データもしくは他の情報を格納するコマンド、または任意の他の種類のコンピューターソフトウェア機能とすることができる。主マネージャ210はさらに、ワークを状態IDと関連付けることができる。特に、主マネージャ210は、現在の状態および現在の状態IDと実行されたワーク総量とを結び付けることができる。より詳細には、分散型サーバーシステム200の現在の状態は、分散型サーバーシステム200の状態が初期化されてから実行された「ワーク」のそれぞれのディスクリート装置の累積集計に相当することができる。
主マネージャ210は、要求をバックアップマネージャ220およびバックアップマネージャ230のそれぞれに送信し、状態IDと関連付けられた状態を持続することができる。バックアップマネージャ220およびバックアップマネージャ230のそれぞれを、各状態IDおよび主マネージャ210から受信した状態IDと関連付けられた状態を冗長的に格納するよう構成することができる。この方法において、バックアップマネージャ220またはバックアップマネージャ230のいずれかは置き換えることができ、主マネージャ210の機能は、主マネージャ210に主マネージャ210が機能停止を引き起こす障害が起こることを想定することができる。さらに、バックアップマネージャ220およびバックアップマネージャ230のそれぞれが、状態を持続している主マネージャ210に伝えることができるようになった時点で、主マネージャ210は、コマンドをバックアップマネージャ220およびバックアップマネージャ230のそれぞれに伝え、現在の状態IDと関連付けられたワークをワーカー240、ワーカー250、および/またはワーカー260のそれぞれに送信することができる。
ワーカー240、ワーカー250、およびワーカー260のそれぞれは、任意のバックアップマネージャ220および/またはバックアップマネージャ230から受信したワークタスクと関連付けられた機能性を実行することができるコンピューターシステムとすることができる。さらに、ワーカー240、ワーカー250、およびワーカー260のそれぞれを、通信接続することもでき、情報、データ等を互いに共有することができる。ワーカー240、ワーカー250、およびワーカー260のそれぞれが割り当てられたワークタスクを完了した時点で、それぞれのワーカーは、それらの情報をバックアップマネージャ220、またはバックアップマネージャ230のいずれかに返信することができる。
バックアップマネージャ220およびバックアップマネージャ230のそれぞれは、ワーカー240、ワーカー250またはワーカー260のいずれかから受信した応答を集めることができる。バックアップマネージャ220およびバックアップマネージャ230のそれぞれは次に、集めた応答を主マネージャ210に返信することができる。ワーカー240、ワーカー250、ワーカー260のいずれかの応答が低速化しているまたは応答しないイベントにおいて、バックアップマネージャ220またはバックアップマネージャ230のそれぞれは、集められた応答内に応答が低速化しているまたは機能していないワーカーの識別を表示する情報を含むことができる。
上述のように、バックアップマネージャ220およびバックアップマネージャ230のそれぞれは常に、分散型サーバーシステム200の状態をバックアップまたは冗長的に格納し、主マネージャ210の役割を担うことができる。従って、分散型サーバーシステム200の構成は、動的とすることができ、それらの通信接続は、分散型サーバーシステム200に含まれる低速化しているもしくは機能しないマネージャまたはワーカーを反映するように変更することができる。つまり、主マネージャ210とバックアップマネージャ220とバックアップマネージャ230との間の通信接続によって、バックアップマネージャ220、またはバックアップマネージャ230のいずれかが主マネージャ210の機能的責任を担うことができるように再構成することができる。
上述のように、主マネージャ210は、集めた応答を分析し、ワーカーが低速化しているまたは応答していないことを判定することができる。主マネージャ210は次に、対応するバックアップマネージャに通知し、分散型サーバーシステム200から応答が低速化しているまたは機能していないワーカーを除去することができる。主マネージャ210は次に、新しい送信メッセージを残ったワーカーのそれぞれに送り、状態と関連付けられた全てのワークが完了できるように、低速化しているまたは機能していないワーカーに割り当てられたワークを実行することができる。
説明した機能性は、任意の数のサーバーコンピューターシステム上で実施することができる。例えば、1コンピューターシステムは、セントラルマネージャ、バックアップマネージャ、ワーカー、またはそれらの任意の組み合わせに関連しているソフトウェアサービスを実行することができる。図3の、エラー!参照ソースが見つからない(Error!Reference source not found.)機能は、図2に見られる主マネージャ210の状態と関連付けられたIDを閉じることと関連付けられた例示的な通信を示す。
図2の主マネージャ210は、コマンドを図2の任意のバックアップマネージャ220または図2のバックアップマネージャ230に送信することができる。図2について述べたように、そのようなコマンドは、状態IDと関連付けられた状態を閉じる命令を含むことができる。そのようなコマンドはさらに、現在の状態IDと関連付けられた状態を持続するコマンドを含むことができる。
バックアップマネージャ220およびバックアップマネージャ230のそれぞれは次に、主マネージャ210によって要求された状態を持続することができる。バックアップマネージャ220およびバックアップマネージャ230のそれぞれが現在の状態IDと関連付けられた状態を持続した時点で、バックアップマネージャ220およびバックアップマネージャ230のそれぞれは、現在の状態IDと関連付けられた状態が持続していることを表示する応答320を送信することができる。主マネージャ210は、次に進む前にバックアップマネージャのそれぞれから受信すべき全ての応答を待つことができる。
主マネージャ210は次に、コマンド330をバックアップマネージャ220およびバックアップマネージャ230のそれぞれに送信し、バックアップマネージャ220およびバックアップマネージャ230のそれぞれが、ワーカーのそれぞれに対する状態IDと関連付けられた状態に対応するワークを現在送信することができることを示す。バックアップマネージャ220およびバックアップマネージャ230のそれぞれは次に、コマンド340を図2のワーカー240、図2のワーカー250、および図2のワーカー260のそれぞれに送信し、現在の状態IDと関連付けられた状態を閉じ、ワーカーに割り当てられた現在の状態IDと関連付けられたワークを実行することができる。それぞれのワーカーに送信されたコマンド340は、同一とすることができ、各ワーカーは、コマンド340の一部として送信されたワークが割り当てられていない部分を無視することができる。代替的な実施例において、コマンド340は、それぞれのワーカーに対して個々に作成することができ、コマンド340が送信されたワーカーに割り当てられたワークのみを含むことができる。
ワーカー240、ワーカー250、およびワーカー260のそれぞれがワークを完了した時点で、それぞれのワーカーは、現在の状態IDと関連付けられた状態を局所的に閉じることができる。ワーカー240、ワーカー250、およびワーカー260のそれぞれは次に、実行すべき任意の追加のワークを決定することができる。そのような決定は、ワーカー240、ワーカー250、およびワーカー260のそれぞれが互いに通信する時に行うことができる。代替的な実施例において、ワーカー240、ワーカー250、およびワーカー260のそれぞれは、独立して、現在の状態IDと関連付けられた状態を分析し、実行すべき任意の追加のワークを決定することができる。ワーカー240、ワーカー250、およびワーカー260のそれぞれは、メッセージ350をそれらに割り当てられたバックアップマネージャ220またはバックアップマネージャ230のいずれかのバックアップマネージャに送信することができ、ワーカー240、ワーカー250、およびワーカー260のそれぞれが、現在の状態IDと関連付けられた状態を閉じたことを示す。そのようなメッセージは、実行すべき任意の追加の新しいワークに対する要求を含むこともできる。
バックアップマネージャ220およびバックアップマネージャ230のそれぞれは次に、メッセージ360を主マネージャ210に送信することができ、現在の状態IDと関連付けられた状態が閉じられたことを示す。また、メッセージ360は、ワーカーから受信した時に実行すべき任意の新しいワークを含むことができる。
図4に、低速化しているまたは応答しないバックアップマネージャを処理する主マネージャの例示的な方法400を示す。そのような主マネージャは、図2の主マネージャ210とすることができる。
ブロック410では、現在の状態IDと関連付けられた状態を閉じるコマンドを1つまたは複数のバックアップマネージャに送信する動作を示すことができる。そのようなバックアップマネージャは、図2のバックアップマネージャ220および図2のバックアップマネージャ230とすることができる。そのような現在の状態IDを閉じるコマンドは、図3のコマンド310または図3のコマンド330とすることができる。
ブロック420では、既定の時間間隔内に応答が受信されたかどうかを判定する動作を示すことができる。そのような時間間隔は、任意の長さとすることができる。あるいは、そのような時間間隔を、分散型サーバーシステムの予想される実行の全レベルと関連付けることができる。肯定的な判定に応じて、フローはブロック430に続く。否定的な判定に応じて、フローはブロック440に続く。
ブロック430では、主マネージャの標準動作を継続する動作を示すことができる。標準動作は、主マネージャの機能に従って実行される任意の動作を示すことができる。
ブロック440では、応答の最小数が受信されたかどうかを判定する動作を示すことができる。最小数は、分散型サーバーシステムに含まれるバックアップマネージャの全数、バックアップマネージャに接続されたワーカーの数等を含む任意の情報に基づいて判定することができる。肯定的な判定に応じて、フローはブロック450に続く。否定的な判定に応じて、フローはブロック460に続く。
ブロック450では、低速化しているまたは応答しないバックアップマネージャを回避する動作を示すことができる。そのような回避を、低速化しているまたは応答しないバックアップマネージャに割り当てられた任意のワーカーを、応答するバックアップマネージャに一時的に再度割り当てることによって実行することができる。
ブロック460では、バックアップマネージャの数が少なすぎて既定の実行レベルを分散型データベースシステム内に確保できないこと、または分散型データベースシステムに対するバックアップマネージャの数が少なすぎて正確に機能できないことを判定された動作を示すことができる。その動作は、一定時間待機している動作を含むこともできる。追加のバックアップマネージャが待機時間内に応答しなければ、分散型データベースシステムは、例えば追加の応答するバックアップマネージャが追加される時間まで機能を停止することができる。フローは420に戻って継続することができる。
図5に低速化しているまたは応答しないワーカーを処理するバックアップマネージャの例示的な方法500を示す。そのようなバックアップマネージャは、図2のバックアップマネージャ220または図2のバックアップマネージャ230とすることができる。そのようなワーカーは、バックアップマネージャ230とすることができ、ブロック510では、状態に対応するワークを実行するコマンドを1つまたは複数のワーカーに送信する動作を示すことができる。代替的な実施形態において、コマンドが送信され、ワーカーが現在の状態IDと関連付けられた状態を閉じなければならないことを示す。しかし、その動作は、ワーカーからの応答を要求することができる任意のコマンドを含むことができる。
ブロック520では、ブロック510のコマンドが送信された各ワーカーが既定の時間間隔内に応答しているかどうかを判定する動作を示すことができる。そのような時間間隔は、任意の時間間隔とすることができ、分散型サーバーシステムと関連付けられた実行の全レベルと関連付けることができる。肯定的な判定に応じて、フローはブロック530に続く。否定的な判定に応じて、フローはブロック540に続く。
ブロック530では、バックアップマネージャが全てのワーカーの応答を集めて単一メッセージを形成し、その集められたメッセージをセントラルマネージャに送信する動作を示すことができる。
ブロック540では、バックアップマネージャが全てのワーカーの応答を集めて単一メッセージを形成し、その集められたメッセージをセントラルサーバーに送信する動作を示すことができる。集められたメッセージは、ブロック520において識別された任意の低速化しているまたは機能しないワーカーの身元を示す情報を含むことができる。
図6に、任意の前述したサーバーコンピューターシステムまたはクライアントコンピューターシステム等の説明したシステム、方法、およびソフトウェアサービスを実施する例示的なコンピューター装置600を示す。それらの最も基本的な構成において、コンピューター装置600は典型的に、少なくとも1つのCPU(central processing unit)およびメモリー610を含む。
正確な構成およびコンピューター装置の種類に依存する場合、メモリー610は、揮発性(RAM等)、不揮発性(ROM、フラッシュメモリー等)、またはそれら2つのある組み合わせとすることができる。さらに、コンピューター装置600は、追加の機能/機能性を有することもできる。例えば、コンピューター装置600は、複数のCPUを含むことができる。説明した方法を、コンピューター装置600の任意の処理装置による任意の方法で実行することができる。例えば、説明したプロセスを、同時に複数のCPUによって実行することができる。
コンピューター装置600は、磁気もしくは光ディスクまたは磁気もしくは光テープを含む付加的な記憶装置(取り外し可能および/または取り外し不可能)を含むこともできるがこれらに限定されない。そのような付加的な記憶装置を、図6の記憶装置615に示す。コンピューター記憶媒体は、コンピューター読み取り可能な命令、データ構造、プログラムモジュールもしくは他のデータ等の情報を格納する任意の方法または技術において実施される揮発性および不揮発性媒体、取り外し可能および取り外し不可能媒体を含む。メモリー610および記憶装置615は、コンピューター記憶媒体の全ての例である。コンピューター記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリーもしくは他のメモリー技術、CD−ROM、DVD(digital versatile disk)もしくは他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、または所望の情報を記憶するために使用でき、コンピューター装置600によってアクセスすることができる任意の他の媒体を含むが、これらに限定されない。そのような任意のコンピューター記憶媒体は、コンピューター装置600の一部とすることができる。
コンピューター装置600は、通信装置640を含むこともでき、当該装置が他の装置と通信することを可能とする。通信装置640は、通信媒体の一例である。通信媒体は、典型的には、コンピューター読み取り可能な命令、データ構造、プログラムモジュール、または他のデータを、搬送波または他の転送機構等の変調データ信号として具現化したものであり、また、任意の情報配信媒体を含む。用語「変調データ信号」は、1つまたは複数のそれらの特徴セットを有するか、または情報を信号にエンコードするような方法で変更された信号を意味する。一例として通信媒体には、有線ネットワークまたは直接有線接続、および音響、RF、赤外線ならびに他の無線媒体等の無線媒体を含むが、これらに限定されない。本明細書で使用されている用語コンピューター読み取り可能な媒体または装置読み取り可能な媒体は、コンピューター記憶媒体および通信媒体の両方を含む。説明した方法を、データ、コンピューター実行可能な命令等の任意の形態の任意のコンピューター読み取り可能な媒体にエンコードすることができる。
コンピューター装置600は、キーボード、マウス、ペン、音声入力装置、タッチ入力装置等の入力装置635を有することもできる。ディスプレイ、スピーカー、プリンター等の出力装置630も含むことができる。これら全ての装置は、当技術分野で周知であり、詳細に説明する必要はない。
当業者は、プログラム命令を格納するのに利用される記憶装置を、ネットワーク上に分散することができることを認識するだろう。例えばリモートコンピューターは、ソフトウェアとして説明した例示的なプロセスを格納することができる。ローカルコンピューターまたはターミナルコンピューターは、リモートコンピューターにアクセスし、ソフトウェアの一部または全てをダウンロードしてプログラムを実行することができる。あるいはローカルコンピューターは、必要に応じてソフトウェアの一部をダウンロードすることができ、またはローカル端末におけるいくつかのソフトウェアの命令およびリモートコンピューター(またはコンピューターネットワーク)におけるいくつかのソフトウェアの命令を実行することによって、分散して処理することができる。当業者は、当業者に周知である従来を用いて、ソフトウェアの命令の全てまたは一部を、DSP、プログラム可能な論理アレイ等の専用回線で実行することができることも認識するだろう。

Claims (11)

  1. 主マネージャコンピューターシステムと前記主マネージャコンピューターシステムに通信接続された1つまたは複数のバックアップマネージャコンピューターシステムと、前記バックアップマネージャコンピューターシステムに通信接続された1つまたは複数のワーカーコンピューターシステムとを備えた分散型サーバーシステムにおいてバックアップマネージャコンピューターシステムが実行する方法であって、
    前記分散型サーバーシステムの状態を持続する要求を主マネージャコンピューターシステムから受信するステップであって、前記状態は、当該状態に関連付けられたIDに対応する、ステップと、
    前記IDに対応する状態が持続されていることを示す応答を、前記主マネージャコンピューターシステムに送信するステップと、
    前記IDと関連付けられたタスクを送信する要求を前記主マネージャコンピューターシステムから受信するステップであって、前記IDおよび前記状態は、前記状態が初期化されてから実行されたタスク総量と結び付く、ステップと、
    前記IDと関連付けられた前記タスクを1つまたは複数のワーカーコンピューターシステムに送信するステップと、
    前記ワーカーコンピューターシステムから受信したそれぞれの応答を集めて、前記集めた応答を前記主マネージャコンピューターシステムに送信するステップであって、前記ワーカーコンピューターシステムのうちのあるワーカーコンピューターシステムが応答していない場合、前記応答していないワーカーコンピューターシステムの接続状態に関する情報を、応答の代わりに用いる、ステップと、
    前記応答していないワーカーコンピューターシステムに割り当てられたタスクを、前記ワーカーコンピューターシステムのうちの応答するワーカーコンピューターシステムに再度割り当てる要求を、前記主マネージャコンピューターシステムから受信するステップと
    を備え、前記バックアップマネージャコンピューターシステムは、前記IDおよび当該IDに対応する前記分散型サーバーシステムの状態を格納し、前記主マネージャコンピューターシステムが機能を停止する場合、前記主マネージャコンピューターシステムの機能を担うように再構成されることを特徴とする方法。
  2. 前記分散型サーバーシステムの前記状態を持続するステップをさらに備えることを特徴とする請求項1に記載の方法。
  3. 前記タスクが実行されたことを示す応答を前記ワーカーコンピューターシステムから受信するステップをさらに備えることを特徴とする請求項1に記載の方法。
  4. 前記IDと関連付けられた前記タスクを1つまたは複数のワーカーコンピューターシステムに送信するステップはさらに、前記分散型サーバーシステムの前記状態と関連付けられた前記IDを持続する要求を送信するステップを含むことを特徴とする請求項1に記載の方法。
  5. 実行すべき新しいタスクを含む応答を、前記ワーカーコンピューターシステムから受信するステップをさらに備えることを特徴とする請求項1に記載の方法。
  6. 前記ワーカーコンピューターシステムから受信した1つまたは複数の新しいタスク要求を含む応答を、前記主マネージャコンピューターシステムに送信するステップをさらに備えることを特徴とする請求項1に記載の方法。
  7. 主マネージャコンピューターシステムと前記主マネージャコンピューターシステムに通信接続された1つまたは複数のバックアップマネージャコンピューターシステムと、前記バックアップマネージャコンピューターシステムに通信接続された1つまたは複数のワーカーコンピューターシステムとを備え、前記バックアップマネージャコンピューターシステムのうちの1つは、前記主マネージャコンピューターシステムが機能を停止する場合、前記主マネージャコンピューターシステムの機能を担うように再構成される、分散型サーバーシステムにおいて、前記主マネージャコンピューターシステムに、
    前記分散型サーバーシステムの状態を持続するコマンドを前記バックアップマネージャコンピューターシステムに送信するステップであって、前記状態は、当該状態に関連付けられたIDに対応する、ステップと、
    第1の既定の時間間隔の間待機し、前記バックアップマネージャコンピューターシステムのそれぞれから応答を受信するステップと、
    応答するバックアップマネージャコンピューターシステムの数が既定の数よりも多いかどうかを判定するステップと、
    応答しなかった1つまたは複数のバックアップマネージャコンピューターシステムに割り当てられた1つまたは複数のワーカーコンピューターシステムを、応答した1つまたは複数のバックアップマネージャコンピューターシステムに再度割り当てるステップであって、前記IDに関連付けられているタスクが、前記バックアップマネージャコンピューターシステムによって前記ワーカーコンピューターシステムに送信されるステップであって、前記IDおよび前記状態は、前記状態が初期化されてから実行されたタスク総量と結び付く、ステップと、
    前記ワーカーコンピューターシステムの応答性について前記バックアップコンピューターシステムから情報を受信するステップと、
    前記受信した応答性を分析して、応答が低速化しているワーカーコンピューターシステムに割り当てられたタスクを、他のワーカーコンピューターシステムに再度割り当てる要求を前記1つまたは複数のバックアップマネージャコンピューターシステムに送信するステップと
    を含む方法を実行させるためのプログラムを記録したことを特徴とするコンピューター読み取り可能な記録媒体。
  8. 前記方法は、前記応答しなかった1つまたは複数のバックアップマネージャコンピューターシステムのために第2の既定の時間間隔の間待機するステップをさらに含むことを特徴とする請求項7に記載のコンピューター読み取り可能な記録媒体。
  9. 前記バックアップマネージャコンピューターシステムは、前記分散型サーバーシステムの前記状態と関連付けられたIDを持続するコマンドを前記ワーカーコンピューターシステムに転送することを特徴とする請求項7に記載のコンピューター読み取り可能な記録媒体。
  10. 分散型サーバーシステムにおいて、主マネージャコンピューターシステムと1つまたは複数のワーカーコンピューターシステムとに通信接続されたバックアップマネージャコンピューターシステムであって、
    前記分散型サーバーシステムの状態を持続する要求を主マネージャコンピューターシステムから受信する受信手段であって、前記状態は、当該状態に関連付けられたIDに対応する、受信手段と、
    前記IDに対応する状態が持続されていることを示す応答を、前記主マネージャコンピューターシステムに送信する送信手段と、
    前記IDと関連付けられたタスクを送信する要求を前記主マネージャコンピューターシステムから受信する受信手段であって、前記IDおよび前記状態は、前記状態が初期化されてから実行されたタスク総量と結び付く、受信手段と、
    前記IDと関連付けられた前記タスクを1つまたは複数のワーカーコンピューターシステムに送信する送信手段と、
    前記ワーカーコンピューターシステムから受信したそれぞれの応答を集めて、前記集めた応答を前記主マネージャコンピューターシステムに送信する送信手段であって、前記ワーカーコンピューターシステムのうちのあるワーカーコンピューターシステムが応答していない場合、前記応答していないワーカーコンピューターシステムの接続状態に関する情報を、応答の代わりに用いる送信手段と、
    前記応答していないワーカーコンピューターシステムに割り当てられたタスクを、前記ワーカーコンピューターシステムのうちの応答するワーカーコンピューターシステムに再度割り当てる要求を、前記主マネージャコンピューターシステムから受信する受信手段と
    を備え、前記IDおよび当該IDに対応する前記分散型サーバーシステムの状態を格納し、前記主マネージャコンピューターシステムが機能を停止する場合、前記主マネージャコンピューターシステムの機能を担うように再構成されることを特徴とするバックアップマネージャコンピューターシステム。
  11. 主マネージャコンピューターシステムと前記主マネージャコンピューターシステムに通信接続された1つまたは複数のバックアップマネージャコンピューターシステムと、前記バックアップマネージャコンピューターシステムに通信接続された1つまたは複数のワーカーコンピューターシステムとを備えた分散型サーバーシステムにおいて、前記1つまたは複数のバックアップマネージャコンピューターシステムのうちの1つのバックアップマネージャコンピューターシステムに、
    前記分散型サーバーシステムの状態を持続する要求を主マネージャコンピューターシステムから受信するステップであって、前記状態は、当該状態に関連付けられたIDに対応する、ステップと、
    前記IDに対応する状態が持続されていることを示す応答を、前記主マネージャコンピューターシステムに送信するステップと、
    前記IDと関連付けられたタスクを送信する要求を前記主マネージャコンピューターシステムから受信するステップであって、前記IDおよび前記状態は、前記状態が初期化されてから実行されたタスク総量と結び付く、ステップと、
    前記IDと関連付けられた前記タスクを1つまたは複数のワーカーコンピューターシステムに送信するステップと、
    前記ワーカーコンピューターシステムから受信したそれぞれの応答を集めて、前記集めた応答を前記主マネージャコンピューターシステムに送信するステップであって、前記ワーカーコンピューターシステムのうちのあるワーカーコンピューターシステムが応答していない場合、前記応答していないワーカーコンピューターシステムの接続状態に関する情報を、応答の代わりに用いる、ステップと、
    前記応答していないワーカーコンピューターシステムに割り当てられたタスクを、前記ワーカーコンピューターシステムのうちの応答するワーカーコンピューターシステムに再度割り当てる要求を、前記主マネージャコンピューターシステムから受信するステップと
    を含む方法を実行させるためのプログラムを記録し、前記バックアップマネージャコンピューターシステムは、前記IDおよび当該IDに対応する前記分散型サーバーシステムの状態を格納し、前記主マネージャコンピューターシステムが機能を停止する場合、前記主マネージャコンピューターシステムの機能を担うように再構成されることを特徴とするコンピューター読み取り可能な記録媒体。
JP2013156995A 2006-11-10 2013-07-29 分散型サーバーシステムにおいてバックアップマネージャを転送するメッセージ Active JP5624655B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/558,887 2006-11-10
US11/558,887 US7685227B2 (en) 2006-11-10 2006-11-10 Message forwarding backup manager in a distributed server system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2009536366A Division JP2010509677A (ja) 2006-11-10 2007-08-29 分散型サーバーシステムにおいてバックアップマネージャを転送するメッセージ

Publications (2)

Publication Number Publication Date
JP2013257893A true JP2013257893A (ja) 2013-12-26
JP5624655B2 JP5624655B2 (ja) 2014-11-12

Family

ID=39364835

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2009536366A Pending JP2010509677A (ja) 2006-11-10 2007-08-29 分散型サーバーシステムにおいてバックアップマネージャを転送するメッセージ
JP2013156995A Active JP5624655B2 (ja) 2006-11-10 2013-07-29 分散型サーバーシステムにおいてバックアップマネージャを転送するメッセージ

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2009536366A Pending JP2010509677A (ja) 2006-11-10 2007-08-29 分散型サーバーシステムにおいてバックアップマネージャを転送するメッセージ

Country Status (7)

Country Link
US (1) US7685227B2 (ja)
EP (1) EP2092432B1 (ja)
JP (2) JP2010509677A (ja)
KR (1) KR20090085058A (ja)
CN (1) CN101535978B (ja)
TW (1) TWI375155B (ja)
WO (1) WO2008057649A1 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008104437A1 (en) * 2007-02-28 2008-09-04 International Business Machines Corporation A method for resolving a unit of work
US8769223B2 (en) * 2008-03-31 2014-07-01 Symantec Corporation System and method for setting an activation state for a device used in a backup operation
US8050191B2 (en) * 2009-05-26 2011-11-01 Motorola Mobility, Inc. Distributed information storage and retrieval of communication network performance data
US8533299B2 (en) 2010-04-19 2013-09-10 Microsoft Corporation Locator table and client library for datacenters
US8996611B2 (en) * 2011-01-31 2015-03-31 Microsoft Technology Licensing, Llc Parallel serialization of request processing
US9170892B2 (en) 2010-04-19 2015-10-27 Microsoft Technology Licensing, Llc Server failure recovery
US9454441B2 (en) 2010-04-19 2016-09-27 Microsoft Technology Licensing, Llc Data layout for recovery and durability
US9813529B2 (en) 2011-04-28 2017-11-07 Microsoft Technology Licensing, Llc Effective circuits in packet-switched networks
US8677068B2 (en) * 2010-06-18 2014-03-18 Lsi Corporation Scalable storage devices
US8843502B2 (en) 2011-06-24 2014-09-23 Microsoft Corporation Sorting a dataset of incrementally received data
US9331955B2 (en) 2011-06-29 2016-05-03 Microsoft Technology Licensing, Llc Transporting operations of arbitrary size over remote direct memory access
US20130067095A1 (en) * 2011-09-09 2013-03-14 Microsoft Corporation Smb2 scaleout
CN102662793A (zh) * 2012-03-07 2012-09-12 江苏引跑网络科技有限公司 一种可保证数据一致性的分布式数据库热备份与恢复方法
US9778856B2 (en) 2012-08-30 2017-10-03 Microsoft Technology Licensing, Llc Block-level access to parallel storage
JP2014063414A (ja) * 2012-09-24 2014-04-10 Toshiba Corp 制御システム
US9621412B2 (en) 2012-12-27 2017-04-11 Telecom Italia S.P.A. Method for guaranteeing service continuity in a telecommunication network and system thereof
US11422907B2 (en) 2013-08-19 2022-08-23 Microsoft Technology Licensing, Llc Disconnected operation for systems utilizing cloud storage
US9256489B2 (en) * 2013-10-30 2016-02-09 International Business Machines Corporation Synchronized debug information generation
US10594784B2 (en) 2013-11-11 2020-03-17 Microsoft Technology Licensing, Llc Geo-distributed disaster recovery for interactive cloud applications
US9798631B2 (en) 2014-02-04 2017-10-24 Microsoft Technology Licensing, Llc Block storage by decoupling ordering from durability
TWI626547B (zh) * 2014-03-03 2018-06-11 國立清華大學 於分散式資料庫中將系統狀態一致地還原至欲還原時間點之方法及系統
US9442803B2 (en) * 2014-06-24 2016-09-13 International Business Machines Corporation Method and system of distributed backup for computer devices in a network
US9459933B1 (en) * 2015-01-30 2016-10-04 Amazon Technologies, Inc. Contention and selection of controlling work coordinator in a distributed computing environment
EP3099027B1 (en) 2015-05-26 2017-09-13 Urban Software Institute GmbH Computer system and method for message routing with content and reference passing
CN105005518B (zh) * 2015-08-24 2018-12-04 上海天旦网络科技发展有限公司 自动聚合冗余系统交易数据的系统及其处理器和方法
US10866757B2 (en) * 2018-09-26 2020-12-15 EMC IP Holding Company LLC System and method for providing backup services to high availability applications

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10207847A (ja) * 1997-01-27 1998-08-07 Hitachi Ltd 分散システムにおける自動負荷分散方式
JP2002026950A (ja) * 2000-07-07 2002-01-25 Nippon Telegr & Teleph Corp <Ntt> サーバツリー構造の構築方法及びシステム、サーバ並びに記録媒体
JP2008003907A (ja) * 2006-06-23 2008-01-10 Hitachi Ltd 情報処理振分制御方法およびそのコンピュータ

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4868818A (en) * 1987-10-29 1989-09-19 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Fault tolerant hypercube computer system architecture
JPH0721135A (ja) * 1993-07-02 1995-01-24 Fujitsu Ltd 二重化監視機能を持つデータ処理システム
JPH07306794A (ja) * 1994-05-12 1995-11-21 Mitsubishi Electric Corp 分散システム及び分散システムの高信頼化方法
US5987453A (en) * 1997-04-07 1999-11-16 Informix Software, Inc. Method and apparatus for performing a join query in a database system
US6026414A (en) * 1998-03-05 2000-02-15 International Business Machines Corporation System including a proxy client to backup files in a distributed computing environment
US6360330B1 (en) * 1998-03-31 2002-03-19 Emc Corporation System and method for backing up data stored in multiple mirrors on a mass storage subsystem under control of a backup server
JPH11353202A (ja) 1998-06-10 1999-12-24 Ntt Mobil Commun Network Inc 分散データ処理システム
US6053699A (en) * 1998-07-27 2000-04-25 General Electric Company Steam turbine having a brush seal assembly
US6704278B1 (en) * 1999-07-02 2004-03-09 Cisco Technology, Inc. Stateful failover of service managers
US6496949B1 (en) * 1999-08-06 2002-12-17 International Business Machines Corp. Emergency backup system, method and program product therefor
US6748447B1 (en) * 2000-04-07 2004-06-08 Network Appliance, Inc. Method and apparatus for scalable distribution of information in a distributed network
US20020019844A1 (en) * 2000-07-06 2002-02-14 Kurowski Scott J. Method and system for network-distributed computing
TW561358B (en) * 2001-01-11 2003-11-11 Force Corp Z File switch and switched file system
US7414989B2 (en) * 2003-05-07 2008-08-19 Motorola, Inc. ACK/NACK determination reliability for a communication device
CN1292346C (zh) * 2003-09-12 2006-12-27 国际商业机器公司 用于在分布式计算体系结构中执行作业的系统和方法
GB0410150D0 (en) * 2004-05-07 2004-06-09 Ibm Methods,apparatus and computer programs for recovery from failures in a computing environment
US20060143517A1 (en) * 2004-12-22 2006-06-29 Microsoft Corporation Replicated virtual machine

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10207847A (ja) * 1997-01-27 1998-08-07 Hitachi Ltd 分散システムにおける自動負荷分散方式
JP2002026950A (ja) * 2000-07-07 2002-01-25 Nippon Telegr & Teleph Corp <Ntt> サーバツリー構造の構築方法及びシステム、サーバ並びに記録媒体
JP2008003907A (ja) * 2006-06-23 2008-01-10 Hitachi Ltd 情報処理振分制御方法およびそのコンピュータ

Also Published As

Publication number Publication date
TW200823682A (en) 2008-06-01
JP5624655B2 (ja) 2014-11-12
EP2092432A1 (en) 2009-08-26
EP2092432B1 (en) 2018-06-27
EP2092432A4 (en) 2015-06-03
KR20090085058A (ko) 2009-08-06
JP2010509677A (ja) 2010-03-25
US20080114827A1 (en) 2008-05-15
TWI375155B (en) 2012-10-21
CN101535978A (zh) 2009-09-16
WO2008057649A1 (en) 2008-05-15
CN101535978B (zh) 2011-04-06
US7685227B2 (en) 2010-03-23

Similar Documents

Publication Publication Date Title
JP5624655B2 (ja) 分散型サーバーシステムにおいてバックアップマネージャを転送するメッセージ
US20200358848A1 (en) Methods, systems, and media for providing distributed database access during a network split
USRE47501E1 (en) Application program interface access to hardware services for storage management applications
US9537710B2 (en) Non-disruptive failover of RDMA connection
JP4637842B2 (ja) クラスタ化されたコンピューティングシステムにおける高速なアプリケーション通知
RU2595493C2 (ru) Крупномасштабная система хранения данных
US20160275123A1 (en) Pipeline execution of multiple map-reduce jobs
RU2746042C1 (ru) Способ и система для передачи сообщения
CN107430606B (zh) 具有并行持久性的消息代理系统
US10735250B2 (en) Dynamic distributor selection for network load balancing
WO2009050187A1 (en) Method and system for handling failover in a distributed environment that uses session affinity
US11153405B2 (en) Transparent pattern processing in a service mesh
JP4410608B2 (ja) Webサービス提供方法
US10897402B2 (en) Statistics increment for multiple publishers
US10692168B1 (en) Availability modes for virtualized graphics processing
US8812900B2 (en) Managing storage providers in a clustered appliance environment
CN114598700A (zh) 通信方法及通信系统
CA3085055C (en) A data management system and method
EP2715555B1 (en) Managing and simplifying distributed applications
US9921934B1 (en) Storage process metrics
US10417093B2 (en) Methods for providing global spare data storage device management and devices thereof
JP2024037585A (ja) トランザクション管理方法及びトランザクション管理装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140507

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140808

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140926

R150 Certificate of patent or registration of utility model

Ref document number: 5624655

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

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