JP2636806B2 - インデックス更新方式 - Google Patents

インデックス更新方式

Info

Publication number
JP2636806B2
JP2636806B2 JP7157171A JP15717195A JP2636806B2 JP 2636806 B2 JP2636806 B2 JP 2636806B2 JP 7157171 A JP7157171 A JP 7157171A JP 15717195 A JP15717195 A JP 15717195A JP 2636806 B2 JP2636806 B2 JP 2636806B2
Authority
JP
Japan
Prior art keywords
index
update
information
update information
operation instruction
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
JP7157171A
Other languages
English (en)
Other versions
JPH08328924A (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.)
NEC Corp
Original Assignee
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP7157171A priority Critical patent/JP2636806B2/ja
Publication of JPH08328924A publication Critical patent/JPH08328924A/ja
Application granted granted Critical
Publication of JP2636806B2 publication Critical patent/JP2636806B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】データファイルに格納されたデー
タ内の特定の項目をキーとする索引情報が格納されたイ
ンデックスファイルを更新するインデックス更新方式に
関し、特に、データファイルの更新時に同時にインデッ
クスファイルを更新するのではなく、データファイルの
更新時にはインデックス更新情報をスタックしておき、
インデックスファイルの使用時等の適当なタイミングに
於いてスタックされているインデックス更新情報に基づ
いてインデックスファイルの更新を行うインデックス更
新方式に関する。
【0002】
【従来の技術】リレーショナルデータベースシステム等
に於いては、データファイルに格納されているデータを
効率良く検索するために、データファイルに格納された
データ内の特定の項目をキーとした索引情報が格納され
るインデックスファイルを設けるということが従来から
行われている。
【0003】ところで、インデックスファイルを備えて
いるリレーショナルデータベースシステム等に於いて
は、データファイルが更新された場合、データファイル
とインデックスファイルとの整合性を保つためにインデ
ックスファイルを更新することが必要になり、従来は以
下の2つの方法によりインデックスの更新処理を行って
いた。
【0004】(1)データファイルの更新時にインデッ
クスファイル中の該当する索引情報を即座に更新する方
法(即時更新モード)。
【0005】(2)データファイルの更新時にはインデ
ックスファイルの更新を行わないで、後で一括してイン
デックスファイルを更新する方法(遅延更新モード)。
尚、遅延更新モードに関する技術が記載されている文献
としては、例えば、特開昭60−118944号公報,
特開昭62−131349号公報等がある。
【0006】また、遅延更新モードには、データファイ
ルの更新結果をインデックスファイルに反映させるタイ
ミング,方法等の違いにより、次の3種類の方法が存在
する。
【0007】(a)データファイルの更新時には、イン
デックスファイルの更新やインデックス更新情報の蓄積
を行わずに、インデックスファイルが必要になった時点
に於いて、利用者がデータファイルに基づいてダイナミ
ックにインデックスファイルを生成する方法(再生成モ
ード)。この方法は、通常、週次処理や月次処理にのみ
使用されるインデックスファイルの更新に使用される。
【0008】(b)データファイルの更新時に、インデ
ックスファイルに対するインデックス更新情報を二次記
憶媒体上に蓄積しておき、利用者プログラムの終了時や
COMMIT命令による静止点の確立時に、二次記憶媒
体に蓄積されている全てのインデックス更新情報を使用
してインデックスファイルを更新する方法(一括更新モ
ード)。この方法も、通常、週次処理や月次処理にのみ
使用されるインデックスファイルの更新に使用される。
【0009】(c)データファイルの更新時に、インデ
ックスファイルに対するインデックス更新情報をメモリ
上のスタック領域に蓄積しておき、利用者プログラムが
上記インデックスファイルを使用する検索時やCOMM
IT命令による静止点の確立時等に同期を取って蓄積さ
れている全てのインデックス更新情報を使用してインデ
ックスファイルを更新する方法(同期更新モード)。こ
の方法は、通常、日次処理で利用者プログラム等から使
用される可能性のあるインデックスファイルの更新に使
用される。
【0010】
【発明が解決しようとする課題】上記した従来の技術の
内、即時更新モードは、データファイルの更新毎にイン
デックスファイルの更新を行わなければならないため、
データの更新速度が遅くなるという問題がある。
【0011】遅延更新モード(再生成モード,一括更新
モード,同期更新モード)によれば、上記した問題点を
解決することはできるが、次のような問題点が存在す
る。
【0012】再生成モードの場合は、データファイルに
基づいてインデックスファイルを再生成することが必要
になるので、データの更新結果を反映させたインデック
スファイルの生成に時間がかかるという問題がある。
【0013】一括更新モード,同期更新モードによれ
ば、再生成モードに比較して処理を高速化することはで
きるが、次のような問題がある。データファイル中の或
るレコードの、上記インデックスファイルのキーとされ
る項目の内容が何回も変更された場合、上記或るレコー
ドをポイントする索引情報に対するインデックス更新情
報が何個も蓄積されてしまう。これらのインデックス更
新情報の内、インデックスファイルとデータファイルと
を整合性を保つために必要になるインデックス更新情報
は、上記或るレコードに対して最後に行われた変更に対
応するインデックス更新情報である。しかし、従来は、
記憶媒体に蓄積されている全てのインデックス更新情報
を使用してインデックスファイルを更新していたため、
無駄なインデックス更新処理が行われることになり、イ
ンデックス更新処理を効率的に行うことができないとい
う問題があった。
【0014】そこで、本発明の目的は、インデックスフ
ァイルの更新処理を遅延更新モードで行う際、効率的に
インデックスファイルを更新することができるインデッ
クス更新方式を提供することにある。
【0015】
【課題を解決するための手段】本発明は上記目的を達成
するため、データファイルに格納されたデータ内の特定
の項目をキーとする索引情報が格納されたインデックス
ファイルを更新するインデックス更新方式に於いて、ス
タック領域と、前記データファイルの更新時に発生する
インデックス更新要求を、索引情報の追加を指示するP
UT操作命令及び追加する索引情報のキー値,レコード
番号から構成されるインデックス更新情報に変換する
か、索引情報の削除を指示するDELETE操作命令及
び削除する索引情報のキー値,レコード番号から構成さ
れるインデックス更新情報に変換するか、或いは前記2
種類のインデックス更新情報の対に変換するかして前記
スタック領域に格納する更新情報スタック手段と、所定
の事象が発生した時、前記スタック領域に格納されてい
るインデックス更新情報から、キー値,レコード番号が
互いに一致し、且つ操作命令がそれぞれPUT操作命
令,DELETE操作命令になっているインデックス更
新情報の対であって、出現順序がPUT操作命令を含む
インデックス更新情報,DELETE操作命令を含むイ
ンデックス更新情報の順になっているインデックス更新
情報の対を削除したものをインデックス更新命令として
出力する更新情報削除手段と、該更新情報削除手段から
出力されたインデックス更新命令に基づいて前記インデ
ックスファイルを更新する更新手段とを備えている。
【0016】また、本発明は、インデックスファイルの
更新処理を更に効率的に行えるようにするため、前記更
新情報削除手段が出力したインデックス更新命令中に存
在する、キー値が互いに一致し、且つ操作命令がそれぞ
れDELETE操作命令,PUT操作命令になっている
インデックス更新命令の対であって、出現順序がDEL
ETE操作命令を含むインデックス更新命令,PUT操
作命令を含むインデックス更新命令の対は、前記キー値
を含む索引情報中のレコード番号を、前記PUT操作命
令を含むインデックス更新命令中のレコード番号に変換
することを指示するPUTX操作命令を含むインデック
ス更新命令に変更して出力し、他のインデックス更新命
令はそのまま出力する更新命令変更手段を備え、前記更
新手段は、前記更新情報削除手段の出力の代わりに前記
更新命令変更手段の出力に基づいて前記インデックスフ
ァイルを更新する。
【0017】更に、本発明は、更新情報削除手段で行う
処理を効率的に行えるようにするため、前記スタック領
域に格納されているインデックス更新情報をキー値,レ
コード番号で昇順にソートする更新情報ソート手段とを
備えたものである。
【0018】
【作用】更新情報スタック手段が、データファイルの更
新時に発生するインデックス更新要求を、索引情報の追
加を指示するPUT操作命令及び追加する索引情報のキ
ー値,レコード番号から構成されるインデックス更新情
報に変換するか、索引情報の削除を指示するDELET
E操作命令及び削除する索引情報のキー値,レコード番
号から構成されるインデックス更新情報に変換するか、
或いは上記した2種類のインデックス更新情報の対に変
換するかしてスタック領域に格納する。
【0019】そして、更新情報削除手段が、スタック領
域に格納されているインデックス更新情報の中から、キ
ー値,レコード番号が互いに一致し、且つ操作命令がそ
れぞれPUT操作命令,DELETE操作命令になって
いるインデックス更新情報の対であって、出現順序がP
UT操作命令を含むインデックス更新情報,DELET
E操作命令を含むインデックス更新情報の順になってい
るインデックス更新情報の対を除去したものをインデッ
クス更新命令として出力し、更新手段が更新情報削除手
段から出力されたインデックス更新命令に基づいてイン
デックスファイルを更新する。
【0020】また、別の構成では、更新命令変更手段
が、更新情報削除手段が出力したインデックス更新命令
中に存在する、キー値が互いに一致し、且つ操作命令が
それぞれDELETE操作命令,PUT操作命令になっ
ているインデックス更新命令の対であって、出現順序が
DELETE操作命令を含むインデックス更新命令,P
UT操作命令を含むインデックス更新命令の対は、上記
キー値を含む索引情報中のレコード番号を、上記PUT
操作命令を含むインデックス更新情報中のレコード番号
に変換することを指示するPUTX操作命令を含むイン
デックス更新命令に変更して出力し、他のインデックス
更新命令はそのまま出力し、更新手段が更新命令変更手
段の出力に従ってインデックスファイルを更新する。
【0021】
【実施例】次に本発明の実施例について図面を参照して
詳細に説明する。
【0022】図1は本発明の実施例のブロック図であ
り、更新情報スタック手段102と、スタック領域10
3と、インデックス実更新手段104と、インデックス
ファイル112とを備えている。
【0023】インデックス実更新手段104は、更新情
報ソート手段105と、更新情報削除手段107及び更
新命令変更手段109を含む更新命令生成手段106
と、作業領域108と、更新命令格納域110と、更新
手段111とを備えている。
【0024】更新情報スタック手段102は、データフ
ァイルの更新時に発生するインデックス更新要求101
の内容に応じたインデックス更新情報をスタック領域1
03に格納する機能を有する。スタック領域103は、
例えば、利用プログラムを実行するメモリ上に設けられ
る。
【0025】図2は更新情報スタック手段102がスタ
ック領域103に格納するインデックス更新情報の構成
例を示した図であり、操作命令201と、キー値202
と、レコード番号203とから構成される。
【0026】更新情報スタック手段102の機能を図2
を参照して更に詳細に説明すると、インデックス更新要
求101が、索引情報の追加を要求するものである場合
は、操作命令201を索引情報の追加を指示するPUT
操作命令、キー値202を追加要求された索引情報のキ
ー値、レコード番号203を追加要求された索引情報が
ポイントするレコードのレコード番号としたインデック
ス更新情報をスタック領域103に格納する。
【0027】インデックス更新要求101が、索引情報
の削除を要求するものである場合は、操作命令201を
索引情報の削除を指示するDELETE命令、キー値2
02を削除要求された索引情報のキー値、レコード番号
203を削除要求された索引情報がポイントするレコー
ドのレコード番号としたインデックス更新情報をスタッ
ク領域103に格納する。
【0028】インデックス更新要求101が、索引情報
のキー値の変更を要求するものである場合は、操作命令
201をDELETE操作命令、キー値202を更新前
のキー値、レコード番号203をキー値を変更する索引
情報に含まれているレコード番号としたインデックス更
新情報と、操作命令201をPUT操作命令、キー値2
02を更新後のキー値、レコード番号203をキー値を
変更する索引情報に含まれているレコード番号としたイ
ンデックス更新情報とをスタック領域103に格納す
る。
【0029】インデックス実更新手段104は、利用者
プログラムの終了時,スタック領域103が満杯になっ
た時,利用者プログラム等がインデックスファイル11
2を使用した時など、所定の事象が発生した時に動作
し、スタック領域103に格納されているインデックス
更新情報に基づいてインデックスファイル112を更新
する機能を有する。
【0030】更新情報ソート手段105は、スタック領
域103に格納されているインデックス更新情報を、イ
ンデックス更新情報内のキー値202を第1キー、レコ
ード番号203を第2キーとして昇順にソートし、ソー
ト結果を再度スタック領域103に格納する機能を有す
る。
【0031】更新情報削除手段107は、ソート後のイ
ンデックス更新情報をインデックス領域103から読み
込み、その中から、キー値,レコード番号が互いに一致
し、且つ操作命令がそれぞれPUT操作命令,DELE
TE操作命令インデックス更新情報の対であって、出現
順序がPUT操作命令を含むインデックス更新情報,D
ELETE操作命令を含むインデックス更新情報の順に
なっているインデックス更新情報の対を削除したものを
インデックス更新命令として出力する機能を有する。
【0032】更新命令変更手段109は、更新情報削除
手段107が出力したインデックス更新命令中に存在す
る、キー値が互いに一致し、且つ操作命令がDELET
E操作命令,PUT操作命令になっているインデックス
更新命令の対であって、出現順序がDELETE操作命
令を含むインデックス更新命令,PUT操作命令を含む
インデックス更新命令の対は、上記キー値を含む索引情
報中のレコード番号を、上記PUT操作命令を含むイン
デックス更新情報中のレコード番号に変更することを指
示するPUTX操作命令を含むインデックス更新命令に
変更して更新命令格納域110に出力し、他のインデッ
クス更新命令はそのまま更新命令格納域110に出力す
る機能を有する。
【0033】更新手段111は、更新命令格納域110
に格納されているインデックス更新命令に従ってインデ
ックスファイル112を更新する機能を有する。
【0034】次に、本実施例の動作を説明する。
【0035】今、例えば、データファイル中の或るレコ
ードの、インデックスファイル112のキーとなる項目
の内容が3回変更されたとすると、インデックス更新要
求101として、図3(A)に示す3つのインデックス
更新要求が順次入力される。
【0036】更新情報スタック手段101は、レコード
番号「10」のレコードをポイントする索引情報中のキ
ー値を「111」から「222」に変更することを要求
する第1番目のインデックス更新要求が入力されると、
図3(B)に示すように、DELETE操作命令,キー
値「111」,レコード番号「10」を含むインデック
ス更新情報と、PUT操作命令,キー値「222」,レ
コード番号「10」を含むインデックス更新情報をスタ
ック領域103に格納する。
【0037】次いで、レコード番号「10」のレコード
をポイントする索引情報中のキー値を「222」から
「555」に変更することを要求する第2番目のインデ
ックス更新要求が入力されると、図3(B)に示すよう
に、DELETE操作命令,キー値「222」,レコー
ド番号「10」を含むインデックス更新情報と、PUT
操作命令,キー値「555」,レコード番号「10」を
含むインデックス更新情報をスタック領域103に格納
する。
【0038】更に、レコード番号「10」のレコードを
ポイントする索引情報中のキー値を「555」から「3
33」に変更することを要求する第3番目のインデック
ス更新要求が入力されると、図3(B)に示すように、
DELETE操作命令,キー値「555」,レコード番
号「10」を含むインデックス更新情報と、PUT操作
命令,キー値「333」,レコード番号「10」を含む
インデックス更新情報をスタック領域103に格納す
る。
【0039】その後、利用者プログラムが終了する等の
インデックスファイル112の実更新を行う契機となる
事象が発生すると、インデックス実更新手段104内の
更新情報ソート手段105は、スタック領域103に登
録されているインデックス更新情報を、インデックス更
新情報中のキー値を第1キー,レコード番号を第2キー
として昇順にソートし、ソート結果を再びスタック領域
103に格納する。この結果、スタック領域103の内
容は、図3(C)に示すものとなる。
【0040】更新情報ソート手段105は、ソートが完
了すると、更新情報削除手段107を動作させる。これ
により、更新情報削除手段107は、図4の流れ図に示
す処理を行う。
【0041】先ず、キーブレイクが発生するまで、即ち
キー値が異なるものが現れるまで、スタック領域103
に格納されているインデックス更新情報を読み込む(ス
テップS1)。この場合、スタック領域103の内容
は、図3(C)に示すものになっているので、更新情報
削除手段107は、DELETE操作命令,キー値「1
11」,レコード番号「10」から構成されるインデッ
クス更新情報を1個だけ読み込むことになる。
【0042】次いで、更新情報削除手段107は、ステ
ップS1で読み込んだインデックス更新情報の中から、
キー値,レコード番号が互いに一致し、且つ操作命令が
それぞれPUT操作命令,DELETE操作命令になっ
ているインデックス更新情報の対であって、出現順序が
PUT操作命令を含むインデックス更新情報,DELE
TE操作命令を含むインデックス更新情報の順になって
いるインデックス更新情報の対を削除したものをインデ
ックス更新命令として作業領域108に出力し(ステッ
プS3)、その後、ステップS1に戻る。この例の場
合、ステップS1で読み込んだインデックス更新情報の
中には、上記した条件のインデックス更新情報の対が存
在しないので、ステップS1で読み込んだインデックス
更新情報がそのまま、インデックス更新命令として作業
領域108に出力される。
【0043】その後、更新情報削除手段107は、PU
T操作命令,キー値「222」,レコード番号「10」
から構成されるインデックス更新情報と、DELETE
操作命令,キー「222」,レコード番号「10」から
構成されるインデックス更新情報とをスタック領域10
3から読み込み(ステップS1)、読み込んだインデッ
クス更新情報に対してステップS3の処理を行う。この
場合、ステップS1で読み込んだインデックス更新情報
は、上記した条件のインデックス更新情報の対だけであ
るので、更新情報削除手段107はステップS1で読み
込んだインデックス更新情報を全て削除する。
【0044】次いで、更新情報削除手段107は、PU
T操作命令,キー値「333」,レコード番号「10」
から構成されるインデックス更新情報をスタック領域1
03から読み込み(ステップS1)、読み込んだインデ
ックス更新情報に対してステップS3の処理を行う。こ
の場合、ステップS1で読み込んだインデックス更新情
報の中には、上記したインデックス更新情報の対が存在
しないので、更新情報削除手段107は、ステップS1
で見込んだインデックス更新情報をそのまま、インデッ
クス更新命令として作業領域108に出力する。
【0045】更に、更新情報削除手段107は、PUT
操作命令,キー値「555」,レコード番号「10」か
ら構成されるインデックス更新情報と、DELETE操
作命令,キー値「555」,レコード番号「10」から
構成されるインデックス更新情報とをスタック領域10
3から読み込み(ステップS1)、読み込んだインデッ
クス更新情報に対してステップS3の処理を行う。この
場合、ステップS1で読み込んだインデックス更新情報
は、上記した条件のインデックス更新情報の対だけであ
るので、更新情報削除手段107はステップS1で読み
込んだインデックス更新情報を全て削除する。
【0046】そして、スタック領域103に格納されて
いる全てのインデックス更新情報に対して上述した処理
を行うと、更新情報削除手段107は、更新命令変更手
段109に対して通知を行う(ステップS4)。
【0047】これにより、更新命令変更手段109は、
作業領域108に、キー値が互いに一致し、且つ操作命
令がそれぞれDELETE操作命令,PUT操作命令に
なっているインデックス更新命令の対であって、出現順
序がDELETE操作命令を含むインデックス更新命
令,PUT操作命令を含むインデックス更新命令の対が
存在する場合は、その対を、上記キー値を含む索引情報
中のレコード番号を、上記PUT操作命令を含むインデ
ックス更新命令中のレコード番号に変更することを指示
するPUTX操作命令を含むインデックス更新命令に変
更して出力し、他のインデックス更新命令はそのまま出
力する。
【0048】この例の場合、作業領域108には、DE
LETE操作命令,キー値「111」,レコード番号
「10」から構成されるインデックス更新命令と、PU
T操作命令,キー値「333」,レコード番号「10」
から構成されるインデックス更新命令とが格納されてお
り、上記条件を満たすインデックス更新命令の対は存在
しないので、更新命令変更手段109は、作業領域10
8に格納されている上記した2つのインデックス更新命
令をそのまま更新命令格納域110に出力することにな
る。この結果、更新命令格納域110の内容は、図3
(D)に示すものとなる。
【0049】更新命令格納域110にインデックス更新
命令が格納されると、更新手段111は、それに従って
インデックスファイル112を更新する。
【0050】このように、6個のインデックス更新情報
を2個のインデックス更新命令にすることができ、イン
デックスファイル112の更新処理を効率的に行うこと
が可能になる。
【0051】次に、インデックス更新要求101とし
て、図5(A)に示すような4個のインデックス更新要
求が順次入力された場合の動作を説明する。
【0052】更新情報スタック手段102は、キー値
「111」,レコード番号「10」を含む索引情報の追
加を要求する第1番目のインデックス更新要求が入力さ
れると、図5(B)に示すように、PUT操作命令,キ
ー値「111」,レコード番号「10」から構成される
インデックス更新情報をスタック領域103に格納す
る。
【0053】その後、キー値「222」,レコード番号
「20」を含む索引情報の追加を要求する第2番目のイ
ンデックス更新要求が入力されると、PUT操作命令,
キー値「222」,レコード番号「20」から構成され
るインデックス更新情報をスタック領域103に格納
し、キー値「333」,レコード番号「30」を含む索
引情報の削除を要求する第3番目のインデックス更新要
求が入力されると、DELETE操作命令,キー値「3
33」,レコード番号「30」から構成されるインデッ
クス更新情報をスタック領域103に格納する。
【0054】更に、レコード番号「40」のレコードを
ポイントする索引情報中のキー値を「444」から「3
33」に変更することを要求する第4番目のインデック
ス更新要求が入力されると、DELETE操作命令,キ
ー値「444」,レコード番号「40」から構成される
インデックス更新情報と、PUT操作命令,キー値「3
33」,レコード番号「40」から構成されるインデッ
クス更新情報とをスタック領域103に格納する。
【0055】その後、利用者プログラムが終了する等の
インデックスファイル112の実更新を行う契機となる
事象が発生すると、インデックス実更新手段104内の
更新情報ソート手段105は、スタック領域103に登
録されているインデックス更新情報を、インデックス更
新情報中のキー値を第1キー,レコード番号を第2キー
として昇順にソートし、ソート結果を再びスタック領域
103に格納する。この結果、スタック領域103の内
容は、図5(C)に示すものとなる。
【0056】更新情報ソート手段105は、ソートが終
了すると、更新情報削除手段107を動作させる。
【0057】これにより、更新情報削除手段107は、
前述したと同様に、図4の流れ図に示す処理を行う。こ
の例の場合、スタック領域103には、ステップS3の
条件を満たすインデックス更新情報の対が存在しないの
で、更新情報削除手段107は、スタック領域103に
格納されているインデックス更新情報をそのままインデ
ックス更新命令として作業領域108に出力する。
【0058】更新情報削除手段107の処理が終了する
と、更新命令変更手段109が動作し、前述したと同様
の処理を行う。この例の場合、作業領域108に、キー
値が互いに一致し、且つ操作命令がそれぞれDELET
E操作命令,PUT操作命令になっているインデックス
更新命令の対であって、出現順序がDELETE操作命
令を含むインデックス更新命令,PUT操作命令を含む
インデックス更新命令の対(DELETE操作命令,キ
ー値「333」,レコード番号「30」から構成される
インデックス更新命令と、PUT操作命令,キー値「3
33」,レコード番号「40」から構成されるインデッ
クス更新命令との対)が存在するので、更新命令変更手
段109は、その対を、キー値「333」を含む索引情
報中のレコード番号を「30」から「40」に変更する
ことを指示するPUTX操作命令に変更して更新命令格
納域110に出力し、他のインデックス更新命令はその
まま更新命令格納域110に出力する。この結果、更新
命令格納域110の内容は、図5(D)に示すものとな
る。
【0059】更新命令格納域110にインデックス更新
命令が格納されると、更新手段111は、それに従って
インデックスファイル112を更新する。
【0060】このように、索引情報中のキー値の変更を
要求するインデックス更新要求を、索引情報中のレコー
ド番号を変更するインデックス更新命令に変更するの
で、インデックスファイルの更新処理を効率的に行うこ
とが可能になる。つまり、索引情報中のキー値を変更す
る場合は、索引情報がキー値の順番に並ぶように索引情
報を並べ替えることが必要になるため、インデックスフ
ァイルの更新処理に時間がかかるが、レコード番号を変
更する場合は、索引情報の並べ替えを行う必要がないの
で、インデックスファイルの更新処理を効率的に行うこ
とができる。
【0061】
【発明の効果】以上説明したように本発明は、スタック
領域に格納されているインデックス更新情報の中から、
キー値,レコード番号が互いに一致し、且つ操作命令が
それぞれPUT操作命令,DELETE操作命令になっ
ているインデックス更新情報の対であって、出現順序が
PUT操作命令を含むインデックス更新情報,DELE
TE操作命令を含むインデックス更新情報の順になって
いるインデックス更新情報の対を削除したものをインデ
ックス更新命令として出力するようにしたものであるの
で、データファイル中の或るレコードの、上記インデッ
クスファイルのキーとされる項目の内容が何回も更新さ
れ、上記或るレコードを検索するための索引情報に対す
るインデックス更新情報が多数蓄積された場合、インデ
ックスファイルとデータファイルの整合性を保つために
は不要なインデックス更新情報を削除することができる
ので、インデックスファイルの更新処理を効率的に行う
ことが可能になる。
【0062】また、本発明は、更新情報削除手段が出力
したインデックス更新命令中に存在する、キー値が互い
に一致し、且つ操作命令がそれぞれDELETE操作命
令,PUT操作命令になっているインデックス更新命令
の対であって、出現順序がDELETE操作命令を含む
インデックス更新命令,PUT操作命令を含むインデッ
クス更新命令の対を、上記キー値を含む索引情報中のレ
コード番号を、上記PUT操作命令を含むインデックス
更新情報中のレコード番号に変換することを指示するP
UTX操作命令を含むインデックス更新命令に変換して
出力し、他のインデックス更新命令はそのまま出力する
更新命令変更手段を備えているので、インデックスファ
イルの更新処理を更に効率的に行うことが可能になる。
【図面の簡単な説明】
【図1】本発明の実施例のブロック図である。
【図2】インデックス更新情報の構成例を示す図であ
る。
【図3】実施例の動作を説明するための図である。
【図4】更新情報削除手段107の処理例を示す流れ図
である。
【図5】実施例の動作を説明するための図である。
【符号の説明】
101…インデックス更新要求 102…更新情報スタック手段 103…スタック領域 104…インデックス実更新手段 105…更新情報ソート手段 106…更新命令生成手段 107…更新情報削除手段 108…作業領域 109…更新命令変更手段 110…更新命令格納域 111…更新手段 112…インデックスファイル

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 データファイルに格納されたデータ内の
    特定の項目をキーとする索引情報が格納されたインデッ
    クスファイルを更新するインデックス更新方式に於い
    て、 スタック領域と、 前記データファイルの更新時に発生するインデックス更
    新要求を、索引情報の追加を指示するPUT操作命令及
    び追加する索引情報のキー値,レコード番号から構成さ
    れるインデックス更新情報に変換するか、索引情報の削
    除を指示するDELETE操作命令及び削除する索引情
    報のキー値,レコード番号から構成されるインデックス
    更新情報に変換するか、或いは前記2種類のインデック
    ス更新情報の対に変換するかして前記スタック領域に格
    納する更新情報スタック手段と、 所定の事象が発生した時、前記スタック領域に格納され
    ているインデックス更新情報から、キー値,レコード番
    号が互いに一致し、且つ操作命令がそれぞれPUT操作
    命令,DELETE操作命令になっているインデックス
    更新情報の対であって、出現順序がPUT操作命令を含
    むインデックス更新情報,DELETE操作命令を含む
    インデックス更新情報の順になっているインデックス更
    新情報の対を削除したものをインデックス更新命令とし
    て出力する更新情報削除手段と、 該更新情報削除手段から出力されたインデックス更新命
    令に基づいて前記インデックスファイルを更新する更新
    手段とを備えたことを特徴とするインデックス更新方
    式。
  2. 【請求項2】 前記更新情報削除手段が出力したインデ
    ックス更新命令中に存在する、キー値が互いに一致し、
    且つ操作命令がそれぞれDELETE操作命令,PUT
    操作命令になっているインデックス更新命令の対であっ
    て、出現順序がDELETE操作命令を含むインデック
    ス更新命令,PUT操作命令を含むインデックス更新命
    令の対は、前記キー値を含む索引情報中のレコード番号
    を、前記PUT操作命令を含むインデックス更新命令中
    のレコード番号に変換することを指示するPUTX操作
    命令を含むインデックス更新命令に変更して出力し、他
    のインデックス更新命令はそのまま出力する更新命令変
    更手段を備え、 前記更新手段は、前記更新情報削除手段の出力の代わり
    に前記更新命令変更手段の出力に基づいて前記インデッ
    クスファイルを更新することを特徴とする請求項1記載
    のインデックス更新方式。
  3. 【請求項3】 前記スタック領域に格納されているイン
    デックス更新情報をキー値,レコード番号で昇順にソー
    トする更新情報ソート手段とを備え、 前記更新情報削除手段は、前記更新情報ソート手段のソ
    ート結果を利用して処理を行うことを特徴とする請求項
    2記載のインデックス更新方式。
  4. 【請求項4】 前記更新情報スタック手段は、前記デー
    タファイルの更新時に発生するインデックス更新要求
    が、索引情報の追加を要求するものである場合は索引情
    報の追加を指示するPUT操作命令及び追加する索引情
    報のキー値,レコード番号から構成されるインデックス
    更新情報を前記スタック領域に格納し、索引情報の削除
    を要求するものである場合は索引情報の削除を指示する
    DELETE操作命令及び削除する索引情報のキー値,
    レコード番号から構成されるインデックス更新情報を前
    記スタック領域に格納し、索引情報のキー値の変更を要
    求するものである場合は索引情報の削除を指示するDE
    LETE操作命令,キー値を変更する索引情報に含まれ
    ているレコード番号及び変更前のキー値から構成される
    インデックス更新情報と、索引情報の追加を指示するP
    UT操作命令,キー値を変更する索引情報に含まれてい
    るレコード番号及び変更後のキー値から構成されるイン
    デックス更新情報とを前記スタック領域に格納すること
    を特徴とする請求項3記載のインデックス更新方式。
JP7157171A 1995-05-31 1995-05-31 インデックス更新方式 Expired - Lifetime JP2636806B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7157171A JP2636806B2 (ja) 1995-05-31 1995-05-31 インデックス更新方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7157171A JP2636806B2 (ja) 1995-05-31 1995-05-31 インデックス更新方式

Publications (2)

Publication Number Publication Date
JPH08328924A JPH08328924A (ja) 1996-12-13
JP2636806B2 true JP2636806B2 (ja) 1997-07-30

Family

ID=15643749

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7157171A Expired - Lifetime JP2636806B2 (ja) 1995-05-31 1995-05-31 インデックス更新方式

Country Status (1)

Country Link
JP (1) JP2636806B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4522170B2 (ja) * 2004-07-02 2010-08-11 富士通株式会社 リレーショナルデータベースのインデックス追加プログラム,インデックス追加装置及びインデックス追加方法
JP5774513B2 (ja) * 2012-02-07 2015-09-09 株式会社日立ソリューションズ ファイルリスト生成方法及びシステム並びにプログラム、ファイルリスト生成装置
CN112579003B (zh) * 2020-12-15 2022-06-14 浙江大华技术股份有限公司 键值对的调整方法、装置、存储介质以及电子装置

Also Published As

Publication number Publication date
JPH08328924A (ja) 1996-12-13

Similar Documents

Publication Publication Date Title
JPH11212980A (ja) インデクス作成方法および検索方法
CN110597835B (zh) 一种基于区块链的交易数据删除方法及装置
US5313598A (en) Method for changing non-leaf entry in tree structure of OSI directory information by sequentially issuing OSI directory commands for the non-leaf entry and lower entries associated therewith in response to decoded change command
CN111339042A (zh) 数据的操作处理方法、系统及调度服务器
JP3251138B2 (ja) ハッシュ方式
JP2636806B2 (ja) インデックス更新方式
US5918231A (en) Object-oriented database management system with improved usage efficiency of main memory
CA2418093A1 (en) Data compiling method
JP2925042B2 (ja) 情報リンク生成方法
Yu et al. A linear-time scheme for version reconstruction
JP2923952B2 (ja) マージ処理方法
CN111352933B (zh) 云端大数据数据库快捷建立索引系统
JPH0456344B2 (ja)
JP2921045B2 (ja) インデックス生成方式
JPH02190970A (ja) インデクスの構造およびこれを用いるサーチ処理方法
CN117421277A (zh) 一种文件管理方法及相关设备
JPH0635767A (ja) データベースシステム
JPH01248233A (ja) データベース検索装置
JPS63262735A (ja) ファイル管理システム
JP2001154890A (ja) Rdbデータキャッシングシステム及び記録媒体
JPH0520146A (ja) 電子掲示板装置
JPS59180763A (ja) デ−タ・ベ−ス・システムのアクセス方式
JPH03255549A (ja) レコード排他方式
KR20000031438A (ko) 애트리뷰트의 순서 조정을 통한 릴레이션 크기 최적화 방법
JPH02122328A (ja) ファイル作成方式