JPH11345130A - 複数のデ―タストアの同期をとってデ―タ整合性を達成する方法 - Google Patents

複数のデ―タストアの同期をとってデ―タ整合性を達成する方法

Info

Publication number
JPH11345130A
JPH11345130A JP11120000A JP12000099A JPH11345130A JP H11345130 A JPH11345130 A JP H11345130A JP 11120000 A JP11120000 A JP 11120000A JP 12000099 A JP12000099 A JP 12000099A JP H11345130 A JPH11345130 A JP H11345130A
Authority
JP
Japan
Prior art keywords
processes
data
data stores
central management
management process
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
JP11120000A
Other languages
English (en)
Other versions
JP3748339B2 (ja
Inventor
J Constant Steven
スティーブン・ジェイ・コンスタント
Atkinson Tony
トニー・アトキンソン
C Booth Steven
スティーブン・シー・ブース
R Gruel James
ジェームズ・アール・グリュエル
H Price Paul
ポール・エイチ・プライス
D Shetler Robert
ロバート・ディー・シェトラー
Darren D Smith
ダレン・ディー・スミス
T Ward John
ジョン・ティー・ウォード
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH11345130A publication Critical patent/JPH11345130A/ja
Application granted granted Critical
Publication of JP3748339B2 publication Critical patent/JP3748339B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/45Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
    • G06F8/458Synchronisation, e.g. post-wait, barriers, locks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/82Solving problems relating to consistency

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】非トランザクション環境において、複数のデー
タストア間の同期をとり、データを整合性ある状態にす
る。 【解決手段】非トランザクション多重処理コンピュータ
システムにおいて、複数のデータストアの同期をとって
データ整合性を達成するシステムおよび方法を提供す
る。プロセスは、中断された後、システムの従属木にあ
るそそれらの位置に応じて再開される。システムのデー
タ入力ソースが本質的に遮断され、現在進行中のデータ
フローが、異なるデータストアへの様々なデータフロー
のパスに流される。このプロセスが完了するとき、複数
のデータストアのそれぞれの同期がとられ、データが整
合性ある状態になる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、一般に多重処理
コンピュータシステムに関し、より具体的には、単一非
トランザクション処理システムの複数のデータストア間
に整合性および同期を達成するシステムおよび方法に関
する。
【0002】
【従来の技術】多重処理コンピュータシステムは、同時
に複数のプロセスを実行する。それぞれのプロセスは特
定のタスクを実行し、複数のプロセスは、全体としてと
らえた場合、より大きなタスクを実行し、これがアプリ
ケーションと呼ばれる。これらのプロセスは、1つの中
央コンピュータで実行することができ、または通信リン
クを介して互いに接続された個別のコンピュータで走る
こともできる(すなわち、分散環境)。多重処理コンピ
ュータシステムは、しばしば複数のデータストアを備え
る。典型的に、それぞれのデータストアは、システムの
1またはわずかの複数のプロセスにより直接アクセスさ
れる。
【0003】アプリケーションが正確に機能するため、
個々のプロセスは、プロセス間通信を介して協調されな
ければならない。通常、プロセス間通信はメッセージ通
信システムとして実現される。メッセージ通信システム
は、他のプロセスにメッセージを送り、他のプロセスか
らメッセージを受け取るプロセスにより特徴づけられ
る。複数のプロセスのうちのあるプロセスで失敗が起こ
ると、それぞれのプロセスが他のプロセスの成功した操
作に依存するので、しばしばアプリケーション全体を再
度初期化しなければならない。このような場合には、そ
れぞれのプロセスを、実行の初めの部分までロールバッ
クしなければならない。
【0004】複数のデータストアの多重処理システムで
は、システム・アプリケーションが、異なる時に複数の
データストアを更新することができる。したがって、任
意の所与の時に、アプリケーションの現在の進行を反映
するようデータストアのうちいくつかは更新されている
が、いくつかは更新されていない(これは、まだ完了し
ていないアプリケーションの一部を反映する)という事
実のために、様々なデータストアが不整合な状態になる
ことがある。アプリケーションのなかには、データの不
整合性が問題となるものがある。たとえばバックアップ
のアプリケーションは、異なるデータストアのデータ
が、バックアップ媒体から復元される時に機能システム
をサポートすることができる状態にあるよう要求する。
これを実現するには、バックアップ中、データストアは
整合性ある状態でなければならない。
【0005】複数のデータストア間の整合性および同期
は、トランザクション処理を介して、いくつかの従来技
術のシステムで達成されてきた。トランザクション処理
システムでは、アプリケーションは複数の「トランザク
ション」から構成される。トランザクションは、特定の
シーケンスで行われる一連の独立した操作であり、特定
の目的を達成する。トランザクションは、そのトランザ
クションにあるそれぞれの操作が完了するまで完了しな
い。ある操作を、他のプロセスで実行することができ
る。したがって、あるプロセスが他のプロセスを呼び出
すと、呼び出したプロセスは、呼び出されたプロセスが
完了するまで中断する。こうして、トランザクション処
理システムは、一組の操作が自律している、すなわち一
組の操作が集団として成功または失敗することを保証す
る。したがって、特定のトランザクションにより定義さ
れた一組の操作に含まれる操作のうちの1つが失敗する
と、呼び出しの逆の順番で、つまりそれが実行されたの
とは逆のシーケンスで、それぞれの操作を取り消す(ア
ンドゥする)ことにより、トランザクション全体が整合
性ある状態に容易にロールバックされる。
【0006】非トランザクション多重処理システムで
は、アプリケーションは「高レベル操作(High Level O
peration;HLO)」を実行することができる。HLO
は、一組の低レベルプロセスにより提供されるサービス
を使用することにより達成される一連のタスクとして定
義される。HLOは、複数のプロセス(それぞれが低レ
ベルタスクを実行する)が、より大きいタスクを達成す
るよう協調するという点で、トランザクションシステム
におけるトランザクションと類似する。しかし、特定の
順番で一組のプロセスを通じてシーケンスするトランザ
クションとは異なり、システムの複数のデータストア間
に整合性ある状態を復元するのに、必ずしも操作シーケ
ンスを逆にする必要がない。さらに、複数のHLOは、
同時かつ非同期に実行することができ、どのHLOがど
の順番で任意の所与のデータストアを更新したかを追跡
するための備えが全く存在しない。
【0007】
【発明が解決しようとする課題】非トランザクションの
複数データストアの多重処理システムでは、複数のデー
タストア間に整合性および同期を達成するための異なる
アプローチが必要とされる。今日の非トランザクション
の複数データストア処理システムでは、同期およびデー
タ整合性を、システム全体をシャットダウンする(電源
を落とす)ことによってのみ達成することができる。し
かし、サービスと時間の損失を招くこのアプローチは、
ユーザには不都合であり、許容しがたい。したがって、
システムを走らせたたままにすることができて、ユーザ
に対する時間およびサービスの損失を最小する非トラン
ザクション処理システムの複数のデータストア間に同期
および整合性を達成するシステムおよび方法が必要とさ
れる。
【0008】
【発明を解決するための手段】この発明は、非トランザ
クションの多重処理コンピュータシステムにおいて、複
数のデータストアの同期をとり、データ整合性を達成す
るシステムおよび方法であり、従来技術の問題点を解決
する。
【0009】システムは、複数のデータストアと、1ま
たは複数のデータ入力ソースと、少なくとも1つのデー
タ入力ソースおよび少なくとも1つのデータストアの間
の従属パス(経路)にあるすべてのプロセスを有する従
属木に含まれる複数同時に実行するプロセスとを備え
る。従属木にあるプロセスの第1のサブセットが中断さ
れる。プロセスが中断するとき、そのプロセスは、任意
のデータストアの修正を生じさせるサービス要求を受け
取るのを停止し、任意のデータストアの修正を生じさせ
るすべての待ち状態(ペンディング:pending)タスクを
完了させ、中断されていないプロセスまたは1または複
数のデータストアに、内部的にキャッシュに格納された
データのすべてを流す。第1のサブセットは、従属木の
任意の他のプロセスにより呼び出されておらず、少なく
とも1つのデータ入力ソースから直接データを受け取る
従属木のプロセスのすべてを含む。従属木にある次のプ
ロセスのサブセットが、次に中断される。次のサブセッ
トは、すでに中断されたプロセスにより呼び出されてお
り、まだ中断されていないプロセスにより呼び出されて
いない少なくとも1つのプロセスを含む。それぞれのプ
ロセスが中断されるとき、または代わりに、プロセスの
それぞれのサブセットがすべて中断されるとき、他の次
のサブセットが同じ基準に基づいて選択され、その後中
断される。この処理が、従属木のプロセスのすべてが中
断されるまで続く。従属木のすべてのプロセスが中断さ
れた時、複数のデータストアのそれぞれにあるデータは
同期がとられ、整合性がある。
【0010】システムの通常の操作は、中断されたのと
は逆の順番で、中断されたプロセスのそれぞれを再開す
ることにより、再開される。従属木にある最後のプロセ
スのサブセットが、再開される。最後のサブセットは、
少なくとも1つのデータストアを直接アクセスする従属
パスにあるすべてのプロセスを含む。従属木にある前の
サブセットが、次に中断される。前のサブセットは、1
または複数のすでに再開されたプロセスを呼び出してお
り、任意の現在中断されているプロセスを呼び出さない
少なくとも1つのプロセスを含む。それぞれのプロセス
が再開されるとき、または代わりに、プロセスのそれぞ
れのサブセットがすべて再開されるとき、他の前のサブ
セットが同じ基準に基づいて選択され、その後再開され
る。この処理が、従属木にあるプロセスのすべてが再開
されるまで続く。データストアのうち少なくとも1つの
データストアの修正を生じさせるサービス要求を受け取
り始めることにより、プロセスは再開する。
【0011】同期手段と通信できないが、少なくとも1
つのデータ入力ソースと少なくとも1つのデータストア
との間の従属パスにある間接プロセスを含むシステムで
は、代理プロセスが提供され、中断要求を、間接プロセ
スが応答する代理中断要求に翻訳する。
【0012】
【発明の実施の形態】図1は、非トランザクションの多
重データストア処理システム100の例を示すブロック
図である。システム100は、複数のプロセス102、
104、106、108、112、130、150、1
52a、152b、152c、160、162aおよび
162bを含み、これらは互いに様々な相互従属関係を
持つ。プロセス102、104、106、108、11
2、130、150、152a、152b、152c、
160、162aおよび162bは、同じ環境または分
散環境で同時に実行される。また、システム100は、
複数のデータストア120〜128を有し、これらは、
複数のプロセスのうちの1つまたはわずかなプロセスに
より直接アクセスされる。図に示される実施形態では、
データストア122が、プロセス106によってのみ直
接アクセスされ、データストア124は、プロセス10
2および108によってのみ直接アクセスされ、データ
ストア126は、プロセス110および152a、15
2b、152cによってのみ直接アクセスされ、データ
ストア128は、プロセス110および112によって
のみ直接アクセスされ、データストア120は、プロセ
ス162aおよび162bによってのみ直接アクセスさ
れる。
【0013】システム100では、複数の、独立してい
るが関連したデータストア120〜128に、データが
保持される。データの複製は、データストア120〜1
28によっては全く提供されない。さらに、プロセス1
02、104、106、108、112は自律して動作
し、個々のプロセス間の操作の同期をとるためのトラン
ザクション制御が全く存在しない。
【0014】システム100は、中央管理プロセス13
0を備える。中央管理プロセスは、プロセス102、1
04、106、108、112、150および160の
間の相互従属関係を理解するよう構成される。中央管理
プロセス130は、プロセス102、104、106、
108、112のそれぞれの相互従属関係に従う順番
で、プロセス102、104、106、108、112
のそれぞれを中断し、また再開する手段を備える。これ
により、異なるデータストアが確実に同期がとられ、デ
ータストア120〜128のそれぞれのデータ整合性が
維持される。
【0015】データストアを修正し、および(または)
同期を要求するが、中央管理プロセス130と対話しな
いまたはできないプロセスをシステム100は含むこと
ができる。この種のプロセス(以下、「間接プロセス」
という)を、間接プロセス152a、152b、152
c、162aおよび162bとしてシステム100に示
す。間接プロセスは、それらが中央管理プロセス130
により認識されるものとは異なる通信プロトコルを実行
するので、「間接」という。プロセス152a、152
bおよび152cは、同一プロセスAの3つの別々の例
である。たとえば、プロセス152a、152bおよび
152cは、ユーザーインターフェース・プロセスの3
つの異なるオペレータ起動の別々のインスタンス(具象
化)の結果であることができる。同様に、プロセス16
2aおよび162bは、別の同一プロセスBの2つの別
々のインスタンスである。
【0016】中央管理プロセス130が、間接プロセス
152a、152bおよび152c、または162aお
よび162bと直接通信できないので、管理代理プロセ
ス150および160を使用して、中央管理プロセス1
30と、それぞれの間接プロセス152a、152b、
152c、162aおよび162bとの間のインターフ
ェースをとる。管理代理プロセス150および160
は、中央管理プロセス130からの「中断」通知および
「再開」通知を、それぞれの間接プロセス152a、1
52b、152c、162aおよび162bにより認識
される通信プロトコルを使用して、代理の「中断」通知
および「再開」通知に翻訳する。
【0017】複数の同時に走る非同期のHLOのため
に、データが複数のデータ入力ソースから流れることが
ある。例として、システムは、データストアを変更する
ためのソースとしてユーザー入力を受け取ることがで
き、それと同時に、システムが、1または複数の異なる
データストア120〜128に対する修正を生じさせる
システム事象を獲得することができるとする。これらの
データ入力ソース142〜146のそれぞれは、システ
ム100の異なるパスを通るデータフロー(したがっ
て、異なる順番のプロセス)を生成する。
【0018】中央管理プロセス130は、任意の所与の
時に、異なるプロセス102、104、106、10
8、112の間で何が起こっているかを追跡しない。し
かし、中央管理プロセス130は、入力データソースと
データストアとの間の従属パスにどのプロセスがあるか
を追跡するよう、また、従属関係にある様々なプロセス
によりデータが操作される正しいシーケンスを追跡する
よう構成される。
【0019】図に示される実施形態では、プロセスの従
属関係の宣言から抽出される従属木を生成することによ
り、これが達成される。それぞれのプロセス102、1
04、106、108、112、150および160
は、他のプロセスのそれぞれに関してその従属関係を宣
言する。プロセスの設計者は、システムの他のプロセス
および他のデータストアに対するプロセスの関係を理解
する。それぞれのプロセスの宣言された相互従属関係
は、相互従属構成ファイルに格納される。中央管理プロ
セス130は、相互従属構成ファイルを読み、システム
100の様々なプロセスの構造を反映する従属木を数学
的に生成する。
【0020】提供された従属木の結果として、プロセス
102は、プロセス108および112にコールするこ
とを宣言する。プロセス104は、プロセス108およ
び110にコールすることを宣言する。プロセス106
は、プロセス110にコールすることを宣言する。プロ
セス108は、他のプロセスをコールしないことを宣言
する。プロセス110は、間接プロセス152a、15
2bおよび152cにコールすることを宣言する。プロ
セス112は、他のプロセスを呼び出さないことを宣言
する。管理代理プロセス150は、間接プロセス152
a、152bおよび152cにコールすることを宣言す
る。管理代理プロセス160は、間接プロセス162a
および162bにコールすることを宣言する。
【0021】図2は、プロセス102〜112、150
および160の従属宣言から作られるシステム100の
異なるプロセス間の相互従属関係を示す従属木200で
ある。従属関係は、矢印の方向で示される。プロセス1
52a、152b、152c、162aおよび162b
は、中央管理プロセス130と直接通信しないので、図
2には含まれない。プロセス110は、間接プロセス1
52a、152bおよび152cに依存するので、プロ
セス150に依存する。プロセス106および104
は、プロセス110に依存する。プロセス104および
102は、それぞれプロセス108に依存する。プロセ
ス102は、プロセス112に依存する。プロセス10
2、104、106および160は、その他のプロセス
には全く依存しない。
【0022】この発明によると、同期およびデータ整合
性は、異なるプロセス間で定義された相互従属関係(す
なわち、従属木200のプロセスの位置のレベル)に従
う順番で、プロセス102〜112および150、16
0を中断および再開することにより達成される。異なる
プロセス間の相互従属関係は、どのHLOがシステム1
00により実行されるかにかかわりなく同じである。中
断および再開の順番は、プロセスの動作のしかたに固有
である。すなわち、どのデータストアをそれぞれの特定
のプロセスが修正するのか、どのプロセスがデータ入力
ソースから直接入力を受け取るのか、従属木のどこにそ
れぞれのプロセスが属するのか、による。中央管理プロ
セス130が、プロセス102、104、106、10
8、112、150および160のそれぞれの相互従属
関係を理解し、それぞれと通信するので、中央管理プロ
セス130は、異なるプロセス102〜112、150
および160の中断操作の順番を制御する能力を持つ。
【0023】この発明の「中断」操作は、トランザクシ
ョン処理システムの停止操作と近似している。したがっ
て、中央管理プロセス130は、通常のシャットダウン
中にそれぞれのプロセスを停止させるのと同じ順番でプ
ロセスのそれぞれと連絡をとり、停止以外のすべてを行
うよう告げる。それぞれのプロセスが中断される順番
は、停止が命じられる順番に直接マップされる。すなわ
ち、定義されたプロセスの相互従属関係に従う。
【0024】代理管理プロセス150または160が、
中央管理プロセス130から「中断」通知を受け取ると
き、通信するそれぞれの間接プロセスに代理「中断」通
知を送る。それぞれの管理代理プロセス150および1
60は、管理代理プロセスのそれぞれの間接プロセスの
従属関係を理解し、従属関係の順番でそれらを中断す
る。間接プロセス152a、152bおよび152c、
または162aおよび162bは、代理「中断」通知を
受け取るとき、可能ならば自分自身を中断し、それぞれ
の管理代理プロセス150または160にその中断成功
状態を知らせる。間接プロセスが、中断操作を実行する
際に成功しないことがあるのは、間接プロセスが、要求
された時に中断することのできないクライアント(すな
わち、間接プロセスを潜在的に呼び出す他のプロセス)
を持つ場合である。間接プロセスのクライアントのうち
いずれかが、要求された時に中断できないならば、間接
プロセスは適切な管理代理プロセス150または160
に知らせる。その後、管理代理プロセス150または1
60は、中央管理プロセス130に応答する。中央管理
プロセス130の責任は、中央管理プロセス130が中
断するよう指図した間接プロセスに、「再開」通知を発
行することである。その後、中央管理プロセス130は
中断されたプロセスを再開し、同期を要求したHLOに
知らせることにより、成功しなかった中断に応答する。
【0025】当該技術分野の当業者により理解されるよ
うに、この発明は、本質的に、システムへのデータ入力
ソースを遮断し、進行中の現在のデータフローを、異な
るデータストアにつながる様々なデータフローのパスに
流すよう動作する。このプロセスが完了するとき、複数
のデータストアのそれぞれは同期が取られ、データは整
合性ある状態になる。この発明は、入力データソースの
数、異なるデータフローのパスおよびプロセスの従属関
係にかかわりなく、何らかの同様にモデル化されたシス
テムにおける整合性を保証するよう動作する。
【0026】図3は、この発明によるシステムの従属パ
スにある複数のプロセスを中断する方法300のフロー
チャートである。方法300は、従属木にあるそれぞれ
のプロセスが、中央管理プロセス130から「中断」通
知を受け取って動作する手段を含むことを必要とする。
「中断」通知を受け取った後にそれぞれのプロセスが行
う詳細は、特定のプロセスの機能に依存し、したがって
プロセスごとに異なることがある。しかし、「中断」通
知を受け取る時、それぞれのプロセスは、最小限データ
ストアの修正を生じさせるサービス要求またはコマンド
を受け取るのを停止し、データストアを修正するタスク
のすべての待ち状態タスクを完了させ、内部的にキャッ
シュに格納されたデータをデータストアに流さなければ
ならない。プロセスがこれらのステップ(および、その
特定のプロセスの中断機能が実行するよう設計されてい
るどんな他のステップも)を完了すると、プロセスは、
「中断」通知の要求を終えたということを、「中断完
了」応答を介して中央管理130に通知する。システム
のどのプロセスが、待ち状態の管理操作を通知されなけ
ればならないか、およびどの順番でプロセスに通知する
かを理解するのは、中央管理プロセス130の責任であ
る。
【0027】この発明の方法300によると、システム
の異なるデータストアの同期をとらなければならないと
き、中央管理プロセス130は、ステップ302で、従
属木にあり、任意の他のプロセスにより呼び出されてお
らず、少なくとも1つのデータ入力ソースからデータ入
力を受け取るためシステムのソースの最初の点として動
作するそれぞれのプロセスを中断する。
【0028】1または複数のプロセスが中断されると、
中央管理プロセス130は、ステップ304で、中断さ
れたプロセスにより潜在的に呼び出され、まだ中断され
ていないプロセスにより潜在的に呼び出されないプロセ
スであって、残りの中断されていないプロセスを含む次
のプロセスのサブセットを決定する。
【0029】ステップ306では、中央管理プロセス1
30は、次のプロセスのサブセットのそれぞれを中断す
る。ステップ308では、中央管理プロセス130は、
中断されずに残っているプロセスが従属木にあるかどう
か判断する。残っていなければ、方法300は完了す
る。そうでなければ、ステップ304から308が、従
属木のそれぞれのプロセスが適切な順番で中断されるま
で繰り返され、すべてのデータが、上記の異なるデータ
ストアに流されるようにする。
【0030】方法300をシステム100に適用する
と、プロセス102、104、106、108、11
2、150および160が中断される順番は、以下のよ
うになる。1)プロセス102、104、106および
160を中断する。2)プロセス102が中央管理プロ
セス130に応答するとき、プロセス112を中断す
る。3)プロセス102および104の両方とも中断を
完了して、中央管理プロセス130に応答する時、プロ
セス108を中断する。4)プロセス104および10
6が両方とも中断を完了して中央管理プロセス130に
応答する時、プロセス110を中断する。5)プロセス
110が中断を完了して中央管理プロセス130に応答
する時、プロセス150を中断する。6)すべての「中
断完了」応答が中央管理プロセス130により受け取ら
れた時、システムが中断する。
【0031】図4は、この発明によるシステムの従属木
にある複数の中断されたプロセスを再開する方法400
のフローチャートである。方法400は、従属木にある
それぞれのプロセスが、中央管理プロセス130から
「再開」通知を受けて動作する手段を含むことを必要と
する。「再開」通知を受け取るとき、受け取りのプロセ
スは、サービス要求またはコマンドの受け取りおよび処
理を始める。「再開」通知は「開始」通知と同じ順番で
送られ、「中断」通知の逆の順番である。プロセスがこ
のステップ(および、プロセスの再開機能を完了するた
めプロセスが完了しなければならない任意の他のステッ
プ)を完了すると、プロセスは、「再開完了」応答を介
して中央管理プロセス130に知らせる。システム10
0のどのプロセスが、どの順番で、プロセスのそれぞれ
を再開するかを理解するのは、中央管理プロセス130
の責任である。好ましい実施形態では、これは従属木を
介して判断される。
【0032】方法400によると、システムの、異なる
中断されたプロセスが再開されるとき、中央管理プロセ
ス130は、ステップ402で、従属木のプロセスのう
ち現在中断されているプロセスを呼び出さないそれぞれ
のプロセスを再開することから始める。これは、従属木
の一番低いレベルのプロセスに「再開」通知を送ること
により達成される。中央管理プロセス130は、これら
のプロセスのうち少なくとも1つのプロセスから「再開
完了」応答を受け取るまで待つ。
【0033】従属木の一番低いレベルに置かれた1また
は複数のプロセスが再開されると、ステップ404で、
中央管理プロセス130は、再開されたプロセスを潜在
的に呼び出し、まだ中断されているプロセスを潜在的に
呼び出さないプロセスであって、残っている中断された
プロセスを含む次のプロセスのセットを決定する。例示
される実施形態では、従属木の次のレベルにあるそれぞ
れのプロセスがチェックされ、潜在的に呼び出すプロセ
スのそれぞれが、「再開完了」応答を返したかどうか判
断する。
【0034】ステップ406では、中央管理プロセス1
30が、次のプロセスのセットのそれぞれを再開する。
例示される実施形態では、これは、次のプロセスのセッ
トのそれぞれに「再開」通知を送り、「再開完了」応答
を待つことにより達成される。
【0035】ステップ408では、中央管理プロセス1
30が、プロセスが中断されたまま残っているプロセス
が従属木にあるかどうか判断する。残っていなければ、
方法400は完了し、システムが再開される。そうでな
ければ、従属木にあるそれぞれのプロセスが従属木で定
められた適切な順番で再開されるまで、ステップ404
から408が繰り返される。
【0036】通常の操作を再開するため、プロセス10
2、104、106、108、112、150および1
60は、中断された順番に対して逆の順番で再開され
る。したがって、1)プロセス108、112、150
および160を再開する。2)プロセス150が再開を
完了した後、プロセス110を再開する。3)プロセス
112および108が再開を完了した後、プロセス10
2を再開する。4)プロセス108および110が再開
を完了した後、プロセス104を再開する。5)プロセ
ス110が再開を完了した後、プロセス106を再開す
る。すべての「再開完了」応答が、中央管理プロセス1
30により受け取られた時、システムが再開される。
【0037】図5は、この発明の操作のある特定の例を
示すネットワーク管理システム500のブロック図であ
る。システム500は複数のソフトウェアプロセスを含
み、それぞれが、例えば新しいネットワーク要素を見つ
けて、それをグラフィカルマップに加える「ネットワー
ク要素発見(Discover_Network_Element)」HLOの特定
部分を制御するよう設計されている。システム500
は、新しい要素を発見する発見管理プロセス502、ト
ポロジー管理プロセス504、集中オブジェクト記憶プ
ロセス506(すなわち、意味情報管理)、および新し
い要素を表示するグラフィカルマップ・プレゼンテーシ
ョン管理プロセス508を備える。「ネットワーク要素
発見」HLOは、以下の順番で操作シーケンスを実行す
る。(1)発見管理プロセス502は、新しいネットワ
ーク構成要素を発見する。(2)発見管理プロセス50
2は、トポロジー管理プロセス504に新しいネットワ
ーク構成要素について知らせる。(3)トポロジー管理
プロセス504は、集中オブジェクト記憶プロセス50
6と連絡をとり、新しい情報でそれを更新する。(4)
トポロジー管理プロセス504は、自身のデータストア
を更新する。(5)トポロジー管理プロセス504は、
プレゼンテーション管理プロセス508と連絡をとり、
新しい構成要素をグラフィカルマップに加える。(6)
プレゼンテーション管理プロセス508は、自分のデー
タストアを更新する。
【0038】ネットワーク管理システム500は、非ト
ランザクションの複数データストア処理システムであ
る。具体的には、データは複数の、独立しているが関連
したデータストア514、516、518に保持され
る。また、トポロジー管理プロセス504は、自身のト
ポロジーデータストア514を保持し、集中オブジェク
ト記憶プロセス506は、自身の意味データストア51
8を保持し、プレゼンテーション管理プロセス508
は、自身のグラフィカルマップ・プレゼンテーションデ
ータストア516を保持する。この実施形態では、HL
Oが、ソフトウェアプロセス504、506、508へ
のAPIを介して、異なる複数データストア514、5
16、518を更新する。APIは、それぞれのデータ
ストア514、516、518へのアクセスを制御す
る。さらに、プロセス502、504、506、508
は自律して動作し、個々のプロセス間の操作の同期をと
るトランザクション制御が全く無い。しかも、データス
トア514、516、518は、データ複写(すなわち
冗長性)を全く提供しない。この実施形態では、全体の
トランザクション制御が無いため、妨げられることのな
いシステム500を、「ネットワーク要素発見」HLO
は流れる。さらに、同時にシステム500を流れる複数
の異なるHLOをもつこともでき、それぞれが、必要な
プロセスのセットと連絡をとる(また、異なるデータス
トア514、516、518を潜在的に更新する)。た
とえば、異なる「新規ノード追加(Add_New_Node)」HL
O(図示せず)は、オペレータに、グラフィカルマップ
・プレゼンテーション管理プロセス508を介して新し
いノードを直接追加させることもできる。このHLOを
使用して新規のノードを追加することにより、図5の
「ネットワーク要素発見」のHLOにより説明されるも
のとは反対方向に、システム500を通るデータフロー
のパスが得られる。
【0039】データを管理する方法において、それぞれ
のプロセスが他のプロセスから独立しているとしても、
様々なデータストアのデータ間には従属関係が存在す
る。たとえば、ネットワーク管理システム500では、
管理されるノードが、トポロジーデータストア514、
グラフィカルマップ・プレゼンテーションデータストア
516および意味データストア518において表され
る。データストア間の共通キーは、図5に示されるよう
に、オブジェクトの識別子すなわち名前である。この実
施形態では、オブジェクトIDが、トポロジー情報、意
味情報およびプレゼンテーション情報を一緒に結びつけ
る。新しいオブジェクトデータがネットワーク管理シス
テム500に加えられるとき(たとえば、新しいネット
ワークノードがネットワーク管理システム500に加え
られるとき)、トポロジー管理プロセス504およびグ
ラフィカルマップ・プレゼンテーションプロセス508
と順番に連絡をとる。したがって、HLOが完了にむけ
て実行しているとき、様々なデータストア514、51
6、518は、それらのうち更新されて新規のノードの
存在を反映するものもあり、更新されずに反映しないも
のもあるという事実のため、不整合な状態にあるかもし
れない。
【0040】同期したデータを要求するHLOの例とし
て、バックアップHLOがある。データストア514、
516、518の同期は、他のHLO(これは、従属木
にあるプロセスを呼び出す)を、バックアップが進行中
の間は実行させないことにより達成される。従属木にあ
るすべてのプロセスは、「中断」通知を受け取る手段を
含み、この通知は、プロセスに同期の準備をするよう知
らせる。すべてのプロセスが「中断」通知を受け取って
動作すると、システムの複数のデータストアすべてが整
合性ある状態にある(すなわち、複数のデータストア間
に壊れた従属関係が全く存在しない)と考えられ、した
がってそれらのデータストアをバックアップすることが
できる。
【0041】図6は、システム500の従属木600で
ある。グラフィカルマップのプレゼンテーションプロセ
ス508は、中央管理プロセス530(図7)と直接通
信しない間接プロセスである。この例では、代理管理プ
ロセス540(図7)が、そのクライアントプロセス
(すなわち、プレゼンテーション管理プロセス508)
についての相互従属関係の情報を供給し、このことは、
プレゼンテーション管理プロセス508を呼び出すプロ
セスが従属木600には無いので、プレゼンテーション
管理プロセス508が従属木600の一番高いレベル6
02にあることを示す。ネットワーク要素発見プロセス
502が、データ入力ソースからデータ入力を直接受け
取るシステム500の唯一の直接プロセスなので、発見
プロセス502は、従属木600の次のレベル604に
置かれる。トポロジー管理プロセス504は、発見プロ
セス502から要求を受け取る唯一のプロセスなので、
従属木600の次のレベル606に属する。最後に、集
中オブジェクト記憶プロセス506が、トポロジー管理
プロセス504から要求を受け取る唯一の残っているプ
ロセスなので、従属木600の次のレベル608に属す
る。
【0042】図7は、システム700を通る「中断」通
知の順番を示すフロー図であり、図5の異なるデータス
トア514、516、518のそれぞれのデータの同期
をとる。システム700は中央管理プロセス530を含
み、中央管理プロセスは、システムのプロセス502、
504、506、508の間の従属関係を理解し、デー
タ整合性が確実に維持される順番でプロセスを開始、停
止、中断および再開できるようにする。また、システム
700は、管理代理プロセス540を含む。プレゼンテ
ーション管理プロセス508が、従属木600の一番高
いレベル602にあるので、管理代理プロセス540を
介してプレゼンテーション管理プロセス508を最初に
中断し、プレゼンテーション管理プロセス508の任意
のクライアントプロセスが、要求された時に確実に中断
可能な状態にあるようにしなければならない。
【0043】データストア514、516、518のデ
ータの同期をとる方法は、第1のステップ702で開始
し、このステップでは、同期したデータを必要とするプ
ロセスの「中断実行可能」550が、中央管理プロセス
530に、同期の準備をするためプロセスに通知し始め
るよう要求する。ステップ704では、中央管理プロセ
ス530が、管理代理プロセス540に「中断」通知を
送る。ステップ706では、管理代理プロセス540
が、そのクライアントプロセス(図示せず)のそれぞれ
に、代理「中断」プロセスを転送する。実際には、ある
種類のプロセスの複数のインスタンスをもつことができ
る(グラフィカルマップのプレゼンテーションプロセス
508のような)。また、システムは、多くの異なる種
類の管理代理プロセス540を持つこともでき、それぞ
れが、クライアントの特定の種類の代理に合わせて調整
される(たとえば、グラフィカル・ユーザー・インター
フェース(GUI)またはSNMPエージェント)。管
理代理プロセス540の目的は、中央管理プロセス53
0と通信しないプロセスをサポートすることである。管
理代理プロセス540は、定義されたプロトコルで中央
管理プロセス530からコマンドを受け取り、そのクラ
イアントプロセスが理解するプロトコル(例えばAP
I)を使用して、クライアントプロセス(すなわち、プ
レゼンテーションプロセス508)と通信する。ステッ
プ708では、グラフィカルマップ・プレゼンテーショ
ンプロセス508は、何らかの待ち状態にあるマップ変
更をデータストア516に流すことにより、同期の準備
をする。その中断機能が完了すると、プレゼンテーショ
ンプロセス508は、代理「中断完了」応答を用いて、
管理代理プロセス540に応答する。代理「中断」通知
を受け取る任意のプロセスは、否定応答を管理代理プロ
セス540に返すことができ、この場合には、中央管理
プロセス530は、すべてのプロセスに「再開」通知を
送ることにより中断操作全体を中止する。
【0044】管理代理プロセス540は、肯定応答(す
なわち、代理「中断完了」の応答)をプレゼンテーショ
ンプロセス508から受け取るならば、ステップ710
で中央管理プロセス530に「中断完了」応答を返す。
中央管理プロセス530は、従属木600により定義さ
れた順番に従って、すべての他のプロセスに「中断」通
知を送る。したがって、ステップ712で中央管理プロ
セス530は発見プロセス502に「中断」通知を送
り、ステップ714で「中断完了」応答を受け取る。そ
の後、中央管理プロセス530は、ステップ716で集
中オブジェクト記憶プロセス506に「中断」通知を送
り、ステップ718で「中断完了」応答を受け取る。ス
テップ720では、中央管理プロセス530はトポロジ
ー管理プロセス504に「中断」通知を送り、ステップ
722で「中断完了」応答を受け取る。中央管理プロセ
ス530がそれぞれのプロセスと連絡をとり、それぞれ
のプロセスから「中断完了」応答を受け取ると、中央管
理プロセス530は、ステップ724で、「システムが
中断された」メッセージを「中断実行可能」550に返
し、システムおよびそのすべてのデータが整合性ある状
態にあることを示す。
【0045】当該技術分野の当業者には、この発明が、
「中断」通知または「再開」通知がトラベル(travel)す
ることのできるレベル数を制限しないということを理解
するであろう。この発明はNレベルの中断/再開の階層
を説明し、それぞれのレベルは次のレベルにメッセージ
を転送し、次のレベルから応答を受け取る。たとえば、
ここで説明したグラフィカルマップ・プレゼンテーショ
ンプロセス508は、APIを介して、マップを増やす
ことのできる他のアプリケーションとの通信をサポート
することができる。これらのアプリケーションには、代
理「中断」通知を受け取って、アプリケーションが同期
の準備をすることができるようにすることも必要である
(すなわち、これらのアプリケーションは、メモリにマ
ップの変更を格納することができ、メモリにおけるこれ
らの変更は、同期の前にグラフィカルマップ・プレゼン
テーションプロセス508に送られるべきである)。こ
の例では、グラフィカルマップ・プレゼンテーションプ
ロセス508は、接続されるアプリケーションに「中
断」通知を転送する。こうして、グラフィカルマップ・
プレゼンテーションプロセス508は、そのクライアン
トが応じる能力により、大部分の「中断」通知に応じる
能力を決定する。
【0046】すべてのプロセスが中断するよう通知され
て中央管理プロセス530に応答を送り返すと、バック
アップまたはデータのチェックポイントのような操作を
実行することができる。このような操作の完了の後、中
断されたプロセスに知らせて通常の操作を再開すること
は、中央管理プロセス530の責任である。「開始」通
知を送るのとは逆の順番で、それらのプロセスに「再
開」通知を送ることにより、これを行う。
【0047】非トランザクション処理で複数データスト
アの同期をとるシステムおよび方法を、上記に詳細に説
明してきた。この発明は、例示した実施形態により説明
したけれども、当該技術分野の当業者には理解できるよ
うに、この発明の精神および範囲から離れることなく、
例示した実施形態に対して様々な変更および改良を行う
ことができる。この発明の範囲は例示した実施形態に制
限されるものではなく、この発明は特許請求の範囲によ
り定められる。
【0048】本発明は、例として以下の実施態様を含
む。
【0049】(1)非トランザクション多重処理コンピ
ュータシステム(100)において複数のデータストアの同
期をとってデータ整合性を達成する方法であって、該シ
ステムが、複数のデータストア(120-128)と、1または
複数のデータ入力ソース(142-148)と、該1または複数
のデータ入力ソースのうちの少なくとも1つデータ入力
ソースおよび前記複数のデータストアのうちの少なくと
も1つデータストアの間の従属パスにある複数のプロセ
ス(102-112)とを備え、(a)前記複数のプロセスのうち、
前記複数のプロセスの任意の他のプロセスにより呼び出
されておらず、前記1または複数のデータ入力ソースの
うちの少なくとも1つからデータを直接受け取るそれぞ
れのプロセスを備える前記複数のプロセスの第1のサブ
セット(102、104、106、160)を中断するステップと、(b)前
記複数のプロセスのうち、中断されたプロセスにより呼
び出されており、中断されていないプロセスにより呼び
出されていない少なくとも1つのプロセスを含む次のサ
ブセットを中断するステップと、(c)前記複数のプロセ
スのうち、いずれかのプロセスが中断されずに残ってい
るならば、前記ステップ(b)を繰り返すステップと、
を含む複数データストアの同期をとってデータ整合性を
達成する方法。
【0050】(2)(d)前記複数のデータストアのうち
任意のデータストアの修正を生じさせるサービス要求の
受け入れを停止するステップと、(e)前記複数のデータ
ストアのうち任意のデータストアの修正を生じさせるす
べての待ち状態タスクを完了させるステップと、(f)中
断されてないプロセスまたは前記複数のデータストアの
うち1または複数のデータストアに、内部的にキャッシ
ュに格納されたデータをすべて流すステップと、を実行
することにより、前記複数のプロセスのそれぞれが中断
するようにした上記(1)に記載の方法。
【0051】(3)(g)前記複数のプロセスのうち、現
在中断されているプロセスを呼び出さないそれぞれのプ
ロセスを含む最後のサブセット(108、112、150、160)を再
開するステップと、(h)前記複数のプロセスのうち、1
または複数の再開されたプロセスを呼び出し、現在中断
されているプロセスを呼び出さない少なくとも1つのプ
ロセスを含む前のサブセットを再開するステップと、
(i)前記複数のプロセスのうち、いずれかのプロセスが
再開されずに残っているならば、前記ステップ(h)を
繰り返すステップと、を実行することにより、前記シス
テムの通常の操作が再開されるようにした上記(1)ま
たは(2)に記載の方法。
【0052】(4)(j)前記複数のデータストアのうち
少なくとも1つデータストアの修正を生じさせるサービ
ス要求の受け入れを可能にするステップにより、前記複
数のプロセスがそれぞれが再開するようにした上記
(3)に記載の方法。
【0053】(5)同期をとって整合性あるデータを達
成する非トランザクションの複数データストア処理シス
テムであって、複数のデータストア(120-128)と、1ま
たは複数のデータ入力ソース(142-148)と、前記1また
は複数のデータ入力ソースのうちの少なくとも1つのデ
ータ入力ソースと、前記複数データストアのうちの少な
くとも1つデータストアとの間の従属パスにある複数の
プロセスであって、それぞれが、前記データストアの修
正を生じさせるサービス要求の受け入れを中断し、前記
複数データストアを修正するすべての待ち状態タスクを
完了させ、中断されてないプロセスまたは前記複数のデ
ータストアのうち1または複数のデータストアのいずれ
かに、内部的にキャッシュに格納されたデータをすべて
流す複数のプロセス(102-112)と、前記複数プロセスの
うち、任意の他のプロセスにより呼び出されておらず、
前記1または複数のデータ入力ソースのうちの少なくと
も1つから直接データを受け取るそれぞれのプロセスを
含む第1のサブセットを中断し、中断されないまま残っ
ているプロセスが無くなるまで、中断されたプロセスに
より呼び出されており、中断されていないプロセスによ
り呼び出されていない少なくとも1つのプロセスを含む
次のサブセットを繰り返し中断することにより、順番
に、前記複数のプロセスのそれぞれを中断するよう動作
することのできる同期をとる手段(130)と、を備える非
トランザクション複数データストア処理システム。
【0054】(6)前記複数のプロセスのそれぞれが、
前記複数のデータストアのうち1または複数のデータス
トアの修正を生じさせるサービス要求の受け入れを可能
にする再開手段を備える上記(5)に記載のシステム。
【0055】(7)前記同期をとる手段が、前記複数の
プロセスのうち、現在中断されているプロセスを呼び出
していないそれぞれのプロセスを含む最後のサブセット
を再開し、中断されたまま残っているプロセスが無くな
るまで、1または複数の再開されたプロセスを呼び出
し、中断されているプロセスを呼び出さない少なくとも
1つのプロセスを含む次のサブセットを繰り返し再開す
ることにより、順番に、前記複数のプロセスのそれぞれ
を再開するよう動作することができるようにした上記
(6)に記載のシステム。
【0056】(8)前記1または複数のデータ入力ソー
スのうちの少なくとも1つのデータ入力ソースと、前記
複数データストアのうち少なくとも1つのデータストア
と間の従属パスにある間接プロセス(152a-152c)を備
え、該間接プロセスが、前記複数のデータストアの修正
を生じさせるサービス要求の受け入れを停止し、前記複
数のデータストアを修正するすべての待ち状態タスクを
完了させ、中断されていないプロセスまたは前記複数デ
ータストアの1または複数データストアに、内部的にキ
ャッシュに格納されたデータのすべてを流すことによ
り、代理中断要求に応答し、前記間接プロセスへの代理
中断要求を生成して送ることにより中断要求に応答する
代理プロセス(150)を備え、前記間接プロセスが中断さ
れるとき、前記同期をとる手段(130)が前記代理プロセ
スに中断要求を送るようにした上記(5)から(7)に
記載のシステム。
【0057】(9)前記代理中断要求が受け取られると
き、1または複数のクライアント・プロセスが現在中断
可能ならば、前記間接プロセスが1または複数のクライ
アントプロセスと対話し、代理中断要求に応答して中断
を実行する上記(8)に記載のシステム。
【0058】
【発明の効果】非トランザクション処理システムの複数
のデータストア間に同期および整合性を達成することが
できるので、システムを走らせたたままにして、ユーザ
に対する時間およびサービスの損失を最小にすることが
できる。
【図面の簡単な説明】
【図1】この発明による非トランザクション複数データ
ストア処理システムのブロック図。
【図2】図1のシステムの従属木を示す図。
【図3】この発明によるシステムのプロセスを中断する
方法を示すフローチャート。
【図4】この発明によるシステムの中断されたプロセス
を再開する方法を示すフローチャート。
【図5】HLOのシーケンシャルフローを示すこの発明
のシステムのブロック図。
【図6】図5のシステムの従属木を示す図。
【図7】図5のシステムを通る中断通知の順番を示すフ
ロー図。
【符号の説明】
100 非トランザクション多重処理コンピュータシス
テム 102〜112 プロセス 120〜128 データストア 142〜148 データ入力ソース
───────────────────────────────────────────────────── フロントページの続き (72)発明者 トニー・アトキンソン アメリカ合衆国80524コロラド州フォー ト・コリンズ、スミス・ストリート 708 (72)発明者 スティーブン・シー・ブース アメリカ合衆国80528コロラド州フォー ト・コリンズ、ウォルデン・サークル 7805 (72)発明者 ジェームズ・アール・グリュエル アメリカ合衆国80525コロラド州フォー ト・コリンズ、ブルックウッド・ドライブ 2114 (72)発明者 ポール・エイチ・プライス アメリカ合衆国80537コロラド州ラブラン ド、ハイ・カントリー・ロード 4600 (72)発明者 ロバート・ディー・シェトラー アメリカ合衆国80521コロラド州フォー ト・コリンズ、サマー・ストリート 1027 (72)発明者 ダレン・ディー・スミス アメリカ合衆国80526コロラド州フォー ト・コリンズ、ゴールデンリッジ・ウェイ 4242 (72)発明者 ジョン・ティー・ウォード アメリカ合衆国80537コロラド州ラブラン ド、ティアビ・コート 375

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】非トランザクション多重処理コンピュータ
    システムにおいて複数のデータストアの同期をとってデ
    ータ整合性を達成する方法であって、 該システムが、複数のデータストアと、1または複数の
    データ入力ソースと、該1または複数のデータ入力ソー
    スのうちの少なくとも1つのデータ入力ソースおよび前
    記複数のデータストアのうちの少なくとも1つデータス
    トアの間の従属パスにある複数のプロセスとを備え、 (a)前記複数のプロセスのうち、任意の他のプロセスに
    より呼び出されておらず、前記1または複数のデータ入
    力ソースのうちの少なくとも1つからデータを直接受け
    取るそれぞれのプロセスを含む第1のサブセットを中断
    するステップと、 (b)前記複数のプロセスのうち、中断されたプロセスに
    より呼び出されており、中断されていないプロセスによ
    り呼び出されていない少なくとも1つのプロセスを含む
    次のサブセットを中断するステップと、 (c)前記複数のプロセスのうち、いずれかのプロセスが
    中断されずに残っているならば、前記ステップ(b)を
    繰り返すステップと、 を含む複数データストアの同期をとってデータ整合性を
    達成する方法。
JP12000099A 1998-04-29 1999-04-27 複数のデータストアの同期をとってデータ整合性を達成する方法 Expired - Fee Related JP3748339B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/069,481 US6226694B1 (en) 1998-04-29 1998-04-29 Achieving consistency and synchronization among multiple data stores that cooperate within a single system in the absence of transaction monitoring
US069481 1998-04-29

Publications (2)

Publication Number Publication Date
JPH11345130A true JPH11345130A (ja) 1999-12-14
JP3748339B2 JP3748339B2 (ja) 2006-02-22

Family

ID=22089278

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12000099A Expired - Fee Related JP3748339B2 (ja) 1998-04-29 1999-04-27 複数のデータストアの同期をとってデータ整合性を達成する方法

Country Status (2)

Country Link
US (1) US6226694B1 (ja)
JP (1) JP3748339B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004236288A (ja) * 2002-12-04 2004-08-19 Microsoft Corp ピアツーピアグラフ管理インタフェースおよび方法

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0006413D0 (en) * 2000-03-17 2000-05-03 Ibm A dynamic shortcut to reverse autonomous computer program actions
US7587723B2 (en) * 2003-11-13 2009-09-08 International Business Machines Corporation Restarting a shared virtual resource
JP2006065462A (ja) * 2004-08-25 2006-03-09 Canon Inc ソフトウェア・システム、ソフトウェア停止方法、プログラム、及び、記憶媒体
US20060294006A1 (en) * 2005-06-28 2006-12-28 International Business Machines Corporation Business transaction process controller for composite transactions
JP4107676B2 (ja) * 2006-07-21 2008-06-25 インターナショナル・ビジネス・マシーンズ・コーポレーション トランザクション引継ぎシステム
US20090109842A1 (en) * 2007-10-30 2009-04-30 Reilly John R Device Manager Having Authoritative Process Relations For Conforming State Data Upon Failover
WO2010067703A1 (ja) * 2008-12-08 2010-06-17 日本電気株式会社 データ依存関係解析装置、情報処理装置、データ依存関係解析方法、及びプログラム
US9952893B2 (en) * 2010-11-03 2018-04-24 Microsoft Technology Licensing, Llc Spreadsheet model for distributed computations
US8788863B2 (en) 2011-08-10 2014-07-22 Microsoft Corporation System and method for restoring and/or continuing execution functionality to various processes based on predefined power classifications while transitioning a computing environment from connected standby state to execution state
EP2791819B1 (en) 2011-12-14 2017-11-01 Level 3 Communications, LLC Content delivery network
US10791050B2 (en) 2012-12-13 2020-09-29 Level 3 Communications, Llc Geographic location determination in a content delivery framework
US10652087B2 (en) 2012-12-13 2020-05-12 Level 3 Communications, Llc Content delivery framework having fill services
US10701149B2 (en) 2012-12-13 2020-06-30 Level 3 Communications, Llc Content delivery framework having origin services
US10701148B2 (en) 2012-12-13 2020-06-30 Level 3 Communications, Llc Content delivery framework having storage services
US9660874B2 (en) 2012-12-13 2017-05-23 Level 3 Communications, Llc Devices and methods supporting content delivery with delivery services having dynamically configurable log information
US20140337472A1 (en) 2012-12-13 2014-11-13 Level 3 Communications, Llc Beacon Services in a Content Delivery Framework
US9634918B2 (en) 2012-12-13 2017-04-25 Level 3 Communications, Llc Invalidation sequencing in a content delivery framework
JP6255926B2 (ja) * 2013-11-13 2018-01-10 富士通株式会社 監視制御プログラム、監視制御方法、および監視制御装置
US10761768B1 (en) * 2019-02-28 2020-09-01 Netapp Inc. Method to address misaligned holes and writes to end of files while performing quick reconcile operation during synchronous filesystem replication
US11138061B2 (en) 2019-02-28 2021-10-05 Netapp Inc. Method and apparatus to neutralize replication error and retain primary and secondary synchronization during synchronous replication

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4369494A (en) * 1974-12-09 1983-01-18 Compagnie Honeywell Bull Apparatus and method for providing synchronization between processes and events occurring at different times in a data processing system
US4502116A (en) * 1982-11-17 1985-02-26 At&T Bell Laboratories Multiple processor synchronized halt test arrangement
AU616213B2 (en) * 1987-11-09 1991-10-24 Tandem Computers Incorporated Method and apparatus for synchronizing a plurality of processors
EP0475282B1 (en) * 1990-09-14 1998-12-16 Hitachi, Ltd. Synchronous method and apparatus for processors
US5913024A (en) * 1996-02-09 1999-06-15 Secure Computing Corporation Secure server utilizing separate protocol stacks
US6021473A (en) * 1996-08-27 2000-02-01 Vlsi Technology, Inc. Method and apparatus for maintaining coherency for data transaction of CPU and bus device utilizing selective flushing mechanism
US5870763A (en) * 1997-03-10 1999-02-09 Microsoft Corporation Database computer system with application recovery and dependency handling read cache

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004236288A (ja) * 2002-12-04 2004-08-19 Microsoft Corp ピアツーピアグラフ管理インタフェースおよび方法

Also Published As

Publication number Publication date
US6226694B1 (en) 2001-05-01
JP3748339B2 (ja) 2006-02-22

Similar Documents

Publication Publication Date Title
JP3748339B2 (ja) 複数のデータストアの同期をとってデータ整合性を達成する方法
US11449330B2 (en) System and method for supporting patching in a multitenant application server environment
US7130897B2 (en) Dynamic cluster versioning for a group
US7392421B1 (en) Framework for managing clustering and replication
US9916153B2 (en) System and method for supporting patching in a multitenant application server environment
US7607037B1 (en) SAR restart and going home procedures
US7657718B1 (en) Storage automated replication processing
US7188237B2 (en) Reboot manager usable to change firmware in a high availability single processor system
JP4307673B2 (ja) マルチクラスタ化コンピュータ・システムを構成及び管理する方法及び装置
US7194652B2 (en) High availability synchronization architecture
US7284236B2 (en) Mechanism to change firmware in a high availability single processor system
US7146532B2 (en) Persistent session and data in transparently distributed objects
US7680994B2 (en) Automatically managing the state of replicated data of a computing environment, and methods therefor
US7571290B1 (en) Replica synchronization using copy-on-read technique
CN112099918A (zh) 容器化环境中的集群的实时迁移
US7076689B2 (en) Use of unique XID range among multiple control processors
US6332200B1 (en) Capturing and identifying a complete and consistent set of checkpoint files
JPH04229334A (ja) コンピュータ・システム及びアプリケーションプログラム実行方法
US8504873B1 (en) Method and apparatus for providing in-memory checkpoint services within a distributed transaction
US7065673B2 (en) Staged startup after failover or reboot
JPH04229333A (ja) コミット手順の非同期的再同期化実行装置および方法
US20060282831A1 (en) Method and hardware node for customized upgrade control
US20020073409A1 (en) Telecommunications platform with processor cluster and method of operation thereof
KR100466140B1 (ko) 분산 컴퓨팅 환경의 프로세싱 그룹들을 관리하는 방법, 시스템 및 기록매체
JP2000099359A5 (ja)

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050906

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051125

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20091209

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101209

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees