JPS62287350A - インデツクス一括更新方式 - Google Patents

インデツクス一括更新方式

Info

Publication number
JPS62287350A
JPS62287350A JP61132154A JP13215486A JPS62287350A JP S62287350 A JPS62287350 A JP S62287350A JP 61132154 A JP61132154 A JP 61132154A JP 13215486 A JP13215486 A JP 13215486A JP S62287350 A JPS62287350 A JP S62287350A
Authority
JP
Japan
Prior art keywords
index
record
update
update information
data
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
JP61132154A
Other languages
English (en)
Inventor
Kazumasa Iwamoto
岩本 和真
Atsushi Kitazawa
敦 北澤
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
NEC Solution Innovators Ltd
Original Assignee
NEC Corp
NEC Solution Innovators 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 NEC Corp, NEC Solution Innovators Ltd filed Critical NEC Corp
Priority to JP61132154A priority Critical patent/JPS62287350A/ja
Publication of JPS62287350A publication Critical patent/JPS62287350A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 3、発明の詳細な説明 (産業上の利用分野) 本発明は、インデックスを利用したアクセス手段を備え
たデータファイルの更新方式に関する。
(従来の技術) 従来、データファイルの検索効率を向上させるためのイ
ンデックスファイルを備えたデータファイルにおいて1
、データレコードを更新する際にデータレコードの各フ
ィールドが更新されれば、それに付随するインデックス
ファイルも同時lこ更新していた。
インデックスレコードをいくつかまとめてひとつのブロ
ックとし、入出力処理を前記ブロック単位で行うインデ
ックスファイルを想定した場合、単位インデックスレコ
ードの更新を、第9図を利用して説明すると次の5ステ
ツプに示すようになる。
第1ステツプでは、上位レベルブロック91を読込む。
第2ステツプでは、更新するインデックスレコードの更
新処理が「削除」、あるいは「変更」であれば、キー値
が含まれる下位レベルブロックの管理レコード92を見
出し、いっぽう、更新処理が「追加」であれば、インデ
ックスレコードを格納する下位レベルブロックの管理レ
コード92を見出す。
第3ステツプでは、下位レベルブロック管理レコード9
2が示す最下位レベルブロック93を読込む〇 第4ステツプでは、更新処理が「削除」であれば最下位
レベルブロック93のインデックスレコード9Gを削除
し、更新処理が「変更」であれば最下位レベルブロック
93のインデックスレコード94を変更し、更新処理が
「追加」であれば最下位レベルブロック93にインデッ
クスレコード95を追加する。
第5ステツプでは、最下位レベルブロック93を書込む
。
上記インデックスレコードの更新において、2回のブロ
ック読込み要求と1回のブロック書込み要求とが発生す
る。
このようなインデックスレコードの更新手段は、データ
レコードの更新層外に対応してインデックスレコードを
保守するためにインデックスファイル上に格納されるイ
ンデックスレコードがキー値の順に並んでいる性質を利
用していない。
(発明が解決しようとする問題点) 従来のインデックス更新方式では、データレコードをル
コードだけ更新した場合には、更新されたフィ゛−ルド
に対応するインデックスがひとつだけであっても、2回
のブロック読込み要求と、1回のブロック書込み要求と
が発生する。
もし1次に更新されるインデックスレコードが現在処理
したブロックに格納されるか、あるいは格納されている
ことが保証されているとすれば、次に更新されるインデ
ックスレコードの更新では、上記インデックスレコード
更新手段のうち、第4ステツプの手続きのみが必要とな
る。
この場合、ブロックの読込み要求と、書込み要求とはと
もに発生しない。
本発明の目的は、データレコードを更新する際、それに
伴うインデックスの更新情報をソートレコードとして保
持し、データレコードの更新後に一括してキー値順にイ
ンデックスファイルを更新することにより上記欠点を除
去し、ブロック読込み要求と書込み要求とを減少させる
ことができるように構成したインデンクス一括更新方式
を提供することにある。
(問題点を解決するための手段) 本発明によるインデックス一括更新方式はデータレコー
ド更新処理手段と、インデックスレコード更新情報生成
手段と、ソートレコード記憶手段と、ソート手段と、イ
ンデックスレコード更新情報読込み手段と、インデック
ス更新手段とを具備して構成したものである。
データレコード更新処理手段は、1個あるいは複数個の
インデックスをもつデータファイル上のデータレコード
を更新するためのものである。
インデックスレコード更新情報生成手段は、上記データ
レコード更新処理手段によって更新された少なくとも複
数データレコードに対する1個、あるいは複数個のイン
デックスを更新するために、更新されたデータレコード
の更新されたフィールド値をキー値とし、更新されたデ
ータレコードのデータファイル上のアドレスをポインタ
値としたインデックスレコードに対して、データレコー
ドの各フィールドに対応するインデックス識別子と、更
新されたデータレコードの更新順位と、インデックスレ
コードの更新方式識別子とを付加したインデックスレコ
ード更新情報を生成するためのものである。
ソートレコード記憶手段は、上記インデックスレコード
更新手段により生成されたインデックスレコード更新情
報をソートレコードとして記憶するためのものである。
ソート手段は、上記ソートレコード記憶手段に格納され
ているソートレコードに対して、上記インデックスレコ
ード更新情報生成手段によって付加されたインデックス
識別子を第1のキーとし、インデックスレコードのキー
値を第2のキーとし、上記インデックスレコード更新情
報生成手段によって付加され、更新されたデータレコー
ドの更新順位を第3のキーとして並び換えるためのもの
である。
インデックスレコード更新情報読込み手段は。
上記ソートレコード記憶手段から上記ソート手段によっ
て並換えたソートレコードを読込み、インデックスレコ
ード更新情報を取込むためのものである。
インデックス更新手段は、上記インデックスレコード更
新情報読込み手段によって読込まれたインデックスレコ
ード更新情報をもとにインデックス識別子で示されるイ
ンデックスファイルを一括して更新するためのものであ
る。
(実施例) 次に、本発明の一実施例について図面を参照して説明す
る。
第1図は、本発明によるインデックス一括更新方式を実
現する一実施例を示すブロック構成図である。
第1図において、1はデータファイル、2はデータレコ
ード更新処理手段、3はインデックスレコード更新情報
生成手段、4はソート手段、5はソートレコード記憶手
段、6はインデックスレコード更新情報読込み手段、7
はインデックス更新手段、8はインデックスファイルで
ある。
第2図は、第1図に示す実施例におけるデータレコード
形式を示す説明図である。
本実施例のデータレコード形式は第2図に示すようにA
フィールド10と、Bフィールド11と、Cフィールド
12と、Dフィールド13との4つのフィールドから成
り、Bフィールド11と、Dフィールド13との2つの
フィールドがそれぞれインデックスをもっている。
本実施例による更新前のデータレコード群を第3図に示
し、更新後のデータレコード群を第4図に示す。
各フィールドのサフィックスは並びの順番を示している
。
第3図のデータレコード群に加エラしたデータレコード
更新処理を、第5図に示す。
更新ノ験 1番のデータレコード更新処理は、アドレス
P1のデータレコードを削除するものである。
更新順 2番のデータレコード更新処理は、アドレスP
2のデータレコードのフィールドBの値を「B2」から
「B5」に変更し、フィールドDの値を「B2」から「
B5」に変更するものである。
更新順 3番はそれぞれフィールドAの値がrA4J、
フィールドBの値が「B4」、フィールドCの値が「C
4」、フィールドDの値が「D4」である新しいデータ
レコードを追加する処理である。
上記データレコード更新処理に伴って、インデックスレ
コード更新情報生成手段3が作成すべきソートレコード
形式を第6図に示す。
データレコードのインデックスを備えたフィールドに対
応するインデックス識別子61とキー値62と、データ
レコードのデータファイル1上における格納位置を示す
アドレスに対応して決定されるポインタ値63と、デー
タレコードの更新順とインデックスレコードの更新順と
を対応ずけるための更新順位64と、データレコードの
更新方法とインデックスレコードの更新方法を対応ずけ
るための更新処理識別子65とから成る。
第7図jま、インデックスレコード更新情報生成手段3
によって生成されたインデックスレコード更新情報群で
ある。第7図において、71〜78はそれぞれインデッ
クスレコード更新情報である。
次に、第1図に戻って各要素の概要を説明する。
データレコード更新手段2は、1個あるいは複数個のイ
ンデックスを備えたデータファイル1上のデータレコー
ドを更新する。
インデックスレコード更新情報生成手段3は、上記デー
タレコード更新処理手段2によって更新された少なくと
も複数のデータレコードのインデックスのキー値となっ
ているフィールドがデータレコードの更新に伴って更新
されているときに限りフィールド値をキー値62とし、
データレコードのデータファイル1上のアドレスをポイ
ンタ63としたインデックスレコードを生成し、上記生
成されたインデックスレコードに対してデータレコード
の各フィールドに対応するインデックス識別子61と、
データレコードの更新順位64と、更新処理がデータレ
コードの削除であれば削除処理識別子とし、データレコ
ードの追加であれば追加処理識別子とし、データレコー
ドの変更であれば削除処理識別子と追加処理識別子とに
分割することによって決定された更新処理識別子65と
を付加したインデックスレコード更新情報を生成する。
ソート手段4は、インデックス識別子61を第1のキー
とし、インデックスレコードのキー値62を第2のキー
とし、データレコードの更新順位64を第3のキーとし
て上記ソートレコード記憶手段5に格納されているソー
トレコードを並換える。
ソートレコード記憶手段5は、インデックスレコード更
新情報によりデータレコードカラ生成したソートレコー
ドを並び換えるための作業用記憶手段である。
インデックスレコード更新情報読込み手段6は、前記ソ
ートレコード記憶手段5からソート後のソートレコード
を読込み、インデックスレコード更新情報を取込む。
インデックス更新手段7は、上記インデックスレコード
更新情報読込み手段6によって読込まれたインデックス
レコード更新情報をもとにインデックス識別子61によ
って示されるインデックスファイル8上のインデックス
レコードを、インデックスレコード更新情報に従ってキ
ー値順に一括更新する。
インデックスファイル8は、データレコードから生成さ
れたインデックスを格納するファイルである。
以上、第1図に記載した各要素の概要である。
第3図のデータレコード群に対して、第5図の更新処理
が加えられることを想定したとき、本方式によるインデ
ックス更新手順は第1の処理から第3の処理に至るまで
以下の通りである。
第1に、インデックス更新情報の生成について記述する
。
更新順 1番の更新処理は、削除処理である。
フィールドBに付加されにインデックスの識別子である
「インデックスB」を、インデックスレコード更新情報
のインデックス識別子61とする。
フィールドBの値である「B1」を、インデツクスレコ
ード更新情報のキー値62とする。
データレコードのアドレスである「Pl」を、インデッ
クスレコード更新情報のポインタ値63とする。
更新順位64を「1」とし、更新処理識別子65を「削
除」とする。
この結果、インデックスレコード更新情報71が生成さ
れる。
このインデックスレコード更新情報がソートレコードと
して、ソートレコード記憶手段5に格納される。
インデックスDについても同様のインデックスレ;−ド
更新情報生成手段3を適用することにより、新たなイン
デックスレコード更新情報72が生成される。
更新順 2番の更新処理は、変更処理である。
フィールドBに付加されたインデックスの識別子である
「インデックスB」を、インデックスレコード更新情報
のインデックス識別子61とする。
フィールドBの変更前の値である「B2」を、インデッ
クスレコード更新情報のキー値62とする。
データレコードのアドレスである「B2」を、インデッ
クスレコード更新情報のポインタ値63とする。
更新順位64を「2」とし、更新処理識別子65を「削
除」とする。
この結果、インデックスレコード更新情報73が生成さ
れる。
次に、フィールドBに付加されたインデックスの識別子
である「インデックスB」を、インデックスレコード更
新情報のインデックス識別子61とする。
フィールドBの変更後の値である「B5」を、インデッ
クスレコード更新情報のキー[62とTる。
データレコードのアドレスである「B2」を、インデッ
クスレコード更新情報のポインタ値63とする。
更新順位64を「2」とし、更新処理識別子65を「追
加」とする。
この結果、インデックスレコード更新情報74が生成さ
れる。
インデックスDについても同様のインデックスレコード
更新情報生成手段3を適用することにより、新たなイン
デックスレコード更新情報75.76が生成される。
更新順 3番の更新処理は、追加処理である。
フィールドBに付加されたインデックスの識別子である
「インデックスB」を、インデックスレコード更新情報
のインデックス識別子61とする。
追加するデータレコードのフィールドBの値である「B
4」を、インデックスレコード更新情報のキー値62と
する。
データレコードのアドレスである「B4」を、インデッ
クスレコード更新情報のポインタ値63とする。
更新順位64を「3」々し、更新処理識別子65を「追
加」とする。
この結果インデックスレコード更新情報77が生成され
る。
インデックスDについても同様のインデックスレ;−ド
更新情報生成手段3を適用することにより、新たなイン
デックスレコード更新情報78が生成される。
第2に、インデックスレコード更新情報のソートについ
て記述する。
インデックスレコード更新情報生成手段3により生成さ
れたインデックスレコード更新情報記憶手段5上のソー
トレコード群に対して、ソート手段4ではインデックス
識別子61を第1キーとし、キー値62を第2キーとし
、更新順位64を第3キーとして並び換える。
並び換えの終了後の状態が、第8図(a)である。
第3に、インデックスファイルの更新について記述する
。
ソート手段4によって並び換えられたインデツクスレコ
ード更新情報記憶手段5上のソートレコード群を、イン
デックスレコード読込み手段6により順次読込み、イン
デックス更新手段7によりてインデックスファイル8上
のインデックスを更新する。
インデックス更新手段7は、インデックス識別子61が
同一の値である間、同一のインデックスファイル8上に
存在するインデックスレコードを更新処理識別子65に
従って更新する。
同一のインデックスファイル内では、インデックスレコ
ード更新情報上のキー値が変化した時点で、新しいキー
値を現在処理中のブロックで処理できるか否かが判断さ
れる。
現在処理中の最下位ブロックの最大キー値よりもインデ
ックスレコード更新情報上の新しいキー値が小さい場合
には、現在処理中のブロックで処理することが可能であ
る。
処理が不可能な場合には、現在処理中のブロックを曹込
んだ後、上位のブロックからインデックスファイルをサ
ーチすることにより新しい処理ブロックを決定する。
第8図(b)は更新前のインデックスBを示し、第8図
<c)は前記第1の処理の記述から第3の処理の記述に
よる手続きに従って更新された更新後のインデックスB
を示している。
(発明の効果) 本発明はフィールドに対応して、データレコードの更新
に伴うインデックスの更新処理をインデックス識別子と
、更新方式識別子と、更新順位識別子とを付加したソー
トレコードの作成にII換えることによって、インデッ
クスの一括更新時にはインデックス更新情報がキー値順
にソートされていることから、読込みブロックの数およ
び書込みブロック数を削減することが可能である。
本発明の効果は数式によれば、次のように要約される。
インデックスを最上位ブロックから最下位ブロックまで
サーチする際のブロック読込み要求数と、最下位ブロッ
クを書込む際のブロック書込み要求数の和をTとする。
従来の方式では、1インデツクスレコードを更新すると
必ずT回だけのブロック読込み要求と書込み要求とが発
生するので、更新されたすべてのインデックスレコード
件数をNuとすれば、全体でTXNuの読込み/書込み
ブロック数が得られる。
本発明の方式によれば、Tはたかだか最下位インデック
スブロックの個数回だけ発生するだけであるので、読込
みブロックの数と、書込みブロック数との和は、1ブロ
ツクに格納されるインデックスレコード:数をfとし、
インデックスレコードの全件数をNとして。
+ たかだか Tx(N/f)  である。ここで、十 〔〕 は、切上げを表わす。
例えば、インデックスレコードの全件数を100万件と
し、1ブロツクに格納されるインデックスレコードの数
を100とし、全体の1割にあたる10万件のインデッ
クスレコードが更新されたものと仮定すれば、読込みブ
ロックの数および書込みブロック数の和の比率は、従来
の方式と本発明の方式とで + Nu:(N/f)  = 100000  :  10
000=10:1 となる。
【図面の簡単な説明】
第1図は、本発明によるインデックス一括更新方式の一
実施例を示すブロック構成図である。 第2図は、第1図に示す実施例におけるデータレコード
形式を示す説明図である。 第3図は、更新前のデータレコード形式を示す説明図で
ある。 第4図は、更新後のデータレコード形式を示す説明図で
ある。 第5図は、デ・−タフアイルに加えられた更新を示す説
明図である。 第6図は、ソートレコード形式を示す説明図である。 第7図は、第1図に示す実施例におけるソートレコード
群を示す説明図である。 第8図(a)は、並べ換え後のソートレコード群を示す
説明図であり、第8図(b)は更新前のインデックスB
を示す説明図であり、第8図(C)は更新後のインデッ
クスBを示す説明図である。 第9図は、インデックス構造の例を示す説明図である。 1・・・データファイル 2・・・データレコード更新処理手段 3・・・インデックスレコード更新情報生成手段4・・
・ソート手段 5・・・ンートレコード記憶手段 6・・・インデックスレコード更新情報読込み手段 7・・・インデックス更新手段 8・・・インデックスファイル 10〜13・・・フィールド 61・・・インデックス識別子 62・・・キー値      63・・・ポインタ値6
4・・・更新順位 65・・・更新処理識別子

Claims (1)

    【特許請求の範囲】
  1. 1個あるいは、複数個のインデックスをもつデータファ
    イル上のデータレコードを更新するためのデータレコー
    ド更新処理手段と、前記データレコード更新処理手段に
    よって更新された少なくとも複数データレコードに対す
    る1個あるいは複数個のインデックスを更新するために
    、前記更新されたデータレコードの更新されたフィール
    ド値をキー値とし、前記更新されたデータレコードのデ
    ータファイル上のアドレスをポインタ値としたインデッ
    クスレコードに対して、データレコードの各フィールド
    に対応するインデックス識別子と、更新されたデータレ
    コードの更新順位と、インデックスレコードの更新方式
    識別子とを付加したインデックスレコード更新情報を生
    成するためのインデックスレコード更新情報生成手段と
    、前記インデックスレコード更新手段により生成された
    インデックスレコード更新情報をソートレコードとして
    記憶するためのソートレコード記憶手段と、前記ソート
    レコード記憶手段に格納されているソートレコードに対
    して前記インデックスレコード更新情報生成手段によっ
    て付加されたインデックス識別子を第1のキーとし、イ
    ンデックスレコードのキー値を第2のキーとし、前記イ
    ンデックスレコード更新情報生成手段によって付加され
    、更新されたデータレコードの更新順位を第3のキーと
    して並換えるためのソート手段と、前記ソートレコード
    記憶手段から前記ソート手段によって並換えたソートレ
    コードを読込み、インデックスレコード更新情報を取込
    むためのインデックスレコード更新情報読込み手段と、
    前記インデックスレコード更新情報読込み手段によって
    読込まれたインデックスレコード更新情報をもとにイン
    デックス識別子で示されるインデックスファイルを一括
    して更新するためのインデックス更新手段とを具備して
    構成したことを特徴とするインデックス一括更新方式。
JP61132154A 1986-06-06 1986-06-06 インデツクス一括更新方式 Pending JPS62287350A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61132154A JPS62287350A (ja) 1986-06-06 1986-06-06 インデツクス一括更新方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61132154A JPS62287350A (ja) 1986-06-06 1986-06-06 インデツクス一括更新方式

Publications (1)

Publication Number Publication Date
JPS62287350A true JPS62287350A (ja) 1987-12-14

Family

ID=15074621

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61132154A Pending JPS62287350A (ja) 1986-06-06 1986-06-06 インデツクス一括更新方式

Country Status (1)

Country Link
JP (1) JPS62287350A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02190971A (ja) * 1989-01-20 1990-07-26 Nec Corp 索引更新方式
JPH08147328A (ja) * 1994-11-15 1996-06-07 Hitachi Ltd 文書検索方法及び装置
JPH08235217A (ja) * 1995-02-24 1996-09-13 Pioneer Electron Corp データ検索出力装置およびカラオケ装置
JPH1139326A (ja) * 1997-07-22 1999-02-12 Hitachi Ltd 高速文書登録検索方法および装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02190971A (ja) * 1989-01-20 1990-07-26 Nec Corp 索引更新方式
JPH08147328A (ja) * 1994-11-15 1996-06-07 Hitachi Ltd 文書検索方法及び装置
JPH08235217A (ja) * 1995-02-24 1996-09-13 Pioneer Electron Corp データ検索出力装置およびカラオケ装置
JPH1139326A (ja) * 1997-07-22 1999-02-12 Hitachi Ltd 高速文書登録検索方法および装置

Similar Documents

Publication Publication Date Title
CA1214284A (en) Sparse array bit map used in data bases
EP2069979B1 (en) Dynamic fragment mapping
CN101751406B (zh) 一种实现基于列存储的关系型数据库的方法及装置
JP3318834B2 (ja) データファイルシステム及びデータ検索方法
US20140025635A1 (en) Method and apparatus for fault-tolerant memory management
JPH02217940A (ja) データベース・アクセス・システム
EP3767486A1 (en) Multi-record index structure for key-value stores
JPS63273961A (ja) 複数バ−ジヨン管理システム
RU2389066C2 (ru) Многомерная база данных и способ управления многомерной базой данных
JPS6172333A (ja) 複数ファイルのマージ方法
EP0170442A2 (en) A method for searching sparse databases using an associative technique
CN113297205B (zh) 索引构建和数据访问处理方法、装置、设备以及介质
JP3980326B2 (ja) データ管理方法およびコンピュータ読み取り可能な記録媒体
JP2540821B2 (ja) デ―タベ―ス検索システム
JP3145727B2 (ja) データの検索装置
JP2507399B2 (ja) デ―タベ―ス装置
JPH02222044A (ja) データ処理装置
JPS61160133A (ja) デ−タの入力管理方法
JP3456481B2 (ja) 情報処理装置
CN120872688A (zh) 数据备份方法、装置、电子设备和存储介质
JPH03282966A (ja) ハッシュエントリ領域管理方法
JPS63276639A (ja) レコ−ド追加処理方法
CN121456158A (zh) 一种图数据的处理系统、方法、装置、存储介质及设备
JPH04199338A (ja) データベース管理システム
CN116450579A (zh) 一种索引结构、文件备份方法、文件恢复方法以及系统