JPS59225473A - 分散フアイル制御方式 - Google Patents
分散フアイル制御方式Info
- Publication number
- JPS59225473A JPS59225473A JP58099354A JP9935483A JPS59225473A JP S59225473 A JPS59225473 A JP S59225473A JP 58099354 A JP58099354 A JP 58099354A JP 9935483 A JP9935483 A JP 9935483A JP S59225473 A JPS59225473 A JP S59225473A
- Authority
- JP
- Japan
- Prior art keywords
- update
- file
- slave
- log
- program
- 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.)
- Pending
Links
Classifications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明はマルチコンピュータシステムに係9、特に制御
用マルチコンピュータシステムにおいて要求される応答
特性を満たすに好適な分散ファイル制御方式に関する。
用マルチコンピュータシステムにおいて要求される応答
特性を満たすに好適な分散ファイル制御方式に関する。
応答性の良いファイルアクセスを実現するために、かつ
障害時の回復能力を持たせるためにマルチコンピュータ
システムにおいては、各コンピュータに同一ファイルを
持たせるファイル分散方式が採用される場合がある。こ
の場合、重複ファイル間での首尾一貫性を保つため、何
らかのファイルアクセス制御が必要になる。
障害時の回復能力を持たせるためにマルチコンピュータ
システムにおいては、各コンピュータに同一ファイルを
持たせるファイル分散方式が採用される場合がある。こ
の場合、重複ファイル間での首尾一貫性を保つため、何
らかのファイルアクセス制御が必要になる。
従来は、ファイル更新時、すべてのコンビュータに配置
されているファイルに対するアクセスを、それらがすべ
て更新完了するまで一時的に使用禁止していた。そのた
め、どのコンピュータにおいてもファイル更新には時間
がかかり、また、他コンピュータがファイル更新を行な
うと、自コンピュータの処理が待たされるという欠点が
あった。
されているファイルに対するアクセスを、それらがすべ
て更新完了するまで一時的に使用禁止していた。そのた
め、どのコンピュータにおいてもファイル更新には時間
がかかり、また、他コンピュータがファイル更新を行な
うと、自コンピュータの処理が待たされるという欠点が
あった。
本発明の第1の目的は、重複かつ分散させるファイルシ
ステムにおいて、一方の系でのファイルアクセスが、他
方の系のファイルアクセスに待たされることのない分散
ファイル制御方式を提供することにある。
ステムにおいて、一方の系でのファイルアクセスが、他
方の系のファイルアクセスに待たされることのない分散
ファイル制御方式を提供することにある。
第2の目的は、上述の方式において、重複ファイルの一
方が、他方の障害時回復用ファイルとしての能力を失な
わない方式を提供することにある。
方が、他方の障害時回復用ファイルとしての能力を失な
わない方式を提供することにある。
本発明では、分散された重複ファイルを平等に取シ扱わ
ず、あるファイルに対して、特に高速応答が必要なコン
ピュータ(以下1主系”と呼ぶ)内に配置されたファイ
ル(主ファイル)と、それ以外のコンピュータ(以下“
従系”と呼ぶ)内に配置されたファイル(従ファイル)
とを区別し、(1)更新アクセスは、常に主ファイル、
従ファイルの順に行なう。
ず、あるファイルに対して、特に高速応答が必要なコン
ピュータ(以下1主系”と呼ぶ)内に配置されたファイ
ル(主ファイル)と、それ以外のコンピュータ(以下“
従系”と呼ぶ)内に配置されたファイル(従ファイル)
とを区別し、(1)更新アクセスは、常に主ファイル、
従ファイルの順に行なう。
(2)更新アクセス競合時、常に主系プログラム(タス
ク)のアクセスを従系プログラム(タスク)からのアク
セスよシ優先する。
ク)のアクセスを従系プログラム(タスク)からのアク
セスよシ優先する。
この動作規則を適用する。’−/L、−’?、主系内プ
ログラム(タスク)の7)イルアクセ/匂、従系内プロ
グラム(タスク)のファイルアクセスτ妨害され、待た
されない様にする。
ログラム(タスク)の7)イルアクセ/匂、従系内プロ
グラム(タスク)のファイルアクセスτ妨害され、待た
されない様にする。
以下、本発明の一実施例を第1図〜第6図によシ説明す
る。
る。
第1図は、本発明をコンピュータシステムに適用した実
施例のシステム構成を示す図である。
施例のシステム構成を示す図である。
11.12が現在対象としている分散されたファイルで
ある。11は主ファイル、12は従ファイル、1が主系
、2が従系を示す。各基のユーザプログラム(タスク)
群をそれぞれ12.22で示す。16.26は、それぞ
れ各基が持つ自系内ファイルを管理するファイル管理シ
ステムを示す。
ある。11は主ファイル、12は従ファイル、1が主系
、2が従系を示す。各基のユーザプログラム(タスク)
群をそれぞれ12.22で示す。16.26は、それぞ
れ各基が持つ自系内ファイルを管理するファイル管理シ
ステムを示す。
主系内の13〜15、従系内の23〜25が、本発明の
方式を実現する中心的要素である。13は、主ファイル
11を更新するアクセス要求発生時、そのアクセス実行
前に更新ログを従系に送出する働きをするプログラム(
更新ログ取得プログラム)である。14は、従系からの
更新要求トランザクションをバッファリングするバッフ
ァエリア、15は、その更新要求トランザクションを処
理するプログラムである。23は、従系側から発生する
更新要求を主系側に伝達するためのプログラムで、更新
要求トランザクションの生成と送出を行なう。24/f
i、主系側から送られて来る更新ログをバッファリング
するバッファエリア、25は、その更新ログに基づき従
ファイル21を更新するプログラムである。
方式を実現する中心的要素である。13は、主ファイル
11を更新するアクセス要求発生時、そのアクセス実行
前に更新ログを従系に送出する働きをするプログラム(
更新ログ取得プログラム)である。14は、従系からの
更新要求トランザクションをバッファリングするバッフ
ァエリア、15は、その更新要求トランザクションを処
理するプログラムである。23は、従系側から発生する
更新要求を主系側に伝達するためのプログラムで、更新
要求トランザクションの生成と送出を行なう。24/f
i、主系側から送られて来る更新ログをバッファリング
するバッファエリア、25は、その更新ログに基づき従
ファイル21を更新するプログラムである。
主系と従系間では、更新ログ18を更新要求トランザク
ション27、および、更新要求トランザクションの実行
失敗を示す更新不可メツセージ17が交信される。
ション27、および、更新要求トランザクションの実行
失敗を示す更新不可メツセージ17が交信される。
第2図は、主系と従系間の交信データの構成を示す図で
ある。3つは、主系から従系に送られる更新ログ、およ
び更新不可メツセージのだめのフォーマットを示し、フ
ィールド31は更新要求元系屋、32は更新要求元タス
ク屋、33は更新データ名、34は更新データをそれぞ
れ示す。更新不可メツセージの場合、330更新デ一タ
名に特殊コード6不可”を入れる。31は、更新要求ト
ニシンザクジョンのだめの7オーマツトを
示す。先頭の3つのフィールドは、更新要求元系A(4
1)、更新要求元タスクA(42)、および以下に絖く
ログ項目の数(45)である。これに続き、参照/更新
区別表示(46)、参照/更新データ名(43)、参照
/更新データ(44)から成るデータ項目が置かれる。
ある。3つは、主系から従系に送られる更新ログ、およ
び更新不可メツセージのだめのフォーマットを示し、フ
ィールド31は更新要求元系屋、32は更新要求元タス
ク屋、33は更新データ名、34は更新データをそれぞ
れ示す。更新不可メツセージの場合、330更新デ一タ
名に特殊コード6不可”を入れる。31は、更新要求ト
ニシンザクジョンのだめの7オーマツトを
示す。先頭の3つのフィールドは、更新要求元系A(4
1)、更新要求元タスクA(42)、および以下に絖く
ログ項目の数(45)である。これに続き、参照/更新
区別表示(46)、参照/更新データ名(43)、参照
/更新データ(44)から成るデータ項目が置かれる。
本発明の方式を実現するに、中心的な役割シを担う4つ
のプログラム13,15,23,25の動作を、それぞ
れ第3図、第4図、第5図、第6図を参照しながら詳細
に説明する。
のプログラム13,15,23,25の動作を、それぞ
れ第3図、第4図、第5図、第6図を参照しながら詳細
に説明する。
(1)更新ログ取得プログラム(13)第3図に処理フ
ローを示す。まず、アクセス種別が更新か否かを判定し
く51)、更新の場合は第2図の30に示したデータ構
成の更新ログを作成し、従系のバッファエリア(24)
に送シ込む(52)。
ローを示す。まず、アクセス種別が更新か否かを判定し
く51)、更新の場合は第2図の30に示したデータ構
成の更新ログを作成し、従系のバッファエリア(24)
に送シ込む(52)。
もし、後述のプログラム15からの更新要求の場合、更
新ログのフィールド31.32は従系の扁およびタスク
屋が記入される。次に、通常のファイル処理(主ファイ
ル11に対する参照/更新処理)を行なう(53)。
新ログのフィールド31.32は従系の扁およびタスク
屋が記入される。次に、通常のファイル処理(主ファイ
ル11に対する参照/更新処理)を行なう(53)。
(11)更新要求トランザクション処理プログラム(1
5) 第4図に処理フローを示す。まず、従系から送られて来
る更新要求トランザクションを取シ込む(61)。以降
、このトランザクションに含まれるログ項目の1つ1つ
について、もし参照ログならば(64で判定)そのログ
データと主コアイルエ1の同一データと内容を比較・照
合する(66L一致していれば(67で判定)次のログ
項目を調べ、さもなければ更新不可メツセージ(前述)
を更新要求元従系に送る(68)。もし更新ログならば
(64で判定)プログラム13を通して主系ファイル番
更新する。この時、前述の様に同時に更新ログが取得さ
れ、従系へ送られる。各更新要求トランザクショ/の処
理はファイルを占有して行なう(61,69)。
5) 第4図に処理フローを示す。まず、従系から送られて来
る更新要求トランザクションを取シ込む(61)。以降
、このトランザクションに含まれるログ項目の1つ1つ
について、もし参照ログならば(64で判定)そのログ
データと主コアイルエ1の同一データと内容を比較・照
合する(66L一致していれば(67で判定)次のログ
項目を調べ、さもなければ更新不可メツセージ(前述)
を更新要求元従系に送る(68)。もし更新ログならば
(64で判定)プログラム13を通して主系ファイル番
更新する。この時、前述の様に同時に更新ログが取得さ
れ、従系へ送られる。各更新要求トランザクショ/の処
理はファイルを占有して行なう(61,69)。
(ii+)更新要求トランザクション生成プログラム(
23) 第5図に処理70−を示す。ユーザプログラムからのフ
ァイルアクセス要求が参照の場合(71で判定)は、従
ファイルを参照しく72)、その結果をユーザグログラ
ムに返すだけでなく、要求元タスク別に保存する(73
)。アクセス要求が更新“の場合(71で判定)、従フ
ァイルを更新せず、更新データ名と更新内容を要求元タ
スク別に保存する(74)。ファイルクローズ時(71
で判定)、73と74で保存したデータを組み合わせて
(参照データを前配置)更新要求トランザクションを作
シ、主系に送る(75)。次に主系からの応答(具体的
にはプログラム25によるPO8T又はタスクABOR
T )を待つ(76)。
23) 第5図に処理70−を示す。ユーザプログラムからのフ
ァイルアクセス要求が参照の場合(71で判定)は、従
ファイルを参照しく72)、その結果をユーザグログラ
ムに返すだけでなく、要求元タスク別に保存する(73
)。アクセス要求が更新“の場合(71で判定)、従フ
ァイルを更新せず、更新データ名と更新内容を要求元タ
スク別に保存する(74)。ファイルクローズ時(71
で判定)、73と74で保存したデータを組み合わせて
(参照データを前配置)更新要求トランザクションを作
シ、主系に送る(75)。次に主系からの応答(具体的
にはプログラム25によるPO8T又はタスクABOR
T )を待つ(76)。
上述のうち、参照アクセスは、もしその対象データが同
一タスクによってすでに更新され、74によって保存さ
れているログの中に存在するならば、従ファイルの内容
でなく、その更新ログの内容を返す方式も考え得る。
一タスクによってすでに更新され、74によって保存さ
れているログの中に存在するならば、従ファイルの内容
でなく、その更新ログの内容を返す方式も考え得る。
(1v)従系ファイル更新プログラム(25)M6図に
処理フローを示す。まず、主系から送られて来る更新ロ
グを取シ込む(81)。もしログが更新不可メツセージ
ならば(82で判定)、その要求元タスクを強制終了(
ABOR,T) L、再起動する(83)。さもなけれ
ば、従ファイルをログ内容に従って更新する(84)。
処理フローを示す。まず、主系から送られて来る更新ロ
グを取シ込む(81)。もしログが更新不可メツセージ
ならば(82で判定)、その要求元タスクを強制終了(
ABOR,T) L、再起動する(83)。さもなけれ
ば、従ファイルをログ内容に従って更新する(84)。
次に更新ログが、自系の要求した更新要求トランザクシ
ョンに対応するものであるかを判定しく85)、そうで
あるならば、その要求元タスクをPO8Tする(86)
。
ョンに対応するものであるかを判定しく85)、そうで
あるならば、その要求元タスクをPO8Tする(86)
。
本実施画によれば、主系内のユーザプログラムの応答時
間を悪化させる要因は、更新時のログ取得のだめの時間
と従系からの更新要求トランザクション処理時間だけで
ある。前者は、従系のバッファ24を充分大きく取れば
、はぼ更新ログ伝送時間だけにすることができる。また
、ファイル回復のため′のログ取得と兼用できるので、
これは実質的にはオーバヘッドでないとも云える。後者
は、プログラム15の処理優先度、実行タイミングを適
当に調節することで、実質的なオーバヘッドとならない
様にすることができる。従来の主系、従系が平等に競合
し、ファイルをロックし、相手を待たせ方式に比較して
、主系の応答性能は向上し、かつ従系の処理状況への依
存度が小さい。
間を悪化させる要因は、更新時のログ取得のだめの時間
と従系からの更新要求トランザクション処理時間だけで
ある。前者は、従系のバッファ24を充分大きく取れば
、はぼ更新ログ伝送時間だけにすることができる。また
、ファイル回復のため′のログ取得と兼用できるので、
これは実質的にはオーバヘッドでないとも云える。後者
は、プログラム15の処理優先度、実行タイミングを適
当に調節することで、実質的なオーバヘッドとならない
様にすることができる。従来の主系、従系が平等に競合
し、ファイルをロックし、相手を待たせ方式に比較して
、主系の応答性能は向上し、かつ従系の処理状況への依
存度が小さい。
もう1つの利点は、どの時点でも従ファイルおよびバッ
ファ24内の更新ログによシ、主ファイルの回復が可能
な点である。
ファ24内の更新ログによシ、主ファイルの回復が可能
な点である。
一方、従系内のユーザプログ2ムの中で、特にファイル
更新を行なうものの実行時間は長くなる。
更新を行なうものの実行時間は長くなる。
そのプログラム(タスク)実行終了までに参照したデー
タエリアが、実行中に主系内のユーザプログラムによ如
更新されていると、再実行しなければならないからであ
る。本方式の適用は、この欠点が問題にならない範囲の
システムに限定される。
タエリアが、実行中に主系内のユーザプログラムによ如
更新されていると、再実行しなければならないからであ
る。本方式の適用は、この欠点が問題にならない範囲の
システムに限定される。
本発明によれば、主系内プログラムが従系プログラムに
待たされることなくファイルアクセスでき、かつ従系か
らも、首尾一貫性を保つ形でファイル更新ができる。ま
た、同時に主系の障害時において、従系の情報から主系
のファイル(主ファイル)を回復することができる。
待たされることなくファイルアクセスでき、かつ従系か
らも、首尾一貫性を保つ形でファイル更新ができる。ま
た、同時に主系の障害時において、従系の情報から主系
のファイル(主ファイル)を回復することができる。
第1図は、本発明を2コンピユータシステムに適用した
実施例のシステム構成図、第2図は、第1図でのコンピ
ュータ間交信データのデータ構成を示す図、第3図〜第
6図は、本方式の中心的役割を担う更新ログ取得プログ
ラム、更新要求トランザクション処理プログラム、更新
要求トランザクション生成プログラム、従系ファイル更
新プログラムの処理フローを示す図である。 1・・・主系、2・・・従系、11・・・主系ファイル
、21・・・従系ファイル、12・・・主系ユーザプロ
グラム(タスク)群、22・・・従系ユーザプログラム
(タスク)群、13・・・更新ログ取得プログラム、1
5・・・更新要求トランザクション処理プログラム、2
3・・・更新要求トランザクション生成プログラム、2
5・・・従系ファイル更新プログラム、14・・・更新
要求トランザクションバッファリングエリア、24・・
・更新ログバッファリングエリア、16゜26・・・自
系(主系、従系)ファイル管理ブログラ¥S 4 図 ’yHx 図
実施例のシステム構成図、第2図は、第1図でのコンピ
ュータ間交信データのデータ構成を示す図、第3図〜第
6図は、本方式の中心的役割を担う更新ログ取得プログ
ラム、更新要求トランザクション処理プログラム、更新
要求トランザクション生成プログラム、従系ファイル更
新プログラムの処理フローを示す図である。 1・・・主系、2・・・従系、11・・・主系ファイル
、21・・・従系ファイル、12・・・主系ユーザプロ
グラム(タスク)群、22・・・従系ユーザプログラム
(タスク)群、13・・・更新ログ取得プログラム、1
5・・・更新要求トランザクション処理プログラム、2
3・・・更新要求トランザクション生成プログラム、2
5・・・従系ファイル更新プログラム、14・・・更新
要求トランザクションバッファリングエリア、24・・
・更新ログバッファリングエリア、16゜26・・・自
系(主系、従系)ファイル管理ブログラ¥S 4 図 ’yHx 図
Claims (1)
- 1.1つの主系と1つ以上の従系を持つマルチコンピュ
ータシステムにおいて、主系、従系それぞれに同一仕様
のファイルを持ち、主系内のファイルに対する更新アク
セス時に各従系に更新ログを送出する手段を主系内に備
え、また、各従系内には上述のログをバラノアリングす
る手段およびそのログ内容に基づき従系内ファイルを更
新する手段、従系内ファイルへの更新アクセスを検出し
、禁止する手段を備えたことを特徴とする分散ファイル
制御方式。 2、第1項記載のシステムにおいて、プログラム(タス
ク)毎に、そのファイル参照系列をログする手段と、従
系内ファイルに対する更新アクセス要求発生時、上述の
ログと更新アクセス要求とを1つの組にした更新要求ト
ランザクションを主系に送出する手段とを従系内に備え
、二つの更新要求トランザクション中の参照ログと主系
内ファイルとの照合を行ない、一致した時のみ更新要求
トランザクション中の更新アクセス要求ログに基づいた
更新アクセスを行なう手段を主系内に有することを特徴
とする分散ファイル制御方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58099354A JPS59225473A (ja) | 1983-06-06 | 1983-06-06 | 分散フアイル制御方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58099354A JPS59225473A (ja) | 1983-06-06 | 1983-06-06 | 分散フアイル制御方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS59225473A true JPS59225473A (ja) | 1984-12-18 |
Family
ID=14245262
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP58099354A Pending JPS59225473A (ja) | 1983-06-06 | 1983-06-06 | 分散フアイル制御方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS59225473A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0224681A2 (en) * | 1985-11-26 | 1987-06-10 | International Business Machines Corporation | Method for managing obsolescence of data objects |
JPS63311565A (ja) * | 1987-06-15 | 1988-12-20 | Fuji Electric Co Ltd | 分散化システムにおける在庫管理方式 |
JPH07141421A (ja) * | 1992-10-07 | 1995-06-02 | Internatl Business Mach Corp <Ibm> | 汎用のプロセス作成ブロックを使用したコンピュータ利用のプロセス制御システム |
JPH07287694A (ja) * | 1994-04-19 | 1995-10-31 | Nec Corp | 多重化処理システムおよびメモリ同期制御方法 |
-
1983
- 1983-06-06 JP JP58099354A patent/JPS59225473A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0224681A2 (en) * | 1985-11-26 | 1987-06-10 | International Business Machines Corporation | Method for managing obsolescence of data objects |
JPS63311565A (ja) * | 1987-06-15 | 1988-12-20 | Fuji Electric Co Ltd | 分散化システムにおける在庫管理方式 |
JPH07141421A (ja) * | 1992-10-07 | 1995-06-02 | Internatl Business Mach Corp <Ibm> | 汎用のプロセス作成ブロックを使用したコンピュータ利用のプロセス制御システム |
JPH07287694A (ja) * | 1994-04-19 | 1995-10-31 | Nec Corp | 多重化処理システムおよびメモリ同期制御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111338766B (zh) | 事务处理方法、装置、计算机设备及存储介质 | |
EP4254183A1 (en) | Transaction processing method and apparatus, computer device, and storage medium | |
US8645319B2 (en) | Information processing system, data update method and data update program | |
Bhide | An Analysis of Three Transaction Processing Architectures. | |
US7228452B2 (en) | Transparent consistent semi-active and passive replication of multithreaded application programs | |
US5546582A (en) | Extension of two phase commit protocol to distributed participants | |
DE69621209T2 (de) | Direkte Massendatenübertragung | |
US8392482B1 (en) | Versioning of database partition maps | |
US8346719B2 (en) | Multi-node replication systems, devices and methods | |
Zhang et al. | Sub-millisecond stateful stream querying over fast-evolving linked data | |
US6850969B2 (en) | Lock-free file system | |
KR20140064850A (ko) | 클러스터화된 클라이언트 페일오버 | |
US11080262B1 (en) | Optimistic atomic multi-page write operations in decoupled multi-writer databases | |
CN112162846B (zh) | 事务处理方法、设备及计算机可读存储介质 | |
WO2021057108A1 (zh) | 一种读数据方法、写数据方法及服务器 | |
EP4307137A1 (en) | Transaction processing method, distributed database system, cluster, and medium | |
CN111880909B (zh) | 一种基于分布式的发布数据的方法及装置 | |
CN111475480A (zh) | 一种日志处理方法及系统 | |
Ailijiang et al. | Efficient distributed coordination at wan-scale | |
Shrivastava et al. | Supporting transaction predictability in replicated DRTDBS | |
JPS59225473A (ja) | 分散フアイル制御方式 | |
Cardoza et al. | Design of the TruCluster multicomputer system for the Digital UNIX environment | |
US11379463B1 (en) | Atomic enforcement of cross-page data constraints in decoupled multi-writer databases | |
CN102314505B (zh) | 基于偏序关系的缓冲区版本产生方法 | |
US11288004B1 (en) | Consensus-based authority selection in replicated network-accessible block storage devices |