JPH06149635A - レコード追加処理方法 - Google Patents

レコード追加処理方法

Info

Publication number
JPH06149635A
JPH06149635A JP4316309A JP31630992A JPH06149635A JP H06149635 A JPH06149635 A JP H06149635A JP 4316309 A JP4316309 A JP 4316309A JP 31630992 A JP31630992 A JP 31630992A JP H06149635 A JPH06149635 A JP H06149635A
Authority
JP
Japan
Prior art keywords
index
record
records
attribute values
attribute value
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
JP4316309A
Other languages
English (en)
Inventor
Yuichiro Hiranuma
雄一郎 平沼
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP4316309A priority Critical patent/JPH06149635A/ja
Publication of JPH06149635A publication Critical patent/JPH06149635A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【目的】 任意の属性値をキーとするデータベースに対
し比較的大量のレコードを追加する場合に、属性値の高
速検索用のインデックス生成等を伴う追加処理時間短縮
を図る。 【構成】 新たにデータベースに追加される一群のレコ
ードについて、予めその属性値をソートし(S8)、そ
の後、既存のレコード群の属性値とマージする(S
9)。こうして属性値の配列を一挙に新たに生成し、そ
の後、既存のインデックスの代わりに新たなインデック
スを再生成する。追加されるレコード数が多い場合、一
つずつレコードと属性値を追加してその都度インデック
スを部分修正するより、新たに再配列された属性値に基
づいてインデックスを再生成する方が高速化を図れる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、各種のデータベースに
対し比較的大量のレコードを追加処理する場合の処理速
度向上を図ったレコード追加処理方法に関する。
【0002】
【従来の技術】大量のデータを検索処理するために、従
来よりコンピュータシステムが広く使用されている。図
2に一般の情報検索システムブロック図を示す。図のシ
ステムは、バスライン1に対し、プロセッサ2、記憶装
置3、キーボード4、ディスプレイ5及びフロッピーデ
ィスク装置6が接続されたものである。記憶装置3には
情報検索のためのデータベース7が格納されている。
【0003】これらのシステムでは、オペレータがキー
ボード4を用いて適当な検索キーを入力し、これに従っ
てプロセッサ2がデータベース7を検索してその結果を
ディスプレイ5に表示する。このようなシステムにおい
て、データベース7に対し適時新たなデータが追加さ
れ、あるいは既存のデータの削除等の処理が行なわれ
る。新たなデータを追加する処理のために、プロセッサ
2にはレコード追加管理部10が設けられる。レコード
追加管理部10には、インデックス管理部11とレコー
ド本体管理部12が設けられている。インデックス管理
部11は、レコードの検索をするために必要なインデッ
クスを生成処理する部分である。また、レコード本体管
理部12は、データベース7の中にレコード本体を書き
加えたり削除したりする処理を行なう部分である。
【0004】図3に上記のようなデータベースの例説明
図を示す。上記のようなデータベース7としては、例え
ばこの図に示すようなものが考えられる。このデータベ
ースは、例えば会社の従業員に対する各種の情報を収集
したもので、従業員毎に順番にレコード番号が1、2、
3というように付与されている。また、各従業員につい
て、従業員番号、氏名、年齢、所属等の属性値が付与さ
れている。例えば、この例では、Aさんについてはレコ
ード番号1のレコードとしてデータベースに格納されて
おり、その所属コードは100とされている。この所属
コードはそのAさんの所属する部署を示すものである。
同様にしてBさん、Cさん、Dさん…についてもそれぞ
れ各種の属性値が格納されている。
【0005】ここで、所属コードをキーとしてデータベ
ースを検索する場合には、全レコードを読み出して、キ
ーと属性値と比較する。そして、一致したものについて
レコード番号が引き出される。しかしながら、属性値は
各レコード毎に付与されており、レコードの数が膨大な
場合、属性値一つ一つと比較して、その一致検索を行な
うと非常に時間がかかる。そこで、従来この種のデータ
ベースについては、各属性値について高速検索用のイン
デックスを付加するようにしている。
【0006】図4に属性値とインデックスの構成説明図
を示す。このインデックスは、Btree式のインデッ
クスとしてよく知られた構成のものである。即ち、属性
値は図に示すように、例えば昇順に配列されている。そ
して、この属性値をそれぞれ例えば199以下、299
以下、399以下というように仕切り、更にこうして設
けた仕切りについて、またその上位の仕切りとして99
9以下、 10000以下といった仕切りを設ける。このよう
にすれば、検索対象となる属性値が入力された場合、比
較的少ない回数の比較処理によって目的とする属性値と
の一致検索を行なうことができ、レコード検索処理を高
速化できる。
【0007】
【発明が解決しようとする課題】ところで上記のような
従来のレコード追加処理方法には次のような解決すべき
課題があった。図5に従来のレコード追加方法フローチ
ャートを示す。図に示すように、従来は例えばレコード
の追加要求があった場合に、図2に示す装置に対し、ま
ずステップS1においてレコード追加管理部10にレコ
ード追加要求を発行する。そしてステップS2におい
て、レコード本体管理部12に対しレコード本体追加要
求の発行を行なう。これによって、まず、データベース
7にレコード本体の書き込みが行なわれる。
【0008】次にステップS3において、レコード追加
管理部10からインデックス管理部11に対し、インデ
ックス付き属性値の追加要求を行なう。これは、新たに
追加されたレコードに付与された属性値を、既に存在す
る属性値の配列中に割り込ませる処理である。ステップ
S4において、インデックス管理部11は入力されたイ
ンデックス付き属性値をインデックスに追加する。こう
してステップS5に移り、更に追加すべきレコードがあ
るかどうかを判断する。そして更に追加するレコードが
あれば、ステップS1からステップS4までの処理を繰
り返す。
【0009】ここで、従来のレコード追加処理において
は、追加されるレコードの量に関わりなく、常にその都
度、図5に示すような処理手順が踏まれていた。しかし
ながら、既に存在する属性値の配列に新たな属性値を割
り込ませ、必要に応じてインデックスの修正等を行なう
処理は、一定以上の処理時間を必要とし、追加されるレ
コード数が多くなれば非常に多くの時間がかかる。
【0010】本発明は以上の点に着目してなされたもの
で、データベースに対し比較的大量のレコードを追加す
る場合に、特にそのインデックス生成等を伴う追加処理
時間短縮を図ったレコード追加処理方法を提供すること
を目的とするものである。
【0011】
【課題を解決するための手段】本発明のレコード追加処
理方法は、データベースを構成するレコード毎に、任意
の属性値を付与し、前記属性値を前記レコード検索用の
キーとして一定の順に配列したものに、高速検索用のイ
ンデクスを付加する場合において、前記データベースに
対し、新たに一群のレコードを追加するとき、予め新た
に追加する一群のレコードの前記属性値をソートした
後、既存のレコード群の属性値とマージして、その後新
たな属性値の配列に対し、前記インデクスを再生成して
付加することを特徴とするものである。
【0012】
【作用】この方法では、新たにデータベースに追加され
る一群のレコードについて、予めその属性値をソートし
その後、既存のレコード群の属性値とマージする。こう
して、属性値の配列を一挙に新たに生成してしまう。そ
の後、既存のインデックスの代わりに新たなインデック
スを再生成して付加する。追加されるレコード数が多い
場合、一つずつ属性値を追加してインデックスを部分修
正するより、新たに再配列された属性値に基づいてイン
デックスを再生成する方が高速化を図れる。
【0013】
【実施例】以下、本発明を図の実施例を用いて詳細に説
明する。図1は本発明のレコード追加処理方法実施例を
示すフローチャートである。このフローチャートの説明
をする前に、本発明の方法を実施するためのハードウェ
ア構成を説明する。
【0014】図6に本発明の方法を実施するためのハー
ドウェアブロック図を示す。本発明の方法を実施する場
合、システム全体の構成は図2に示した一般の情報検索
システムと同様である。本発明の方法を実施するには、
そのプロセッサに図6に示したような機能ブロックを追
加する。即ち、図6の装置には、レコード高速追加管理
部21、レコード本体管理部22、インデックス再生成
管理部23、属性値バッファ24、ソート処理部25及
びインデックス再生成部26が設けられている。上記各
ブロックは、それぞれプロセッサのプログラムの1処理
単位から構成され、その処理機能や手順は図1のフロー
チャートの説明と共に具体的に説明する。
【0015】再び図1に戻って、本発明の方法では、ま
ず一定のデータベースに対し一群のレコード追加要求が
あった場合、その量を考慮した上で、レコード高速追加
管理部21に対しレコード追加要求の発行が行なわれる
(ステップS1)。なお、この追加されるレコード量
が、例えば数個単位の場合には、実質的に従来方法がよ
り高速に処理できる。従って、予め本発明の方法では一
定のレコード量を閾値として設定しておき、その閾値と
比較した上で、閾値を超えた場合に高速追加処理が進め
られる。
【0016】ステップS2において、レコード本体管理
部22に対しレコード高速追加管理部21がレコード本
体追加要求を発行する。これによって、レコード本体管
理部22はデータベース中に新たなレコード本体の追加
処理を実行する。このようなレコード追加処理自体は従
来と同様の手順である。
【0017】次にステップS3において、レコード高速
追加管理部21からインデックス再生成管理部23に対
しインデックス付き属性値追加要求発行が行なわれる。
即ち、図4に示したような所定の属性値配列に対し、高
速検索用のインデックスを付加する要求が発行される。
インデックス再生成管理部23はこの要求を受けて、属
性値を属性値バッファ24に格納する(ステップS
4)。属性値バッファ24は一定量の属性値を一時格納
するためのメモリから構成される。
【0018】即ち、本発明の方法においては、レコード
追加要求に対しレコード本体をデータベースに追加する
と、属性値は一旦この属性値バッファ24に格納し、全
てのレコードについてレコード本体の追加処理を先行さ
せる。ステップS5においてレコード追加に残りがある
かどうかを判断し、残りがあればステップS1からステ
ップS4までの処理が繰り返される。こうして全てのレ
コードについてレコード本体のデータベースへの追加と
属性値の属性値バッファ24への格納が完了するとステ
ップS6に移る。
【0019】ステップS6では、レコード高速追加管理
部21に対しレコード追加終了要求が発行される。次に
ステップS7において、インデックス再生成管理部23
は、レコード高速追加管理部21から属性値追加終了要
求を受け、ステップS8の処理に移る。ステップS8に
おいては、このインデックス再生成管理部23が属性値
バッファ24をソート処理部25に渡す。即ち、属性値
バッファ24に格納された一群の属性値がソート処理部
25において昇順あるいは降順にソートされる。そし
て、最後にステップS9に移り、インデックス再生成管
理部23はソートされた属性値をインデックス再生成部
26に渡す。インデックス再生成部26は、こうしてソ
ートされた一群の属性値を既存のレコード群の属性値と
マージし、新たな属性値の配列を得る。その後、インデ
ックス再生成部26はその新たな属性値の配列に対しイ
ンデックスを再生成し付加する。
【0020】次に、上記のような方法によって処理を行
なった場合と従来の方法とを比較して、処理時間上の効
果を述べる。まず、従来方法によるn件のレコード追加
に要する時間Tを以下の式で表わす。 T=(R+H)×n …(式1) 但し、Rは1レコード本体の追加時間で、Hはインデッ
クス付き1属性値の追加時間である。
【0021】これに対し、本発明の方法によるn件のレ
コード追加に要する時間NewTは以下の式で表わされ
る。 NewT=(R+i)×n+S(n)+M(m,n) …(式2) なお、mは既存のレコード数、iは属性値を属性値バッ
ファに格納するための時間、S(n)は属性値n個をソ
ートする時間、M(m,n)はm件のレコードに付いて
いる既存の属性値の配列と新たにソートされたn件の属
性値の配列をマージして、その後新たなインデックスを
生成するのに要する時間である。
【0022】大量のレコードを追加する場合、既に存在
するインデックス付きの属性値に対し1個1個属性値を
割り込ませ、インデックスの部分修正等を行なっていく
場合に比べて、配列の終わった属性値に対し新たにイン
デックスを生成した方が早いことが多い。これを次の式
により表わすことができる。 H×n>1×n+S(n)+C(n) …(式3) なお、C(n)はソートしたn個の属性値から新たなイ
ンデックスを生成するために必要な時間である。即ち、
この式3の意味は、n個の属性値を属性値バッファに格
納し、これをソートした上で新たなインデックスを生成
する場合、インデックス付きの1属性値をn回追加する
場合に比べ、より早く処理が可能なことを意味してい
る。従って本発明の方法による処理時間と従来方法によ
る処理時間の差は次の式により表わすことができる。 NewT−T=i×n+S(n)+M(m,n) …(式4)
【0023】上記式のレコード件数nが大きくなればな
る程その差は大きくなる。また、n/mが大きくなれば
なる程M(m,n)はC(n)に近づいていく。従って
mに比べnがかなり大きい場合には、本発明の方法によ
る処理時間は従来方法に比べて非常に短縮される。従っ
て、本発明の方法を実施する場合、予めmとnを比較
し、例えばn/mの値が一定の閾値以上の場合に、本発
明の方法を採用するといった選択を行なうことが好まし
い。
【0024】本発明は以上の実施例に限定されない。上
記実施例において属性値の検索のために例えばBtre
e式のインデックスを使用した例を説明したが、このイ
ンデックスの構成はこのようなものに限らず、従来よく
知られたこの種の属性値の検索のためのインデックスと
して差し支えない。また、もちろんその検索のためのハ
ードウェア構成は同様の機能を持つ各種の構成に置き換
えて差し支えない。
【0025】
【発明の効果】以上説明した本発明のレコード追加処理
方法は、属性値をレコード検索用のキーとして一定の順
に配列したものに高速検索用のインデックスを付加する
場合において、データベースに対し新たに一群のレコー
ドを追加する時、予め新たに追加する一群のレコードの
属性値をソートした後、既存のレコードの属性値とマー
ジし、その後新たな属性値の配列に対しインデックスを
再生成して付加するようにしたので、個別にレコードを
追加し属性値を既存の属性値の配列に割り込ませていく
処理を繰り返す場合に比べ、大量のレコードの追加処理
を短時間で行なうことができる。これによって、データ
ベースの追加変更等の処理を高速化し、この種のシステ
ム運用を効率化することができる。
【図面の簡単な説明】
【図1】本発明のレコード追加処理方法実施例を示すフ
ローチャートである。
【図2】一般の情報検索システムブロック図である。
【図3】データベース例説明図である。
【図4】属性値とインデックスの構成説明図である。
【図5】従来のレコード追加方法フローチャートであ
る。
【図6】本発明の方法を実施するためのハードウェアブ
ロック図である。
【符号の説明】
S1〜S9 処理ステップ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 データベースを構成するレコード毎に、
    任意の属性値を付与し、 前記属性値を前記レコード検索用のキーとして一定の順
    に配列したものに、高速検索用のインデクスを付加する
    場合において、 前記データベースに対し、新たに一群のレコードを追加
    するとき、 予め新たに追加する一群のレコードの前記属性値をソー
    トした後、既存のレコード群の属性値とマージして、 その後新たな属性値の配列に対し、前記インデクスを再
    生成して付加することを特徴とするレコード追加処理方
    法。
JP4316309A 1992-10-30 1992-10-30 レコード追加処理方法 Pending JPH06149635A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4316309A JPH06149635A (ja) 1992-10-30 1992-10-30 レコード追加処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4316309A JPH06149635A (ja) 1992-10-30 1992-10-30 レコード追加処理方法

Publications (1)

Publication Number Publication Date
JPH06149635A true JPH06149635A (ja) 1994-05-31

Family

ID=18075700

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4316309A Pending JPH06149635A (ja) 1992-10-30 1992-10-30 レコード追加処理方法

Country Status (1)

Country Link
JP (1) JPH06149635A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11176176B2 (en) * 2018-11-20 2021-11-16 International Business Machines Corporation Record correction and completion using data sourced from contextually similar records

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11176176B2 (en) * 2018-11-20 2021-11-16 International Business Machines Corporation Record correction and completion using data sourced from contextually similar records

Similar Documents

Publication Publication Date Title
US6205451B1 (en) Method and apparatus for incremental refresh of summary tables in a database system
CN109325032B (zh) 一种索引数据存储及检索方法、装置及存储介质
JP3510042B2 (ja) データベース管理方法及びシステム
US20040002983A1 (en) Method and system for detecting tables to be modified
US20200226116A1 (en) Fast index creation system for cloud big data database
US7085754B2 (en) System and a two-pass algorithm for determining the optimum access path for multi-table SQL queries
US20070239794A1 (en) Method and system for updating logical information in databases
JP3534471B2 (ja) マージソート方法及びマージソート装置
JPH06149635A (ja) レコード追加処理方法
JP2925042B2 (ja) 情報リンク生成方法
JPH1040255A (ja) ハッシュ表管理装置
JPH0773187A (ja) 検索システム
JPS6172333A (ja) 複数ファイルのマージ方法
JPH113354A (ja) データキューブ制御方式
JPH0689215A (ja) 情報検索用コンピュータシステム及び同システムの記憶装置の操作方法
JPH06215044A (ja) 情報検索処理装置
JPH05313971A (ja) リレーショナル・データベースにおけるキーワード管理方式
CN115809268A (zh) 一种基于分片索引的自适应查询方法和装置
WO2023191943A1 (en) Methods and systems for performing a vectorized delete in a distributed database system
CN116185990A (zh) 一种以时间戳为版本特征的格式化数据处理系统
JPS63172334A (ja) デ−タベ−スシステムのデ−タ処理方式
JP3780772B2 (ja) データベースの索引創成装置
JPH05120338A (ja) 索引検索方式
CN115543993A (zh) 数据处理方法、装置、电子设备及存储介质
CN116263793A (zh) 逆序检索方法、装置、设备及存储介质