JPH0916607A - データベース管理システムにおけるインデクス管理方法 - Google Patents
データベース管理システムにおけるインデクス管理方法Info
- Publication number
- JPH0916607A JPH0916607A JP7159116A JP15911695A JPH0916607A JP H0916607 A JPH0916607 A JP H0916607A JP 7159116 A JP7159116 A JP 7159116A JP 15911695 A JP15911695 A JP 15911695A JP H0916607 A JPH0916607 A JP H0916607A
- Authority
- JP
- Japan
- Prior art keywords
- index
- data
- key value
- record
- database
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2272—Management thereof
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99932—Access augmentation or optimizing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【目的】インデクスを介してデータベース中のデータに
アクセスするよう管理するデータベース管理システムに
おいて、インデクスキー値の重複やインデクスキー値の
増大によって生じるアクセス性能の低下及びインデクス
の格納効率の低下を防止する。 【構成】アプリケーションプログラム5からデータレコ
ードの追加要求があったとき、データベース管理部6は
データ部3へこれを追加し、インデクス部2中のインデ
クスレコードの追加・更新を行う。インデクス管理部8
はこの処理に介入し、除外キー管理テーブル7に設定さ
れる重複数の上限値に達したインデクスキー値を含むイ
ンデクスレコードをインデクス部2から除外する。また
インデクス管理部8はインデクスの再作成の際にインデ
クスレコードに含まれるアクセス時刻を参照し、一定時
間を経過してアクセスされないインデクスレコードを除
外する。
アクセスするよう管理するデータベース管理システムに
おいて、インデクスキー値の重複やインデクスキー値の
増大によって生じるアクセス性能の低下及びインデクス
の格納効率の低下を防止する。 【構成】アプリケーションプログラム5からデータレコ
ードの追加要求があったとき、データベース管理部6は
データ部3へこれを追加し、インデクス部2中のインデ
クスレコードの追加・更新を行う。インデクス管理部8
はこの処理に介入し、除外キー管理テーブル7に設定さ
れる重複数の上限値に達したインデクスキー値を含むイ
ンデクスレコードをインデクス部2から除外する。また
インデクス管理部8はインデクスの再作成の際にインデ
クスレコードに含まれるアクセス時刻を参照し、一定時
間を経過してアクセスされないインデクスレコードを除
外する。
Description
【0001】
【産業上の利用分野】本発明は、データベース管理シス
テムに係わり、特にインデクスを介してデータにアクセ
スする手段が提供されるデータベース管理システムのイ
ンデクス管理方法に関する。
テムに係わり、特にインデクスを介してデータにアクセ
スする手段が提供されるデータベース管理システムのイ
ンデクス管理方法に関する。
【0002】
【従来の技術】データベース中に格納されるデータレコ
ードにアクセスする時間を短縮するためにインデクスが
設けられ、データベース管理システムはこのインデクス
を介してデータベース中のデータレコードにアクセスす
る手段を提供する。インデクスはインデクスキー値とデ
ータレコードの格納場所との対応を登録するものであ
り、データベース中の一部領域又はデータベースとは独
立したインデクスファイルとして設けられる。
ードにアクセスする時間を短縮するためにインデクスが
設けられ、データベース管理システムはこのインデクス
を介してデータベース中のデータレコードにアクセスす
る手段を提供する。インデクスはインデクスキー値とデ
ータレコードの格納場所との対応を登録するものであ
り、データベース中の一部領域又はデータベースとは独
立したインデクスファイルとして設けられる。
【0003】しかしデータレコードの追加が多いデータ
ベースの場合、インデクスファイル中のインデクスレコ
ードの数も増大し、データベースのアクセス性能からみ
てインデクスの存在が却って弊害となるようなケースも
生じている。
ベースの場合、インデクスファイル中のインデクスレコ
ードの数も増大し、データベースのアクセス性能からみ
てインデクスの存在が却って弊害となるようなケースも
生じている。
【0004】
【発明が解決しようとする課題】同一のインデクスキー
値に対して複数のデータレコードが対応するいわゆるキ
ー値の重複が生じる場合がある。キー値の重複する数が
多い場合、このキー値を指定してデータベースを検索す
ると、検索結果として得られるデータ数が多くなり、デ
ータの十分な絞り込みができない上に、インデクスレコ
ードを経由してデータレコードにアクセスするときのC
PU時間及び入出力動作の回数が増加し、データベース
のアクセス性能が劣化する。またインデクス中に重複す
るキー値が多いと、このインデクスを介するデータレコ
ードの追加や削除が発生したとき、このような重複する
キー値についてのインデクスレコード更新時の入出力動
作の回数やジャーナル出力量が多くなり、データベース
のアクセス性能が低下する。
値に対して複数のデータレコードが対応するいわゆるキ
ー値の重複が生じる場合がある。キー値の重複する数が
多い場合、このキー値を指定してデータベースを検索す
ると、検索結果として得られるデータ数が多くなり、デ
ータの十分な絞り込みができない上に、インデクスレコ
ードを経由してデータレコードにアクセスするときのC
PU時間及び入出力動作の回数が増加し、データベース
のアクセス性能が劣化する。またインデクス中に重複す
るキー値が多いと、このインデクスを介するデータレコ
ードの追加や削除が発生したとき、このような重複する
キー値についてのインデクスレコード更新時の入出力動
作の回数やジャーナル出力量が多くなり、データベース
のアクセス性能が低下する。
【0005】またデータレコードの追加が多いデータベ
ースの場合、データが増加していくに従って一般に古く
なったデータに対するアクセス頻度が低下していくにも
係わらず当該データのインデクスキー値を保持し続け、
インデクスの格納効率が次第に低下していくとともにイ
ンデクスを介するデータベースのアクセス性能が劣化す
るという問題があった。
ースの場合、データが増加していくに従って一般に古く
なったデータに対するアクセス頻度が低下していくにも
係わらず当該データのインデクスキー値を保持し続け、
インデクスの格納効率が次第に低下していくとともにイ
ンデクスを介するデータベースのアクセス性能が劣化す
るという問題があった。
【0006】本発明の目的は、インデクスファイルから
弊害となるようなキー値を除外してデータベースのアク
セス性能を向上させることにある。
弊害となるようなキー値を除外してデータベースのアク
セス性能を向上させることにある。
【0007】本発明の他の目的は、インデクスファイル
から弊害となるようなキー値を除外してインデクスの格
納効率を向上させることにある。
から弊害となるようなキー値を除外してインデクスの格
納効率を向上させることにある。
【0008】
【課題を解決するための手段】本発明は、各インデクス
に含まれるインデクスキー値の重複数を計数し、この重
複数が所定の値に達したときこのインデクスキー値をデ
ータベースのインデクス部又はインデクスファイルから
削除するインデクス管理方法を特徴とする。
に含まれるインデクスキー値の重複数を計数し、この重
複数が所定の値に達したときこのインデクスキー値をデ
ータベースのインデクス部又はインデクスファイルから
削除するインデクス管理方法を特徴とする。
【0009】また本発明は、各インデクスキー値にアク
セスされた時刻をアクセスのたびに更新し、最後にアク
セスされた時刻から所定時間経過したインデクスキー値
をデータベースのインデクス部又はインデクスファイル
から削除するインデクス管理方法を特徴とする。
セスされた時刻をアクセスのたびに更新し、最後にアク
セスされた時刻から所定時間経過したインデクスキー値
をデータベースのインデクス部又はインデクスファイル
から削除するインデクス管理方法を特徴とする。
【0010】
【作用】重複数の多いインデクスキー値又は最後にアク
セスされた時刻から一定時間経過したインデクスキー値
をインデクス部又はインデクスファイルから削除するこ
とによってインデクスには重複数の少ないインデクスキ
ー値又はアクセス頻度が高いインデクスキー値のみが保
持され、データベースのアクセス性能及びインデクスの
格納効率の問題を解決する。
セスされた時刻から一定時間経過したインデクスキー値
をインデクス部又はインデクスファイルから削除するこ
とによってインデクスには重複数の少ないインデクスキ
ー値又はアクセス頻度が高いインデクスキー値のみが保
持され、データベースのアクセス性能及びインデクスの
格納効率の問題を解決する。
【0011】
【実施例】以下、本発明の一実施例について図面を用い
て説明する。
て説明する。
【0012】図1は、本実施例のデータベース管理シス
テムの構成例を示す図である。1はデータベースであ
り、インデクス部2とデータ部3とから構成される。イ
ンデクス部2はデータ部3をアクセスするためのインデ
クステーブルを格納する領域である。インデクス部2は
一般に複数のインデクスを格納する。データ部3はデー
タレコードを格納する領域である。4はトランザクショ
ンレコードを入力したり、指令を入力する入力装置であ
る。5は入力装置4から入力されるデータに基づいてデ
ータベース1上のデータレコードにアクセスしたり、デ
ータベース1に新しいレコードを追加する要求を発行す
るアプリケーションプログラムである。6はアプリケー
ションプログラム5からデータベース1に関する要求を
受けてインデクス部2を介してデータ部3上のデータレ
コードにアクセスしたり、インデクス部2及びデータ部
3にそれぞれ新しいエントリ及びデータレコードを追加
するデータベース管理部である。7はインデクス部2か
ら除外するインデクスキーを管理するために設けられる
除外キー管理テーブルである。8はデータベース1への
データレコードの追加の際にデータベース管理部6から
制御を渡され、除外キー管理テーブル7を参照して重複
数の上限に達したキー値をインデクス部2から削除する
インデクス管理部である。またインデクス管理部8はイ
ンデクス部2の再作成の際に除外キー管理テーブル7を
参照してアクセス頻度の少ないキー値をインデクス部2
から削除する。9はアプリケーションプログラム5、デ
ータベース管理部6及びインデクス管理部8を格納する
処理装置である。
テムの構成例を示す図である。1はデータベースであ
り、インデクス部2とデータ部3とから構成される。イ
ンデクス部2はデータ部3をアクセスするためのインデ
クステーブルを格納する領域である。インデクス部2は
一般に複数のインデクスを格納する。データ部3はデー
タレコードを格納する領域である。4はトランザクショ
ンレコードを入力したり、指令を入力する入力装置であ
る。5は入力装置4から入力されるデータに基づいてデ
ータベース1上のデータレコードにアクセスしたり、デ
ータベース1に新しいレコードを追加する要求を発行す
るアプリケーションプログラムである。6はアプリケー
ションプログラム5からデータベース1に関する要求を
受けてインデクス部2を介してデータ部3上のデータレ
コードにアクセスしたり、インデクス部2及びデータ部
3にそれぞれ新しいエントリ及びデータレコードを追加
するデータベース管理部である。7はインデクス部2か
ら除外するインデクスキーを管理するために設けられる
除外キー管理テーブルである。8はデータベース1への
データレコードの追加の際にデータベース管理部6から
制御を渡され、除外キー管理テーブル7を参照して重複
数の上限に達したキー値をインデクス部2から削除する
インデクス管理部である。またインデクス管理部8はイ
ンデクス部2の再作成の際に除外キー管理テーブル7を
参照してアクセス頻度の少ないキー値をインデクス部2
から削除する。9はアプリケーションプログラム5、デ
ータベース管理部6及びインデクス管理部8を格納する
処理装置である。
【0013】アプリケーションプログラム5、データベ
ース管理部6及びインデクス管理部8は情報処理装置の
記憶装置に格納されるプログラムを実行することによっ
て実現される。データベース1及び除外キー管理テーブ
ル7はこの情報処理装置の記憶装置に格納されるデータ
ベース及びテーブルである。入力装置4はこの情報処理
装置に接続される周辺装置又は端末装置である。
ース管理部6及びインデクス管理部8は情報処理装置の
記憶装置に格納されるプログラムを実行することによっ
て実現される。データベース1及び除外キー管理テーブ
ル7はこの情報処理装置の記憶装置に格納されるデータ
ベース及びテーブルである。入力装置4はこの情報処理
装置に接続される周辺装置又は端末装置である。
【0014】図2は、インデクス部2に格納される各イ
ンデクスの構成例を示す図である。インデクスのキー値
はルートページに格納されるキー値から始まり、階層構
造に配列されたキー値を順に辿って最下層のリーフペー
ジに格納されるキー値に到達するように構成される。リ
ーフページに格納されるインデクスレコードは、キー値
21、重複数22、アクセス時刻23及びポインタ24
から構成される。キー値21はインデクスキーの値、重
複数22は同一のキー値21がいくつ重複しているかを
示す数値である。アクセス時刻23は当該キー値21に
最後にアクセスした時刻(年,月,日,時,分,秒)を
記録するものである。ポインタ24は当該キー値に対応
するデータレコードが格納されるデータ部3中の格納ア
ドレスを示す。ポインタ24は重複数22の数だけ存在
し、それぞれデータレコードの格納アドレスを示す。
ンデクスの構成例を示す図である。インデクスのキー値
はルートページに格納されるキー値から始まり、階層構
造に配列されたキー値を順に辿って最下層のリーフペー
ジに格納されるキー値に到達するように構成される。リ
ーフページに格納されるインデクスレコードは、キー値
21、重複数22、アクセス時刻23及びポインタ24
から構成される。キー値21はインデクスキーの値、重
複数22は同一のキー値21がいくつ重複しているかを
示す数値である。アクセス時刻23は当該キー値21に
最後にアクセスした時刻(年,月,日,時,分,秒)を
記録するものである。ポインタ24は当該キー値に対応
するデータレコードが格納されるデータ部3中の格納ア
ドレスを示す。ポインタ24は重複数22の数だけ存在
し、それぞれデータレコードの格納アドレスを示す。
【0015】図3は、除外キー管理テーブル7のデータ
形式の例を示す図である。インデクス名71はデータベ
ース1に含まれる各インデクス体系の名称である。キー
値上限重複数72はキー値21を除外するときの重複数
を示す。重複数22がキー値上限重複数72に達したと
きキー値21が除外される。キー値保持期間73はアク
セスされないキー値21をインデクス部2に保持する期
間を示す。除外キー値リスト74はインデクス部2から
除外されたキー値21がすべて記録される。
形式の例を示す図である。インデクス名71はデータベ
ース1に含まれる各インデクス体系の名称である。キー
値上限重複数72はキー値21を除外するときの重複数
を示す。重複数22がキー値上限重複数72に達したと
きキー値21が除外される。キー値保持期間73はアク
セスされないキー値21をインデクス部2に保持する期
間を示す。除外キー値リスト74はインデクス部2から
除外されたキー値21がすべて記録される。
【0016】アプリケーションプログラム5からデータ
部3に格納されるデータレコードについてインデクス指
定による参照又は更新要求を受けたとき、データベース
管理部6は与えられたキー値を基にしてインデクス部2
にアクセスし、該当するキー値21に対応するアクセス
時刻23をアクセスされた現在時刻によって更新してか
らポインタ24で指定されるデータ部3中のデータレコ
ードを取り出してアプリケーションプログラム5に渡
す。
部3に格納されるデータレコードについてインデクス指
定による参照又は更新要求を受けたとき、データベース
管理部6は与えられたキー値を基にしてインデクス部2
にアクセスし、該当するキー値21に対応するアクセス
時刻23をアクセスされた現在時刻によって更新してか
らポインタ24で指定されるデータ部3中のデータレコ
ードを取り出してアプリケーションプログラム5に渡
す。
【0017】図4は、データベース1にデータレコード
を追加する場合のデータベース管理部6及びインデクス
管理部8の処理の流れを示すフローチャートである。ス
テップ61〜68はデータベース管理部6の処理を示
し、ステップ81〜88はインデクス管理部8の処理の
流れを示す。入力装置4から追加すべきトランザクショ
ンレコードが入力されたとき、アプリケーションプログ
ラム5はこれを加工し、データベース管理部6に対しデ
ータベース1上にデータレコードを追加するよう要求を
発行する。データベース管理部6はこの追加データを受
け取る(ステップ61)。このデータにインデクスが定
義されているとき(ステップ62YES)、インデクス
レコードを読むためにインデクス部2にアクセスする
(ステップ63)。その結果はインデクス管理部8に渡
されるが、指定されたキー値がインデクス部2に存在す
る場合と存在しない場合とに分かれる。キー値が存在し
ないとき、インデクス管理部8は指定されたキー値が指
定されたインデクスについて除外キー管理テーブル7の
除外キー値リスト74に登録されているかどうかを調べ
る(ステップ81)。除外値として登録されてなく(ス
テップ81NO)、既存のキー値がないとき(ステップ
82NO)、キー値21を指定されたキー値とし、重複
数22を1に設定し(ステップ83)、アクセス時刻2
3に現在時刻を設定し(ステップ84)、ポインタ24
の領域を設定し(ステップ85)、データベース管理部
6に制御を渡す。データベース管理部6はインデクス部
2中にインデクスレコードの領域を確保し(ステップ6
4)、与えられたデータレコードをデータ部3に追加し
(ステップ65)、その格納アドレスをポインタ24に
設定したインデクスレコードをインデクス部2に格納す
る(ステップ66)。キー値がインデクス部2に存在す
るとき(ステップ81NO,ステップ82YES)、そ
の重複数22が当該インデクスについて除外キー管理テ
ーブル7に設定されたキー値上限重複数72に達してい
なければ(ステップ86NO)、インデクス管理部8は
重複数22の内容に1を加え(ステップ87)、ステッ
プ84及びステップ85の処理を行う。これによってイ
ンデクスレコードの長さはポインタ24の長さだけ増加
するので、データベース管理部6はインデクス部2中に
更新すべきインデクスレコードを格納する領域を確保し
(ステップ64)、データレコードをデータ部3に追加
し(ステップ65)、その格納アドレスをポインタ24
に追加したインデクスレコードをインデクス部2に格納
する(ステップ66)。必要に応じて元のインデクスレ
コードを削除し、更新後のインデクスレコードを追加す
る。重複数22がキー値上限重複数72に達していれば
(ステップ86YES)、インデクス管理部8は除外キ
ー値リスト74に指定されたキー値を追加して(ステッ
プ88)、データベース管理部6に制御を渡す。データ
ベース管理部6はインデクス部2から当該インデクスレ
コードを削除し(ステップ67)、データ部3の最後尾
にデータレコードを追加する(ステップ68)。インデ
クス定義がない場合(ステップ62NO)及びキー値が
除外されていてインデクス部2に存在しない場合(ステ
ップ81YES)には、直ちにデータベース管理部6に
制御が渡り、データベース管理部6はデータ部3の最後
尾にデータレコードを追加する(ステップ68)。
を追加する場合のデータベース管理部6及びインデクス
管理部8の処理の流れを示すフローチャートである。ス
テップ61〜68はデータベース管理部6の処理を示
し、ステップ81〜88はインデクス管理部8の処理の
流れを示す。入力装置4から追加すべきトランザクショ
ンレコードが入力されたとき、アプリケーションプログ
ラム5はこれを加工し、データベース管理部6に対しデ
ータベース1上にデータレコードを追加するよう要求を
発行する。データベース管理部6はこの追加データを受
け取る(ステップ61)。このデータにインデクスが定
義されているとき(ステップ62YES)、インデクス
レコードを読むためにインデクス部2にアクセスする
(ステップ63)。その結果はインデクス管理部8に渡
されるが、指定されたキー値がインデクス部2に存在す
る場合と存在しない場合とに分かれる。キー値が存在し
ないとき、インデクス管理部8は指定されたキー値が指
定されたインデクスについて除外キー管理テーブル7の
除外キー値リスト74に登録されているかどうかを調べ
る(ステップ81)。除外値として登録されてなく(ス
テップ81NO)、既存のキー値がないとき(ステップ
82NO)、キー値21を指定されたキー値とし、重複
数22を1に設定し(ステップ83)、アクセス時刻2
3に現在時刻を設定し(ステップ84)、ポインタ24
の領域を設定し(ステップ85)、データベース管理部
6に制御を渡す。データベース管理部6はインデクス部
2中にインデクスレコードの領域を確保し(ステップ6
4)、与えられたデータレコードをデータ部3に追加し
(ステップ65)、その格納アドレスをポインタ24に
設定したインデクスレコードをインデクス部2に格納す
る(ステップ66)。キー値がインデクス部2に存在す
るとき(ステップ81NO,ステップ82YES)、そ
の重複数22が当該インデクスについて除外キー管理テ
ーブル7に設定されたキー値上限重複数72に達してい
なければ(ステップ86NO)、インデクス管理部8は
重複数22の内容に1を加え(ステップ87)、ステッ
プ84及びステップ85の処理を行う。これによってイ
ンデクスレコードの長さはポインタ24の長さだけ増加
するので、データベース管理部6はインデクス部2中に
更新すべきインデクスレコードを格納する領域を確保し
(ステップ64)、データレコードをデータ部3に追加
し(ステップ65)、その格納アドレスをポインタ24
に追加したインデクスレコードをインデクス部2に格納
する(ステップ66)。必要に応じて元のインデクスレ
コードを削除し、更新後のインデクスレコードを追加す
る。重複数22がキー値上限重複数72に達していれば
(ステップ86YES)、インデクス管理部8は除外キ
ー値リスト74に指定されたキー値を追加して(ステッ
プ88)、データベース管理部6に制御を渡す。データ
ベース管理部6はインデクス部2から当該インデクスレ
コードを削除し(ステップ67)、データ部3の最後尾
にデータレコードを追加する(ステップ68)。インデ
クス定義がない場合(ステップ62NO)及びキー値が
除外されていてインデクス部2に存在しない場合(ステ
ップ81YES)には、直ちにデータベース管理部6に
制御が渡り、データベース管理部6はデータ部3の最後
尾にデータレコードを追加する(ステップ68)。
【0018】図5は、インデクスの再作成(再編成)の
際にあらかじめ設定したキー値保持期間73を経過して
もアクセスされないキー値をもつインデクスレコードを
インデクス部2から削除するインデクス管理部8の処理
の流れを示すフローチャートである。インデクス管理部
8は入力装置4からの指令により、インデクス部2に格
納されるインデクスについてリーフページ中の最初のイ
ンデクスレコードを読み込み(ステップ91)、現在時
刻とアクセス時刻23との差と当該インデクスのキー値
保持期間73とを比較する(ステップ92)。キー値保
持期間73がこの差より小であれば(ステップ92N
O)、除外キー値リスト74に当該インデクスレコード
のキー値を追加し(ステップ93)、インデクス部2か
ら当該インデクスレコードを削除する(ステップ9
4)。キー値保持期間73がこの差と等しいか大であれ
ば(ステップ92YES)、当該インデクスレコードを
保存することにし、ステップ95へ行く。インデクスレ
コードの終端でなければ(ステップ95NO)、キー値
のシーケンシャルな順序の次のインデクスレコードにつ
いてステップ91〜94の処理を繰り返す。当該インデ
クスについてインデクスレコードが尽きたとき(ステッ
プ95YES)、インデクスの再作成を行う(ステップ
96)。当該インデクスの再作成が終了したとき、次の
インデクスについて上記処理を繰り返す。
際にあらかじめ設定したキー値保持期間73を経過して
もアクセスされないキー値をもつインデクスレコードを
インデクス部2から削除するインデクス管理部8の処理
の流れを示すフローチャートである。インデクス管理部
8は入力装置4からの指令により、インデクス部2に格
納されるインデクスについてリーフページ中の最初のイ
ンデクスレコードを読み込み(ステップ91)、現在時
刻とアクセス時刻23との差と当該インデクスのキー値
保持期間73とを比較する(ステップ92)。キー値保
持期間73がこの差より小であれば(ステップ92N
O)、除外キー値リスト74に当該インデクスレコード
のキー値を追加し(ステップ93)、インデクス部2か
ら当該インデクスレコードを削除する(ステップ9
4)。キー値保持期間73がこの差と等しいか大であれ
ば(ステップ92YES)、当該インデクスレコードを
保存することにし、ステップ95へ行く。インデクスレ
コードの終端でなければ(ステップ95NO)、キー値
のシーケンシャルな順序の次のインデクスレコードにつ
いてステップ91〜94の処理を繰り返す。当該インデ
クスについてインデクスレコードが尽きたとき(ステッ
プ95YES)、インデクスの再作成を行う(ステップ
96)。当該インデクスの再作成が終了したとき、次の
インデクスについて上記処理を繰り返す。
【0019】インデクス部2からそのキー値を除外され
たデータレコードは、指定したデータ項目の値について
データ部3を検索することによってアクセスされる。
たデータレコードは、指定したデータ項目の値について
データ部3を検索することによってアクセスされる。
【0020】なお上記実施例では重複数22及びアクセ
ス時刻23をインデクスレコード中に格納したが、イン
デクス部2とは独立にキー値21と重複数22及び/又
はアクセス時刻23との対応を設定するテーブルを設け
ても本発明を実施できる。インデクス管理部8はデータ
レコードの追加の際にデータベース管理部6から通知を
受け、重複数を更新したり、このテーブルに新しいキー
値21と重複数22の対応を登録することができる。ま
たデータベース管理部6又はインデクス管理部8がデー
タレコードの参照/更新/追加の際にこのテーブル中の
アクセス時刻23を更新することができる。
ス時刻23をインデクスレコード中に格納したが、イン
デクス部2とは独立にキー値21と重複数22及び/又
はアクセス時刻23との対応を設定するテーブルを設け
ても本発明を実施できる。インデクス管理部8はデータ
レコードの追加の際にデータベース管理部6から通知を
受け、重複数を更新したり、このテーブルに新しいキー
値21と重複数22の対応を登録することができる。ま
たデータベース管理部6又はインデクス管理部8がデー
タレコードの参照/更新/追加の際にこのテーブル中の
アクセス時刻23を更新することができる。
【0021】本実施例によれば、インデクス部2に格納
するキー値の重複数が所定の値を越えたとき、または一
定時間を経過してもアクセスされないキー値が生じたと
き、これらのキー値を含むインデクスレコードをインデ
クス部2から削除するので、インデクス部2の格納効率
を向上させることができる。またインデクスレコードの
総数が削減されるので、インデクスを利用するデータ部
3中のデータレコードの検索/更新/追加操作を高速化
できる。特にデータベース1の検索時には、キー値の重
複が多いとインデクス利用によってヒットするデータが
多くなり、検索対象データを十分に絞り込むことができ
ず、インデクスアクセスによる不要な入出力が発生する
といった弊害が生じることがあるが、本実施例によれば
このような弊害を改善し、データベース管理システム全
体としてのアクセス性能を向上させることができる。ま
たデータベース1の更新時には、除外されたインデクス
のキー値の更新処理が不要になるとともに、インデクス
更新時のインデクスジャーナルの出力量を低減するとい
う効果がある。
するキー値の重複数が所定の値を越えたとき、または一
定時間を経過してもアクセスされないキー値が生じたと
き、これらのキー値を含むインデクスレコードをインデ
クス部2から削除するので、インデクス部2の格納効率
を向上させることができる。またインデクスレコードの
総数が削減されるので、インデクスを利用するデータ部
3中のデータレコードの検索/更新/追加操作を高速化
できる。特にデータベース1の検索時には、キー値の重
複が多いとインデクス利用によってヒットするデータが
多くなり、検索対象データを十分に絞り込むことができ
ず、インデクスアクセスによる不要な入出力が発生する
といった弊害が生じることがあるが、本実施例によれば
このような弊害を改善し、データベース管理システム全
体としてのアクセス性能を向上させることができる。ま
たデータベース1の更新時には、除外されたインデクス
のキー値の更新処理が不要になるとともに、インデクス
更新時のインデクスジャーナルの出力量を低減するとい
う効果がある。
【0022】キー値の重複数によるキー値の除外又はア
クセス時間によるキー値の除外のいずれを採用しても上
記の効果を達成することができる。特に前者の方法はデ
ータベース検索時の弊害を改善する効果が大きい。さら
に両者の方法を併用すれば、重複数によってキー値を除
外し、重複数に達しないものは古いキー値を除外すると
いう2段階のふるいにかけることができ、相乗的な効果
を得ることができる。
クセス時間によるキー値の除外のいずれを採用しても上
記の効果を達成することができる。特に前者の方法はデ
ータベース検索時の弊害を改善する効果が大きい。さら
に両者の方法を併用すれば、重複数によってキー値を除
外し、重複数に達しないものは古いキー値を除外すると
いう2段階のふるいにかけることができ、相乗的な効果
を得ることができる。
【0023】なお他の実施例として、インデクス管理部
8は各インデクス中に占める重複数22が所定数以上の
キー値の数が全体のキー値の数に占める比率を計算し、
この比率が一定値を越えたとき、前者のキー値をもつイ
ンデクスレコードをすべてインデクス部2から削除する
ようにしてもよい。この方法によっても上述した効果を
達成することができる。
8は各インデクス中に占める重複数22が所定数以上の
キー値の数が全体のキー値の数に占める比率を計算し、
この比率が一定値を越えたとき、前者のキー値をもつイ
ンデクスレコードをすべてインデクス部2から削除する
ようにしてもよい。この方法によっても上述した効果を
達成することができる。
【0024】
【発明の効果】本発明によれば、重複数の多いインデク
スキー値又はアクセス頻度の低いインデクスキー値がイ
ンデクスから除外されるので、データベースのアクセス
性能を向上させ、インデクスの格納効率を向上させるこ
とができる。
スキー値又はアクセス頻度の低いインデクスキー値がイ
ンデクスから除外されるので、データベースのアクセス
性能を向上させ、インデクスの格納効率を向上させるこ
とができる。
【図1】実施例のデータベース管理システムの構成例を
示す図である。
示す図である。
【図2】実施例のインデクス部2に格納される各インデ
クスの構成例を示す図である。
クスの構成例を示す図である。
【図3】実施例の除外キー管理テーブル7のデータ形式
を示す図である。
を示す図である。
【図4】実施例のデータベース管理部6及びインデクス
管理部8の処理の流れを示すフローチャートである。
管理部8の処理の流れを示すフローチャートである。
【図5】実施例のインデクスの再作成の際に行うキー値
除外の処理の流れを示すフローチャートである。
除外の処理の流れを示すフローチャートである。
2・・・インデクス部、7・・・除外キー管理テーブ
ル、8・・・インデクス管理部、21・・・キー値、2
2・・・重複数、23・・・アクセス時刻、72・・・
キー値上限重複数、73・・・キー値保持期間、74・
・・除外キー値リスト
ル、8・・・インデクス管理部、21・・・キー値、2
2・・・重複数、23・・・アクセス時刻、72・・・
キー値上限重複数、73・・・キー値保持期間、74・
・・除外キー値リスト
Claims (3)
- 【請求項1】インデクス部とデータ部とから構成され、
該インデクス部に格納されるインデクスキー値とデータ
の格納場所との対応を辿って該データ部に格納されるデ
ータにアクセスするよう構成され、同一のインデクスキ
ー値に対して複数のデータが対応するようなインデクス
キー値を含むデータベースのインデクス管理方法におい
て、 同一のインデクスキー値に対応するデータの数を重複数
として計数し、該重複数が所定の値に達したとき該イン
デクスキー値と対応するデータ格納場所とを該インデク
ス部から削除することを特徴とするデータベース管理シ
ステムにおけるインデクス管理方法。 - 【請求項2】インデクス部とデータ部とから構成され、
該インデクス部に格納されるインデクスキー値とデータ
の格納場所との対応を辿って該データ部に格納されるデ
ータにアクセスするよう構成されるデータベースのイン
デクス管理方法において、 該インデクス部の各インデクスキー値について最後にア
クセスされた時刻をアクセス時刻として登録し、該アク
セス時刻から所定時間経過したインデクスキー値と対応
するデータ格納場所とを該インデクス部から削除するこ
とを特徴とするデータベース管理システムにおけるイン
デクス管理方法。 - 【請求項3】インデクス部とデータ部とから構成され、
該インデクス部に格納されるインデクスキー値とデータ
の格納場所との対応を辿って該データ部に格納されるデ
ータにアクセスするよう構成され、同一のインデクスキ
ー値に対して複数のデータが対応するようなインデクス
キー値を含むデータベースのインデクス管理方法におい
て、 同一のインデクスキー値に対応するデータの数を重複数
として計数し、該重複数が所定の値に達したとき該イン
デクスキー値と対応するデータ格納場所とを該インデク
ス部から削除し、 該インデクス部の各インデクスキー値について最後にア
クセスされた時刻をアクセス時刻として登録し、該アク
セス時刻から所定時間経過したインデクスキー値と対応
するデータ格納場所とを該インデクス部から削除するこ
とを特徴とするデータベース管理システムにおけるイン
デクス管理方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7159116A JPH0916607A (ja) | 1995-06-26 | 1995-06-26 | データベース管理システムにおけるインデクス管理方法 |
EP96110081A EP0751468A3 (en) | 1995-06-26 | 1996-06-21 | Index managing method in database managing system |
US08/668,684 US5806058A (en) | 1995-06-26 | 1996-06-24 | Index managing method in database managing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7159116A JPH0916607A (ja) | 1995-06-26 | 1995-06-26 | データベース管理システムにおけるインデクス管理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0916607A true JPH0916607A (ja) | 1997-01-17 |
Family
ID=15686596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7159116A Pending JPH0916607A (ja) | 1995-06-26 | 1995-06-26 | データベース管理システムにおけるインデクス管理方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US5806058A (ja) |
EP (1) | EP0751468A3 (ja) |
JP (1) | JPH0916607A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012203865A (ja) * | 2011-03-28 | 2012-10-22 | Digital Arts Inc | 検索装置、検索システム、方法およびプログラム |
US9122407B2 (en) | 2012-08-22 | 2015-09-01 | Fujitsu Limited | Deduplication device and deduplication method |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3836928B2 (ja) * | 1997-02-26 | 2006-10-25 | 株式会社日立製作所 | データベース処理方法 |
US6189016B1 (en) * | 1998-06-12 | 2001-02-13 | Microsoft Corporation | Journaling ordered changes in a storage volume |
US7035880B1 (en) | 1999-07-14 | 2006-04-25 | Commvault Systems, Inc. | Modular backup and retrieval system used in conjunction with a storage area network |
US7389311B1 (en) | 1999-07-15 | 2008-06-17 | Commvault Systems, Inc. | Modular backup and retrieval system |
US7395282B1 (en) | 1999-07-15 | 2008-07-01 | Commvault Systems, Inc. | Hierarchical backup and retrieval system |
EP1252580A1 (en) | 1999-10-29 | 2002-10-30 | Computer Science Corporation | Business transaction processing systems and methods |
JP2001142773A (ja) * | 1999-11-17 | 2001-05-25 | Fujitsu Ltd | 交換システムのデータ管理装置及び記録媒体 |
US6772141B1 (en) | 1999-12-14 | 2004-08-03 | Novell, Inc. | Method and apparatus for organizing and using indexes utilizing a search decision table |
US6658436B2 (en) | 2000-01-31 | 2003-12-02 | Commvault Systems, Inc. | Logical view and access to data managed by a modular data and storage management system |
US7155481B2 (en) | 2000-01-31 | 2006-12-26 | Commvault Systems, Inc. | Email attachment management in a computer system |
US7003641B2 (en) | 2000-01-31 | 2006-02-21 | Commvault Systems, Inc. | Logical view with granular access to exchange data managed by a modular data and storage management system |
CA2306968C (en) * | 2000-04-28 | 2004-11-30 | Ibm Canada Limited-Ibm Canada Limitee | Efficient index-data fetch via callback for a table data |
KR100414052B1 (ko) * | 2000-10-14 | 2004-01-07 | 엘지전자 주식회사 | 주기억장치 데이터베이스의 인덱스 데이터 관리방법 |
US20020062303A1 (en) * | 2000-10-31 | 2002-05-23 | Kabushiki Kaisha Toshiba | Data management method and storage medium storing data management program |
US6606640B2 (en) | 2001-06-26 | 2003-08-12 | International Business Machines Corporation | Method, computer program product, and system for modifying populated databases utilizing a reload utility |
JP2005513597A (ja) * | 2001-12-10 | 2005-05-12 | メンター・グラフィクス・コーポレーション | 並列的電子設計オートメーション:同時共有編集 |
US7516435B2 (en) * | 2001-12-10 | 2009-04-07 | Mentor Graphics Corporation | Reservation of design elements in a parallel printed circuit board design environment |
US7587695B2 (en) * | 2001-12-10 | 2009-09-08 | Mentor Graphics Corporation | Protection boundaries in a parallel printed circuit board design environment |
US8595242B2 (en) * | 2003-06-13 | 2013-11-26 | Ricoh Company, Ltd. | Method for parsing an information string to extract requested information related to a device coupled to a network in a multi-protocol remote monitoring system |
US7454569B2 (en) | 2003-06-25 | 2008-11-18 | Commvault Systems, Inc. | Hierarchical system and method for performing storage operations in a computer network |
US7546324B2 (en) | 2003-11-13 | 2009-06-09 | Commvault Systems, Inc. | Systems and methods for performing storage operations using network attached storage |
US7305648B2 (en) * | 2003-11-21 | 2007-12-04 | Mentor Graphics Corporation | Distributed autorouting of conductive paths in printed circuit boards |
US7590963B2 (en) * | 2003-11-21 | 2009-09-15 | Mentor Graphics Corporation | Integrating multiple electronic design applications |
US20050131855A1 (en) * | 2003-12-11 | 2005-06-16 | Forman George H. | Data cleaning |
WO2005086003A1 (ja) * | 2004-03-08 | 2005-09-15 | Annex Systems Incorporated | データベース・システム |
US7546571B2 (en) * | 2004-09-08 | 2009-06-09 | Mentor Graphics Corporation | Distributed electronic design automation environment |
US20060101368A1 (en) * | 2004-09-08 | 2006-05-11 | Mentor Graphics Corporation | Distributed electronic design automation environment |
US8326926B2 (en) * | 2005-09-13 | 2012-12-04 | Mentor Graphics Corporation | Distributed electronic design automation architecture |
US7873625B2 (en) * | 2006-09-18 | 2011-01-18 | International Business Machines Corporation | File indexing framework and symbolic name maintenance framework |
US8719809B2 (en) | 2006-12-22 | 2014-05-06 | Commvault Systems, Inc. | Point in time rollback and un-installation of software |
US20080163197A1 (en) * | 2006-12-30 | 2008-07-03 | Sap Ag | Multi-product installation tool database architecture |
US8365165B2 (en) * | 2006-12-30 | 2013-01-29 | Sap Ag | Dynamic addition of products and removal of software products on a distribution server |
WO2010106642A1 (ja) * | 2009-03-17 | 2010-09-23 | 富士通株式会社 | 検索処理方法及び装置 |
US8954407B2 (en) | 2010-07-13 | 2015-02-10 | International Business Machines Corporation | System and method for partially deferred index maintenance |
US10452629B2 (en) | 2010-07-13 | 2019-10-22 | International Business Machines Corporation | Automatic maintenance of a set of indexes with different currency characteristics in a database management system |
US9021198B1 (en) | 2011-01-20 | 2015-04-28 | Commvault Systems, Inc. | System and method for sharing SAN storage |
US9613104B2 (en) * | 2012-02-17 | 2017-04-04 | Netflix, Inc. | System and method for building a point-in-time snapshot of an eventually-consistent data store |
US10013444B2 (en) * | 2012-03-02 | 2018-07-03 | International Business Machines Corporation | Modifying an index node of a hierarchical dispersed storage index |
US9355127B2 (en) | 2012-10-12 | 2016-05-31 | International Business Machines Corporation | Functionality of decomposition data skew in asymmetric massively parallel processing databases |
US10229146B2 (en) | 2015-04-20 | 2019-03-12 | International Business Machines Corporation | Index masking based on insert contention ratio |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4914586A (en) * | 1987-11-06 | 1990-04-03 | Xerox Corporation | Garbage collector for hypermedia systems |
JPH02130647A (ja) * | 1988-11-11 | 1990-05-18 | Toshiba Corp | 索引木構造の更新方式 |
US5146590A (en) * | 1989-01-13 | 1992-09-08 | International Business Machines Corporation | Method for sorting using approximate key distribution in a distributed system |
US5490258A (en) * | 1991-07-29 | 1996-02-06 | Fenner; Peter R. | Associative memory for very large key spaces |
US5408652A (en) * | 1990-08-31 | 1995-04-18 | Fujitsu Limited | Method and apparatus for heterogenous database access by generating different access procedures for different database data structures |
US5204958A (en) * | 1991-06-27 | 1993-04-20 | Digital Equipment Corporation | System and method for efficiently indexing and storing a large database with high data insertion frequency |
JP2502023B2 (ja) * | 1992-04-13 | 1996-05-29 | インターナショナル・ビジネス・マシーンズ・コーポレイション | デ―タ・ファイルの比較方法及びシステム |
US5727196A (en) * | 1992-05-21 | 1998-03-10 | Borland International, Inc. | Optimized query interface for database management systems |
US5404510A (en) * | 1992-05-21 | 1995-04-04 | Oracle Corporation | Database index design based upon request importance and the reuse and modification of similar existing indexes |
JP2583010B2 (ja) * | 1993-01-07 | 1997-02-19 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 多層インデックス構造におけるローカルインデックステーブル及び大域インデックステーブルの間の一貫性を維持する方法 |
US5440732A (en) * | 1993-02-05 | 1995-08-08 | Digital Equipment Corp., Pat. Law Gr. | Key-range locking with index trees |
JP3433803B2 (ja) * | 1993-07-07 | 2003-08-04 | ヨーロピアン コンピューター − インダストリー リサーチ センター ゲーエムベーハー | データベースの構造 |
JPH0785093A (ja) * | 1993-09-16 | 1995-03-31 | Nissan Motor Co Ltd | インデックス自動設定方法 |
JP3754715B2 (ja) * | 1994-11-30 | 2006-03-15 | キヤノン株式会社 | 協調作業システム及び前記システムにおけるデータ格納方法 |
US5778354A (en) * | 1995-06-07 | 1998-07-07 | Tandem Computers Incorporated | Database management system with improved indexed accessing |
-
1995
- 1995-06-26 JP JP7159116A patent/JPH0916607A/ja active Pending
-
1996
- 1996-06-21 EP EP96110081A patent/EP0751468A3/en not_active Withdrawn
- 1996-06-24 US US08/668,684 patent/US5806058A/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012203865A (ja) * | 2011-03-28 | 2012-10-22 | Digital Arts Inc | 検索装置、検索システム、方法およびプログラム |
US9122407B2 (en) | 2012-08-22 | 2015-09-01 | Fujitsu Limited | Deduplication device and deduplication method |
Also Published As
Publication number | Publication date |
---|---|
EP0751468A2 (en) | 1997-01-02 |
US5806058A (en) | 1998-09-08 |
EP0751468A3 (en) | 1998-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0916607A (ja) | データベース管理システムにおけるインデクス管理方法 | |
CN107766374B (zh) | 一种海量小文件存储读取的优化方法和系统 | |
EP3788505B1 (en) | Storing data items and identifying stored data items | |
JP2624170B2 (ja) | 論理削除データ物理削除方式 | |
CN108984720B (zh) | 基于列存储的数据查询方法、装置、服务器及存储介质 | |
JP2643811B2 (ja) | データベース再編成方式 | |
JP3245047B2 (ja) | バージョン管理装置及び方法 | |
JPH096653A (ja) | データベースのチェックを行う情報処理装置 | |
JP2885625B2 (ja) | 索引表付きファイルシステム | |
JPH05151056A (ja) | データ管理装置 | |
JPS62287350A (ja) | インデツクス一括更新方式 | |
JPH0456344B2 (ja) | ||
JP2000148548A (ja) | 不要レコード削除装置 | |
JPH08328929A (ja) | データベース分割管理システム | |
JP2687887B2 (ja) | リレーショナルデータベースの管理方式 | |
JPS628819B2 (ja) | ||
CN115129717A (zh) | 实现自动分区的数据写入方法、设备以及计算机可读介质 | |
JP2002041333A (ja) | パーティション表の管理装置及び方法 | |
JP2000066933A (ja) | 時系列データ管理方式 | |
JPH0566928A (ja) | プログラムソースフアイルの世代管理方式 | |
JP2000067077A (ja) | データベースシステム及び表分割指定の処理を行うプログラムを格納した記録媒体 | |
JPH03276239A (ja) | レコード管理方式 | |
JPH0652019A (ja) | ファイル管理装置 | |
JPS63239540A (ja) | 記憶媒体におけるデ−タ管理方式 | |
JPH09106364A (ja) | 情報管理方法及び装置 |