JP3066693B2 - 分散データ処理システム - Google Patents

分散データ処理システム

Info

Publication number
JP3066693B2
JP3066693B2 JP5273657A JP27365793A JP3066693B2 JP 3066693 B2 JP3066693 B2 JP 3066693B2 JP 5273657 A JP5273657 A JP 5273657A JP 27365793 A JP27365793 A JP 27365793A JP 3066693 B2 JP3066693 B2 JP 3066693B2
Authority
JP
Japan
Prior art keywords
data
copy
processor
update
record
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.)
Expired - Fee Related
Application number
JP5273657A
Other languages
English (en)
Other versions
JPH06214915A (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 JPH06214915A publication Critical patent/JPH06214915A/ja
Application granted granted Critical
Publication of JP3066693B2 publication Critical patent/JP3066693B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F19/00Complete banking systems; Coded card-freed arrangements adapted for dispensing or receiving monies or the like and posting such transactions to existing accounts, e.g. automatic teller machines
    • G07F19/20Automatic teller machines [ATMs]
    • G07F19/211Software architecture within ATMs or in relation to the ATM network
    • 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
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2315Optimistic concurrency control
    • G06F16/2322Optimistic concurrency control using timestamps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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
    • 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/2048Error 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 where the redundant components share neither address space nor persistent storage
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は分散データ処理システム
に関するものである。
【0002】なお、本明細書の記述は本件出願の優先権
の基礎たる英国特許出願第9225455.6号の明細
書の記載に基づくものであって、当該英国特許出願の番
号を参照することによって当該英国特許出願の明細書の
記載内容が本明細書の一部分を構成するものとする。
【0003】
【従来の技術】分散システムは、データ通信ネットワー
クで相互に接続された複数のデータ処理マシン(計算
機)から構成されているのが代表的である。主要な分散
システムでは、あるサイト(設置場所)に置かれたデー
タは、別のサイトで実行中のデータ処理プログラムから
透過方式でアクセス可能になっている。この種の分散デ
ータベース・システムの一般的説明は、論文「分散デー
タベース・システムとはなにか」(What is a
Distributed Database Sys
tem)第1部および第2部(C.J.Date著、R
elationalJournal,Nos.1 an
d 2,1987)に記載されている。
【0004】分散データベース・システムでは、データ
を分割して複数のサイトにストアし、アクセスするプロ
セスの近くにデータを置いておくことにより、通信ネッ
トワーク上のデータ・トラフィック(通信量)を少なく
している。しかし、これらのサイトのいくつかは、別の
サイトに置かれたデータをアクセスする必要が起こるの
が普通である。このリモート・アクセスはデータ処理操
作に伴うコストと遅延を増加させるので、これらのサイ
トの処理パフォーマンスが独自のデータをもつ同等のス
タンドアロン(独立型)システムよりも著しく低下する
おそれがある。
【0005】もう1つの問題は、通信リンクに障害が起
こったり、他のネットワーク・サイトに置かれたデータ
処理マシンに障害が起こったりすると、ある時点で、リ
モート・データがアクセスできない場合があることであ
る。従って、データの可用性(availabilit
y)が、各サイトがスタンドアロン・システムである場
合よりも低下する。分散システムの目的はユーザがデー
タ資源を共用できるようにすることであるが、これらの
マイナス効果はユーザがリモート・データをアクセスす
るのを妨げる原因になっている。このことは、単純な集
中システムに比べて分散システムの価値を減ずることに
なる。
【0006】そのために、分散システム分野で絶えず目
標としていることは、ローカル・データの場合に得られ
るパフォーマンスと可用性に可能な限り近いパフォーマ
ンスと可用性でリモート・データがアクセスできるよう
にすることである。これを達成するひとつの方法は、ネ
ットワーク内で受け渡しされるデータを複製して、大部
分のデータ・アクセスが、必要とするデータのローカル
・コピーまたは近くのコピーで満たされるようにするこ
とである。このアプローチは、Sang Hyuk S
on著の論文、SIGMODレコード、Vol.17
No.4(1988)に記載されている。この手法で
は、データをアクセスするときのネットワーク・トラフ
ィック(およびコスト)の削減と、更新を複数のデータ
・コピーにプロパゲート(伝播)するときに必要になる
付加的なネットワーク・トラフィックとの間でバランス
をとる必要がある。
【0007】データの複製は、いくつかのタイプの分散
システムで採用されている。そのようなシステムとして
は、キャッシュを使用したローカル・エリア・ネットワ
ーク・ファイル・サーバや複製データを使用した分散デ
ータ管理システムがある。主要な複製データ・システム
では、データ・オブジェクトの1次コピーは単一のデー
タ・プロセッサに保管されている。このオブジェクトの
他のコピーはすべて2次コピーと呼ばれている。更新は
最初に1次コピーに適用されて、更新の時間順序が正し
くなるようにしている。2次コピーに対する変更は、最
新の1次コピーに基づいて行われる。
【0008】データ・オブジェクトを複製することは、
そのオブジェクトに対するリード(読取り)アクセスの
割合が高く、ライト(書込み)アクセスの割合が低いと
きに最も好都合である。これは、リード・アクセスが単
一の2次コピーで行うことができるのに対し、ライト・
アクセスが1次コピーで行われ、2次コピーのすべてに
プロパゲートする必要があるためである。従って、ライ
ト・アクセスのコストはリード・アクセスのコストより
高くなる。分散システムでは、あるデータ・オブジェク
トが更新されると、そのオブジェクトのリモート2次コ
ピーが無効にされ、ネットワーク経由で送られてきた新
しいコピーに置き換えられるので、更新に伴う他のコス
トにネットワーク・コストが付加されることになる。
【0009】このアプローチの極端なケースとして、リ
ードオンリ・レプリカとして意思決定支援アプリケーシ
ョンで使用されることを目的とした「スナップショッ
ト」の使用がある。Lindsay他は、1次データの
最新状態に近い状態にスナップショットを保つために、
スナップショットがどのように定期的にリフレッシュさ
れるかを、IBMリサーチ・レポートRJ4992(ス
ナップショット差異のリフレッシュ・アルゴリズム」
(Snapshot DifferentialRef
lesh Algorithm)(B.Lindsay
他著、1986)の中で説明している。しかし、スナッ
プショットには保全性(integrity)の保証が
ないので、トランザクション向きデータの更新には使用
できない。
【0010】非常に多数のユーザが共用ファイルまたは
データベースを更新する場合、2次コピーは即時に無効
化され、大量のネットワーク・トラフィックが生じるこ
とになる。この付加的トラフィックは、複製から得られ
ると考えられるネットワーク・トラフィックの削減量を
上回ることさえある。この結果、実用上、複製手法は大
きな共用ファイルやデータベースには有用でなく、ほと
んどの場合、集中化されていることが、論文「ネットワ
ーク・システムの構造」(Structures fo
r Systems of Networks)(A.
L.Scherr、IBM Systems Jour
nal Vol.25、No.1、1987)で論述さ
れている。
【0011】
【発明が解決しようとする課題】従って、従来技術の重
要な問題は、データ複製が望ましい場合であっても、複
数のサイトにいるユーザがデータを更新できるようにす
る重要なケースにおいてその実現が非常に困難であるこ
とである。しかし、実用面では、多くの場合、分散サイ
トに置かれたアプリケーションは最新のデータをアクセ
スする必要がないので、既知の制御された量だけ最新で
はないデータによっても、問題なく機能させることが可
能である。このような例としては、定期的に更新される
料率テーブル(rate table)を使用するアプ
リケーションや、現金引出しを許可するとき、最新状態
にない口座残高を使用する自動テラー(銀行窓口)シス
テムがある。
【0012】ある特定のサイトがデータ項目の1次コピ
ーをストアするように構成されているが、実際には1次
コピーを保有するサイトよりも、リモート・サイトがそ
の項目に対する更新アクセスを大量に必要とする場合
に、問題が起こる可能性がある。このことは、リモート
・サイトが1次コピーに行うべき更新要求を送ったあと
で、変更がその2次コピーに送り返されるのを待たされ
ることを意味する。
【0013】
【課題を解決するための手段】本発明は、分散データ処
理装置および分散データ処理方法を提供することを目的
としている。本発明の方法によれば、データ・レコード
の複製コピーを複数のデータ・プロセッサにストアし、
データ・プロセッサのうちの第1のデータ・プロセッサ
に置かれた前記コピーのうちの第1のコピーを更新目的
のために1次コピーとして指定し、その1次コピーの更
新をデータ・レコードの2次コピーを保持する他のデー
タ・プロセッサにプロパゲートし、1次コピーの管理責
任を前記第1のデータ・プロセッサから別のプロセッサ
へ移転することによって、他のプロセッサに置かれた2
次コピーを更新目的のためにデータ・レコードの1次コ
ピーとして指定する。
【0014】所有権、つまり、1次コピーの管理責任の
移転は動的に行われるので、1次コピーをどの時点にお
いても、最も適したサイトに置いておくことができる。
【0015】データ・レコードの2次コピーを保持して
いるリモート・プロセッサは、レコード記述子(rec
ord descriptor)を使用して1次コピー
の管理責任を要求できるようにすることが好ましい。デ
ータ・レコードの1次コピーの管理責任がリモート・デ
ータ・プロセッサへ移転されたとき、リストをデータレ
コードの記述子の中央プロセッサに保存しておくことが
できるので、そのリストをチェックすることによって、
競合する要求に許可を与えることが防止される。
【0016】
【実施例】以下、添付図面を参照して本発明の好適実施
例について詳しく説明する。
【0017】まず、図1は、データ処理マシンのネット
ワークの一部を示したものである。図示のように、デー
タ・プロセッサ100,200および250はデータ通
信ネットワーク260で結ばれている。データ・プロセ
ッサ100,200は中央処理装置(CPU)110,
210および関連のユーザ端末120,220およびデ
ータ記憶装置130,230を有する。これらのデータ
・プロセッサは、自動テラー(銀行窓口)マシン(AT
M)やプリンタなどの、別の周辺機器をもつこともでき
る。この付加的機器を、総称して140,240で示
す。
【0018】プロセッサ100〜300の各々では、C
ICSと呼ばれるデータベース/データ・コミュニケー
ション・システムが稼働している。CICSは、オンラ
イン・トランザクション処理アプリケーションをサポー
トするものである。CICSプログラムは、IBM社発
行の「CICS General Informati
on Manual」(CICS概説書)(資料番号G
C33−0155−3)に説明されている。
【0019】データ・プロセッサをデータ・ネットワー
クで結合することは、IBM社発行の「CICSプロダ
クト間通信」(CICS Inter−Product
Communication)(資料番号SC33−
0824−0)に説明されている。これによれば、各デ
ータ・プロセッサは、別のデータ・プロセッサにストア
されたデータを、CICSシステム間通信(Inter
System Communication)機能を
使用してアクセスできるようになっている。例えば、C
PU 210が必要とする、ある特定のデータ・レコー
ドが実際には記憶装置130にストアされているとする
と、CICSプログラムはアクセス要求をネットワーク
260を経由して、データ・プロセッサ200からデー
タ・プロセッサ100へ転送し、この要求を受けて、デ
ータ・プロセッサ100は要求されたデータ・レコード
を送り返す。このリモート・ファイル・アクセス方法は
機能伝送(Function Shipping)と呼
ばれている。
【0020】一般的に、ネットワーク260のようなデ
ータ・ネットワークは導入と運用に費用がかかるため
に、ネットワーク・トラフィックをできるかぎり削減す
る試みがなされている。これを実現する1つの方法とし
て、データ・ファイルをネットワーク上の異なるプロセ
ッサ間で分割して、そのデータを最も頻繁に使用するデ
ータ・プロセッサに、あるいは物理的にそのプロセッサ
の近くにストアしておく場合がある。しかし、この方法
は、同じデータ・ファイルが複数のデータ・プロセッサ
によって使用される場合には、ネットワーク・トラフィ
ックの削減には役立たない。その理由は、そのファイル
がどこに保存されていても、1つを除くすべてのマシン
がネットワークを使用してその1つのファイルをアクセ
スしなければならないからである。
【0021】これに対して、第2のアプローチは、デー
タ・ファイルのコピーを複数作成して、ネットワーク上
の各種のデータ・プロセッサにそれらのコピーをストア
しておく方法である。この方法によると、特定ファイル
のコピーをすべてのデータ・プロセッサに、あるいは少
なくとも、そのファイルを常時使用するデータ・プロセ
ッサだけにストアしておくことができる。ファイルの複
製を各データ・プロセッサに置いておくと、データへの
アクセスがローカルに行われるので、ネットワーク経由
でデータを送る必要がなくなる。
【0022】複製されたコピーの1つは、「マスタ」ま
たは「1次」コピーとして指定される。あるファイルに
更新が行われると、その更新は最初にマスタ・コピーに
適用され、他の2次コピーに対する更新はマスタから得
て、2次コピーにプロパゲートされる。更新を最初に1
つのマスタ・コピーに適用すると、更新が正しい時間順
序で適用されることが保証される。全てのファイルのマ
スタ・コピーを1つのデータ・プロセッサに置いておく
必要はない。ある特定ファイルのマスタ・コピーを置い
ておく場所は、そのファイルへのアクセスを最も必要と
するデータ・プロセッサにすることも、その近くにする
ことも可能である。
【0023】マスタ・コピーの更新が行われると、その
更新されたレコードを、あるいは更新されたファイルの
コピー全体でも、2次コピーのそれぞれにプロパゲート
することが可能である。しかし、そのようにすると、ネ
ットワーク・トラフィックが大量に発生する可能性があ
るので、複製から得られる利点がすべて帳消しになるか
もしれない。本発明の実施例によれば、この問題は、2
次コピーの各々において、あらかじめ定義したある程度
の不確実性を許容することによって解決している。これ
を実現するために、2次コピーの各々には、現行時間
(currency time)が関連づけられ、その
現行期間の満了時間(expiry time)がその
ファイルに関連するCICS制御ファイルにストアされ
ている。現行満了時間が経過するまでは、2次コピー
は、マスタ・コピーが中間時間に更新されたかどうかに
関係なく、有効であるものとみなされる。2次コピーに
は、1次コピーのすべてのレコードを収めておく必要は
ない。2次サイトで頻繁に必要になるレコードだけを収
めておくことができる。従って、異なる2次コピーに異
なるレコードを収めておくことができる。
【0024】図2は、2次コピーを構成するストア・デ
ータ・レコードと現行満了時間との関係を示す概略図で
ある。図において、データ・レコード310がCICS
データ・ファイル300に配列されている。このファイ
ル300内の各レコード310には、現行満了時間
(T)320と有効性フラグ(V)330が関連づけら
れ、これらはファイル制御テーブル340に収められて
いる。以下では、現行満了時間の起源について説明す
る。あるデータ・レコード310を読み取る試みが行わ
れると、そのレコード310に対応する有効性フラグ3
30がまずチェックされる。有効性フラグ330が「無
効」にセットされていなければ、現行満了時間320が
すでに経過しているどうかを判断するために、現行時間
がチェックされる。現行満了時間320が経過していな
ければ、データ・レコード310が読み取られ、オペレ
ーションが通常通りに継続される。現行満了時間320
が経過していれば、レコード310は読み取られなく、
そのレコードに対応する有効性フラグ330が「無効」
にセットされ、2次コピーの更新が要求される。図4を
参照して説明する別のアクションをとることも可能であ
る。
【0025】現行満了時間Tは個々のデータ・レコード
またはファイル全体に関連づけられている。これは、デ
ータ・レコードに対する更新をプロパゲートするときは
いつでも、マスタ・コピー保持側がプロパゲートするこ
とができる。また逆に、現行満了時間は、更新がマスタ
から送られてきたときは、事前に定義した現行期間をマ
スタ更新が行われた時間に加えることによって、2次コ
ピー保持側がリセットすることができる。
【0026】データ・レコードの実際の現行期間(現行
満了時間Tとマスタ・レコードが更新された時間との
差)は、そのデータ・レコードの性質および任意的には
現行時間または日付を基準にして、ユーザによって判断
される。しかし、この現行期間を大きく左右するのは、
データの性質である。そのような例として、分散システ
ムにストアされているデータが銀行口座残高に関係する
場合がある。少額の現金引出しを許可する目的のために
(例えば、自動テラー・マシン(ATM)を使用し
て)、ユーザとしての銀行は、ローカル2次コピーに保
持されている残高を、例えば24時間ごと以上に、頻繁
に更新するために余分のネットワーク・コストと処理コ
ストをかける価値がないと判断するであろう。
【0027】上述したように、現行期間は現行時間また
は日付に依存して変化させることができる。例えば、月
曜日の午前(週の最初の営業開始日)に更新が特に頻繁
に行われる場合は、その時の現行期間を短くする必要が
起こる。同様に、データの更新作業が少ない週末には、
現行期間を延長することが可能である。
【0028】図3は、更新を1つまたは2つ以上のデー
タ・レコードの1次コピーから2次コピーにプロパゲー
トする1つの手法(strategy−ストラテジ)を
示すフローチャートである。この手法は「ニュース掲示
板」(news bulletin)または「プッシュ
ダウン」(pushdown)手法と呼ぶことにする
が、マスタ・コピー保持側が2次コピーの現行満了時間
を知っているかどうかに左右されるが、リード(読取
り)要求が行われたかどうかに依存させる必要はない。
【0029】このフローチャートに示すステップのいく
つかは1次コピー保持側で実行され、残りのステップは
2次コピー保持側の各々によって実行される。1次コピ
ー保持側と2次コピー保持側との間の通信はCICSシ
ステム間通信機能を経由して、あるいは高信頼メッセー
ジ機能などのある種の同等機能を経由して達成される。
【0030】プロセスは1次コピー保持側が、最後の更
新が2次コピーにプロパゲートされた以後に、1次コピ
ーに入っているどのデータ・レコードが更新されたかを
判断することから始まる(ステップ400)。本実施例
では、ステップ400は、2次コピーに保持されている
現行満了時間に達する前に実行される。ステップ410
では、データ・レコードのセットについて新しい現行満
了時間Tが計算されるが、これは、現行時間およびその
データ・レコードの性質に関してあらかじめ決めた情報
を基準にして行われる。この現行満了時間のレコードは
1次コピー保持側に保存される。
【0031】ステップ420において、更新されたデー
タ・レコードは、ファイル全体に関連する現行満了時間
と一緒に、2次コピー保持側にプロパゲートされる。2
次コピー保持側によって実行される最初のステップで
は、更新が受信され(430)、ファイルの2次コピー
に適用される(440)。ステップ450において、こ
れらのレコードに関連する新たな現行満了時間がストア
される。最後に、これらのレコードに関連する有効性フ
ラグが「無効」にセットされていて、データ・レコード
の有効期間がすでに経過していることを示していれば、
これらのフラグはステップ460でリセットされる。こ
の手法によると、現行期間が経過する前に更新を2次コ
ピーに適用したときに、各2次コピーが常に使用可能に
なっていることが保証される。
【0032】図4は、更新をファイルの1次コピーから
2次コピーへプロパゲートする第2の手法を示すフロー
チャートである。この手法は「要求時」(on dem
and)または「プッシュダウン」(pushdow
n)手法と呼ぶことにする。この場合も、フローチャー
トに記述されているステップのいくつかは1次コピー保
持側によって実行され、残りのステップは2次コピー保
持側の各々によって実行される。
【0033】図4に示すプロセスは、2次コピー保持側
が2次コピーに保持されているデータ・レコードについ
てリード(読取り)オペレーションを開始したときに開
始する。データ・レコードに対応する有効性フラグがス
テップ500でチェックされる。フラグが「無効」にセ
ットされていれば、制御は直接にステップ530に移
り、そこでそのデータ・レコードに対する更新が要求さ
れる。このような場合には、有効性フラグを使用する
と、データ・レコードの有効性について、これ以上のチ
ェックを行う必要がなくなる。しかし、有効性フラグが
「有効」にセットされていると、別のチェックがステッ
プ510で行われて、現行時間がそのデータ・レコード
に関連する現行満了時間よりも後であるかどうかが判断
される。現行時間がTよりも前であれば、ステップ54
0でデータ・レコードをローカル2次コピーから読み取
ることができ、プロセスは正しく終了する。
【0034】現行満了時間が経過していることがステッ
プ510で見つかると、制御はステップ520に移り有
効性フラグが「無効」にセットされ、ステップ530に
移りそのデータ・レコードに対する更新が1次コピー保
持側に要求される。しかし、場合によっては、この要求
に応じられないことがある。例えば、1次コピー保持側
に障害が起こった場合や、通信ネットワークが使用可能
になっていない場合である。更新要求が受け付けられる
と、ステップ550で制御は1次コピー保持側に渡さ
れ、1次コピー保持側は要求されたレコードを取り出す
試みを行う(ステップ560)。レコードが見つかる
と、1次コピー保持側は新たな現行満了時間を計算し、
更新されたレコードと新たな時間の双方を2次コピー保
持側に転送する(ステップ570)。1次データ・レコ
ードが最後に2次コピー保持側に送られた以後に変更さ
れていなければ、確認信号および新たな現行満了時間を
送ることが可能である。
【0035】更新要求が受け付けられないとステップ5
50で判断されたときは、プロセスは正しく終了しな
い。この事態(データがない)は、データ・レコードを
読み取る最初の要求を出したプログラムによって処理さ
れるが、これは従来の方法と同じである。
【0036】更新は2次コピー保持側によって受信さ
れ、2次コピーに適用される(ステップ580)。新た
な現行満了時間Tはステップ590でセーブされ、デー
タ・レコードに関連する有効性フラグVが「有効」にセ
ットされる。そのあと、データ・レコードのローカル・
コピーがステップ540で読み取られ、プロセスは正し
く終了する。この手法によると、データ・レコードがア
プリケーションによって明示に要求され、有効なコピー
がローカルに存在しないときだけデータ・レコードが送
られるので、ネットワーク・トラフィックが最小になる
が、これらのレコードが時々使用可能になっていないと
いう犠牲を伴う。
【0037】「要求時」手法と「ニュース掲示板」手法
の特徴(機能)を組み合わせた結合更新手法を使用する
ことも可能である。この場合には、リモート・サイトに
保持されている2次コピーはデータを収めていない空の
ファイルとして開始される。そのあと、これは、「要求
時」手法を使用してそのリモート・サイトの要求に見合
ったデータ・レコードのセットに組み入れることができ
る。データ・レコードの作業セット(working
set)が作成されたあと(つまり、「要求時」手法が
適切な時間動作したとき)、オペレーションを「ニュー
ス掲示板」手法に切り替えることができる。別の方法と
して、両方の手法を同時にオペレーションすることも可
能である。この場合には、リモート・サイトに保持され
る2次コピーは、リモート・サイトが必要としたデータ
・レコードと、1次コピーで最近に更新されたデータ・
レコードから構成される。この結合手法は、2次コピー
が累積していくとき若干の追加処理を生じさせるが、そ
のあとでは、その実行効率は「ニュース掲示板」手法と
同じである。この結合手法には、2次コピーがなんらか
の理由で消失したとき、回復が自動的に行われるという
利点がある。
【0038】複製コピー分散システムにおいてデータ・
レコードの更新が行われると、その更新は、そのデータ
・レコードの他のコピーに適用される前に1次コピーに
適用される。このようにしたのは、更新が正しい時間順
序で適用されることを保証するためである。しかし、多
くの分散データ処理システム(例えば、トランザクショ
ン処理システムなど)では、データはリモート・サイト
で収集されてから、1次コピーに転送されるようになっ
ている。すべてのデータの1次コピーを保持しているサ
イトが1つだけである場合は、データ収集オペレーショ
ンが1次コピーを更新しなければならないので、そのパ
フォーマンスは、非複製コピー・システムの場合よりも
低下する。図5に更新の流れを示すように、リモート・
データ・プロセッサは、既存のCICSシステム間通信
機能を使用して1次コピー・ファイルの更新を行う。ス
テップ600において、リモート・データ・プロセッサ
は更新すべきレコードを準備し、ステップ610で、そ
のレコードを中央データ・プロセッサに送る。ステップ
620で、このレコードは受信され、更新がファイルの
1次コピーに適用される。ステップ630で、更新の確
認が生成されて、リモート・サイトに送られ、ステップ
640で受信される。ネットワークに障害が発生する
と、更新が完全に失敗することがある(ステップ610
参照)。
【0039】これらのパフォーマンスと可用性に関する
問題の1つの解決方法を示したのが図6である。この解
決方法では、1次コピー自体がネットワーク上に分散化
されている。言い換えれば、可能な限り、各サイトは頻
繁に更新の必要があるデータ・レコードの1次コピーを
保持している。この場合は、中央サイトがこれらのデー
タ・レコードの2次コピーを保持することになるので、
ファイル全体を複製して他のサイトへ送ることができ、
あるいは中央で処理することができる。
【0040】図6に示す分散データ処理システムは、図
1に示すシステムと類似している。データ記憶装置13
0,230にストアされたデータは、4つの区画(pa
rtition)A,B,CおよびDに分けて概略図で
示されている。中央サイトになることができるデータ・
プロセッサ100は区画Cの1次コピー670を保持
し、データ・プロセッサ200は区画Bの1次コピー6
80を保持している。各データ・プロセッサは、そうす
ることがそのデータ・プロセッサのデータ・アクセス要
求に見合うものであれば、他の区画の2次コピーを保持
することも可能である。重要なことは、区画がオーバラ
ップしないように定義して、どのレコードの1次コピー
も1つしか存在しないようにすることである。これは、
キー範囲(key range)または他の類似方法で
レコードを区画に分割することによって実現することが
できる。一般的に、各区画には記述子650,660が
関連づけられているので、データ・プロセッサは特定の
レコードがその区画にあるか否かを判断することができ
る。
【0041】図7は、別実施例の更新フローチャートで
ある。ここでは、リモート・データ・プロセッサがレコ
ードを更新している。ステップ700で、リモート・デ
ータ・プロセッサは更新すべきレコードを準備し、ステ
ップ710で、ローカル区画記述子をテストして、その
レコードがそのサイトに保持されている1次コピー区画
に属するものかどうかを判断する。そうであれば、更新
がステップ720でその区画に適用され、更新の確認が
ステップ730で生成される。更新するレコードがその
ローカル区画に属するものでなければ、レコードはステ
ップ740で中央サイトに送られ、受信されると、ステ
ップ750で中央ファイルに(中央ファイルとは別のも
のであれば、中央ファイルおよび1次コピーに)適用さ
れる。ステップ760で確認が生成され、リモート・サ
イトへ送られる。そのサイトで更新されたレコードの大
部分をそのローカル区画に入れるようにしておくと、こ
の方法はネットワーク・トラフィックを大幅に削減する
ことができる。また、この方法によると、ネットワーク
障害が原因で失敗するのは、中央サイトへ送る必要のあ
る更新だけなので、可用性も向上する。
【0042】場合によっては、特定のリモート・サイト
をデータ・レコード・セットの1次コピー保持側として
開始させても、そのあとで、別のリモート・サイトがこ
れらのデータ・レコードの1次コピーに大量の更新を適
用する必要が起こることがある。ネットワーク障害が原
因で混乱が起こり、このために、データ処理サイトの更
新要求量が変化してネットワーク・トラフィックが増加
すると、分散化した1次コピーの使用によって得られる
利点のいくつかが損なわれる可能性がある。この問題
は、1次コピーを保持する管理責任を、サイト間で動的
に移転するようにすれば解決する。この方法は「チェッ
クアウト/チェックイン」(checkout/che
ckin)手法と呼ばれ、以下、図8を参照して説明す
る。
【0043】ステップ800において、リモート・サイ
ト側のデータ・プロセッサはファイルの特定区画の管理
責任を要求する。この要求は、その区画記述子を中央サ
イトへ送ることによって行われる。この区画はステップ
810で所在が突き止められ、制御ファイルに入ってい
るすでにチェックアウトされた区画の記述子と比較され
る(ステップ820)。要求された区画が別のサイトへ
チェックアウトされると、あるいはすでにチェックアウ
トされている区画とオーバラップしていると、要求は失
敗となる。ステップ830でエラー・メッセージが生成
され、要求側サイトへ送られる。ステップ840で、こ
のメッセージが受信され、プロセスは不正終了する。し
かし、要求した区画がチェックアウトされていなけれ
ば、その記述子はステップ850で制御ファイルにセー
ブされる。確認メッセージがステップ860で作られ、
リモート・サイトへ送られ、今度はこのリモート・サイ
トが1次コピー保持側になる。このメッセージはステッ
プ870で受信され、プロセスは正しく終了する。その
あと、リモート・データ・プロセッサは同じプロセスを
経てその区画の制御を手放して、中央サイトへ「区画を
チェックイン」する。
【0044】1次コピー管理責任の動的移転は、上述し
た結合更新手法に組み入れることが可能である。データ
・プロセッサ・ネットワークのオペレーション開始時
に、すべてのデータの1次コピーを、中央サイトと呼ぶ
一個所のサイトに置いておくことができる。処理が行わ
れると、データ・レコードのコピーは、「ニュース掲示
板」または「要求時」処理によってネットワーク上に分
散化される。ある時間が経過したあと、分散サイトは特
定の区画の所有権を要求することができ、その区画の1
次コピー管理責任をその該当サイトに動的に移転するこ
とができる。そのあと、ネットワークのワークロードが
時間の経過と共に変化したとき管理責任を中央サイトに
返却したり、別のサイトへ移転することができる。
【0045】
【発明の効果】本発明が提供する、分散データ処理シス
テムをオペレーションするための装置および方法によれ
ば、システム内で最も頻繁に更新アクセスを必要とする
プロセッサに1次コピーの管理責任を移転することによ
り、パフォーマンスとデータの可用性の向上が実現され
る。1次コピーは区画に分割して、システムの各所に分
散化することが可能である。
【図面の簡単な説明】
【図1】本発明の実施に適した分散データ処理システム
の一部を示す図である。
【図2】図1のシステムで使用するのに適したデータと
関連制御テーブルを示す概略図である。
【図3】分散データ処理システムにおいて更新をプロパ
ゲートするときの、本発明の実施例による「ニュース掲
示板」または「プッシュダウン」手法を示すフローチャ
ートである。
【図4】分散データ処理システムにおいて更新をプロパ
ゲートするときの、本発明の実施例による「要求時」ま
たは「プルダウン」手法を示すフローチャートである。
【図5】中央の1次コピーに更新を行うときの、従来の
手法(ストラテジ)を示すフローチャートである。
【図6】本発明の実施例に従って、分散化された1次コ
ピーが入ったファイルをもつ分散データ処理システムの
一部を示す概略図である。
【図7】図6のシステムに採用された、リモート・プロ
セッサが更新を行うときの更新手法を示すフローチャー
トである。
【図8】本発明に従いデータ・レコードの1次コピーの
管理責任を中央サイトからリモート・サイトへ移転する
ときのフローチャートである。
【符号の説明】 100 データ・プロセッサ 130 ストア手段 200 データ・プロセッサ 230 ストア手段 250 データ・プロセッサ 310 データ・レコード 320 現行満了時間 420 プロパゲートするブロック(ステップ)または
手段 510 チェック・ブロック(ステップ) 570 プロパゲートするブロック(ステップ)または
手段 650 記述子 660 記述子 670 非オーバラップ・グループ 680 非オーバラップ・グループ 800 管理責任移転要求ブロック(ステップ)または
手段 820 チェック・ブロック(ステップ)または手段 850 管理責任移転ブロック(ステップ)または手段
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジョフレイ シーエイチ シャーマン イギリス エスオー22 4エイチエフ ハンプシャ州 ウインチェスター オリ バース バッテリー ガーデンズ 12 (56)参考文献 特開 平3−113544(JP,A) 特開 昭63−296149(JP,A)

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】 データ・レコードの複製コピーを複数の
    データ・プロセッサにストアするステップと、 前記複数のデータ・プロセッサのうちの第1のデータ・
    プロセッサに置かれたコピーを更新のための1次コピー
    として指定するステップと、 前記データ・レコードの更新を前記1次コピーに適用
    し、次いで該更新を、前記データ・レコードの2次コピ
    ーを保持する他のデータ・プロセッサへプロパゲートす
    るステップと、 前記1次コピーの管理責任を前記第1のデータ・プロセ
    ッサから前記複数のデータ・プロセッサのうちで前記デ
    ータ・レコードに対する頻繁な更新アクセスを必要とす
    他のデータ・プロセッサに移転することによって、該
    他のプロセッサに置かれた2次コピーを、更新のための
    データ・レコードの1次コピーとするステップと、 を具えたことを特徴とする分散データ処理方法。
  2. 【請求項2】 1次コピーの管理責任が、前記他のプロ
    セッサからの要求に応答して移転されることを特徴とす
    る請求項1に記載の分散データ処理方法。
  3. 【請求項3】 中央データ・プロセッサが1次コピーの
    管理責任をもっているかどうかをチェックするステップ
    と、 前記中央プロセッサが管理責任をもっているときだけ前
    記他のデータ・プロセッサへ管理責任を移転するステッ
    プと、 をさらに具えたことを特徴とする請求項2に記載の分散
    データ処理方法。
  4. 【請求項4】 データ・レコードの1次コピーをストア
    する手段を有する第1データ・プロセッサと、 前記データ・レコードの2次コピーをストアする手段を
    有する1または2以上のリモート・データ・プロセッサ
    と、 前記データ・レコードの更新を前記1次コピーに適用
    し、次いで該更新を2次コピーへプロパゲートする手段
    と、前記データ・レコードに対する頻繁な更新アクセスを必
    要とする リモート・データ・プロセッサの1つからの要
    求に応答して1次コピーの管理責任を前記第1データ・
    プロセッサから該リモート・データ・プロセッサへ移転
    することによって、該リモート・プロセッサに置かれた
    2次コピーを、更新のためのデータ・レコードの1次コ
    ピーとする手段とを具えたことを特徴とする分散データ
    処理装置。
  5. 【請求項5】 前記データ・プロセッサが1次コピーの
    管理責任を要求する手段を有することを特徴とする請求
    項4に記載の分散データ処理装置。
  6. 【請求項6】 中央データ・プロセッサであってデータ
    ・レコードのコピーをストアする手段と、該中央データ
    ・プロセッサが1次コピーの管理責任をもっているか否
    かをチェックする手段と、該中央データ・プロセッサが
    該管理責任をもっているとき、1次コピーの管理責任を
    前記要求側データ・プロセッサへ移転する手段とを有す
    る中央データ・プロセッサをさらに具えたことを特徴と
    する請求項5に記載の分散データ処理装置。
JP5273657A 1992-12-04 1993-11-01 分散データ処理システム Expired - Fee Related JP3066693B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB9225455A GB2273183A (en) 1992-12-04 1992-12-04 Replicated distributed databases.
GB9225455.6 1992-12-04

Publications (2)

Publication Number Publication Date
JPH06214915A JPH06214915A (ja) 1994-08-05
JP3066693B2 true JP3066693B2 (ja) 2000-07-17

Family

ID=10726171

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5273657A Expired - Fee Related JP3066693B2 (ja) 1992-12-04 1993-11-01 分散データ処理システム

Country Status (3)

Country Link
US (2) US5586310A (ja)
JP (1) JP3066693B2 (ja)
GB (1) GB2273183A (ja)

Families Citing this family (145)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3170095B2 (ja) * 1993-04-14 2001-05-28 富士通株式会社 情報検索システム
JP3085085B2 (ja) * 1994-05-09 2000-09-04 三菱電機株式会社 データアクセス装置及び分散データベースシステム
GB2300937B (en) * 1994-05-09 1997-08-20 Mitsubishi Electric Corp Data access apparatus and distributed data base system
SE514798C2 (sv) * 1994-11-23 2001-04-23 Ericsson Telefon Ab L M System och förfarande för att förse ett hanterande system med information och ett telekommunikationssystem
US6182121B1 (en) * 1995-02-03 2001-01-30 Enfish, Inc. Method and apparatus for a physical storage architecture having an improved information storage and retrieval system for a shared file environment
US5850522A (en) * 1995-02-03 1998-12-15 Dex Information Systems, Inc. System for physical storage architecture providing simultaneous access to common file by storing update data in update partitions and merging desired updates into common partition
US5790848A (en) * 1995-02-03 1998-08-04 Dex Information Systems, Inc. Method and apparatus for data access and update in a shared file environment
SE507482C2 (sv) * 1995-10-09 1998-06-15 Ericsson Telefon Ab L M System och förfarande för kommunikationshantering med redundans
US5815649A (en) * 1995-10-20 1998-09-29 Stratus Computer, Inc. Distributed fault tolerant digital data storage subsystem for fault tolerant computer system
US5893115A (en) * 1995-11-29 1999-04-06 Lucent Technologies, Inc. Isochronal updating of data records
US5864854A (en) * 1996-01-05 1999-01-26 Lsi Logic Corporation System and method for maintaining a shared cache look-up table
US7080127B1 (en) * 1996-03-06 2006-07-18 Hickman Paul L Method and apparatus for computing within a wide area network
US5761500A (en) * 1996-04-18 1998-06-02 Mci Communications Corp. Multi-site data communications network database partitioned by network elements
US5740348A (en) * 1996-07-01 1998-04-14 Sun Microsystems, Inc. System and method for selecting the correct group of replicas in a replicated computer database system
US6412017B1 (en) * 1996-07-01 2002-06-25 Microsoft Corporation Urgent replication facility
US5819272A (en) * 1996-07-12 1998-10-06 Microsoft Corporation Record tracking in database replication
US5832225A (en) * 1996-07-12 1998-11-03 Microsoft Corporation Method computer program product and system for maintaining replication topology information
US6049809A (en) * 1996-10-30 2000-04-11 Microsoft Corporation Replication optimization system and method
JPH10161916A (ja) * 1996-11-28 1998-06-19 Hitachi Ltd データベースの複製に伴う更新競合の検出方法
US5987496A (en) * 1996-12-03 1999-11-16 Mitsubishi Electric Information Technology Center America, Inc. (Ita) Real-time channel-based reflective memory
DE19708021C1 (de) * 1997-02-27 1998-08-13 Siemens Ag Verfahren zur Regelung eines Zugriffs von Rechnern auf Daten eines zentralen Rechners
US5970488A (en) * 1997-05-05 1999-10-19 Northrop Grumman Corporation Real-time distributed database system and method
US5933837A (en) * 1997-05-09 1999-08-03 At & T Corp. Apparatus and method for maintaining integrated data consistency across multiple databases
SE9702015L (sv) * 1997-05-28 1998-11-29 Ericsson Telefon Ab L M Metod vid distribuerad databas, samt ett system anpassat att verka enligt metoden
US5937168A (en) * 1997-05-30 1999-08-10 Bellsouth Corporation Routing information within an adaptive routing architecture of an information retrieval system
US6012059A (en) * 1997-08-21 2000-01-04 Dataxel Corporation Method and apparatus for replicated transaction consistency
US5884328A (en) * 1997-08-29 1999-03-16 Tandem Computers, Inc. System and method for sychronizing a large database and its replica
US6223209B1 (en) 1997-09-30 2001-04-24 Ncr Corporation Distributed world wide web servers
US6014667A (en) * 1997-10-01 2000-01-11 Novell, Inc. System and method for caching identification and location information in a computer network
US6532479B2 (en) * 1998-05-28 2003-03-11 Oracle Corp. Data replication for front office automation
US6952829B1 (en) * 1998-06-29 2005-10-04 International Business Machines Corporation Dynamically adapting between pessimistic and optimistic notifications to replicated objects
US6253295B1 (en) 1998-07-20 2001-06-26 International Business Machines Corporation System and method for enabling pair-pair remote copy storage volumes to mirror data in another pair of storage volumes
US6289511B1 (en) 1998-09-29 2001-09-11 Telephonaktiebolaget Lm Ericsson Method and system for distributing software in a telecommunications network
GB9901005D0 (en) * 1999-01-19 1999-03-10 Ncr Int Inc Data warehouse applications for networks of self-service machines
DE60006121T2 (de) * 1999-06-30 2004-07-08 Computer Science Corp., Austin System und verfahren zum synchronisieren von datenkopien in einem rechnersystem
US6952741B1 (en) * 1999-06-30 2005-10-04 Computer Sciences Corporation System and method for synchronizing copies of data in a computer system
US6446086B1 (en) 1999-06-30 2002-09-03 Computer Sciences Corporation System and method for logging transaction records in a computer system
US6339772B1 (en) 1999-07-06 2002-01-15 Compaq Computer Corporation System and method for performing database operations on a continuous stream of tuples
US6453313B1 (en) 1999-07-06 2002-09-17 Compaq Information Technologies Group, L.P. Database management system and method for dequeuing rows published to a database table
US7340426B1 (en) 1999-07-30 2008-03-04 Computer Sciences Corporation Event-triggered transaction processing for electronic data interchange
WO2001013274A2 (en) * 1999-08-12 2001-02-22 THE GOVERNMENT OF THE UNITED STATES OF AMERICA, as Represented by THE SECRETARY OF THE DEPARTEMNT OF HEALTH AND HUMAN SERVICES, CENTERS FOR DISEASE CONTROL AND PREVENTION System and method for distributed data storage and update in a computer network
US6970844B1 (en) 1999-08-27 2005-11-29 Computer Sciences Corporation Flow designer for establishing and maintaining assignment and strategy process maps
US6961708B1 (en) 1999-08-27 2005-11-01 Computer Sciences Corporation External interface for requesting data from remote systems in a generic fashion
US7359863B1 (en) 1999-09-30 2008-04-15 Computer Sciences Corporation Condition component framework for reinsurance
US7693731B1 (en) 1999-09-30 2010-04-06 Computer Sciences Corporation Business process framework for reinsurance
US7356541B1 (en) 1999-10-29 2008-04-08 Computer Sciences Corporation Processing business data using user-configured keys
US7571171B1 (en) 1999-10-29 2009-08-04 Computer Sciences Corporation Smart trigger for use in processing business transactions
US7526487B1 (en) 1999-10-29 2009-04-28 Computer Sciences Corporation Business transaction processing systems and methods
US7693844B1 (en) 1999-10-29 2010-04-06 Computer Sciences Corporation Configuring processing relationships among entities of an organization
US7363264B1 (en) 1999-10-29 2008-04-22 Computer Sciences Corporation Processing business transactions using dynamic database packageset switching
US7546304B1 (en) 1999-10-29 2009-06-09 Computer Sciences Corporation Configuring keys for use in processing business data
US7353196B1 (en) 1999-10-29 2008-04-01 Computer Sciences Corporation Configuring dynamic database packageset switching for use in processing business transactions
US6925468B1 (en) 1999-10-29 2005-08-02 Computer Sciences Corporation Configuring systems for generating business transaction reports using processing relationships among entities of an organization
US6477583B1 (en) * 1999-11-15 2002-11-05 Novell, Inc. Infrastructure for supporting file replications
US6421686B1 (en) * 1999-11-15 2002-07-16 International Business Machines Corporation Method of replicating data records
US6510434B1 (en) 1999-12-29 2003-01-21 Bellsouth Intellectual Property Corporation System and method for retrieving information from a database using an index of XML tags and metafiles
KR100334912B1 (ko) * 2000-01-28 2002-05-04 오길록 원격으로 복제객체를 생성하는 장치 및 방법
US6802022B1 (en) 2000-04-14 2004-10-05 Stratus Technologies Bermuda Ltd. Maintenance of consistent, redundant mass storage images
US6862689B2 (en) 2001-04-12 2005-03-01 Stratus Technologies Bermuda Ltd. Method and apparatus for managing session information
US6901481B2 (en) 2000-04-14 2005-05-31 Stratus Technologies Bermuda Ltd. Method and apparatus for storing transactional information in persistent memory
US6523032B1 (en) * 2000-05-12 2003-02-18 Oracle Corporation Servicing database requests using read-only database servers coupled to a master database server
EP1168176A3 (en) * 2000-06-09 2008-05-14 Hewlett-Packard Company Utilization of unused disk space on networked computers
DE60036539T2 (de) * 2000-06-09 2008-05-08 Hewlett-Packard Development Co., L.P., Houston Verwendung von ungenutzter Speicherkapazität bei vernetzten Computern
US7418400B1 (en) 2000-06-23 2008-08-26 Computer Sciences Corporation Internet-enabled system and method for assessing damages
US7430515B1 (en) 2000-06-23 2008-09-30 Computer Sciences Corporation System and method for externalization of formulas for assessing damages
US7095426B1 (en) 2000-06-23 2006-08-22 Computer Sciences Corporation Graphical user interface with a hide/show feature for a reference system in an insurance claims processing system
US7430514B1 (en) 2000-06-23 2008-09-30 Computer Sciences Corporation System and method for processing insurance claims using a table of contents
US7398219B1 (en) 2000-06-23 2008-07-08 Computer Sciences Corporation System and method for displaying messages using a messages table
US7571107B1 (en) 2000-06-23 2009-08-04 Computer Sciences Corporation System and method for externalization of rules for assessing damages
US7343307B1 (en) 2000-06-23 2008-03-11 Computer Sciences Corporation Dynamic help method and system for an insurance claims processing system
US6505200B1 (en) * 2000-07-06 2003-01-07 International Business Machines Corporation Application-independent data synchronization technique
US8069062B2 (en) * 2000-10-02 2011-11-29 Computer Sciences Corporation Computerized method and system of determining inconsistencies in witness statements relating to an accident
WO2002031696A1 (en) 2000-10-09 2002-04-18 Maximum Availability Limited Method and apparatus for data processing
ATE349041T1 (de) * 2000-10-27 2007-01-15 Availigent Inc Fehlertoleranz für über ein kommunikationsnetzwerk betriebene rechnerprogramme
US7349940B1 (en) 2000-11-03 2008-03-25 Agere Systems Inc. Communication protocol for data exchange via shared files
US6886171B2 (en) * 2001-02-20 2005-04-26 Stratus Technologies Bermuda Ltd. Caching for I/O virtual address translation and validation using device drivers
US6766413B2 (en) 2001-03-01 2004-07-20 Stratus Technologies Bermuda Ltd. Systems and methods for caching with file-level granularity
US6874102B2 (en) 2001-03-05 2005-03-29 Stratus Technologies Bermuda Ltd. Coordinated recalibration of high bandwidth memories in a multiprocessor computer
AU2002303126A1 (en) * 2001-03-16 2002-10-03 Novell, Inc. Client-server model for synchronization of files
JP2002297593A (ja) * 2001-03-30 2002-10-11 Toshiba Corp ベースホスト切替型データベース管理システム
US7963899B2 (en) * 2001-07-13 2011-06-21 The Proctor & Gamble Company Continuous in-line pleating apparatus and process
US7694887B2 (en) 2001-12-24 2010-04-13 L-1 Secure Credentialing, Inc. Optically variable personalized indicia for identification documents
WO2003055638A1 (en) 2001-12-24 2003-07-10 Digimarc Id Systems, Llc Laser etched security features for identification documents and methods of making same
US7815124B2 (en) 2002-04-09 2010-10-19 L-1 Secure Credentialing, Inc. Image processing techniques for printing identification cards and documents
EP1459239B1 (en) 2001-12-24 2012-04-04 L-1 Secure Credentialing, Inc. Covert variable information on id documents and methods of making same
US7177868B2 (en) * 2002-01-02 2007-02-13 International Business Machines Corporation Method, system and program for direct client file access in a data management system
US7024429B2 (en) 2002-01-31 2006-04-04 Nextpage,Inc. Data replication based upon a non-destructive data model
US7130874B2 (en) * 2002-03-12 2006-10-31 International Business Machines Corporation Method, system, and program for maintaining data in a distributed computing environment for processing transaction requests
US7824029B2 (en) 2002-05-10 2010-11-02 L-1 Secure Credentialing, Inc. Identification card printer-assembler for over the counter card issuing
US7672860B2 (en) * 2002-09-09 2010-03-02 Computer Sciences Corporation Computerized method and system for determining the contribution of defenses to premises liability for an accident
US20040054557A1 (en) * 2002-09-09 2004-03-18 Stefan Wahlbin Computerized method and system for estimating premises liability for an accident
US7702528B2 (en) * 2002-09-09 2010-04-20 Computer Sciences Corporation Computerized method and system for determining breach of duty in premises liability for an accident
US20040054556A1 (en) * 2002-09-09 2004-03-18 Stephan Wahlbin Computerized method and system for determining causation in premises liability for an accident
US20040054558A1 (en) * 2002-09-09 2004-03-18 Stefan Wahlbin Computerized method and system for determining claimant status in premises liability for an accident
US7676387B2 (en) * 2002-10-31 2010-03-09 Computer Sciences Corporation Graphical display of business rules
US20040088195A1 (en) * 2002-10-31 2004-05-06 Childress Allen B. Method of modifying a business rule
US7689442B2 (en) * 2002-10-31 2010-03-30 Computer Science Corporation Method of generating a graphical display of a business rule with a translation
US7451148B2 (en) 2002-10-31 2008-11-11 Computer Sciences Corporation Method of modifying a business rule while tracking the modifications
US20040088199A1 (en) * 2002-10-31 2004-05-06 Childress Allen B. Method of forming a business rule
US20040085357A1 (en) * 2002-10-31 2004-05-06 Childress Allen B. Method of generating a graphical display of a business rule and associated business rule elements
AU2003298731A1 (en) 2002-11-26 2004-06-18 Digimarc Id Systems Systems and methods for managing and detecting fraud in image databases used with identification documents
US7809586B2 (en) * 2002-11-27 2010-10-05 Computer Sciences Corporation Computerized method and system for estimating an effect on liability using a comparison of the actual speed of a vehicle in an accident and time and distance traveled by the vehicles in a merging vehicle accident
US7660725B2 (en) * 2002-11-27 2010-02-09 Computer Sciences Corporation Computerized method and system for estimating an effect on liability based on the stopping distance of vehicles
US20040103005A1 (en) * 2002-11-27 2004-05-27 Stefan Wahlbin Computerized method and system for estimating monetary damages due to injuries in an accident from liability estimated using a computer system
US7725334B2 (en) * 2002-11-27 2010-05-25 Computer Sciences Corporation Computerized method and system for estimating liability for an accident using dynamic generation of questions
US7792690B2 (en) * 2002-11-27 2010-09-07 Computer Sciences Corporation Computerized method and system for estimating an effect on liability of the speed of vehicles in an accident and time and distance traveled by the vehicles
US7702529B2 (en) * 2002-11-27 2010-04-20 Computer Sciences Corporation Computerized method and system for estimating an effect on liability using claim data accessed from claim reporting software
US7895063B2 (en) * 2002-11-27 2011-02-22 Computer Sciences Corporation Computerized method and system for creating pre-configured claim reports including liability in an accident estimated using a computer system
US20040102984A1 (en) * 2002-11-27 2004-05-27 Stefan Wahlbin Computerized method and system for estimating liability using recorded vehicle data
US7818187B2 (en) * 2002-11-27 2010-10-19 Computer Sciences Corporation Computerized method and system for estimating liability
US7805321B2 (en) * 2002-11-27 2010-09-28 Computer Sciences Corporation Computerized method and system for estimating liability for an accident from an investigation of the accident
CA2522551C (en) 2003-04-16 2009-12-22 Digimarc Corporation Three dimensional data storage
US20040215494A1 (en) * 2003-04-24 2004-10-28 Wahlbin Stefan L. Method and system for determining monetary amounts in an insurance processing system
US7243088B2 (en) * 2003-08-06 2007-07-10 Oracle International Corporation Database management system with efficient version control
US7287043B2 (en) * 2003-08-21 2007-10-23 International Business Machines Corporation System and method for asynchronous data replication without persistence for distributed computing
US20050060205A1 (en) * 2003-09-02 2005-03-17 Woods Randall K. Systems and methods for a graphical input display in an insurance processing system
US7895064B2 (en) * 2003-09-02 2011-02-22 Computer Sciences Corporation Graphical input display in an insurance processing system
US7269588B1 (en) 2003-09-24 2007-09-11 Oracle International Corporation Neighborhood locking technique for increasing concurrency among transactions
US7555481B1 (en) 2003-10-28 2009-06-30 Oracle Corporation Method and apparatus for increasing transaction concurrency by early release of locks in groups
US20050108063A1 (en) 2003-11-05 2005-05-19 Madill Robert P.Jr. Systems and methods for assessing the potential for fraud in business transactions
US20050192850A1 (en) * 2004-03-01 2005-09-01 Lorenz Scott K. Systems and methods for using data structure language in web services
US7634566B2 (en) * 2004-06-03 2009-12-15 Cisco Technology, Inc. Arrangement in a network for passing control of distributed data between network nodes for optimized client access based on locality
US7739244B2 (en) * 2004-10-14 2010-06-15 Oracle International Corporation Operating logging for online recovery in shared memory information systems
US9020887B2 (en) 2004-12-21 2015-04-28 Proofpoint, Inc. Managing the status of documents in a distributed storage system
US7895240B2 (en) * 2005-02-03 2011-02-22 General Electric Company Systems and methods for managing information
US8869142B2 (en) * 2006-01-27 2014-10-21 Microsoft Corporation Secure content publishing and distribution
US8010390B2 (en) * 2007-06-04 2011-08-30 Computer Sciences Corporation Claims processing of information requirements
US8010389B2 (en) * 2007-06-04 2011-08-30 Computer Sciences Corporation Multiple policy claims processing
US8000986B2 (en) 2007-06-04 2011-08-16 Computer Sciences Corporation Claims processing hierarchy for designee
US8010391B2 (en) 2007-06-29 2011-08-30 Computer Sciences Corporation Claims processing hierarchy for insured
US8244558B2 (en) 2008-01-18 2012-08-14 Computer Sciences Corporation Determining recommended settlement amounts by adjusting values derived from matching similar claims
US7890632B2 (en) * 2008-08-11 2011-02-15 International Business Machines Corporation Load balancing using replication delay
US9075858B2 (en) * 2010-12-16 2015-07-07 Sybase, Inc. Non-disruptive data movement and node rebalancing in extreme OLTP environments
US20130159365A1 (en) 2011-12-16 2013-06-20 Microsoft Corporation Using Distributed Source Control in a Centralized Source Control Environment
US9727625B2 (en) 2014-01-16 2017-08-08 International Business Machines Corporation Parallel transaction messages for database replication
CN105095299A (zh) * 2014-05-16 2015-11-25 北京奇虎科技有限公司 图片抓取方法和***
CN104503869B (zh) * 2015-01-15 2018-06-15 宇龙计算机通信科技(深圳)有限公司 数据处理方法和数据处理***
CN105302670B (zh) * 2015-11-04 2019-02-26 青岛海信网络科技股份有限公司 一种采用多机冗余方式对车站进行监控的方法及装置
CN105302672B (zh) * 2015-11-19 2018-11-02 中国建设银行股份有限公司 应用于网页快照的数据处理方法及***
CN105677516B (zh) * 2016-01-07 2019-11-05 成都市思叠科技有限公司 一种计算靠近存储云平台中高效可靠的备份恢复方法
US10606249B2 (en) 2018-03-16 2020-03-31 Saudi Arabian Oil Company Multi-vector engineering methods and apparatus for isolated process control systems
US20210173815A1 (en) * 2019-12-04 2021-06-10 International Business Machines Corporation Automatically dispositioning of copies of data
US11341830B2 (en) 2020-08-06 2022-05-24 Saudi Arabian Oil Company Infrastructure construction digital integrated twin (ICDIT)
US11687053B2 (en) 2021-03-08 2023-06-27 Saudi Arabian Oil Company Intelligent safety motor control center (ISMCC)
US12024985B2 (en) 2022-03-24 2024-07-02 Saudi Arabian Oil Company Selective inflow control device, system, and method

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4432057A (en) * 1981-11-27 1984-02-14 International Business Machines Corporation Method for the dynamic replication of data under distributed system control to control utilization of resources in a multiprocessing, distributed data base system
US4620276A (en) * 1983-06-02 1986-10-28 International Business Machines Corporation Method and apparatus for asynchronous processing of dynamic replication messages
US4718002A (en) * 1985-06-05 1988-01-05 Tandem Computers Incorporated Method for multiprocessor communications
US4714992A (en) * 1985-11-26 1987-12-22 International Business Machines Corporation Communication for version management in a distributed information service
US4714996A (en) * 1985-11-26 1987-12-22 International Business Machines Corporation Impact calculation for version management in a distributed information service
US4853843A (en) * 1987-12-18 1989-08-01 Tektronix, Inc. System for merging virtual partitions of a distributed database
JPH0239942A (ja) * 1988-07-29 1990-02-08 Hitachi Ltd ビデオプリンタ
JPH0259942A (ja) * 1988-08-26 1990-02-28 Hitachi Ltd 分散データベースシステムのノード結合状態管理方式
JP2504218B2 (ja) * 1989-09-28 1996-06-05 日本電気株式会社 分散型デ―タ処理装置
US5261094A (en) * 1991-04-08 1993-11-09 International Business Machines Corporation Asynchronous replication of data changes by distributed update requests

Also Published As

Publication number Publication date
GB9225455D0 (en) 1993-01-27
US5586310A (en) 1996-12-17
JPH06214915A (ja) 1994-08-05
US5737738A (en) 1998-04-07
GB2273183A (en) 1994-06-08

Similar Documents

Publication Publication Date Title
JP3066693B2 (ja) 分散データ処理システム
US5627961A (en) Distributed data processing system
CN101556559B (zh) 利用虚拟存储器的事务型存储器执行
US5434994A (en) System and method for maintaining replicated data coherency in a data processing system
US6587921B2 (en) Method and apparatus for cache synchronization in a clustered environment
EP0902923B1 (en) Method for independent and simultaneous access to a common data set
EP1131715B1 (en) Distributed transactional processing system and method
US6944726B2 (en) Distributed background track processing
US9652346B2 (en) Data consistency control method and software for a distributed replicated database system
US5442785A (en) Method and apparatus for passing messages between application programs on host processors coupled to a record lock processor
US20020133507A1 (en) Collision avoidance in database replication systems
CN101689129A (zh) 在群集文件***中的文件***安装
US20040107381A1 (en) High performance transaction storage and retrieval system for commodity computing environments
EP1015983A1 (en) Data sharing method and computer architecture
JP3222125B2 (ja) システム間データベース共用方式
Rahm Primary copy synchronization for DB-sharing
US5576945A (en) Transaction monitor process with pre-arranged modules for a multiprocessor system
US7536422B2 (en) Method for process substitution on a database management system
EP0600458B1 (en) Distributed data processing system with replication of data across the system
JPH0844670A (ja) ファイル管理方法およびそれを用いた計算機システムならびにその計算機システムの運用方法
JPH11272628A (ja) 共用データの転送方法および結合装置
JP3312652B2 (ja) マルチプロセッサアーキテクチャでのデータベース管理方式
JPH0310343A (ja) ホットスポットデータ管理処理方式
JPH02247748A (ja) マルチプロセッサによるデータベース処理方式
CN113886500A (zh) 一种数据处理方法、装置、服务器以及存储介质

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees