JPS5955553A - 分散デ−タベ−ス・システムにおけるタイムスタンプ同期方式 - Google Patents

分散デ−タベ−ス・システムにおけるタイムスタンプ同期方式

Info

Publication number
JPS5955553A
JPS5955553A JP57165677A JP16567782A JPS5955553A JP S5955553 A JPS5955553 A JP S5955553A JP 57165677 A JP57165677 A JP 57165677A JP 16567782 A JP16567782 A JP 16567782A JP S5955553 A JPS5955553 A JP S5955553A
Authority
JP
Japan
Prior art keywords
node
time
transaction
local
nodes
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
Application number
JP57165677A
Other languages
English (en)
Inventor
Susumu Adachi
安達 進
Masayoshi Tezuka
手塚 正義
Teruo Nakada
中田 輝生
Yasuo Yamane
山根 泰男
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP57165677A priority Critical patent/JPS5955553A/ja
Publication of JPS5955553A publication Critical patent/JPS5955553A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/14Time supervision arrangements, e.g. real time clock

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (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

【発明の詳細な説明】 〔発明の技術分野] 本発明は、各ノードで発生するトランザクションに付加
されるタイム・スタンプの値を比較することによりトラ
ンザクションの同時実行制御を行うようになった分散デ
ータベース・システムにおいて、タイム・スタンプの中
の時刻を所定方法で作成された論理時刻としたものであ
る。
〔従来技術と問題点〕
第1図ないし第6図は従来技術を説明するものであって
、第1図は分散データベース・システムの概要を示す図
、第2図はトランザクションの実行例を示す図、第3図
はタイム・スタンプの構成を示す図、第4図および第5
図はタイム・スタンプを用いた同時実行制御を説明する
図、第6図はタイム・スタンプのローカル時刻に大きく
差がある場合の実行例を示す図である。
第1図において、 N4とN2はノード、DBlとDB
2はローカル・データベース、DBは分散データベース
、TrJとTr2はトランザクション、 Ullないし
U22はユーザをそれぞれ示している。
ノードN1およびN2はホスト計算機であり1図示の例
ではノードN1は東京に存在し、ノードN2は大阪に存
在する。ノードN1には複数のユーザU11、U12な
どが存在し、ノードN2にも複数のユーザU21.U2
2などが存在する。また、東京にはローカル・データベ
ースpB1が設置され、大阪にはローカル・データベー
スDB2が設置されている。
この例では、ローカルφデータベースDB1とローカル
・データベースDB2が分散データ・ベースDBを構成
している。ユーザUl 1. ’[Jl 2. ’[J
21. ’[J22にとっては、データベースは1個と
して認識され。
東京のデータベース、大阪のデータベースというように
意識する必要はない・例えば、ユーザUllのアクセス
したいデータがローカル・データベースDBIにある場
合には、ノーFNl &−]゛、 )ランザクジョンT
riを生成し、トランザクションTrlを実行すること
によりローカル・データベースDBI乞アクセスし、ユ
ーザU21のアクセスしたいデータがローカル・データ
ベースDB】にある場合には、ノードN2はトランザク
ション’l’r2を生成し、このトランザクション’[
’r2をノードN1へ送る。ノードN1は、入力された
トランザクション’l’rlおよびTr2を実行する。
なお、トランザクションとは。
完結した1つの処理単位である・ 第2図はトランザクションの実行例を示す図である1例
えば入金があった場合、その人の預金残高をリードし、
リード・データに入金額を加算したものを預金残高とし
てライトする必要がある。
トランザクションTr 1. Tr 2は、このような
処理を行うためのものである6いま、成る人甲の口座に
東京から1万円の入金があり、大阪から1万円の入金が
あったと仮定する。 READIAを実行したところ、
甲の口座の預金残高が10万円であったとすると、 W
RITEIAで甲の口座の預金残高が11万円に書き改
められる。トランザクションTr2をWRITEIAの
前に実行すると、下記のような矛盾が生ずる。 REA
D2Aを実行すると、甲の口座の預金残高10万円がリ
ードされる。この10万円に入金額1万円を加算し、1
0万円に入金額1万円を加算して得られろ11万円をW
RITE2Aで甲の口座の預金残高の欄にライトする0
本来であれば、東京と大阪とから、それぞれ1万円ずつ
入金があったので、甲の口座の預金残高は12万円であ
る筈であるが、第2図のようにしてトランザクションT
ri、Tr2を実行すると、甲の口座の預金残高は11
万円に々ってしまう、このような矛盾の発生を防止する
ため、トランザクションにタイム・スタンプを付加し、
タイム・スタンプを用いてトランザクションの同時実行
を制御することが行われている。第3図は従来のタイム
・スタンプの構成を示すものである。従来のタイム・ス
タンプは、ローカル時刻と)−ド識別子より構成されて
いる。
ローカル時刻とはノードの有している時計の示す時刻で
あシ、ノード識別子とは東京や大阪などを示すものであ
る1例えば、ノードN2の発行したトランザクションT
f2に対しては、ノードN2の時計の示す時刻と大阪と
いう識別子とをもつタイム・スタンプが付加される。
第4図および第5図はタイム・スタンプを用いたトラン
ザクションの同時実行制御を説明する図である。第4図
において、TSrはデータAのREADタイム・スタン
プ領域、TSwはデータAのWRITEタイム・スタン
プ領域をそれぞれ示している。また、TSはタイム舎ス
タンプ、 Tr、はトランザクションを示している。デ
ータAのREADタイム・スタンプ領域T8rには、最
近にデータAをREAD したトランザクションTrの
タイム・スタンプTBが書込まれ、また、データAのW
RITIli2タイムスタンプ領域TSwには、最近に
データAをライトしたトランザクションTrのタイム・
スタンプTSがライトされる− READ2Aを行うに
際してはトランザクションTr2のタイム・スタンプT
SとデータAのWRITEタイム・スタンプ領域’I’
Swの内容とを比較し、 WRITEIAを行うに際し
てはトランザクション’l’rtのタイム・スタンプT
SとデータAのREADタイム・スタンプ領域TSrの
内容とを比較する。第5図はオペレーションのチェック
ノ例ヲ示すものである。第5図において、■はREAD
オペレーションノチェック例(READ2A ) ’l
pt 示L −■はWRITEオペレーションにおける
チェックの例(WRITExA)を示している。上記の
■は、トランザクションTr2のタイム・スタンプTS
がデータAのWRITEタイム・スタンプ領域の内容よ
り小さい場合にはトランザクションTr2をアボート(
abort)シ、それ以外の場合にはREAD2Aを実
行し、トランザクションTr2のタイム・スタンプTS
をデータAのREADタイム・スタンプ領域TSrK書
込むべきことを示している。■は、トランザクションT
rlのタイム・スタンプT8がデータAのREADタイ
ム・スタンプ領域TSrの内容より小さい場合にはトラ
ンザクションTrlをアボートし、それ以ンTr1のタ
イム・スタンプTSをデータAのWRITEタイム・ス
タンプ領域T S w Ic書込むべきことを示してい
る。
第6図はタイム・スタンプのローカル時刻に大きく差が
ある場合の英行例を示す図である。この例では、トラン
ザクションTriのタイム・スタンプは10時00分を
示しており、トランザクションTr2のタイム・スタン
プは9時00分を示している。最初に、トランザクショ
ンTriのREAD IAが実行される。そうすると、
AのREADタイム・スタンプ領域TSrに1o時oo
分が7J込まれる。
次に、トランザクションTrIのWRITEIAが実行
され、AのWRITEタイム・スタンプ領域TSwに1
0時00分が書込まれる。 WRITEIAの後にトラ
ンザクションTr2のREAD2Aの実行が開始される
。しかし、 TS (Tr 2 )<TSw 、即ちト
ランザクションTr2のタイム・スタンプ(9時oo分
)がWRITEタイム・スタンプ領域TSwの値(10
時00分)より小さいので、トランザクションTr2は
アボートされる。トランザクションTr2がアボートさ
れる・ トランザクションTr2が7ボートサレると1
発行元であるノードN2はタイム・スタンプを変更して
トランザクションTr2を再発行する。
この結果、ノードN2からのトランザクションTr2は
、ノードN2のローカル時刻が10時00分以降になら
ないと実行できない。
上記のように、従来技術においてはタイム・スタンプは
ローカル時刻とノード識別子を連結して作成し、トラン
ザクションに付加しているが、cPU時計の値をそのま
\タイム・スタンプに用いると、各ノード毎に差がある
ので、トランザクションに優先順位がついてしまい、ノ
ードについて平均的に処理されないという欠点がある。
〔発明の目的〕
本発明は、上記の考察に基づくものであって。
タイム・スタンプの時刻をノード間で同期させることに
より何れのノードで発生したトランザクションでも同じ
実行優先順位が与えられるようにした分散データベース
・システムにおけるタイム・スタンプ同期方式を提供す
ることを目的としている− 〔発明の構成〕 そしてそのため、本発明の分散データベース・システム
における同期方式は、複数のノードと。
ノードに接続されたローカル・データベースと。
ノード間を接続するリンクとを具備し、ローカル・デー
タベースを制御するノードが、トランザクションに付加
されているノード識別子と時刻とよシ成るタイム・スタ
ンプを用いてトランザクションの同時実行制御を行うよ
うになった分散データベース・システムにおいて、新た
なノードが分散データベース・システムのネットワーク
に加入した時、新たなノードと上記ネットワークにリン
ク済のノードとの間でローカル時刻を通知し合い。
各ノードにおいて複数のノードのローカル時刻のうちの
最大のローカル時刻と自己のローカル時刻とのオフセッ
ト値を求め、各ノードがトランザクションを発信すると
き、自己のローカル時刻にオフセット値を加えて得られ
る論理時刻をトランザクションのタイム・スタンプの中
に誉込むようにしたことを特徴とするものである。
〔発明の実施例〕
以下1本発明を図面を参照しつつ説明する。第7図ない
し第9図は本発明を説明する図であって。
第7図はノードのネットワークへのリンク処理を示す図
、第8図は本発明によるタイム、スタンプを用いた同時
実行制御の例を示す図、第9図はノードのリンク処理に
おける論理時刻同期処理の例を示す図である。
第7図に示すように、新ノードが分散データベース・シ
ステムのネットワークに加入するとき、新ノードは既に
ネットワークに加入済のノードNl l N2. N3
のそれぞれに対してそのローカル時刻を間合わせると共
に、自己のローカル時刻をノー)” Nl、 N2. 
Naに通知する。谷ノードは、全ノードのローカル時刻
を参照してオフセットを求め、自己のローカル時刻とオ
フセットとの和を論理時刻とし、トランザクションのタ
イム・スタンプの時刻としてこの論理時刻を用いる。ノ
ードNiのオフセット0FSLは次のようにして求めら
れる・OFSi=MAX(PCI、PO2,・=PCi
、−・−PCn)−PCiただし、 pciはノードN
Lのローカル時刻である。
この処理は成るノードが分散データベース・システムの
ネットワークとリンクされる鉛に全ノードで行わノL、
%ノードのオフセット値は再設足される・ 第8図は本発明によるタイム・スタッグな用いた同時実
行制御の例を示すものである・第8図は・論理時刻を用
いたところ第6図のトラン゛す′クションTr2のタイ
ム・スタンプが10時05分を示し、トランザクション
Triのタイム・スタンプが10時00分の1メである
ことを示している。第8図の場合にはTS (Tr 2
 J<TSwであるので、トランザクションTr2はフ
ボートされることかく実行される・ 第9図はノードのリンク処理における論理時刻同期処理
の例を示すものである。この例は第1図に示すように分
散データベース・システムのネットワークに2個のノー
ドN1とN2が存在する場合を示している。リンク処理
を行う場合、ノードN1とN2は互にローカル時刻を通
知し合う・この例ではノードN1のローカル時刻は10
時00分であり、ノードN2のローカル時刻は9時OO
分であるとしている。ノードN1とN2はそれぞれオフ
セット値の計算を行う、ノードNlにおけるオフセット
値は0であり、ノードN2におけるオフセット値は1時
間OO分となる。オフセット値をローカル時間を加算し
たものは1両ノードNl 、 N2とも10時OO分と
なる。実際には送信のための遅延を考慮する必要がある
〔発明の効果〕
以上の説明から明らかなように、本発明によれハ、分散
データベース、システムの各ノードで発生するトランザ
クションが平均的に実行されるという効果が得られる。
また1本発明によれば、各ノードσ)オフセット値は、
成るノードが一度ネットワークにリンクされ終ったら別
のノードが次に加入されるまで変更する必要がないので
、論理時刻合わせのために定期的に時刻合わせのメツセ
ージをやり取りする必要がないという効果をも有してい
る。
【図面の簡単な説明】
第1図なりし第6図は従来技術を説明するものであって
、第1図は分散データベース・システムの概要を示す図
、第2図はトランザクションの実行例を示す図、第3図
はタイム・スタンプの構成を示す図、第4図および第5
図はタイム・スタンプを用いた同時実行部制御を説明す
る図、第6図はタイム・スタンプのローカル時刻に大き
く差がある場合の実行例を示す図、第7図ないし第9図
は本発明を説明する図であって、第7図はノードのネッ
トワークへのリンク処理を示す図、第8図は本発明によ
るタイム・スタンプを用いた同時実行制御の例を示す図
、第9図はノードのリンク処理における論理時刻同期処
理の例を示す図である。 N1ないしN3・・・ノード、DBlとDB2・・・ロ
ーカル・データベース、DB・・・分散データベース、
TrlとTr2・・・トランザクション、 Ullない
し[J22・・・ユーザ。 オG図 ↓ 材7m す)フ:、肴 〈−一一一一一〉存在リンノ l):+−′100 WRITE2八 オ8図 Tr+ 1′9図 LC+  <==  OFS+  +  Pct   
       P Cロロ] [、 丁 12  +  ops2≠辻C2 国日 四囲

Claims (1)

  1. 【特許請求の範囲】 複数のノードと、ノードに接続されたローカル・データ
    ベースと、ノード間を接続するリンクとを具備し、ロー
    カル・データベースを制御するノードが、トランザクシ
    ョンに付加されているノード識別子と時刻とより成るタ
    イム・スタンプを用いてトランザクションの同時実行制
    御を行うようになった分散データベース・システムにお
    いて。 新たなノードが分散データベース・システムのネットワ
    ークに加入した時、新たなノードと上記ネットワークに
    リンク済のノードとの間でローカル時刻を通−知し合い
    、各ノードにおいて複数のノードのローカル時刻のうち
    の最大のローカル時刻と自己のローカル時刻とのオフセ
    ット値を求め、各ノードがトランザクションを発信する
    とき、自己のローカル時刻にオフセット値を加えて得ら
    れる論理時刻をトラザクジョンのタイム・スタンプの中
    に書込むようにしたことを特徴とする分散データベース
    ・システムにおけるタイム・スタンプ同期方式。
JP57165677A 1982-09-22 1982-09-22 分散デ−タベ−ス・システムにおけるタイムスタンプ同期方式 Pending JPS5955553A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57165677A JPS5955553A (ja) 1982-09-22 1982-09-22 分散デ−タベ−ス・システムにおけるタイムスタンプ同期方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57165677A JPS5955553A (ja) 1982-09-22 1982-09-22 分散デ−タベ−ス・システムにおけるタイムスタンプ同期方式

Publications (1)

Publication Number Publication Date
JPS5955553A true JPS5955553A (ja) 1984-03-30

Family

ID=15816933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57165677A Pending JPS5955553A (ja) 1982-09-22 1982-09-22 分散デ−タベ−ス・システムにおけるタイムスタンプ同期方式

Country Status (1)

Country Link
JP (1) JPS5955553A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6428761A (en) * 1987-07-24 1989-01-31 Toshiba Corp Time managing method for data transmission text
EP0462751A2 (en) * 1990-06-18 1991-12-27 Kabushiki Kaisha Toshiba A database management system
US5293627A (en) * 1990-05-23 1994-03-08 Kabushiki Kaisha Toshiba Method for adjusting curent clock counts in a distributed computer system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6428761A (en) * 1987-07-24 1989-01-31 Toshiba Corp Time managing method for data transmission text
JPH0516063B2 (ja) * 1987-07-24 1993-03-03 Tokyo Shibaura Electric Co
US5293627A (en) * 1990-05-23 1994-03-08 Kabushiki Kaisha Toshiba Method for adjusting curent clock counts in a distributed computer system
EP0462751A2 (en) * 1990-06-18 1991-12-27 Kabushiki Kaisha Toshiba A database management system

Similar Documents

Publication Publication Date Title
US20230100223A1 (en) Transaction processing method and apparatus, computer device, and storage medium
CN113396407A (zh) 用于利用区块链技术扩充数据库应用的系统和方法
CN110009338B (zh) 基于区块链的记账方法及装置、电子设备
US6078930A (en) Multi-node fault-tolerant timestamp generation
CN109101627A (zh) 异构数据库同步方法及装置
US11947524B2 (en) Transaction processing method and apparatus, computer device, and storage medium
Bermbach et al. Consistency in distributed storage systems: An overview of models, metrics and measurement approaches
CN111522631B (zh) 分布式事务处理方法、装置、服务器及介质
WO2022111188A1 (zh) 事务处理方法、系统、装置、设备、存储介质及程序产品
CN111061748B (zh) 一种热点账户的记账方法及装置
JP4491254B2 (ja) 複製コマンド配布のシステムおよび方法
US20200175002A1 (en) Blockchain-based data compression and searching
WO2022077186A1 (zh) 区块链中智能合约的执行方法及装置和电子设备
CN110245190B (zh) 一种区块数据分段存储方法、终端及介质
CN111610979A (zh) 一种经过持久化和耦合度优化的api网关及其方法
US20230315713A1 (en) Operation request processing method, apparatus, device, readable storage medium, and system
US11681686B1 (en) Systems and methods to fully process an initially incomplete replicated and committed transaction
CN115757616A (zh) 一种基于二进制日志的数据一致性校验方法、装置及介质
CN110490742B (zh) 一种区块链中的交易执行方法及装置
CN110389988A (zh) 一种实时高效的用户数据处理方法及系统
CN112596801A (zh) 事务处理方法、装置、设备、存储介质、数据库
CN112907336A (zh) 一种基于mybatis拦截器实现订单状态同步的方法及服务器
JPS5955553A (ja) 分散デ−タベ−ス・システムにおけるタイムスタンプ同期方式
CN112099934A (zh) 一种批处理方法、系统、计算机设备及存储介质
Golab Proving pacelc