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
Links
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F19/00—Complete 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/20—Automatic teller machines [ATMs]
- G07F19/211—Software architecture within ATMs or in relation to the ATM network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2097—Error 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2315—Optimistic concurrency control
- G06F16/2322—Optimistic concurrency control using timestamps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/202—Error 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/2035—Error 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/202—Error 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/2048—Error 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/82—Solving problems relating to consistency
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, 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号の明細
書の記載に基づくものであって、当該英国特許出願の番
号を参照することによって当該英国特許出願の明細書の
記載内容が本明細書の一部分を構成するものとする。
の基礎たる英国特許出願第9225455.6号の明細
書の記載に基づくものであって、当該英国特許出願の番
号を参照することによって当該英国特許出願の明細書の
記載内容が本明細書の一部分を構成するものとする。
【0003】
【従来の技術】分散システムは、データ通信ネットワー
クで相互に接続された複数のデータ処理マシン(計算
機)から構成されているのが代表的である。主要な分散
システムでは、あるサイト(設置場所)に置かれたデー
タは、別のサイトで実行中のデータ処理プログラムから
透過方式でアクセス可能になっている。この種の分散デ
ータベース・システムの一般的説明は、論文「分散デー
タベース・システムとはなにか」(What is a
Distributed Database Sys
tem)第1部および第2部(C.J.Date著、R
elationalJournal,Nos.1 an
d 2,1987)に記載されている。
クで相互に接続された複数のデータ処理マシン(計算
機)から構成されているのが代表的である。主要な分散
システムでは、あるサイト(設置場所)に置かれたデー
タは、別のサイトで実行中のデータ処理プログラムから
透過方式でアクセス可能になっている。この種の分散デ
ータベース・システムの一般的説明は、論文「分散デー
タベース・システムとはなにか」(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)が、各サイトがスタンドアロン・システムである場
合よりも低下する。分散システムの目的はユーザがデー
タ資源を共用できるようにすることであるが、これらの
マイナス効果はユーザがリモート・データをアクセスす
るのを妨げる原因になっている。このことは、単純な集
中システムに比べて分散システムの価値を減ずることに
なる。
こったり、他のネットワーク・サイトに置かれたデータ
処理マシンに障害が起こったりすると、ある時点で、リ
モート・データがアクセスできない場合があることであ
る。従って、データの可用性(availabilit
y)が、各サイトがスタンドアロン・システムである場
合よりも低下する。分散システムの目的はユーザがデー
タ資源を共用できるようにすることであるが、これらの
マイナス効果はユーザがリモート・データをアクセスす
るのを妨げる原因になっている。このことは、単純な集
中システムに比べて分散システムの価値を減ずることに
なる。
【0006】そのために、分散システム分野で絶えず目
標としていることは、ローカル・データの場合に得られ
るパフォーマンスと可用性に可能な限り近いパフォーマ
ンスと可用性でリモート・データがアクセスできるよう
にすることである。これを達成するひとつの方法は、ネ
ットワーク内で受け渡しされるデータを複製して、大部
分のデータ・アクセスが、必要とするデータのローカル
・コピーまたは近くのコピーで満たされるようにするこ
とである。このアプローチは、Sang Hyuk S
on著の論文、SIGMODレコード、Vol.17
No.4(1988)に記載されている。この手法で
は、データをアクセスするときのネットワーク・トラフ
ィック(およびコスト)の削減と、更新を複数のデータ
・コピーにプロパゲート(伝播)するときに必要になる
付加的なネットワーク・トラフィックとの間でバランス
をとる必要がある。
標としていることは、ローカル・データの場合に得られ
るパフォーマンスと可用性に可能な限り近いパフォーマ
ンスと可用性でリモート・データがアクセスできるよう
にすることである。これを達成するひとつの方法は、ネ
ットワーク内で受け渡しされるデータを複製して、大部
分のデータ・アクセスが、必要とするデータのローカル
・コピーまたは近くのコピーで満たされるようにするこ
とである。このアプローチは、Sang Hyuk S
on著の論文、SIGMODレコード、Vol.17
No.4(1988)に記載されている。この手法で
は、データをアクセスするときのネットワーク・トラフ
ィック(およびコスト)の削減と、更新を複数のデータ
・コピーにプロパゲート(伝播)するときに必要になる
付加的なネットワーク・トラフィックとの間でバランス
をとる必要がある。
【0007】データの複製は、いくつかのタイプの分散
システムで採用されている。そのようなシステムとして
は、キャッシュを使用したローカル・エリア・ネットワ
ーク・ファイル・サーバや複製データを使用した分散デ
ータ管理システムがある。主要な複製データ・システム
では、データ・オブジェクトの1次コピーは単一のデー
タ・プロセッサに保管されている。このオブジェクトの
他のコピーはすべて2次コピーと呼ばれている。更新は
最初に1次コピーに適用されて、更新の時間順序が正し
くなるようにしている。2次コピーに対する変更は、最
新の1次コピーに基づいて行われる。
システムで採用されている。そのようなシステムとして
は、キャッシュを使用したローカル・エリア・ネットワ
ーク・ファイル・サーバや複製データを使用した分散デ
ータ管理システムがある。主要な複製データ・システム
では、データ・オブジェクトの1次コピーは単一のデー
タ・プロセッサに保管されている。このオブジェクトの
他のコピーはすべて2次コピーと呼ばれている。更新は
最初に1次コピーに適用されて、更新の時間順序が正し
くなるようにしている。2次コピーに対する変更は、最
新の1次コピーに基づいて行われる。
【0008】データ・オブジェクトを複製することは、
そのオブジェクトに対するリード(読取り)アクセスの
割合が高く、ライト(書込み)アクセスの割合が低いと
きに最も好都合である。これは、リード・アクセスが単
一の2次コピーで行うことができるのに対し、ライト・
アクセスが1次コピーで行われ、2次コピーのすべてに
プロパゲートする必要があるためである。従って、ライ
ト・アクセスのコストはリード・アクセスのコストより
高くなる。分散システムでは、あるデータ・オブジェク
トが更新されると、そのオブジェクトのリモート2次コ
ピーが無効にされ、ネットワーク経由で送られてきた新
しいコピーに置き換えられるので、更新に伴う他のコス
トにネットワーク・コストが付加されることになる。
そのオブジェクトに対するリード(読取り)アクセスの
割合が高く、ライト(書込み)アクセスの割合が低いと
きに最も好都合である。これは、リード・アクセスが単
一の2次コピーで行うことができるのに対し、ライト・
アクセスが1次コピーで行われ、2次コピーのすべてに
プロパゲートする必要があるためである。従って、ライ
ト・アクセスのコストはリード・アクセスのコストより
高くなる。分散システムでは、あるデータ・オブジェク
トが更新されると、そのオブジェクトのリモート2次コ
ピーが無効にされ、ネットワーク経由で送られてきた新
しいコピーに置き換えられるので、更新に伴う他のコス
トにネットワーク・コストが付加されることになる。
【0009】このアプローチの極端なケースとして、リ
ードオンリ・レプリカとして意思決定支援アプリケーシ
ョンで使用されることを目的とした「スナップショッ
ト」の使用がある。Lindsay他は、1次データの
最新状態に近い状態にスナップショットを保つために、
スナップショットがどのように定期的にリフレッシュさ
れるかを、IBMリサーチ・レポートRJ4992(ス
ナップショット差異のリフレッシュ・アルゴリズム」
(Snapshot DifferentialRef
lesh Algorithm)(B.Lindsay
他著、1986)の中で説明している。しかし、スナッ
プショットには保全性(integrity)の保証が
ないので、トランザクション向きデータの更新には使用
できない。
ードオンリ・レプリカとして意思決定支援アプリケーシ
ョンで使用されることを目的とした「スナップショッ
ト」の使用がある。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)で論述さ
れている。
データベースを更新する場合、2次コピーは即時に無効
化され、大量のネットワーク・トラフィックが生じるこ
とになる。この付加的トラフィックは、複製から得られ
ると考えられるネットワーク・トラフィックの削減量を
上回ることさえある。この結果、実用上、複製手法は大
きな共用ファイルやデータベースには有用でなく、ほと
んどの場合、集中化されていることが、論文「ネットワ
ーク・システムの構造」(Structures fo
r Systems of Networks)(A.
L.Scherr、IBM Systems Jour
nal Vol.25、No.1、1987)で論述さ
れている。
【0011】
【発明が解決しようとする課題】従って、従来技術の重
要な問題は、データ複製が望ましい場合であっても、複
数のサイトにいるユーザがデータを更新できるようにす
る重要なケースにおいてその実現が非常に困難であるこ
とである。しかし、実用面では、多くの場合、分散サイ
トに置かれたアプリケーションは最新のデータをアクセ
スする必要がないので、既知の制御された量だけ最新で
はないデータによっても、問題なく機能させることが可
能である。このような例としては、定期的に更新される
料率テーブル(rate table)を使用するアプ
リケーションや、現金引出しを許可するとき、最新状態
にない口座残高を使用する自動テラー(銀行窓口)シス
テムがある。
要な問題は、データ複製が望ましい場合であっても、複
数のサイトにいるユーザがデータを更新できるようにす
る重要なケースにおいてその実現が非常に困難であるこ
とである。しかし、実用面では、多くの場合、分散サイ
トに置かれたアプリケーションは最新のデータをアクセ
スする必要がないので、既知の制御された量だけ最新で
はないデータによっても、問題なく機能させることが可
能である。このような例としては、定期的に更新される
料率テーブル(rate table)を使用するアプ
リケーションや、現金引出しを許可するとき、最新状態
にない口座残高を使用する自動テラー(銀行窓口)シス
テムがある。
【0012】ある特定のサイトがデータ項目の1次コピ
ーをストアするように構成されているが、実際には1次
コピーを保有するサイトよりも、リモート・サイトがそ
の項目に対する更新アクセスを大量に必要とする場合
に、問題が起こる可能性がある。このことは、リモート
・サイトが1次コピーに行うべき更新要求を送ったあと
で、変更がその2次コピーに送り返されるのを待たされ
ることを意味する。
ーをストアするように構成されているが、実際には1次
コピーを保有するサイトよりも、リモート・サイトがそ
の項目に対する更新アクセスを大量に必要とする場合
に、問題が起こる可能性がある。このことは、リモート
・サイトが1次コピーに行うべき更新要求を送ったあと
で、変更がその2次コピーに送り返されるのを待たされ
ることを意味する。
【0013】
【課題を解決するための手段】本発明は、分散データ処
理装置および分散データ処理方法を提供することを目的
としている。本発明の方法によれば、データ・レコード
の複製コピーを複数のデータ・プロセッサにストアし、
データ・プロセッサのうちの第1のデータ・プロセッサ
に置かれた前記コピーのうちの第1のコピーを更新目的
のために1次コピーとして指定し、その1次コピーの更
新をデータ・レコードの2次コピーを保持する他のデー
タ・プロセッサにプロパゲートし、1次コピーの管理責
任を前記第1のデータ・プロセッサから別のプロセッサ
へ移転することによって、他のプロセッサに置かれた2
次コピーを更新目的のためにデータ・レコードの1次コ
ピーとして指定する。
理装置および分散データ処理方法を提供することを目的
としている。本発明の方法によれば、データ・レコード
の複製コピーを複数のデータ・プロセッサにストアし、
データ・プロセッサのうちの第1のデータ・プロセッサ
に置かれた前記コピーのうちの第1のコピーを更新目的
のために1次コピーとして指定し、その1次コピーの更
新をデータ・レコードの2次コピーを保持する他のデー
タ・プロセッサにプロパゲートし、1次コピーの管理責
任を前記第1のデータ・プロセッサから別のプロセッサ
へ移転することによって、他のプロセッサに置かれた2
次コピーを更新目的のためにデータ・レコードの1次コ
ピーとして指定する。
【0014】所有権、つまり、1次コピーの管理責任の
移転は動的に行われるので、1次コピーをどの時点にお
いても、最も適したサイトに置いておくことができる。
移転は動的に行われるので、1次コピーをどの時点にお
いても、最も適したサイトに置いておくことができる。
【0015】データ・レコードの2次コピーを保持して
いるリモート・プロセッサは、レコード記述子(rec
ord descriptor)を使用して1次コピー
の管理責任を要求できるようにすることが好ましい。デ
ータ・レコードの1次コピーの管理責任がリモート・デ
ータ・プロセッサへ移転されたとき、リストをデータレ
コードの記述子の中央プロセッサに保存しておくことが
できるので、そのリストをチェックすることによって、
競合する要求に許可を与えることが防止される。
いるリモート・プロセッサは、レコード記述子(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で示
す。
ワークの一部を示したものである。図示のように、デー
タ・プロセッサ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)に説明されている。
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)と呼
ばれている。
クで結合することは、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つのファイルをアクセ
スしなければならないからである。
ータ・ネットワークは導入と運用に費用がかかるため
に、ネットワーク・トラフィックをできるかぎり削減す
る試みがなされている。これを実現する1つの方法とし
て、データ・ファイルをネットワーク上の異なるプロセ
ッサ間で分割して、そのデータを最も頻繁に使用するデ
ータ・プロセッサに、あるいは物理的にそのプロセッサ
の近くにストアしておく場合がある。しかし、この方法
は、同じデータ・ファイルが複数のデータ・プロセッサ
によって使用される場合には、ネットワーク・トラフィ
ックの削減には役立たない。その理由は、そのファイル
がどこに保存されていても、1つを除くすべてのマシン
がネットワークを使用してその1つのファイルをアクセ
スしなければならないからである。
【0021】これに対して、第2のアプローチは、デー
タ・ファイルのコピーを複数作成して、ネットワーク上
の各種のデータ・プロセッサにそれらのコピーをストア
しておく方法である。この方法によると、特定ファイル
のコピーをすべてのデータ・プロセッサに、あるいは少
なくとも、そのファイルを常時使用するデータ・プロセ
ッサだけにストアしておくことができる。ファイルの複
製を各データ・プロセッサに置いておくと、データへの
アクセスがローカルに行われるので、ネットワーク経由
でデータを送る必要がなくなる。
タ・ファイルのコピーを複数作成して、ネットワーク上
の各種のデータ・プロセッサにそれらのコピーをストア
しておく方法である。この方法によると、特定ファイル
のコピーをすべてのデータ・プロセッサに、あるいは少
なくとも、そのファイルを常時使用するデータ・プロセ
ッサだけにストアしておくことができる。ファイルの複
製を各データ・プロセッサに置いておくと、データへの
アクセスがローカルに行われるので、ネットワーク経由
でデータを送る必要がなくなる。
【0022】複製されたコピーの1つは、「マスタ」ま
たは「1次」コピーとして指定される。あるファイルに
更新が行われると、その更新は最初にマスタ・コピーに
適用され、他の2次コピーに対する更新はマスタから得
て、2次コピーにプロパゲートされる。更新を最初に1
つのマスタ・コピーに適用すると、更新が正しい時間順
序で適用されることが保証される。全てのファイルのマ
スタ・コピーを1つのデータ・プロセッサに置いておく
必要はない。ある特定ファイルのマスタ・コピーを置い
ておく場所は、そのファイルへのアクセスを最も必要と
するデータ・プロセッサにすることも、その近くにする
ことも可能である。
たは「1次」コピーとして指定される。あるファイルに
更新が行われると、その更新は最初にマスタ・コピーに
適用され、他の2次コピーに対する更新はマスタから得
て、2次コピーにプロパゲートされる。更新を最初に1
つのマスタ・コピーに適用すると、更新が正しい時間順
序で適用されることが保証される。全てのファイルのマ
スタ・コピーを1つのデータ・プロセッサに置いておく
必要はない。ある特定ファイルのマスタ・コピーを置い
ておく場所は、そのファイルへのアクセスを最も必要と
するデータ・プロセッサにすることも、その近くにする
ことも可能である。
【0023】マスタ・コピーの更新が行われると、その
更新されたレコードを、あるいは更新されたファイルの
コピー全体でも、2次コピーのそれぞれにプロパゲート
することが可能である。しかし、そのようにすると、ネ
ットワーク・トラフィックが大量に発生する可能性があ
るので、複製から得られる利点がすべて帳消しになるか
もしれない。本発明の実施例によれば、この問題は、2
次コピーの各々において、あらかじめ定義したある程度
の不確実性を許容することによって解決している。これ
を実現するために、2次コピーの各々には、現行時間
(currency time)が関連づけられ、その
現行期間の満了時間(expiry time)がその
ファイルに関連するCICS制御ファイルにストアされ
ている。現行満了時間が経過するまでは、2次コピー
は、マスタ・コピーが中間時間に更新されたかどうかに
関係なく、有効であるものとみなされる。2次コピーに
は、1次コピーのすべてのレコードを収めておく必要は
ない。2次サイトで頻繁に必要になるレコードだけを収
めておくことができる。従って、異なる2次コピーに異
なるレコードを収めておくことができる。
更新されたレコードを、あるいは更新されたファイルの
コピー全体でも、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を
参照して説明する別のアクションをとることも可能であ
る。
ータ・レコードと現行満了時間との関係を示す概略図で
ある。図において、データ・レコード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次コ
ピー保持側がリセットすることができる。
またはファイル全体に関連づけられている。これは、デ
ータ・レコードに対する更新をプロパゲートするときは
いつでも、マスタ・コピー保持側がプロパゲートするこ
とができる。また逆に、現行満了時間は、更新がマスタ
から送られてきたときは、事前に定義した現行期間をマ
スタ更新が行われた時間に加えることによって、2次コ
ピー保持側がリセットすることができる。
【0026】データ・レコードの実際の現行期間(現行
満了時間Tとマスタ・レコードが更新された時間との
差)は、そのデータ・レコードの性質および任意的には
現行時間または日付を基準にして、ユーザによって判断
される。しかし、この現行期間を大きく左右するのは、
データの性質である。そのような例として、分散システ
ムにストアされているデータが銀行口座残高に関係する
場合がある。少額の現金引出しを許可する目的のために
(例えば、自動テラー・マシン(ATM)を使用し
て)、ユーザとしての銀行は、ローカル2次コピーに保
持されている残高を、例えば24時間ごと以上に、頻繁
に更新するために余分のネットワーク・コストと処理コ
ストをかける価値がないと判断するであろう。
満了時間Tとマスタ・レコードが更新された時間との
差)は、そのデータ・レコードの性質および任意的には
現行時間または日付を基準にして、ユーザによって判断
される。しかし、この現行期間を大きく左右するのは、
データの性質である。そのような例として、分散システ
ムにストアされているデータが銀行口座残高に関係する
場合がある。少額の現金引出しを許可する目的のために
(例えば、自動テラー・マシン(ATM)を使用し
て)、ユーザとしての銀行は、ローカル2次コピーに保
持されている残高を、例えば24時間ごと以上に、頻繁
に更新するために余分のネットワーク・コストと処理コ
ストをかける価値がないと判断するであろう。
【0027】上述したように、現行期間は現行時間また
は日付に依存して変化させることができる。例えば、月
曜日の午前(週の最初の営業開始日)に更新が特に頻繁
に行われる場合は、その時の現行期間を短くする必要が
起こる。同様に、データの更新作業が少ない週末には、
現行期間を延長することが可能である。
は日付に依存して変化させることができる。例えば、月
曜日の午前(週の最初の営業開始日)に更新が特に頻繁
に行われる場合は、その時の現行期間を短くする必要が
起こる。同様に、データの更新作業が少ない週末には、
現行期間を延長することが可能である。
【0028】図3は、更新を1つまたは2つ以上のデー
タ・レコードの1次コピーから2次コピーにプロパゲー
トする1つの手法(strategy−ストラテジ)を
示すフローチャートである。この手法は「ニュース掲示
板」(news bulletin)または「プッシュ
ダウン」(pushdown)手法と呼ぶことにする
が、マスタ・コピー保持側が2次コピーの現行満了時間
を知っているかどうかに左右されるが、リード(読取
り)要求が行われたかどうかに依存させる必要はない。
タ・レコードの1次コピーから2次コピーにプロパゲー
トする1つの手法(strategy−ストラテジ)を
示すフローチャートである。この手法は「ニュース掲示
板」(news bulletin)または「プッシュ
ダウン」(pushdown)手法と呼ぶことにする
が、マスタ・コピー保持側が2次コピーの現行満了時間
を知っているかどうかに左右されるが、リード(読取
り)要求が行われたかどうかに依存させる必要はない。
【0029】このフローチャートに示すステップのいく
つかは1次コピー保持側で実行され、残りのステップは
2次コピー保持側の各々によって実行される。1次コピ
ー保持側と2次コピー保持側との間の通信はCICSシ
ステム間通信機能を経由して、あるいは高信頼メッセー
ジ機能などのある種の同等機能を経由して達成される。
つかは1次コピー保持側で実行され、残りのステップは
2次コピー保持側の各々によって実行される。1次コピ
ー保持側と2次コピー保持側との間の通信はCICSシ
ステム間通信機能を経由して、あるいは高信頼メッセー
ジ機能などのある種の同等機能を経由して達成される。
【0030】プロセスは1次コピー保持側が、最後の更
新が2次コピーにプロパゲートされた以後に、1次コピ
ーに入っているどのデータ・レコードが更新されたかを
判断することから始まる(ステップ400)。本実施例
では、ステップ400は、2次コピーに保持されている
現行満了時間に達する前に実行される。ステップ410
では、データ・レコードのセットについて新しい現行満
了時間Tが計算されるが、これは、現行時間およびその
データ・レコードの性質に関してあらかじめ決めた情報
を基準にして行われる。この現行満了時間のレコードは
1次コピー保持側に保存される。
新が2次コピーにプロパゲートされた以後に、1次コピ
ーに入っているどのデータ・レコードが更新されたかを
判断することから始まる(ステップ400)。本実施例
では、ステップ400は、2次コピーに保持されている
現行満了時間に達する前に実行される。ステップ410
では、データ・レコードのセットについて新しい現行満
了時間Tが計算されるが、これは、現行時間およびその
データ・レコードの性質に関してあらかじめ決めた情報
を基準にして行われる。この現行満了時間のレコードは
1次コピー保持側に保存される。
【0031】ステップ420において、更新されたデー
タ・レコードは、ファイル全体に関連する現行満了時間
と一緒に、2次コピー保持側にプロパゲートされる。2
次コピー保持側によって実行される最初のステップで
は、更新が受信され(430)、ファイルの2次コピー
に適用される(440)。ステップ450において、こ
れらのレコードに関連する新たな現行満了時間がストア
される。最後に、これらのレコードに関連する有効性フ
ラグが「無効」にセットされていて、データ・レコード
の有効期間がすでに経過していることを示していれば、
これらのフラグはステップ460でリセットされる。こ
の手法によると、現行期間が経過する前に更新を2次コ
ピーに適用したときに、各2次コピーが常に使用可能に
なっていることが保証される。
タ・レコードは、ファイル全体に関連する現行満了時間
と一緒に、2次コピー保持側にプロパゲートされる。2
次コピー保持側によって実行される最初のステップで
は、更新が受信され(430)、ファイルの2次コピー
に適用される(440)。ステップ450において、こ
れらのレコードに関連する新たな現行満了時間がストア
される。最後に、これらのレコードに関連する有効性フ
ラグが「無効」にセットされていて、データ・レコード
の有効期間がすでに経過していることを示していれば、
これらのフラグはステップ460でリセットされる。こ
の手法によると、現行期間が経過する前に更新を2次コ
ピーに適用したときに、各2次コピーが常に使用可能に
なっていることが保証される。
【0032】図4は、更新をファイルの1次コピーから
2次コピーへプロパゲートする第2の手法を示すフロー
チャートである。この手法は「要求時」(on dem
and)または「プッシュダウン」(pushdow
n)手法と呼ぶことにする。この場合も、フローチャー
トに記述されているステップのいくつかは1次コピー保
持側によって実行され、残りのステップは2次コピー保
持側の各々によって実行される。
2次コピーへプロパゲートする第2の手法を示すフロー
チャートである。この手法は「要求時」(on dem
and)または「プッシュダウン」(pushdow
n)手法と呼ぶことにする。この場合も、フローチャー
トに記述されているステップのいくつかは1次コピー保
持側によって実行され、残りのステップは2次コピー保
持側の各々によって実行される。
【0033】図4に示すプロセスは、2次コピー保持側
が2次コピーに保持されているデータ・レコードについ
てリード(読取り)オペレーションを開始したときに開
始する。データ・レコードに対応する有効性フラグがス
テップ500でチェックされる。フラグが「無効」にセ
ットされていれば、制御は直接にステップ530に移
り、そこでそのデータ・レコードに対する更新が要求さ
れる。このような場合には、有効性フラグを使用する
と、データ・レコードの有効性について、これ以上のチ
ェックを行う必要がなくなる。しかし、有効性フラグが
「有効」にセットされていると、別のチェックがステッ
プ510で行われて、現行時間がそのデータ・レコード
に関連する現行満了時間よりも後であるかどうかが判断
される。現行時間がTよりも前であれば、ステップ54
0でデータ・レコードをローカル2次コピーから読み取
ることができ、プロセスは正しく終了する。
が2次コピーに保持されているデータ・レコードについ
てリード(読取り)オペレーションを開始したときに開
始する。データ・レコードに対応する有効性フラグがス
テップ500でチェックされる。フラグが「無効」にセ
ットされていれば、制御は直接にステップ530に移
り、そこでそのデータ・レコードに対する更新が要求さ
れる。このような場合には、有効性フラグを使用する
と、データ・レコードの有効性について、これ以上のチ
ェックを行う必要がなくなる。しかし、有効性フラグが
「有効」にセットされていると、別のチェックがステッ
プ510で行われて、現行時間がそのデータ・レコード
に関連する現行満了時間よりも後であるかどうかが判断
される。現行時間がTよりも前であれば、ステップ54
0でデータ・レコードをローカル2次コピーから読み取
ることができ、プロセスは正しく終了する。
【0034】現行満了時間が経過していることがステッ
プ510で見つかると、制御はステップ520に移り有
効性フラグが「無効」にセットされ、ステップ530に
移りそのデータ・レコードに対する更新が1次コピー保
持側に要求される。しかし、場合によっては、この要求
に応じられないことがある。例えば、1次コピー保持側
に障害が起こった場合や、通信ネットワークが使用可能
になっていない場合である。更新要求が受け付けられる
と、ステップ550で制御は1次コピー保持側に渡さ
れ、1次コピー保持側は要求されたレコードを取り出す
試みを行う(ステップ560)。レコードが見つかる
と、1次コピー保持側は新たな現行満了時間を計算し、
更新されたレコードと新たな時間の双方を2次コピー保
持側に転送する(ステップ570)。1次データ・レコ
ードが最後に2次コピー保持側に送られた以後に変更さ
れていなければ、確認信号および新たな現行満了時間を
送ることが可能である。
プ510で見つかると、制御はステップ520に移り有
効性フラグが「無効」にセットされ、ステップ530に
移りそのデータ・レコードに対する更新が1次コピー保
持側に要求される。しかし、場合によっては、この要求
に応じられないことがある。例えば、1次コピー保持側
に障害が起こった場合や、通信ネットワークが使用可能
になっていない場合である。更新要求が受け付けられる
と、ステップ550で制御は1次コピー保持側に渡さ
れ、1次コピー保持側は要求されたレコードを取り出す
試みを行う(ステップ560)。レコードが見つかる
と、1次コピー保持側は新たな現行満了時間を計算し、
更新されたレコードと新たな時間の双方を2次コピー保
持側に転送する(ステップ570)。1次データ・レコ
ードが最後に2次コピー保持側に送られた以後に変更さ
れていなければ、確認信号および新たな現行満了時間を
送ることが可能である。
【0035】更新要求が受け付けられないとステップ5
50で判断されたときは、プロセスは正しく終了しな
い。この事態(データがない)は、データ・レコードを
読み取る最初の要求を出したプログラムによって処理さ
れるが、これは従来の方法と同じである。
50で判断されたときは、プロセスは正しく終了しな
い。この事態(データがない)は、データ・レコードを
読み取る最初の要求を出したプログラムによって処理さ
れるが、これは従来の方法と同じである。
【0036】更新は2次コピー保持側によって受信さ
れ、2次コピーに適用される(ステップ580)。新た
な現行満了時間Tはステップ590でセーブされ、デー
タ・レコードに関連する有効性フラグVが「有効」にセ
ットされる。そのあと、データ・レコードのローカル・
コピーがステップ540で読み取られ、プロセスは正し
く終了する。この手法によると、データ・レコードがア
プリケーションによって明示に要求され、有効なコピー
がローカルに存在しないときだけデータ・レコードが送
られるので、ネットワーク・トラフィックが最小になる
が、これらのレコードが時々使用可能になっていないと
いう犠牲を伴う。
れ、2次コピーに適用される(ステップ580)。新た
な現行満了時間Tはステップ590でセーブされ、デー
タ・レコードに関連する有効性フラグVが「有効」にセ
ットされる。そのあと、データ・レコードのローカル・
コピーがステップ540で読み取られ、プロセスは正し
く終了する。この手法によると、データ・レコードがア
プリケーションによって明示に要求され、有効なコピー
がローカルに存在しないときだけデータ・レコードが送
られるので、ネットワーク・トラフィックが最小になる
が、これらのレコードが時々使用可能になっていないと
いう犠牲を伴う。
【0037】「要求時」手法と「ニュース掲示板」手法
の特徴(機能)を組み合わせた結合更新手法を使用する
ことも可能である。この場合には、リモート・サイトに
保持されている2次コピーはデータを収めていない空の
ファイルとして開始される。そのあと、これは、「要求
時」手法を使用してそのリモート・サイトの要求に見合
ったデータ・レコードのセットに組み入れることができ
る。データ・レコードの作業セット(working
set)が作成されたあと(つまり、「要求時」手法が
適切な時間動作したとき)、オペレーションを「ニュー
ス掲示板」手法に切り替えることができる。別の方法と
して、両方の手法を同時にオペレーションすることも可
能である。この場合には、リモート・サイトに保持され
る2次コピーは、リモート・サイトが必要としたデータ
・レコードと、1次コピーで最近に更新されたデータ・
レコードから構成される。この結合手法は、2次コピー
が累積していくとき若干の追加処理を生じさせるが、そ
のあとでは、その実行効率は「ニュース掲示板」手法と
同じである。この結合手法には、2次コピーがなんらか
の理由で消失したとき、回復が自動的に行われるという
利点がある。
の特徴(機能)を組み合わせた結合更新手法を使用する
ことも可能である。この場合には、リモート・サイトに
保持されている2次コピーはデータを収めていない空の
ファイルとして開始される。そのあと、これは、「要求
時」手法を使用してそのリモート・サイトの要求に見合
ったデータ・レコードのセットに組み入れることができ
る。データ・レコードの作業セット(working
set)が作成されたあと(つまり、「要求時」手法が
適切な時間動作したとき)、オペレーションを「ニュー
ス掲示板」手法に切り替えることができる。別の方法と
して、両方の手法を同時にオペレーションすることも可
能である。この場合には、リモート・サイトに保持され
る2次コピーは、リモート・サイトが必要としたデータ
・レコードと、1次コピーで最近に更新されたデータ・
レコードから構成される。この結合手法は、2次コピー
が累積していくとき若干の追加処理を生じさせるが、そ
のあとでは、その実行効率は「ニュース掲示板」手法と
同じである。この結合手法には、2次コピーがなんらか
の理由で消失したとき、回復が自動的に行われるという
利点がある。
【0038】複製コピー分散システムにおいてデータ・
レコードの更新が行われると、その更新は、そのデータ
・レコードの他のコピーに適用される前に1次コピーに
適用される。このようにしたのは、更新が正しい時間順
序で適用されることを保証するためである。しかし、多
くの分散データ処理システム(例えば、トランザクショ
ン処理システムなど)では、データはリモート・サイト
で収集されてから、1次コピーに転送されるようになっ
ている。すべてのデータの1次コピーを保持しているサ
イトが1つだけである場合は、データ収集オペレーショ
ンが1次コピーを更新しなければならないので、そのパ
フォーマンスは、非複製コピー・システムの場合よりも
低下する。図5に更新の流れを示すように、リモート・
データ・プロセッサは、既存のCICSシステム間通信
機能を使用して1次コピー・ファイルの更新を行う。ス
テップ600において、リモート・データ・プロセッサ
は更新すべきレコードを準備し、ステップ610で、そ
のレコードを中央データ・プロセッサに送る。ステップ
620で、このレコードは受信され、更新がファイルの
1次コピーに適用される。ステップ630で、更新の確
認が生成されて、リモート・サイトに送られ、ステップ
640で受信される。ネットワークに障害が発生する
と、更新が完全に失敗することがある(ステップ610
参照)。
レコードの更新が行われると、その更新は、そのデータ
・レコードの他のコピーに適用される前に1次コピーに
適用される。このようにしたのは、更新が正しい時間順
序で適用されることを保証するためである。しかし、多
くの分散データ処理システム(例えば、トランザクショ
ン処理システムなど)では、データはリモート・サイト
で収集されてから、1次コピーに転送されるようになっ
ている。すべてのデータの1次コピーを保持しているサ
イトが1つだけである場合は、データ収集オペレーショ
ンが1次コピーを更新しなければならないので、そのパ
フォーマンスは、非複製コピー・システムの場合よりも
低下する。図5に更新の流れを示すように、リモート・
データ・プロセッサは、既存のCICSシステム間通信
機能を使用して1次コピー・ファイルの更新を行う。ス
テップ600において、リモート・データ・プロセッサ
は更新すべきレコードを準備し、ステップ610で、そ
のレコードを中央データ・プロセッサに送る。ステップ
620で、このレコードは受信され、更新がファイルの
1次コピーに適用される。ステップ630で、更新の確
認が生成されて、リモート・サイトに送られ、ステップ
640で受信される。ネットワークに障害が発生する
と、更新が完全に失敗することがある(ステップ610
参照)。
【0039】これらのパフォーマンスと可用性に関する
問題の1つの解決方法を示したのが図6である。この解
決方法では、1次コピー自体がネットワーク上に分散化
されている。言い換えれば、可能な限り、各サイトは頻
繁に更新の必要があるデータ・レコードの1次コピーを
保持している。この場合は、中央サイトがこれらのデー
タ・レコードの2次コピーを保持することになるので、
ファイル全体を複製して他のサイトへ送ることができ、
あるいは中央で処理することができる。
問題の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が
関連づけられているので、データ・プロセッサは特定の
レコードがその区画にあるか否かを判断することができ
る。
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で確認が生成され、リモート・サ
イトへ送られる。そのサイトで更新されたレコードの大
部分をそのローカル区画に入れるようにしておくと、こ
の方法はネットワーク・トラフィックを大幅に削減する
ことができる。また、この方法によると、ネットワーク
障害が原因で失敗するのは、中央サイトへ送る必要のあ
る更新だけなので、可用性も向上する。
ある。ここでは、リモート・データ・プロセッサがレコ
ードを更新している。ステップ700で、リモート・デ
ータ・プロセッサは更新すべきレコードを準備し、ステ
ップ710で、ローカル区画記述子をテストして、その
レコードがそのサイトに保持されている1次コピー区画
に属するものかどうかを判断する。そうであれば、更新
がステップ720でその区画に適用され、更新の確認が
ステップ730で生成される。更新するレコードがその
ローカル区画に属するものでなければ、レコードはステ
ップ740で中央サイトに送られ、受信されると、ステ
ップ750で中央ファイルに(中央ファイルとは別のも
のであれば、中央ファイルおよび1次コピーに)適用さ
れる。ステップ760で確認が生成され、リモート・サ
イトへ送られる。そのサイトで更新されたレコードの大
部分をそのローカル区画に入れるようにしておくと、こ
の方法はネットワーク・トラフィックを大幅に削減する
ことができる。また、この方法によると、ネットワーク
障害が原因で失敗するのは、中央サイトへ送る必要のあ
る更新だけなので、可用性も向上する。
【0042】場合によっては、特定のリモート・サイト
をデータ・レコード・セットの1次コピー保持側として
開始させても、そのあとで、別のリモート・サイトがこ
れらのデータ・レコードの1次コピーに大量の更新を適
用する必要が起こることがある。ネットワーク障害が原
因で混乱が起こり、このために、データ処理サイトの更
新要求量が変化してネットワーク・トラフィックが増加
すると、分散化した1次コピーの使用によって得られる
利点のいくつかが損なわれる可能性がある。この問題
は、1次コピーを保持する管理責任を、サイト間で動的
に移転するようにすれば解決する。この方法は「チェッ
クアウト/チェックイン」(checkout/che
ckin)手法と呼ばれ、以下、図8を参照して説明す
る。
をデータ・レコード・セットの1次コピー保持側として
開始させても、そのあとで、別のリモート・サイトがこ
れらのデータ・レコードの1次コピーに大量の更新を適
用する必要が起こることがある。ネットワーク障害が原
因で混乱が起こり、このために、データ処理サイトの更
新要求量が変化してネットワーク・トラフィックが増加
すると、分散化した1次コピーの使用によって得られる
利点のいくつかが損なわれる可能性がある。この問題
は、1次コピーを保持する管理責任を、サイト間で動的
に移転するようにすれば解決する。この方法は「チェッ
クアウト/チェックイン」(checkout/che
ckin)手法と呼ばれ、以下、図8を参照して説明す
る。
【0043】ステップ800において、リモート・サイ
ト側のデータ・プロセッサはファイルの特定区画の管理
責任を要求する。この要求は、その区画記述子を中央サ
イトへ送ることによって行われる。この区画はステップ
810で所在が突き止められ、制御ファイルに入ってい
るすでにチェックアウトされた区画の記述子と比較され
る(ステップ820)。要求された区画が別のサイトへ
チェックアウトされると、あるいはすでにチェックアウ
トされている区画とオーバラップしていると、要求は失
敗となる。ステップ830でエラー・メッセージが生成
され、要求側サイトへ送られる。ステップ840で、こ
のメッセージが受信され、プロセスは不正終了する。し
かし、要求した区画がチェックアウトされていなけれ
ば、その記述子はステップ850で制御ファイルにセー
ブされる。確認メッセージがステップ860で作られ、
リモート・サイトへ送られ、今度はこのリモート・サイ
トが1次コピー保持側になる。このメッセージはステッ
プ870で受信され、プロセスは正しく終了する。その
あと、リモート・データ・プロセッサは同じプロセスを
経てその区画の制御を手放して、中央サイトへ「区画を
チェックイン」する。
ト側のデータ・プロセッサはファイルの特定区画の管理
責任を要求する。この要求は、その区画記述子を中央サ
イトへ送ることによって行われる。この区画はステップ
810で所在が突き止められ、制御ファイルに入ってい
るすでにチェックアウトされた区画の記述子と比較され
る(ステップ820)。要求された区画が別のサイトへ
チェックアウトされると、あるいはすでにチェックアウ
トされている区画とオーバラップしていると、要求は失
敗となる。ステップ830でエラー・メッセージが生成
され、要求側サイトへ送られる。ステップ840で、こ
のメッセージが受信され、プロセスは不正終了する。し
かし、要求した区画がチェックアウトされていなけれ
ば、その記述子はステップ850で制御ファイルにセー
ブされる。確認メッセージがステップ860で作られ、
リモート・サイトへ送られ、今度はこのリモート・サイ
トが1次コピー保持側になる。このメッセージはステッ
プ870で受信され、プロセスは正しく終了する。その
あと、リモート・データ・プロセッサは同じプロセスを
経てその区画の制御を手放して、中央サイトへ「区画を
チェックイン」する。
【0044】1次コピー管理責任の動的移転は、上述し
た結合更新手法に組み入れることが可能である。データ
・プロセッサ・ネットワークのオペレーション開始時
に、すべてのデータの1次コピーを、中央サイトと呼ぶ
一個所のサイトに置いておくことができる。処理が行わ
れると、データ・レコードのコピーは、「ニュース掲示
板」または「要求時」処理によってネットワーク上に分
散化される。ある時間が経過したあと、分散サイトは特
定の区画の所有権を要求することができ、その区画の1
次コピー管理責任をその該当サイトに動的に移転するこ
とができる。そのあと、ネットワークのワークロードが
時間の経過と共に変化したとき管理責任を中央サイトに
返却したり、別のサイトへ移転することができる。
た結合更新手法に組み入れることが可能である。データ
・プロセッサ・ネットワークのオペレーション開始時
に、すべてのデータの1次コピーを、中央サイトと呼ぶ
一個所のサイトに置いておくことができる。処理が行わ
れると、データ・レコードのコピーは、「ニュース掲示
板」または「要求時」処理によってネットワーク上に分
散化される。ある時間が経過したあと、分散サイトは特
定の区画の所有権を要求することができ、その区画の1
次コピー管理責任をその該当サイトに動的に移転するこ
とができる。そのあと、ネットワークのワークロードが
時間の経過と共に変化したとき管理責任を中央サイトに
返却したり、別のサイトへ移転することができる。
【0045】
【発明の効果】本発明が提供する、分散データ処理シス
テムをオペレーションするための装置および方法によれ
ば、システム内で最も頻繁に更新アクセスを必要とする
プロセッサに1次コピーの管理責任を移転することによ
り、パフォーマンスとデータの可用性の向上が実現され
る。1次コピーは区画に分割して、システムの各所に分
散化することが可能である。
テムをオペレーションするための装置および方法によれ
ば、システム内で最も頻繁に更新アクセスを必要とする
プロセッサに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 管理責任移転ブロック(ステップ)または手段
手段 510 チェック・ブロック(ステップ) 570 プロパゲートするブロック(ステップ)または
手段 650 記述子 660 記述子 670 非オーバラップ・グループ 680 非オーバラップ・グループ 800 管理責任移転要求ブロック(ステップ)または
手段 820 チェック・ブロック(ステップ)または手段 850 管理責任移転ブロック(ステップ)または手段
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジョフレイ シーエイチ シャーマン イギリス エスオー22 4エイチエフ ハンプシャ州 ウインチェスター オリ バース バッテリー ガーデンズ 12 (56)参考文献 特開 平3−113544(JP,A) 特開 昭63−296149(JP,A)
Claims (6)
- 【請求項1】 データ・レコードの複製コピーを複数の
データ・プロセッサにストアするステップと、 前記複数のデータ・プロセッサのうちの第1のデータ・
プロセッサに置かれたコピーを更新のための1次コピー
として指定するステップと、 前記データ・レコードの更新を前記1次コピーに適用
し、次いで該更新を、前記データ・レコードの2次コピ
ーを保持する他のデータ・プロセッサへプロパゲートす
るステップと、 前記1次コピーの管理責任を前記第1のデータ・プロセ
ッサから前記複数のデータ・プロセッサのうちで前記デ
ータ・レコードに対する頻繁な更新アクセスを必要とす
る他のデータ・プロセッサに移転することによって、該
他のプロセッサに置かれた2次コピーを、更新のための
データ・レコードの1次コピーとするステップと、 を具えたことを特徴とする分散データ処理方法。 - 【請求項2】 1次コピーの管理責任が、前記他のプロ
セッサからの要求に応答して移転されることを特徴とす
る請求項1に記載の分散データ処理方法。 - 【請求項3】 中央データ・プロセッサが1次コピーの
管理責任をもっているかどうかをチェックするステップ
と、 前記中央プロセッサが管理責任をもっているときだけ前
記他のデータ・プロセッサへ管理責任を移転するステッ
プと、 をさらに具えたことを特徴とする請求項2に記載の分散
データ処理方法。 - 【請求項4】 データ・レコードの1次コピーをストア
する手段を有する第1データ・プロセッサと、 前記データ・レコードの2次コピーをストアする手段を
有する1または2以上のリモート・データ・プロセッサ
と、 前記データ・レコードの更新を前記1次コピーに適用
し、次いで該更新を2次コピーへプロパゲートする手段
と、前記データ・レコードに対する頻繁な更新アクセスを必
要とする リモート・データ・プロセッサの1つからの要
求に応答して1次コピーの管理責任を前記第1データ・
プロセッサから該リモート・データ・プロセッサへ移転
することによって、該リモート・プロセッサに置かれた
2次コピーを、更新のためのデータ・レコードの1次コ
ピーとする手段とを具えたことを特徴とする分散データ
処理装置。 - 【請求項5】 前記データ・プロセッサが1次コピーの
管理責任を要求する手段を有することを特徴とする請求
項4に記載の分散データ処理装置。 - 【請求項6】 中央データ・プロセッサであってデータ
・レコードのコピーをストアする手段と、該中央データ
・プロセッサが1次コピーの管理責任をもっているか否
かをチェックする手段と、該中央データ・プロセッサが
該管理責任をもっているとき、1次コピーの管理責任を
前記要求側データ・プロセッサへ移転する手段とを有す
る中央データ・プロセッサをさらに具えたことを特徴と
する請求項5に記載の分散データ処理装置。
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)
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)
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 |
-
1992
- 1992-12-04 GB GB9225455A patent/GB2273183A/en not_active Withdrawn
-
1993
- 1993-11-01 JP JP5273657A patent/JP3066693B2/ja not_active Expired - Fee Related
- 1993-11-23 US US08/158,119 patent/US5586310A/en not_active Expired - Fee Related
-
1996
- 1996-03-26 US US08/622,722 patent/US5737738A/en not_active Expired - Fee Related
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 |