JPH07129452A - 排他制御方式 - Google Patents

排他制御方式

Info

Publication number
JPH07129452A
JPH07129452A JP5291549A JP29154993A JPH07129452A JP H07129452 A JPH07129452 A JP H07129452A JP 5291549 A JP5291549 A JP 5291549A JP 29154993 A JP29154993 A JP 29154993A JP H07129452 A JPH07129452 A JP H07129452A
Authority
JP
Japan
Prior art keywords
program
priority
information
update
exclusive
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.)
Granted
Application number
JP5291549A
Other languages
English (en)
Other versions
JP2843748B2 (ja
Inventor
Takayuki Morishita
貴之 森下
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP5291549A priority Critical patent/JP2843748B2/ja
Publication of JPH07129452A publication Critical patent/JPH07129452A/ja
Application granted granted Critical
Publication of JP2843748B2 publication Critical patent/JP2843748B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【目的】 緊急性を有するプログラムの性能を劣化させ
ることのない排他制御を実現する。 【構成】 排他解除待ち判定手段6は、利用者指定情報
1中の判定時点情報によって示される時点において、解
除待ちプログラムの有無を判定する。プライオリティ判
定手段7は、解除待ちプログラムが存在する場合に、プ
ライオリティ記憶手段3に記憶されているプライオリテ
ィに基づいて解除待ちプログラムと制御対象プログラム
との間の優先度を判定する。プライオリティ判定手段7
により「解除待ちプログラムを優先させるべきである」
と判定された場合に、トランザクションバックアウト手
段8は制御対象プログラムによって更新されたデータレ
コードの更新前レコードイメージをジャーナルファイル
9からデータベースファイル10に戻し、排他制御手段
4は解除待ちプログラムの待ち状態を解除する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、データファイル(例え
ば、データベースファイル)内のデータレコードを複数
のプログラムが同時に検索/更新しようとする場合の排
他制御をデータレコードの集合であるブロック単位で行
う排他制御方式に関する。
【0002】
【従来の技術】従来、この種の排他制御方式では、図3
に示すような構成要素によって次のような排他制御が行
われていた。
【0003】あるプログラム(業務アプリケーションプ
ログラム等)内のデータレコード検索/更新手段32
は、利用者指定情報31(処理対象のデータレコードを
特定する情報と処理内容(「検索」または「更新」)を
示す情報とからなる情報)に基づき、排他制御の対象で
あるデータファイル(データベースファイル35)内の
データレコードに対する検索/更新処理(検索処理また
は更新処理)を行う。
【0004】ここで、このような検索/更新処理が行わ
れる際に、データレコード検索/更新手段32はオペレ
ーティングシステムの管理下にある排他制御手段33を
呼び出す。
【0005】排他制御手段33は、排他情報記憶手段3
4に記憶されているブロック毎の排他情報(そのブロッ
クの排他状態(ロックされているか否か等)を示す情報
等)に基づき、処理対象のデータレコードが含まれるブ
ロック(以下、「処理対象ブロック」という)が他のプ
ログラム(データレコード検索/更新手段32を有する
プログラム以外のプログラム)によりロックされている
か否か(排他状態であるか否か)を判定する。
【0006】排他制御手段33は、「処理対象ブロック
が他のプログラムによりロックされていない」と判定し
た場合には、データレコード検索/更新手段32に検索
/更新処理を行わせる。
【0007】また、排他制御手段33は、「処理対象ブ
ロックが他のプログラムによりロックされている」と判
定した場合には、当該他のプログラムのロックの解除後
にデータレコード検索/更新手段32に検索/更新処理
を行わせる。
【0008】
【発明が解決しようとする課題】上述した従来の排他制
御方式では、複数のプログラムによる同一のブロックに
対するデータレコードの検索/更新処理が競合する場合
に、そのブロック内のデータレコードを先にアクセスし
たプログラムに係る処理が優先的に行われるので、後続
のプログラムに係る処理の方が緊急性を有する(優先す
べきである)場合でも、先行のプログラムに係る処理が
開始された後には先行のプログラムがロックを解除する
まで後続のプログラムに係る処理は待たされることにな
るという欠点があった。すなわち、緊急性を有するプロ
グラムの性能が劣化することになるという欠点があっ
た。
【0009】本発明の目的は、上述の点に鑑み、同一の
ブロック内のデータレコードを検索/更新する複数のプ
ログラムの各々のプライオリティ(排他制御に関する処
理の優先度)の判断を行い、プライオリティの高いプロ
グラム(緊急性を有するプログラム)が後続のプログラ
ムであっても優先的にそのプログラムの処理を行わせる
ことにより、緊急性を有するプログラムの性能を劣化さ
せない排他制御を実現する排他制御方式を提供すること
にある。
【0010】なお、競合資源のスケジューリングについ
ての排他制御に関する従来技術としては、「特開平3−
288235号(計算機資源の排他制御方式)」が公表
されている。しかし、この従来技術は、待ち状態にある
プログラムやタスク間の競合資源のスケジューリングに
関する排他制御であり、すでに処理が開始されているプ
ログラム(先行のプログラム)と待ち状態にあるプログ
ラム(後続のプログラム)との間の排他制御に関する技
術である本発明とはその構成および着眼点等を異にする
ものである。
【0011】
【課題を解決するための手段】本発明の排他制御方式
は、データファイルに格納されたデータレコードが複数
のプログラムによって検索/更新される情報処理システ
ムにおける排他制御方式において、利用者指定情報中の
プライオリティ更新情報を反映して各プログラムのプラ
イオリティを記憶するプライオリティ記憶手段と、前記
データファイルにおけるブロック毎の排他情報を記憶す
る排他情報記憶手段と、利用者指定情報に基づいて前記
データファイル内のデータレコードの検索/更新処理を
行いデータレコードの更新処理を行った場合に更新前レ
コードイメージをジャーナルファイルに格納するデータ
レコード検索/更新手段と、利用者指定情報中の判定時
点情報によって示される時点において解除待ちプログラ
ムが存在するか否かを判定する排他解除待ち判定手段
と、この排他解除待ち判定手段により「解除待ちプログ
ラムが存在する」と判定された場合に解除待ちプログラ
ムと制御対象プログラムとのどちらを優先させるべきで
あるかを前記プライオリティ記憶手段に記憶されている
プライオリティに基づいて判定するプライオリティ判定
手段と、このプライオリティ判定手段により「解除待ち
プログラムを優先させるべきである」と判定された場合
に制御対象プログラムにより更新されたデータレコード
の更新前レコードイメージを前記ジャーナルファイルか
ら前記データファイルに戻すトランザクションバックア
ウト手段と、前記データレコード検索/更新手段から呼
び出され前記排他情報記憶手段に記憶されている排他情
報および前記プライオリティ判定手段の判定結果を使用
して前記データファイルに対する排他制御をブロック単
位で行う排他制御手段とを有する。
【0012】
【実施例】次に、本発明について図面を参照して詳細に
説明する。
【0013】図1は、本発明の排他制御方式の一実施例
の構成を示すブロック図である。
【0014】本実施例の排他制御方式は、利用者指定情
報1と、データレコード検索/更新手段2と、プライオ
リティ記憶手段3と、排他制御手段4と、排他情報記憶
手段5と、排他解除待ち判定手段6と、プライオリティ
判定手段7と、トランザクションバックアウト手段8
と、ジャーナルファイル9と、データベースファイル1
0(排他制御の対象であるデータファイル)とを含んで
構成されている。ここで、データレコード検索/更新手
段2は、データベースファイル10に対する検索/更新
処理を行う複数のプログラムの各々に存在する手段であ
る。また、3〜9の符号で示される手段等は、データベ
ースファイル10に関する情報処理システムのオペレー
ティングシステムの管理下にある手段等である。なお、
利用者指定情報1は、プログラムの利用者等によって指
定される情報である。
【0015】図2は、本実施例の排他制御方式の処理を
示す流れ図である。この処理は、利用者指定情報入力ス
テップ201と、プライオリティ更新ステップ202
と、排他状態問い合わせステップ203と、排他状態判
定ステップ204と、データレコード検索/更新処理ス
テップ205と、判定時点当否判定ステップ206と、
解除待ちプログラム有無判定ステップ207と、プライ
オリティ比較ステップ208と、更新前レコードイメー
ジ書戻しステップ209と、解除待ちプログラムロック
ステップ210と、制御対象プログラムロックステップ
211とからなる。
【0016】次に、このように構成された本実施例の排
他制御方式の動作について説明する。
【0017】データレコード検索/更新手段2を有する
プログラム(以下、制御対象プログラムという)の処理
の過程で、データベースファイル10内のデータレコー
ドの検索/更新処理が必要になると、制御対象プログラ
ムの利用者等によって利用者指定情報1が指定される
(利用者指定情報1は、データレコード検索/更新手段
2,プライオリティ記憶手段3および排他解除待ち判定
手段6によって入力される)(ステップ201)。
【0018】利用者指定情報1は、処理対象のデータレ
コードを指定する情報と、処理内容(「検索」または
「更新」)を示す情報と、プライオリティ更新情報と、
判定時点情報とを含んでいる。なお、本実施例は請求項
2記載の発明に対応するものであり、利用者指定情報1
中の判定時点情報はデータレコード件数であるものとす
る(このデータレコード件数分の処理が終了した時点で
排他解除待ち判定手段6による判定が行われる)。ちな
みに、請求項1記載の発明における判定時点情報は、経
過時間等のデータレコード件数以外の情報であってもか
まわない。
【0019】プライオリティ記憶手段3は、あらかじめ
各プログラムのプライオリティ(排他制御に関する処理
の優先度)を記憶しているが、利用者指定情報1中のプ
ライオリティ更新情報に基づいて制御対象プログラムの
プライオリティを更新する(ステップ202)。なお、
プライオリティ更新情報が「更新不要」を示している場
合には、ステップ202の処理は行われない。
【0020】データレコード検索/更新手段2は、利用
者指定情報1に基づき、データベースファイル10内の
あるブロック中の複数のデータレコードの検索/更新処
理を行う(1件のデータレコードずつ逐次に当該処理を
繰り返す)。その際に、データレコード検索/更新手段
2は、排他制御手段4を呼び出し、処理対象のデータレ
コード群を含むブロック(以下、「処理対象ブロック」
という)が他のプログラム(制御対象プログラム以外の
プログラム)によってロックされているか否かという排
他状態を排他制御手段4に問い合わせる(ステップ20
3)。
【0021】排他制御手段4は、排他情報記憶手段5に
記憶されているブロック毎の排他情報(「そのブロック
の排他状態を示す情報」および「そのブロックに対する
ロックが解除されるのを待っているプログラムを特定す
る情報」を有する情報)に基づき、処理対象ブロックが
他のプログラムによってロックされているか否かを判定
する(ステップ204)。
【0022】排他制御手段4は、ステップ204で「処
理対象ブロックが他のプログラムによってロックされて
いる」と判定した場合には、処理対象ブロックのロック
が解除されるまで待ち合わせる(一定の時隔でステップ
204の判定を繰り返す)。
【0023】また、排他制御手段4は、ステップ204
で「他のプログラムによりロックされていない」と判定
した場合には、制御対象プログラムのために処理対象ブ
ロックをロックする制御を行い、データレコード検索/
更新手段2に1件のデータレコードの検索/更新処理を
行わせる(ステップ205)。なお、データレコード検
索/更新手段2は、データレコードの更新処理を行った
場合には、更新前レコードイメージ(処理対象のデータ
レコードの更新前の内容)をジャーナルファイル9に格
納しておく。
【0024】排他解除待ち判定手段6は、データレコー
ド検索/更新手段2による1件のデータレコードの検索
/更新処理が終了すると、利用者指定情報1中の判定時
点情報によって指定されたデータレコード件数分の処理
が終了したか否か(ステップ207の判定を行う時点で
あるか否か)を判定する(ステップ206)。
【0025】排他解除待ち判定手段6は、ステップ20
6で「指定されたデータレコード件数分の処理が終了し
ていない」と判定した場合には、ステップ207の判定
を行う時点に至っていないことを認識し、ステップ20
5に制御を戻す(データレコード検索/更新手段2は次
の1件のデータレコードの検索/更新処理を行う)。
【0026】排他解除待ち判定手段6は、ステップ20
6で「指定されたデータレコード件数分の処理が終了し
た」と判定した場合には、排他情報記憶手段5内の排他
情報に基づいて処理対象ブロックに対するロックの解除
待ち状態にある他のプログラム(以下、「解除待ちプロ
グラム」という)が存在するか否かを判定する(ステッ
プ207)。なお、請求項1記載の発明におけるこの判
定(解除待ちプログラムが存在するか否かの判定)は、
判定時点情報の内容に応じた所定の時点において行われ
る。
【0027】排他解除待ち判定手段6は、ステップ20
7で「解除待ちプログラムが存在しない」と判定した場
合には、ステップ205に制御を戻す。
【0028】一方、排他解除待ち判定手段6は、ステッ
プ207で「解除待ちプログラムが存在する」と判定し
た場合には、プライオリティ判定手段7に制御を渡す。
【0029】プライオリティ判定手段7は、プライオリ
ティ記憶手段3に記憶されている解除待ちプログラムの
プライオリティと制御対象プログラムのプライオリティ
とを比較し、どちらのプログラムに係る処理を優先させ
るべきであるかを判定する(ステップ208)。
【0030】プライオリティ判定手段7は、ステップ2
08で「解除待ちプログラムのプライオリティよりも制
御対象プログラムのプライオリティの方が高い(制御対
象プログラムを優先させるべきである)」と判定した場
合には、ステップ205に制御を戻す。
【0031】プライオリティ判定手段7は、ステップ2
08で「解除待ちプログラムのプライオリティの方が制
御対象プログラムのプライオリティよりも高い(解除待
ちプログラムを優先させるべきである)」と判定した場
合には、トランザクションバックアウト手段8および排
他制御手段4に制御を渡す。
【0032】トランザクションバックアウト手段8は、
データレコード検索/更新手段2によってジャーナルフ
ァイル9に出力されている更新前レコードイメージをデ
ータベースファイル10に書き戻す(ステップ20
9)。また、排他制御手段4は、解除待ちプログラムの
処理対象ブロックに係る待ち状態を解除し、解除待ちプ
ログラムのために処理対象ブロックをロックする制御を
行う(ステップ210)。これにより、緊急性を有する
解除待ちプログラムに係る処理を制御対象プログラムに
係る処理よりも優先させることができる。
【0033】排他制御手段4は、解除待ちプログラムに
よる処理対象ブロックに対する処理が完了した時点で、
制御対象プログラムのために処理対象ブロックをロック
する制御を行い(ステップ211)、データレコード検
索/更新手段2にあらためて処理対象ブロック内のデー
タレコードの検索/更新処理を行わせる(ステップ20
5)。
【0034】なお、図2には示していないが、行うべき
「データレコードの検索/更新処理」の全てが終了した
場合には、データレコード検索/更新手段2は図2に示
す処理を終了させる。
【0035】
【発明の効果】以上説明したように本発明は、プライオ
リティに基づいて制御対象プログラムと解除待ちプログ
ラムとの間の排他制御を行うこと等により、緊急性を有
するプログラムに係る処理を優先的に稼働することがで
き、緊急性を有するプログラムの処理性能を劣化させる
ことがなくなるという効果がある。
【0036】具体的には、例えば、同一のデータベース
ファイルをアクセスするオンライン業務アプリケーショ
ンプログラムとバッチジョブプログラムとが起動されて
いる場合に、オンライン業務アプリケーションプログラ
ムのプライオリティをバッチジョブプログラムのプライ
オリティよりも高く設定しておけばオンライン業務アプ
リケーションプログラムが優先的に稼働するので、オン
ライン業務アプリケーションプログラムの性能を劣化さ
せることがなくなるという効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例の構成を示すブロック図であ
る。
【図2】図1に示す排他制御方式の処理を示す流れ図で
ある。
【図3】従来の排他制御方式の一例の構成を示すブロッ
ク図である。
【符号の説明】
1 利用者指定情報 2 データレコード検索/更新手段 3 プライオリティ記憶手段 4 排他制御手段 5 排他情報記憶手段 6 排他解除待ち判定手段 7 プライオリティ判定手段 8 トランザクションバックアウト手段 9 ジャーナルファイル 10 データベースファイル

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 データファイルに格納されたデータレコ
    ードが複数のプログラムによって検索/更新される情報
    処理システムにおける排他制御方式において、 利用者指定情報中のプライオリティ更新情報を反映して
    各プログラムのプライオリティを記憶するプライオリテ
    ィ記憶手段と、 前記データファイルにおけるブロック毎の排他情報を記
    憶する排他情報記憶手段と、 利用者指定情報に基づいて前記データファイル内のデー
    タレコードの検索/更新処理を行い、データレコードの
    更新処理を行った場合に更新前レコードイメージをジャ
    ーナルファイルに格納するデータレコード検索/更新手
    段と、 利用者指定情報中の判定時点情報によって示される時点
    において解除待ちプログラムが存在するか否かを判定す
    る排他解除待ち判定手段と、 この排他解除待ち判定手段により「解除待ちプログラム
    が存在する」と判定された場合に、解除待ちプログラム
    と制御対象プログラムとのどちらを優先させるべきであ
    るかを前記プライオリティ記憶手段に記憶されているプ
    ライオリティに基づいて判定するプライオリティ判定手
    段と、 このプライオリティ判定手段により「解除待ちプログラ
    ムを優先させるべきである」と判定された場合に、制御
    対象プログラムにより更新されたデータレコードの更新
    前レコードイメージを前記ジャーナルファイルから前記
    データファイルに戻すトランザクションバックアウト手
    段と、 前記データレコード検索/更新手段から呼び出され、前
    記排他情報記憶手段に記憶されている排他情報および前
    記プライオリティ判定手段の判定結果を使用して前記デ
    ータファイルに対する排他制御をブロック単位で行う排
    他制御手段とを有することを特徴とする排他制御方式。
  2. 【請求項2】 利用者指定情報中の判定時点情報がデー
    タレコード件数であり、前記排他解除待ち判定手段によ
    る判定が行われる時点が当該データレコード件数分の処
    理が終了した時点であることを特徴とする請求項1記載
    の排他制御方式。
JP5291549A 1993-10-28 1993-10-28 排他制御方式 Expired - Fee Related JP2843748B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5291549A JP2843748B2 (ja) 1993-10-28 1993-10-28 排他制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5291549A JP2843748B2 (ja) 1993-10-28 1993-10-28 排他制御方式

Publications (2)

Publication Number Publication Date
JPH07129452A true JPH07129452A (ja) 1995-05-19
JP2843748B2 JP2843748B2 (ja) 1999-01-06

Family

ID=17770357

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5291549A Expired - Fee Related JP2843748B2 (ja) 1993-10-28 1993-10-28 排他制御方式

Country Status (1)

Country Link
JP (1) JP2843748B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7415556B2 (en) 2002-10-31 2008-08-19 International Business Machines Corporation Exclusion control
JP2009543226A (ja) * 2006-06-29 2009-12-03 ストラタヴィア コーポレーション データベース管理における標準操作手順の自動化
US8738753B2 (en) 2006-06-29 2014-05-27 Hewlett-Packard Development Company, L.P. Standard operating procedure automation in database administration

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63292456A (ja) * 1987-05-26 1988-11-29 Nec Corp 複数媒体収納型デ−タ記録装置の媒体割り当て制御方式
JPH03235130A (ja) * 1990-02-13 1991-10-21 Hitachi Ltd 排他優先制御方式
JPH0485632A (ja) * 1990-07-30 1992-03-18 Nec Corp デッドロック回避方式

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63292456A (ja) * 1987-05-26 1988-11-29 Nec Corp 複数媒体収納型デ−タ記録装置の媒体割り当て制御方式
JPH03235130A (ja) * 1990-02-13 1991-10-21 Hitachi Ltd 排他優先制御方式
JPH0485632A (ja) * 1990-07-30 1992-03-18 Nec Corp デッドロック回避方式

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7415556B2 (en) 2002-10-31 2008-08-19 International Business Machines Corporation Exclusion control
US7793023B2 (en) 2002-10-31 2010-09-07 International Business Machines Corporation Exclusion control
JP2009543226A (ja) * 2006-06-29 2009-12-03 ストラタヴィア コーポレーション データベース管理における標準操作手順の自動化
US8738753B2 (en) 2006-06-29 2014-05-27 Hewlett-Packard Development Company, L.P. Standard operating procedure automation in database administration

Also Published As

Publication number Publication date
JP2843748B2 (ja) 1999-01-06

Similar Documents

Publication Publication Date Title
US5956712A (en) Byte range locking in a distributed environment
US6070170A (en) Non-blocking drain method and apparatus used to reorganize data in a database
KR101099199B1 (ko) 데이터베이스 복구 중의 스냅샷 질의를 위한 시스템 및 방법
US6138118A (en) Method and system for reconciling concurrent streams of transactions in a database
AU600755B2 (en) Apparatus for distributing data processing across a plurality of loci of control
US8244675B2 (en) Method and apparatus for updating a database using table staging and queued relocation and deletion
US20030084063A1 (en) Method, system, and program for performing an impact analysis of program statements in at least one source code file
JPH04229355A (ja) データアクセス方法及びデータ処理システム
JPH0296839A (ja) Tpキューレポジトリ用シングルキー式索引ファイル
US9348660B2 (en) Apparatus and method for serializing process instance access to information stored redundantly in at least two datastores
JPH08328933A (ja) 並列処理システムのファイルアクセス制御方式
EP1850250A1 (en) Method and system for renewing an index
JPH07129452A (ja) 排他制御方式
JP3484440B2 (ja) 分散型データベース更新方法
US7606789B2 (en) Data access and retrieval mechanism
JPH05307478A (ja) データベース管理システムの構成法
JPH03123946A (ja) データベースの排他制御方法
JPS63196956A (ja) フアイル排他方式
JPH04139545A (ja) データベース更新処理方式
JPH0962554A (ja) 静止点セーブ作成方式
EP1750222A1 (en) Process instance serialization
JPH08129501A (ja) データベースの予約アクセス処理方法
JP2003316560A (ja) ジョブ処理装置
CN116257519A (zh) 一种数据读写的方法、装置、计算机设备及存储介质
JPH03116252A (ja) ソースプログラムの世代管理方式

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19961015

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19980922

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

Free format text: PAYMENT UNTIL: 20071023

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20081023

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20091023

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees