Nothing Special   »   [go: up one dir, main page]

JP3222125B2 - システム間データベース共用方式 - Google Patents

システム間データベース共用方式

Info

Publication number
JP3222125B2
JP3222125B2 JP01602590A JP1602590A JP3222125B2 JP 3222125 B2 JP3222125 B2 JP 3222125B2 JP 01602590 A JP01602590 A JP 01602590A JP 1602590 A JP1602590 A JP 1602590A JP 3222125 B2 JP3222125 B2 JP 3222125B2
Authority
JP
Japan
Prior art keywords
data
management unit
exclusive control
updating
request
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 - Lifetime
Application number
JP01602590A
Other languages
English (en)
Other versions
JPH03222048A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP01602590A priority Critical patent/JP3222125B2/ja
Priority to US07/644,910 priority patent/US5329628A/en
Publication of JPH03222048A publication Critical patent/JPH03222048A/ja
Application granted granted Critical
Publication of JP3222125B2 publication Critical patent/JP3222125B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1405Saving, restoring, recovering or retrying at machine instruction level
    • G06F11/141Saving, restoring, recovering or retrying at machine instruction level for bus or memory accesses
    • 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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/80Database-specific techniques
    • 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/99931Database or file accessing
    • Y10S707/99938Concurrency, e.g. lock management in shared database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] システムの大規模化、多様化に伴い、機能分散、負荷
分散、危険分散を目的とした複数CPU(中央処理装置)
構成システムが多くなってきている。
このようなシステムで、共通リソースであるデータベ
ース(以下DB)を複数CPU間で共有アクセスする場合、
本発明が適用できる。
[従来の技術] システム間でDBを共有する方式として、例えば特開昭
62−204360号公報に記載のように、共有DBの排他制御の
ため、DB管理元をきめ、このロックマネジャと他システ
ムとの間で排他情報をやりとりして排他の一元管理を行
なう方法が知られている。
また、この方式では、DB障害時の回復情報であるジャ
ーナルは、各システムで取得されておりDB障害回復時、
ジャーナルマージが必要であった。
[発明が解決しようとする課題] 従来のシステム間DB共用方式では、性能面、運用面
で、下記の問題があった。
(1)システム間共用DBに対して、データ検索だけを行
う場合でも、当該DBに対する更新処理との排他制御を行
うために、DB管理元システムに排他使用連絡を行う必要
が有り、システム間でDB共用しない場合に比べて、デー
タ検索のオーバヘッドが大きくなるため、大量のデータ
検索には適していない。
(2)システム間共用DBに対して、複数CPUからデータ
更新を行う場合、DB更新ジャーナルは、DB更新要求元シ
ステムで取得されるため、DB障害回復時、複数システム
のジャーナルをマージする必要が有る。
本発明の目的は、以上の間隔を解決するシステム間デ
ータベース共用方式を提供することにある。
[課題を解決するための手段] 上記目的を達成するために、CPU間のDB共用方式とし
て、 (1)データ検索オーバヘッドの削減 CPU間共用DBに対して、データ検索しか行わない処理
(トランザクション)については、アクセス対象のデー
タに対して、排他制御を行わず、データ検索要求元CPU
から直接データアクセスを行う。
これにより、データ検索については、CPU間で共用し
ないDBへのアクセスと同等の性能を実現できる。
データ検索時、他CPUからのデータ更新処理とのタイ
ミングにより、検索データブロックの制御情報に矛盾を
検知した場合は、次のいずれかの方法で処理する。
(a)一定時間間隔で一定回数、データ検索を再指向
し、タイミングによる同期ズレを救済する。
(b)当該データベース管理元CPUに検索要求を転送
し、矛盾のない状態での検索をデータベース管理元CPU
で実行する。
(2)DB障害回復用ジャーナルの一元化 DB障害回復には、DBのバックアップ情報と、バックア
ップ取得時点以降のDB更新ジャーナル情報が必要であ
る。DB更新ジャーナルを1つのCPUの下で一元化して取
得するため、DB更新処理については、すべてDB管理元CP
Uで実施する。即ち、DB管理元以外のCPUから、CPU間共
用DBを更新するときは、DB管理元CPUへDB更新要求を送
り、DB管理元CPUでDB更新する方式とする。
[作用] 本発明のCPU間DB共有方式では、DB検索だけの処理
(トランザクション)については、DB検索要求元CPUか
ら、他CPUとの連絡なしに直接DBアクセスができるの
で、非共用DBへのアクセスと同等の検索性能が実現でき
る。
また、DB更新は、DB管理元CPUで一元化して行うの
で、複数のCPUから同一DBに対して更新要求があって
も、同一DBの更新ジャーナルは、当該DBの管理元CPUで
一元化して取得され、DB障害回復時のジャーナルマージ
が不要となり、DB障害などに関するDBシステム運用管理
者の負担の大幅軽減が実現できる。
[実施例] 以下、本発明の一実施例を図面により詳細に説明す
る。
第1図は、本発明の構成を示すブロック図である。
CPUa1が共用DB3の管理元であるとき、CPUb2のユーザ
プログラム22からのDBアクセス要求があった場合、検索
については、CPUb2のDBアクセス部21が直接DBアクセス
を行い、更新については、CPUb2のDBアクセス部21からC
PUb2のDB分散機能部23、CPUa1のDB分散機能部13を経由
して、CPUa1のDBアクセス部11がDBアクセスを行う。
CPUa1のユーザプログラム12からのDBアクセス要求が
あると、検索、更新にかかわらず、CPUa1のDBアクセス
部11がDBアクセスを行う。
アクセス対象のDBがCPUa1の管理するDBかCPUb2の管理
するDBかは、第6図に示すテーブルで管理し、それぞれ
のDBアクセス部で管理元を判別する。
以下、DB検索、更新の具体的な処理手順を説明する。
(1)DB検索の場合(第2図参照) CPUb2のユーザプログラム22から、CPUa1の管理する共
用DB3への検索要求が発行されると(201)、CPUb2のDB
アクセス部21で、当該DB3を直接アクセスする。ただ
し、CPUa1側との排他制御を行わずにアクセスするの
で、CPUa1側の更新処理とのタイミングによっては、DB
のインデックス部とDBのデータ部の内容に不一致がある
ように見える場合がある。そこで、この微妙なタイミン
グを排他制御なしに対処するために、DBのインデックス
部とデータ部の内容に不一致がある場合(202)には、
所定の時間間隔で所定回数、DBインデックス、DBデータ
のリードを再試行し(203)、タイミングズレによる不
一致がなくなるのを待つ。
所定回数内でも矛盾がなくならない場合、恒久的デー
タ破壊が起きていると判断し、リードエラーとして処理
する(204)。
(2)DB更新の場合(第3図〜第5図参照) CPUb2のユーザプログラム22から、CPUa1の管理する共
用DB3を更新する場合について、3つの段階に分けて説
明する。
(a)更新のための検索要求 第3図に、CPUb2で共用DB3更新のための検索要求が発
行された場合を示す。
CPUb2のDBアクセス部21では、第6図のDB所在管理テ
ーブルを用いて、要求のあったDBが自CPU管理のDBか否
か判別し(301)、CPUa1の管理するDBへの要求ならば、
DB分散機能部23を通じて、CPUa1へDBアクセス要求を送
信する(302)。CPUa1では、CPUb2から送信され、DB分
散機能部13で受信した(303)DBアクセス要求にもとづ
き、DB排他使用を宣言し(304)、DBアクセスを行な
い、DBインデックス部、DBデータ部を読み込む(305,30
6)。読み込んだ結果はDB分散機能部13を通じてCPUb2へ
送信する(307)。
CPUb2の簡易するDBの場合は、CPUb2のアクセス部でDB
アクセスを行なう(308〜310)。
(b)更新要求 第4図に、CPUb2から共用DB3に対する更新要求が発行
された場合を示す。
(a)の場合と同様、CPUb2のユーザプログラム22か
ら更新要求があると(401)、DBアクセス部21では、自C
PU管理のDBかを判断する(402)。自CPU管理でない場合
DB分散機能部を通じてDB管理元CPU、この場合CPUa1へ、
DBアクセス要求を送信する(403)。CPUa1では、DB分散
機能部13で更新要求を受信すると(404)、DBアクセス
部で同期点に達するまでDB更新要求を退避し(405)、
更新要求処理報告をDB機能分散部を通じてCPUb2に送信
する(406)。
(c)コミット(COMMIT)あるいはリターン 第5図に、CPUb2のユーザプログラム22がコミットを
発行したか、あるいは、リターンをして処理の同期点に
達した場合を示す。
コミット要求の場合を説明する。(a)の場合と同
様、CPUb2からCPUa1へ、DB分散機能部23を通じて、まず
コミット準備要求が送信される(502)。CPUa1ではDBア
クセス部でDB更新要求と、DBジャーナル取りだし(504,
505)コミット準備完了報告をCPUb2に送信する(50
6)。CPUb2のDBアクセス部は、コミット準備完了報告を
受信すると、コミット要求を送信する(508)(2フェ
ーズコミット)。コミット要求を受けるとCPUa1は、DB
アクセス部で共用DBの実更新を行い(509)、DB排他使
用の宣言を解除して(510)、コミット完了報告をCPUb2
に行う(511)。この時、DB更新のジャーナルは、CPUa1
で取得されるため、当該DBが障害になったときの回復処
理では、CPUa1のジャーナルのみを用いて回復が実行で
きる。また、DB障害回復時、複数CPUのジャーナルをマ
ージせずに簡易に回復運用を実施できる。
[発明の効果] 本発明によれば、CPU間でDB共有しても、DB検索性能
は、非共用DBへのアクセスと同等の性能を実現できる。
【図面の簡単な説明】
第1図は本発明の一実施例の構成図、第2図から第5図
までは本発明の一実施例の処理のフローチャート、第6
図は本発明の一実施例の管理テーブルを示す図である。 1,2……CPU、 3……共用DB、 11,21……DBアクセス部、 12,22……ユーザプログラム、 13,23……DB分散機能部。

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】第1のデータを管理する第1の管理部と、
    第2のデータを管理する第2の管理部との間で前記第1
    のデータと前記第2のデータとを共用するデータベース
    管理方法であって、前記第1の管理部又は前記第2の管
    理部から前記第2のデータを更新する場合は、前記第2
    の管理部の前記第2のデータに対する排他制御に従って
    前記第2のデータを更新し、前記第1の管理部又は前記
    第2の管理部から前記第1のデータを更新する場合は、
    前記第1の管理部の前記第1のデータに対する排他制御
    に従って前記第1のデータを更新し、前記第1の管理部
    から前記第2のデータを検索する場合は、前記第2のデ
    ータに対する排他制御を受けることなく前記第2のデー
    タを参照し、前記第2の管理部から前記第1のデータを
    検索する場合は、前記第1のデータに対する排他制御を
    受けることなく前記第1のデータを参照することを特徴
    とするデータベース管理方法。
  2. 【請求項2】第1のデータを管理する第1の管理部と、
    第2のデータを管理する第2の管理部との間で前記第1
    のデータと前記第2のデータとを共用するデータベース
    管理システムであって、前記第1の管理部は、入力した
    更新要求に従い前記第1のデータを更新する第1のデー
    タ更新手段と、前記第1のデータを更新する場合、前記
    第1のデータ更新手段を制御して前記第1のデータに対
    する排他制御を行う第1の排他制御手段と、前記第2の
    データを更新する場合、前記第2のデータの更新要求を
    前記第2の管理部へ送る第1のデータ更新要求手段とを
    備え、前記第2の管理部は、入力した更新要求に従い前
    記第2のデータを更新する第2のデータ更新手段と、前
    記第2のデータを更新する場合、前記第2のデータ更新
    手段を制御して前記第2のデータに対する排他制御を行
    う第2の排他制御手段と、前記第1のデータを更新する
    場合、前記第1のデータの更新要求を前記第1の管理部
    へ送る第2のデータ更新要求手段とを備え、前記第1の
    管理部は更に、入力した検索要求に従い前記第2のデー
    タを検索する場合、前記第1の排他制御手段及び前記第
    2の排他制御手段の制御を受けることなく検索する第1
    のデータ検索手段とを備え、前記第2の管理部は更に、
    入力した検索要求に従い前記第1のデータを検索する場
    合、前記第1の排他制御手段及び前記第2の排他制御手
    段の制御を受けることなく検索する第2のデータ検索手
    段とを備えたことを特徴とするデータベース管理システ
    ム。
JP01602590A 1990-01-29 1990-01-29 システム間データベース共用方式 Expired - Lifetime JP3222125B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP01602590A JP3222125B2 (ja) 1990-01-29 1990-01-29 システム間データベース共用方式
US07/644,910 US5329628A (en) 1990-01-29 1991-01-23 Database system providing direct access for reads and indirect locked access for writes and reads in which an error was detected in previous attempt

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01602590A JP3222125B2 (ja) 1990-01-29 1990-01-29 システム間データベース共用方式

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP20861799A Division JP3478187B2 (ja) 1999-07-23 1999-07-23 データベース管理方法及びシステム

Publications (2)

Publication Number Publication Date
JPH03222048A JPH03222048A (ja) 1991-10-01
JP3222125B2 true JP3222125B2 (ja) 2001-10-22

Family

ID=11905027

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01602590A Expired - Lifetime JP3222125B2 (ja) 1990-01-29 1990-01-29 システム間データベース共用方式

Country Status (2)

Country Link
US (1) US5329628A (ja)
JP (1) JP3222125B2 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06250916A (ja) * 1993-02-26 1994-09-09 Fujitsu Ltd 共有メモリの排他制御方法
US5581750A (en) * 1993-03-15 1996-12-03 International Business Machines Corporation System and method for improving data recovery performance
US5495606A (en) * 1993-11-04 1996-02-27 International Business Machines Corporation System for parallel processing of complex read-only database queries using master and slave central processor complexes
WO1996003818A1 (fr) * 1994-07-26 1996-02-08 Sony Corporation Systeme serveur d'informations
US5689701A (en) * 1994-12-14 1997-11-18 International Business Machines Corporation System and method for providing compatibility between distributed file system namespaces and operating system pathname syntax
JP3302522B2 (ja) * 1994-12-26 2002-07-15 富士通株式会社 データベースシステムおよびその情報活用支援装置
US5995972A (en) * 1996-12-30 1999-11-30 J.D. Edwards World Source Company System and method for retrieving data
KR100462828B1 (ko) * 2004-06-22 2004-12-30 엔에이치엔(주) 명령어의 유효성 판단 방법 및 그 시스템
US7627614B2 (en) * 2005-03-03 2009-12-01 Oracle International Corporation Lost write detection and repair
JP5224928B2 (ja) * 2008-06-23 2013-07-03 日本電信電話株式会社 データベース整合性チェック装置及び方法及びプログラム及びコンピュータ読取可能な記録媒体
US10152500B2 (en) 2013-03-14 2018-12-11 Oracle International Corporation Read mostly instances
US9767178B2 (en) 2013-10-30 2017-09-19 Oracle International Corporation Multi-instance redo apply
JP6023764B2 (ja) * 2014-08-25 2016-11-09 日本電信電話株式会社 不整合検出装置及び不整合検出方法
US9892153B2 (en) 2014-12-19 2018-02-13 Oracle International Corporation Detecting lost writes
US11657037B2 (en) 2015-10-23 2023-05-23 Oracle International Corporation Query execution against an in-memory standby database
US10747752B2 (en) 2015-10-23 2020-08-18 Oracle International Corporation Space management for transactional consistency of in-memory objects on a standby database
US10698771B2 (en) 2016-09-15 2020-06-30 Oracle International Corporation Zero-data-loss with asynchronous redo shipping to a standby database
US10891291B2 (en) 2016-10-31 2021-01-12 Oracle International Corporation Facilitating operations on pluggable databases using separate logical timestamp services
US11475006B2 (en) 2016-12-02 2022-10-18 Oracle International Corporation Query and change propagation scheduling for heterogeneous database systems
US10691722B2 (en) 2017-05-31 2020-06-23 Oracle International Corporation Consistent query execution for big data analytics in a hybrid database
US11895005B1 (en) * 2022-12-02 2024-02-06 Arista Networks, Inc. Network devices with hardware accelerated table updates

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56140452A (en) * 1980-04-01 1981-11-02 Hitachi Ltd Memory protection system
US4764865A (en) * 1982-06-21 1988-08-16 International Business Machines Corp. Circuit for allocating memory cycles to two processors that share memory
JPH0731662B2 (ja) * 1986-07-15 1995-04-10 富士通株式会社 マルチプロセッサシステム
US4876643A (en) * 1987-06-24 1989-10-24 Kabushiki Kaisha Toshiba Parallel searching system having a master processor for controlling plural slave processors for independently processing respective search requests
US5084837A (en) * 1988-01-22 1992-01-28 Sharp Kabushiki Kaisha Fifo buffer with folded data transmission path permitting selective bypass of storage
US4961139A (en) * 1988-06-30 1990-10-02 Hewlett-Packard Company Data base management system for real-time applications
US4996687A (en) * 1988-10-11 1991-02-26 Honeywell Inc. Fault recovery mechanism, transparent to digital system function
US5101488A (en) * 1989-05-02 1992-03-31 Motorola, Inc. Method for retrieving and updating data in a real-time data base system

Also Published As

Publication number Publication date
US5329628A (en) 1994-07-12
JPH03222048A (ja) 1991-10-01

Similar Documents

Publication Publication Date Title
JP3222125B2 (ja) システム間データベース共用方式
US5317739A (en) Method and apparatus for coupling data processing systems
US7113945B1 (en) Virtual storage device that uses volatile memory
EP0081056B1 (en) A data processing network having a distributed data file access control
US5604863A (en) Method for coordinating executing programs in a data processing system
US5151988A (en) Intersystem data base sharing journal merge method
US5737600A (en) Method and system for log management in a coupled data processing system
EP0567999B1 (en) Method and apparatus for executing a distributed transaction in a distributed database
CA1253971A (en) Synchronization service for a distributed operating system or the like
Xu et al. A design for a fault-tolerant, distributed implementation of Linda.
EP0578406B1 (en) Distributed transaction processing using two-phase commit protocol with presumed-commit without log force
US4399504A (en) Method and means for the sharing of data resources in a multiprocessing, multiprogramming environment
JP3503957B2 (ja) 遠隔データベースの制御方法及び装置
Barbará-Millá et al. The demarcation protocol: A technique for maintaining constraints in distributed database systems
US20110145204A1 (en) Transaction Recovery in a Transaction Processing Computer System Employing Multiple Transaction Managers
US20130117307A1 (en) Snapshot isolation support for distributed query processing in a shared disk database cluster
JPH06214915A (ja) 分散データ処理システム
KR100450400B1 (ko) 안전 기억 장치가 없는 환경을 위한 이중화 구조의 주 메모리 상주 데이터베이스 관리시스템 및 그 데이터 일치성 제어방법
US6735605B2 (en) Method and apparatus for synchronizing not-logged application temporary tables in a multi-node relational database management system
US20020188624A1 (en) Active control protocol for peer-to-peer database replication
US6829609B1 (en) System, device, and method for providing mutual exclusion for computer system resources
JPH0277868A (ja) 共用データの管理方法
JP3478187B2 (ja) データベース管理方法及びシステム
JP3674598B2 (ja) データベース管理方法およびシステム
JPS62145349A (ja) システム間デ−タベ−ス共用方式

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070817

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20080817

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20080817

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090817

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100817

Year of fee payment: 9

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100817

Year of fee payment: 9