JP2000267911A - データベース装置及びプログラムを記録した機械読み取り可能な記録媒体 - Google Patents

データベース装置及びプログラムを記録した機械読み取り可能な記録媒体

Info

Publication number
JP2000267911A
JP2000267911A JP11067930A JP6793099A JP2000267911A JP 2000267911 A JP2000267911 A JP 2000267911A JP 11067930 A JP11067930 A JP 11067930A JP 6793099 A JP6793099 A JP 6793099A JP 2000267911 A JP2000267911 A JP 2000267911A
Authority
JP
Japan
Prior art keywords
database
cache
data
data processing
search
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
JP11067930A
Other languages
English (en)
Inventor
Kozo Matsuo
浩三 松尾
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 JP11067930A priority Critical patent/JP2000267911A/ja
Publication of JP2000267911A publication Critical patent/JP2000267911A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】 データベースの更新と検索が別々の装置で実
行されるデータベース装置において、最新内容のデータ
ベースに基づく検索を保証しつつ、検索処理速度を向上
させる。 【解決手段】 上位装置1は、キャッシュ指示43によっ
て、データ処理装置2の制御プロセッサ21内のキャッシ
ュエリア216 に、良く利用するデータベース3aのキャッ
シュを保持させる。制御プロセッサ21は、上位装置1か
ら検索対象とするデータベースの範囲を指定した照合指
示41を受信すると、対象となるデータベースがキャッシ
ュエリア216 にキャッシュされていれば、それを参照し
て検索処理を進め、キャッシュされていなければキャッ
シュエリア216 を使わずにディスク装置3の該当データ
ベースを読み込んで処理を進める。上位装置1はキャッ
シュエリア216 にそのコピーが保持されているデータベ
ースを更新する場合、キャッシュクリア指示45によっ
て、キャッシュを無効化する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データベース格納
用の外部記憶装置をデータベースの更新などを行う上位
装置とこの上位装置からの指示に従ってデータベースに
対する検索処理を行うデータ処理装置とで共有した形態
のデータベース装置に関し、特にデータ処理装置におけ
る処理高速化技術に関する。
【0002】データベース装置の一種に、図17に示す
ように、データベース3a〜3mを格納するディスク装
置3を、上位装置1とデータ処理装置2との2つの装置
で共有した形態のデータベース装置がある。このデータ
ベース装置では、利用者入出力装置5を通じてオペレー
タからデータベースの更新が指示された場合には、上位
装置1内のデータベース作成・更新手段11がディスク
装置3をアクセスして該当する処理を自ら実施するが、
オペレータから検索が指示された場合には、上位装置1
はその処理をデータ処理装置2に依頼し、データ処理装
置2から通知された処理結果をオペレータに提示する。
【0003】以下、データベース3a〜3mが各人の指
紋のデータを格納するデータベースであり、オペレータ
から入力された或る指紋データと適合するデータをデー
タベースから検索する場合を例にして、従来のデータベ
ース装置の動作を説明する。なお、このような検索は一
般に照合と呼ばれる。また、データベースに格納されて
いる個々のデータをベースデータと呼び、照合しようと
する元のデータをサーチデータと呼ぶ。
【0004】オペレータから、データベースに存在する
ベースデータとの照合処理を行うための元データである
サーチデータと、データベース3a〜3mのうちのどの
データベースを対象とするかの照合範囲とが指定される
と、上位装置1内の照合指示手段12は、サーチデータ
と照合範囲を設定したサーチデータ情報30をディスク
装置3に格納後、サーチデータ情報30の位置を指定し
た照合指示を、通信回線4を通じてデータ処理装置2に
対し送出する。
【0005】データ処理装置2は、個々のベースデータ
がサーチデータに適合するか否かを調べる照合プロセッ
サ22と、この照合プロセッサ22を使って照合処理を
進める制御プロセッサ21とから構成されている。上位
装置1から照合指示を受信した制御プロセッサ21は、
ディスク装置3からサーチデータ情報30を読み込み、
サーチデータ情報30に設定されたサーチデータを照合
プロセッサ22に送ると共に、サーチデータ情報30に
設定された照合範囲をサーチ範囲テーブル212に設定
する。その後、制御プロセッサ21内のベースデータ処
理手段213は、サーチ範囲テーブル212で指定され
た個々のデータベース毎に、そのデータベースに格納さ
れているベースデータを順次にディスク装置3から読み
取って照合プロセッサ22に与え、照合させる処理を繰
り返す。そして、サーチ範囲の全てのデータベースにつ
いての照合処理を終えると、ベースデータ処理手段21
3は、照合プロセッサ22から照合結果を読み取り、通
信回線4を通じて上位装置1に送信する。上位装置1の
照合指示手段12は受信した照合結果を利用者入出力装
置5に出力する。
【0006】
【発明が解決しようとする課題】上述した従来のデータ
ベース装置では、データ処理装置2は、上位装置1から
照合指示を受ける度に、ディスク装置3からベースデー
タを読み込むようにしている。しかし、I/O(ディス
ク装置からの読み込み)は一般にプロセッサ内の処理に
較べて実行速度が遅いため、I/Oネックで処理プロセ
ッサが待たされ処理速度の低下を招くという問題があ
る。
【0007】I/Oネックによる処理速度の低下を改善
する技術にキャッシュ技術があり、各種のデータベース
システムで利用されている。例えば、特開平4−264
937号公報には、ディスク装置上のファイルを主記憶
装置に全てキャッシュしておくことで、I/Oネックに
よる処理速度の低下を防止したオンラインデータベース
装置が記載されている。また、特開平8−63479号
公報には、個々の処理装置にデータベースの一部のブロ
ックをキャッシュするデータバッファを設け、更に処理
装置間でデータバッファの内容を転送し合うことによ
り、全件検索要求が頻繁に発生する場合におけるI/O
ネックを低減した並列実行型のデータベースシステムが
記載されている。また、特許第2523628号公報に
は、CPUと、データベース格納用の外部記憶装置と、
CPUからの指示に従って外部記憶装置内のデータを対
象とするデータベース演算を行うデータベースマシンと
からなるシステムにおいて、データベースマシン内にデ
ータベースの一部分をキャッシュするデータ格納バッフ
ァ部を設けることで、I/Oネックを低減した計算機シ
ステムが記載されている。
【0008】そこで、これらの公報に記載されたキャッ
シュ技術を図17に示したデータベース装置に適用する
ことが考えられる。つまり、ディスク装置3に格納され
ている複数のデータベースのうちの少なくとも1つのデ
ータベースのコピーを格納し得る容量を持つキャッシュ
エリアをデータ処理装置2に設け、データ処理装置2
は、上位装置1から照合指示を受けたとき、指定された
サーチ範囲のデータベースがキャッシュエリアに存在す
ればキャッシュエリア内のデータを使って照合処理を進
め、コピーがなければ、ディスク装置3から該当するデ
ータベースをキャッシュエリアに読み込んで照合処理を
進めるようにする。このようにすれば、同じデータベー
スをサーチ範囲に指定した照合指示が繰り返される場
合、I/O回数は大幅に削減される。
【0009】しかしながら、データベースの更新と検索
とを同じ装置で行う前記各公報記載のデータベース装置
と異なり、図17に示したデータベース装置では、磁気
ディスク装置3中のデータベース3a〜3mの更新は、
データ処理装置2ではなく上位装置1が実行している。
このため、上位装置1がディスク装置3に格納されてい
るデータベース3a〜3mを更新しても、データ処理装
置2にはそのことが認識できないため、キャッシュエリ
アに格納している古いコピーの内容に従って照合処理を
進めてしまうという問題点がある。
【0010】そこで本発明の目的は、最新内容のデータ
ベースに基づく検索を保証しつつ、データ処理装置にお
ける処理速度の向上を図ることにある。
【0011】
【課題を解決するための手段】本発明は上記の目的を達
成するために、データ処理装置のキャッシュエリアにキ
ャッシュすべきデータベースを上位装置から指定可能と
し、且つ、データ処理装置は、上位装置から指示された
サーチ範囲のデータベースがキャッシュエリアにキャッ
シュされていれば、それを参照して処理を進め、キャッ
シュされていなければキャッシュエリアを使わずに外部
記憶装置から該当データベースのデータを順次に読み込
んで処理を進める。また、上位装置は、外部記憶装置に
格納された複数のデータベースのうちデータ処理装置が
キャッシュエリアにコピーを保持しているデータベース
を更新する場合、データ処理装置に対してキャッシュを
クリアするように指示を出し、データ処理装置はその指
示に応答してキャッシュエリアに格納されているコピー
を無効にする。
【0012】より具体的には、本発明のデータベース装
置は、複数のデータベースを格納する外部記憶装置と、
該外部記憶装置に格納されたデータベースのデータを対
象として検索処理を実行するデータ処理装置と、前記外
部記憶装置に格納されたデータベースの更新処理および
検索対象となるデータベースを指定して前記データ処理
装置に検索を依頼する処理を行う上位装置とから構成さ
れるデータベース装置において、前記上位装置は、前記
データ処理装置に対し、キャッシュすべきデータベース
を指示するキャッシュ指示手段と、前記データ処理装置
にキャッシュされているデータベースを更新するとき、
前記データ処理装置に対し、キャッシュをクリアするよ
うに指示するキャッシュクリア指示手段とを備え、前記
データ処理装置は、制御プロセッサと、与えられたデー
タが与えられた検索条件に適合するか否かを調べる処理
プロセッサとを備え、前記制御プロセッサは、前記外部
記憶装置に格納された少なくとも1つのデータベースの
コピーを格納し得る容量を有するキャッシュエリアと、
前記上位装置の前記キャッシュ指示手段から指示された
データベースを前記外部記憶装置から読み出して前記キ
ャッシュエリアに格納し、前記上位装置の前記キャッシ
ュクリア指示手段からキャッシュをクリアする指示を受
けたときに前記キャッシュエリアに格納されたコピーを
無効にするキャッシュ処理手段と、前記上位装置からの
検索要求時、検索条件を前記処理プロセッサに与えた
後、指定された検索範囲内の個々のデータベースについ
て、そのデータベースのコピーが前記キャッシュエリア
に存在すればそのコピー中の個々のデータを前記処理プ
ロセッサに与えて処理を行わせ、そのデータベースのコ
ピーが前記キャッシュエリアに存在しなければ前記外部
記憶装置からそのデータベースの個々のデータを読み出
して前記処理プロセッサに与えて処理を行わせる処理手
段とを含んでいる。
【0013】本発明のデータベース装置にあっては、デ
ータ処理装置のキャッシュエリアにキャッシュすべきデ
ータベースを上位装置から指定可能でき、また、データ
処理装置側でキャッシュを勝手に入れ替えることがない
ため、検索対象として良く利用するデータベースを予め
データ処理装置内にキャッシュデータとして保持してお
けば、複数回行う検索処理でそのキャッシュデータを何
回でも利用可能となる。その結果、データ処理装置がデ
ィスク装置からデータベースを読むためのI/Oが削減
できる。また、データ処理装置にキャッシュされている
データベースが更新された場合、自動的にキャッシュが
クリアされるので、更新前のデータベースに対して検索
が行われるといった事態が解消される。従って、最新内
容のデータベースに基づく検索を保証しつつ、データ処
理装置における処理速度の向上が可能となる。
【0014】
【発明の実施の形態】図1を参照すると、本発明の実施
の形態に係るデータベース装置は、本発明を自動指紋認
証システム(AFIS;オートマチック・フィンガープ
リント・アイデンティフィケーション・システム)に適
用したものであり、利用者入出力装置5が接続された上
位装置1と、この上位装置1に通信回線4を介して相互
に通信可能に接続されたデータ処理装置2と、上位装置
1とデータ処理装置2とで共有されるディスク装置3と
から構成されている。
【0015】ディスク装置3は、個人の指紋データを含
むベースデータを登録したデータベース3a〜3mを格
納する外部記憶装置である。また本実施形態では、上位
装置1からデータ処理装置2へのサーチデータ情報30
の受け渡しにも利用される。ディスク装置(磁気ディス
ク装置)を使用しているが、他の種類の外部記憶装置を
使用することも可能である。なお、上位装置1はディス
ク装置3に対して書き込み及び読み出しを行うが、デー
タ処理装置2は読み込みのみを行う。
【0016】利用者入出力装置5は、オペレータが上位
装置1に対して各種の指示を入力したり、登録すべき指
紋データを含むベースデータや照合すべき指紋データを
含むサーチデータなどを入力するための入力装置、例え
ばキーボード,マウス,指紋入力装置,フロッピィディ
スク装置などと、上位装置1が処理結果をオペレータに
提示するための出力装置、例えばCRTディスプレイ装
置,プリンタなどで構成される。
【0017】上位装置1は、オペレータからの指示に従
って、ディスク装置3中のデータベースを更新したり、
照合指示を通信回線4を通じてデータ処理装置2に送出
する他、データ処理装置2に対してキャッシュすべきデ
ータベースを指示したり、そのクリアを指示したりする
機能を有する。本実施形態では、上位装置1は、データ
ベース作成・更新手段11と、照合指示手段12と、キ
ャッシュ指示手段13と、キャッシュクリア指示手段1
4とを備えている。
【0018】データベース作成・更新手段11は、ディ
スク装置3中に新たなデータベースを作成したり、既に
作成されたデータベースを更新する手段である。
【0019】照合指示手段12は、オペレータから照合
が指示された場合に、照合処理に必要なデータを設定し
たサーチデータ情報30をディスク装置3に格納した
後、通信回線4を通じてデータ処理装置2に対し照合指
示41という通信メッセージを出し、その応答として照
合結果通知42という通信メッセージを受信すると、そ
れをオペレータに提示する手段である。
【0020】キャッシュ指示手段13は、データ処理装
置2に対し、キャッシュすべきデータベースを指示する
キャッシュ指示43という通信メッセージを通信回線4
を通じて送信する手段である。このキャッシュ指示43
に対しては、その応答としてキャッシュ完了通知44と
いう通信メッセージがデータ処理装置2から返される。
本実施の形態では、キャッシュ指示手段13は、利用者
入出力装置5を通じてオペレータから、キャッシュすべ
きデータベースの指定を受けるようになっている。オペ
レータは、ディスク装置3に格納された複数のデータベ
ースのうち、良く利用し且つ更新の予定がないデータベ
ースをキャッシュ対象に指定する。
【0021】キャッシュクリア指示手段14は、データ
処理装置2に対し、キャッシュのクリアを指示するキャ
ッシュクリア指示45という通信メッセージを通信回線
4を通じて送信する手段である。このキャッシュクリア
指示45に対しては、その応答としてキャッシュクリア
完了通知46という通信メッセージがデータ処理装置2
から返される。
【0022】データ処理装置2は、上位装置1から通信
回線4を通じて送られてきた照合指示41,キャッシュ
指示43,キャッシュクリア指示45に従った処理を実
行する装置であり、本実施形態の場合、制御プロセッサ
21と照合プロセッサ22とで構成される。
【0023】照合プロセッサ22は、制御プロセッサ2
1から照合対象となる元データであるサーチデータを入
力して保持し、その後に制御プロセッサ21から順次に
入力されるベースデータ毎に、サーチデータとの照合を
行うプロセッサである。
【0024】制御プロセッサ21は、上位装置1から照
合指示41を受信したときに照合プロセッサ22を使用
した照合処理を制御し、またキャッシュ指示43やキャ
ッシュクリア指示45に応じた処理を実行するプロセッ
サである。本実施形態の場合、制御プロセッサ21は、
サーチデータ処理手段211と、サーチ範囲テーブル2
12と、ベースデータ処理手段213と、キャッシュ処
理手段214と、キャッシュテーブル215と、キャッ
シュエリア216とを備えている。
【0025】キャッシュエリア216は、ディスク装置
3に格納されているデータベースのコピーを保持するエ
リアであり、例えば制御プロセッサ21が備える主記憶
装置上に確保される。キャッシュエリア216は、少な
くとも1つのデータベースの全データを格納し得る容量
があり、本実施形態では、ディスク装置3に格納されて
いる複数のデータベース3a〜3mのうちの何れか1つ
のデータベースだけをキャッシュするようにしている。
【0026】キャッシュテーブル215は、キャッシュ
エリア216のどこに、どのデータベースのコピーが格
納されているかを記録するテーブルであり、例えば制御
プロセッサ21が備える主記憶装置上に確保される。
【0027】キャッシュ処理手段214は、上位装置1
からキャッシュ指示43を受信したときに、キャッシュ
すべきと指示されたデータベースをディスク装置3から
読み出してキャッシュエリア216に格納し、キャッシ
ュテーブル215を更新する手段である。また、キャッ
シュ処理手段214は、上位装置1からキャッシュクリ
ア指示45を受信したとき、キャッシュテーブル215
をクリアすることで、キャッシュを無効化する処理も行
う。何れの場合も、処理完了時に、キャッシュ完了通知
44,キャッシュクリア完了通知46を上位装置1に送
信する。
【0028】サーチ範囲テーブル212は、上位装置1
から照合指示41を受信したときにサーチデータ処理手
段211によって作成されるテーブルであり、ディスク
装置3に格納された複数のデータベース3a〜3mのう
ちの照合対象となる1または複数のデータベースを特定
する情報が記述される。サーチ範囲テーブル212も、
例えば制御プロセッサ21の主記憶装置上に作成され
る。
【0029】サーチデータ処理手段211は、上位装置
1から照合指示41を受信したときに、ディスク装置3
からサーチデータ情報30を読み込み、このサーチデー
タ情報30の内容に従ってサーチデータを照合プロセッ
サ22に通知し、また、サーチ範囲テーブル212を作
成する手段である。
【0030】ベースデータ処理手段213は、サーチデ
ータ処理手段211によって作成されたサーチ範囲テー
ブル212で指定された範囲内の個々のデータベースに
ついて、そのデータベースのデータを順次に照合プロセ
ッサ22に送って照合処理を行わせ、最後に照合結果を
照合プロセッサ22から読み取って照合結果通知42と
して上位装置1に通知する手段である。このベースデー
タ処理手段213は、サーチ範囲内の或るデータベース
のコピーがキャッシュエリア216に存在すれば、キャ
ッシュエリア216からベースデータを読み出して処理
プロセッサ22に送るが、キャッシュエリア216に存
在しないデータベースについては、キャッシュエリア2
16を使わずにディスク装置3からそのデータベースの
個々のベースデータを読み出して照合プロセッサ22に
送る。
【0031】次に、本実施形態のデータベース装置の各
部の詳細な機能を、その動作とともに詳細に説明する。
【0032】(1)データベースの作成と更新 図2は上位装置1のデータベース作成・更新手段11の
処理例を示すフローチャートである。データベース作成
・更新手段11は、利用者入出力装置5を通じてオペレ
ータから、追加するベースデータとその名前、そのベー
スデータを登録するデータベースの番号を受け取ると
(ステップS1)、まず、その番号のデータベースがデ
ィスク装置3に存在するか否かを調べる(ステップS
2)。これは、ディスク装置3に格納されている各デー
タベース3a〜3mにはそれらを一意に識別する番号が
付いているので、その番号を調べるか、或いは存在する
データベースの一覧を用意しておいてそれを調べること
で可能である。
【0033】オペレータから入力された番号のデータベ
ースが存在しない場合、データベース作成・更新手段1
1は、その番号に対応する新たなデータベースをディス
ク装置3に作成し(ステップS3)、この作成したデー
タベースの末尾に、登録するベースデータを格納する
(ステップS7)。
【0034】他方、オペレータから入力された番号のデ
ータベースがディスク装置3に存在する場合、データベ
ース作成・更新手段11は、当該データベースをデータ
処理装置2にキャッシュしているか否かを判断する(ス
テップS4)。これは、例えば、データ処理装置2に現
在キャッシュしているデータベースの番号を格納するテ
ーブル(図示せず)を上位装置1内の主記憶装置などに
設けておき、このテーブルを調べることで可能である。
ベースデータを登録しようとするデータベースがデータ
処理装置2にキャッシュされていない場合は、そのデー
タベースの末尾に、登録するベースデータを格納する
(ステップS7)。ベースデータを登録しようとしたデ
ータベースがデータ処理装置2にキャッシュされている
場合は、当該データベースの番号を通知してキャッシュ
クリア指示手段14を呼び出し、キャッシュクリア指示
45を通信回線4を介してデータ処理装置2に送信させ
る(ステップS5)。データ処理装置2側では、キャッ
シュクリア指示45を受信すると、キャッシュ処理手段
214がキャッシュをクリアし、キャッシュクリア完了
通知を返してくる。データベース作成・更新手段11は
その通知をキャッシュクリア指示手段14を通じて受信
すると(ステップS6)、当該データベースの末尾に、
登録するベースデータを格納する(ステップS7)。
【0035】図1に描かれたデータベース3a〜3m
は、以上のようにしてデータベース作成・更新手段11
がディスク装置3上に作成したデータベースであり、各
々は、例えば図3の右側に示すように、複数のベースデ
ータがその登録順に格納されている。なお、ここでは、
データベース3aにベースデータBDa1〜BDaα、
データベース3bにベースデータBDb1〜BDbβ、
……、データベース3mにベースデータBDm1〜BD
mνが格納されている。個々のベースデータには、個人
の指紋のデータやその個人を一意に識別する情報などが
含まれる。
【0036】(2)データベースのキャッシング 図4は上位装置1のキャッシュ指示手段13の処理例を
示すフローチャートである。キャッシュ指示手段13
は、利用者入出力装置5を通じてオペレータからキャッ
シュ対象のデータベースの番号を受け取ると(ステップ
S11)、その番号を元に、ディスク装置3のどこにそ
のデータベースが存在するかを示す情報を含んだキャッ
シュ指示43を作成してデータ処理装置2に送信する
(ステップS12)。そして、データ処理装置2からキ
ャッシュ完了通知44を受信すると、その内容を利用者
入出力装置5を通じてオペレータに通知し(ステップS
13)、処理を終える。
【0037】図5にキャッシュ指示43の内容例を示
す。オペレータからキャッシュすべきと指定されたデー
タベースが図5の3xである場合、キャッシュ指示43
は、ディスク装置3におけるデータベース3xの開始位
置(データベース開始位置)と終了位置(データベース
終了位置)とからなる。
【0038】図6はデータ処理装置2のキャッシュ処理
手段214が上位装置1からキャッシュ指示43を受信
したときの処理例を示すフローチャートである。キャッ
シュ処理手段214は、キャッシュ指示43を受信する
と、そのキャッシュ指示43で示されるデータベースの
開始位置を、内部変数であるベースデータ読み込み位置
(BDRPと称す)に格納し(ステップS21)、ま
た、キャッシュエリア216の先頭位置を、内部変数で
あるキャッシュ格納位置(SPと称す)に格納する(ス
テップS22)。
【0039】次に、ディスク装置3のBDRPで示され
る位置からベースデータを1つ読み出して、SPで示さ
れるキャッシュエリア216の位置に格納し(ステップ
S23)、BDRPを次のベースデータの位置に、SP
をキャッシュエリア216の次の格納位置に、それぞれ
更新する(ステップS24)。次に、BDRPとキャッ
シュ指示43で示されるデータベースの終了位置とを比
較し(ステップS25)、BDRPがデータベース終了
位置に達していなければ、ステップS23に戻って上述
した処理を繰り返すことにより、データベースの残りの
ベースデータをキャッシュエリア216に格納する。そ
して、BDPRがデータベース終了位置に達すれば、デ
ータベースの全データをキャッシングし終えたので、ス
テップS23,S24,S25の処理ループから抜け出
て、ステップS26に進む。
【0040】ステップS26では、キャッシュ処理手段
214は、キャッシュテーブル215を更新する。つま
り、キャッシュ指示43で示されるデータベース開始位
置,終了位置,キャッシュエリア216の先頭位置,S
Pの値(即ちキャッシュの終了位置)を、キャッシュテ
ーブル215に格納する。そして、上位装置1に対して
キャッシュ完了通知44を送信し(ステップS27)、
処理を終える。
【0041】図7にキャッシュテーブル215の内容例
を示す。キャッシュテーブル215には、データベース
開始位置,データベース終了位置,キャッシュ内先頭位
置,キャッシュ内終了位置が格納される。図5で示した
ようにデータベース3xのキャッシュがキャッシュ指示
43によって指示された場合、キャッシュテーブル21
5のデータベース開始位置およびデータベース終了位置
に、キャッシュ指示43中のデータベース開始位置およ
びデータベース終了位置が格納される。また、キャッシ
ュテーブル215のキャッシュ内先頭位置およびキャッ
シュ内終了位置には、キャッシュエリア216に格納さ
れた、データベース3xの先頭データBDx1の先頭位
置および最終データBDxχの最終位置が格納される。
【0042】(3)キャッシュのクリア 図8はキャッシュ処理手段214が上位装置1からキャ
ッシュクリア指示45を受信したときの処理例を示すフ
ローチャートである。キャッシュ処理手段214は、上
位装置1からのキャッシュクリア指示45を受信する
と、キャッシュテーブル215中のデータベース開始位
置,データベース終了位置,キャッシュ内先頭位置,キ
ャッシュ内終了位置を全てクリアする(ステップS3
1)。その後、上位装置1に対してキャッシュクリア指
示46を送信し(ステップS32)、処理を終える。
【0043】(4)照合 (4−1)上位装置1 図9は上位装置1の照合指示手段12の処理例を示すフ
ローチャートである。照合指示手段12は、利用者入出
力装置5を通じてオペレータから、照合を行う元データ
であるサーチデータSDと、照合対象のデータベースの
番号を受け取ると(ステップS41)、ディスク装置3
にサーチデータ情報30用のエリアを確保する(ステッ
プS42)。ここで、オペレータは、照合対象のデータ
ベースとして、1以上のデータベースを指定することが
できる。
【0044】次に照合指示手段12は、サーチデータ情
報30用のエリアの先頭部分に、受け取ったサーチデー
タSDを書き込む(ステップS43)。次に、受け取っ
た1つのデータベースの番号に注目し、その番号のデー
タベースがディスク装置3のどこに存在するかを示す情
報をサーチデータ情報30用のエリアに書き込む処理
を、オペレータから指定された全てのデータベース番号
について繰り返す(ステップS44,S45)。そし
て、オペレータから指定された全てのデータベース番号
についての処理を終了すると、最後に終了マークを書き
込む(ステップS46)。これで、サーチデータ情報3
0が出来上がる。
【0045】サーチデータ情報30の内容例を、図3の
左側に示す。サーチデータ情報30は、次の3種類の情
報を含む。 ○照合プロセッサ22がデータベース群に存在するベー
スデータとの照合処理を行うための元データであるサー
チデータSD。 ○サーチデータSDに対して照合を行うデータベースが
ディスク装置3のどこに存在するかを示す開始位置およ
び終了位置。このデータベース開始位置およびデータベ
ース終了位置の組は、照合を行うデータベースの数分あ
る。 ○サーチデータ情報の終わりを示す終了マーク。
【0046】上述のようにしてサーチデータ情報30を
作り終えると、照合指示手段12は、サーチデータ情報
30がディスク装置3のどこに存在するかを示す情報を
示した照合指示41を作成し、通信回線4を通じてデー
タ処理装置2に送信する(ステップS47)。そして、
照合指示41に対する応答として、照合結果通知42が
データ処理装置2から通信回線4を通じて送られてくる
と、それを受信し、その内容を利用者入出力装置5を通
じてオペレータに通知する(ステップS48)。
【0047】図10に照合指示41の内容例を示す。照
合指示41は、照合指示手段12が作成したサーチデー
タ情報30がディスク装置3のどこに存在するかを示
す、サーチデータ情報開始位置およびサーチデータ情報
終了位置を含んでいる。
【0048】(4−2)データ処理装置2 図11はサーチデータ処理手段211およびベースデー
タ処理手段213の処理例を示すフローチャートであ
る。データ処理装置2のサーチデータ処理手段211
は、照合指示41を受信すると、その照合指示41で示
されるサーチデータ情報開始/終了位置を元に、ディス
ク装置3からサーチデータ情報30を読み込む(ステッ
プS51)。次に、サーチデータ情報30の先頭部分に
存在するサーチデータSDを照合プロセッサ22に渡し
(ステップS52)、更に、サーチデータSDの直後か
ら終了マークまでの内容をサーチ範囲テーブル212に
格納する(ステップS53)。
【0049】図12にサーチ範囲テーブル212の内容
例を示す。サーチ範囲テーブル212には、照合指示4
1でその位置が教えられたサーチデータ情報30のう
ち、サーチデータSDを除いた、データベース開始/終
了位置の組と終了マークとが格納される。
【0050】ここまでがサーチデータ処理手段211に
よる処理であり、引き続きベースデータ処理手段213
による処理が実行される。
【0051】先ず、ベースデータ処理手段213は、サ
ーチ範囲テーブル212中の最初のデータベース開始/
終了位置の組で示されるデータベースに対する照合を行
うべく、その組におけるデータベース開始位置を、内部
変数である照合中データベース位置(BDPと称す)
に、その組におけるデータベース終了位置を、内部変数
である照合中データベース終了位置(BDE)に格納す
る(ステップS54,S55)。
【0052】次に、これから照合しようとするデータベ
ースがキャッシュされているか否かを調べるために、キ
ャッシュテーブル215内にあるデータベース開始位置
とBDP、およびキャッシュテーブル215内にあるデ
ータベース終了位置とBDEの比較を行う(ステップS
56)。共に一致すれば、これから照合しようとするデ
ータベースがキャッシュされているため、キャッシュを
使用して照合処理を進め(ステップS61〜S65)、
そうでなければ、キャッシュを使用せずに照合処理を進
める(ステップS57〜S60)。
【0053】○キャッシュを使用する場合 ベースデータ処理手段213は、キャッシュテーブル2
15内のキャッシュ内先頭位置を、内部変数である照合
中キャッシュ位置(CPと称す)に格納する(ステップ
S61)。次に、キャッシュエリア216のCPで示さ
れる位置からベースデータを1つ読み出し(ステップS
62)、この読み出したベースデータを照合プロセッサ
22に渡して、サーチデータSDとの照合を実行させ
(ステップS63)、CPを次のベースデータの位置に
更新する(ステップS64)。そして、キャッシュテー
ブル215内のキャッシュ内終了位置とCPを比較し
(ステップS65)、CPの値がキャッシュ内終了位置
に達していなければ、ステップS62に戻って上述した
処理を繰り返すことにより、キャッシュエリア216内
の残りのベースデータを順次に照合プロセッサ22に渡
して照合させていく。そして、キャッシュエリア216
内の最後のベースデータまで照合を終えると、CPの値
はキャッシュ内終了位置の値以上となるので、ステップ
S62〜S65のループを抜け出て、ステップS66の
処理へと進む。
【0054】○キャッシュを使用しない場合 ベースデータ処理手段214は、ディスク装置3のBD
Pで示される位置からベースデータを1つ読み出し(ス
テップS57)、この読み出したベースデータを照合プ
ロセッサ22に渡してサーチデータSDとの照合を実行
させ(ステップS58)、BDPを次のベースデータの
位置に更新する(ステップS59)。そして、BDPと
BDEを比較し(ステップS60)、BDPがBDEに
達していなければ、ステップS57に戻って上述した処
理を繰り返すことにより、ディスク装置3上にある当該
データベースにおける残りのベースデータを順次に読み
出して照合プロセッサ22に渡して照合させていく。そ
して、当該データベースの最後のベースデータまで照合
を終えると、BDPはBDE以上の値となるので、ステ
ップS57〜S60のループを抜け出て、ステップS6
6の処理へと進む。
【0055】ベースデータ処理手段213は、1つのデ
ータベースを対象とした照合処理を終えると、BDP
に、サーチ範囲テーブル212の次のエントリの内容を
格納する(ステップS66)。未処理の照合対象データ
ベースが残っている場合、次のエントリの内容はデータ
ベース開始位置であり、残っていない場合は終了マーク
である。ベースデータ処理手段213は、BDPに格納
されたのが終了マークでなくデータベース開始位置であ
れば(ステップS67でNO)、そのデータベース開始
位置の直後に記述されているサーチ範囲テーブル212
のデータベース終了位置をBDEに格納して(ステップ
S68)、ステップS56に戻って上述した処理を繰り
返すことにより、残りの照合対象データベースに対する
照合処理を繰り返す。そして、全ての照合対象データベ
ースに対する処理を終えると、ステップS67の判断結
果がYESとなるので、ステップS56〜S68のルー
プを抜け出て、ステップS69へと進む。
【0056】ステップS69では、ベースデータ処理手
段213は、照合プロセッサ22から照合結果を抜き出
し、その内容を照合結果通知42として、通信回線4を
通じて上位装置1に返信する。照合結果通知42に含ま
れる照合結果の内容は、照合プロセッサ22がどのよう
な照合結果を生成しているかによって相違するが、例え
ば、各ベースデータが各個人を一意に識別する識別子を
含む場合、サーチデータSDで与えられる指紋と最も良
く一致した指紋を持つ個人の識別子とその指紋データが
照合結果とされたり、あるいは類似度の高かった順に幾
つかの指紋データと個人識別子が照合結果とされる。
【0057】次に、より具体的に本実施形態の動作を説
明する。
【0058】先ず、図13に示すように、ディスク装置
3にデータベース3a〜3mが格納されている状態で、
オペレータからデータベース3aをキャッシュすべき指
示43が与えられた場合を例に、データベースをデータ
処理装置2にキャッシュさせる動作について説明する。
【0059】上位装置1のキャッシュ指示手段13は、
オペレータからキャッシュ対象のデータベースの番号
「3a」を受け取ると(ステップS11)、その番号を
元に、ディスク装置3のどこにそのデータベース3aが
存在するかを示す開始位置と終了位置を含んだキャッシ
ュ指示43をデータ処理装置2に送信する(ステップS
12)。
【0060】データ処理装置2のキャッシュ処理手段2
14がキャッシュ指示43を受信すると、そのキャッシ
ュ指示43で示されるデータベース3aの開始位置をベ
ースデータ読み込み位置(BDRP)に格納し(ステッ
プS21)、又、キャッシュエリア216の先頭位置を
キャッシュ格納位置(SP)に格納する(ステップS2
2)。
【0061】次に、ディスク装置3のBDRPで示され
る位置からベースデータBDa1を読み出して、SPで
示されるキャッシュエリア216に格納し(ステップS
23)、BDRPを次のベースデータBDa2の位置
に、SPをキャッシュデータ216に格納したベースデ
ータBDa1の次の位置に更新する(ステップS2
4)。次に、BDRPとキャッシュ指示43で示される
データベース3aの終了位置との比較を行い(ステップ
S25)、BDRP[ベースデータBDa2の格納位
置]は終了位置より小さい値であるので、再度、BDR
Pで示されるベースデータBDa2をディスク装置3か
ら読み出して、SPで示されるキャッシュエリア216
に格納する(ステップS23)。以上の処理を順に行い
(ステップS23〜S25)、ベースデータBDaαの
処理を終えると、BDRPの値はキャッシュ指示43で
示されるデータベース3aの終了位置に入っている値以
上の値になっているので、これらの処理を抜ける(ステ
ップS25)。
【0062】以上で、キャッシュ指示43で示されたデ
ータベース3aの内容を全てキャッシュデータ216に
格納し終える。
【0063】その後、キャッシュテーブル215のデー
タベース開始位置,終了位置,キャッシュ内先頭位置,
終了位置に、それぞれ、キャッシュ指示43で示される
データベース3aの開始位置,終了位置,キャッシュエ
リア216の先頭位置,SPの値を格納する(ステップ
S26)。
【0064】その後、上位装置1に対してキャッシュ完
了通知44を送信する(ステップS27)。
【0065】以上でデータ処理装置2側のキャッシュ処
理は終了する。
【0066】上位装置1がキャッシュ完了通知44を受
け取ると(ステップS13)、その内容をオペレータに
通知して、上位装置側のキャッシュ処理も終了する。
【0067】以上が、データ処理装置2がデータベース
3aをキャッシュする場合の動作である。この時点で、
データ処理装置2がキャッシュエリア216に保持して
いるデータベース3aの内容は、上位装置1とデータ処
理装置2で整合性が取られている。以下、この状態で図
13に示すように、照合指示41で照合対象データベー
スとしてデータベース3a,3cが指定されたものとし
て、照合処理の動作について説明する。
【0068】上位装置1の照合指示手段12は、オペレ
ータから、照合を行うサーチデータSDと、照合対象の
データベースの番号「3a」,「3c」を受け取ると
(ステップS41)、ディスク装置3にサーチデータ情
報30のエリアを確保する(ステップS42)。次に、
サーチデータ情報30の先頭部分に受け取ったサーチデ
ータSDを書き込む(ステップS43)。次に、照合対
象のデータベースの番号「3a」を元に、ディスク装置
3のどこにそのデータベース3aが存在するかを示す開
始位置と終了位置をサーチデータ情報30に書き込む
(ステップS44)。オペレータから受け取ったデータ
ベースの番号「3c」が未処理であるので(ステップS
45)、データベース3cの開始位置と終了位置を続け
てサーチデータ情報30に書き込む(ステップS4
4)。これでオペレータから指示された全てのデータベ
ースの処理が終了したので(ステップS45)、終了マ
ークを書き込み(ステップS46)、サーチデータ情報
30の作成を終了する。
【0069】サーチデータ情報30を作り終えると、サ
ーチデータ情報30がディスク装置3のどこに存在する
かを示す開始位置と終了位置を元に、データ処理装置2
に対して照合指示41を送信する(ステップS47)。
【0070】データ処理装置2のサーチデータ処理手段
211が照合指示41を受信すると、その照合指示41
で示されるサーチデータ情報開始/終了位置を元に、デ
ィスク装置3からサーチデータ情報30を読み込んだ後
(ステップS51)、その先頭部分に存在するサーチデ
ータSDを照合プロセッサ22に渡し(ステップS5
2)、その次からサーチデータ情報終了位置までの内容
をサーチ範囲テーブル212に格納する(ステップS5
3)。
【0071】サーチ範囲テーブル212の作成が終了し
たので、ベースデータ処理手段213は、サーチ範囲テ
ーブル212の最初のエントリである、データベース3
aの開始位置を照合中データベース位置(BDP)に、
データベース3aの終了位置を照合中データベース終了
位置(BDE)に格納する(ステップS54,55)。
【0072】次に、キャッシュテーブル215内にある
データベースの開始位置[データベース3aの開始位
置]とBDP[データベース3aの開始位置]、及び、
終了位置[データベース3aの終了位置]とBDE[デ
ータベース3aの終了位置]の比較を行い、両方とも一
致するので(ステップS56)、キャッシュテーブル2
15内のキャッシュ内先頭位置を照合中キャッシュ位置
(CP)に格納する(ステップS61)。
【0073】次に、キャッシュエリア216のCPで示
される位置からベースデータBDa1を読み出した上で
(ステップS62)、そのベースデータBDa1を照合
プロセッサ22に渡して照合を実行させ(ステップS6
3)、CPを次のベースデータBDa2の位置に更新す
る(ステップS64)。次に、キャッシュテーブル21
5内のキャッシュ内終了位置とCPの比較を行い、キャ
ッシュ内終了位置[ベースデータBDaαの格納位置の
次の位置]はCPより大きい値であるので(ステップS
65)、再度、CPで示されるベースデータBDa2を
キャッシュデータ216から読み出して(ステップS6
2)、照合プロセッサ22に渡して照合を実行させる
(ステップS63)。
【0074】以上の処理を順に行い(ステップS62〜
S65)、ベースデータBDaαの処理を終えると、C
Pの値はキャッシュ内終了位置[ベースデータBDaα
の格納位置の次の位置]以上の値となるのでこれらの処
理を抜ける(ステップS65)。
【0075】次に、サーチ範囲テーブル212の次のエ
ントリである、データベース3cの開始位置をBDPに
格納する(ステップS66)。BDPは終了マークでは
ないので(ステップS67)、データベース3cの終了
位置をBDEに格納する(ステップS68)。
【0076】次に、キャッシュテーブル215内にある
データベースの開始位置[データベース3aの開始位
置]とBDP[データベース3cの開始位置]、及び、
終了位置[データベース3aの終了位置]とBDE[デ
ータベース3cの終了位置]の比較を行い、一致してい
ないので次のような処理に進む(ステップS56)。
【0077】先ず、ディスク装置3のBDPで示される
位置からベースデータBDc1を読み出した上で(ステ
ップS57)、そのベースデータBDc1を照合プロセ
ッサ22に渡して照合を実行させ(ステップS58)、
BDPを次のベースデータBDc2の位置に更新する
(ステップS59)。次に、BDPとBDEの比較を行
い、BDP[ベースデータBDc2の格納位置]はBD
Eより小さい値であるので(ステップS60)、再度、
BDPで示されるベースデータBDc2をディスク装置
3から読み出して(ステップS57)、照合プロセッサ
22に渡して照合を実行させる(ステップD7)。以上
の処理を順に行い(ステップS57〜S60)、ベース
データBDcγの処理を終えると、BDPはBDE以上
の値となるのでこれらの処理を抜ける(ステップS6
0)。
【0078】データベース3cの処理が終わると、サー
チ範囲テーブル212の次のエントリである、終了マー
クをBDPに格納する(ステップS66)。BDPは終
了マークなのでサーチデータ情報30に示されたデータ
ベース3a,3cに格納されているベースデータの照合
は全て終了した(ステップS67)。そうすると、照合
プロセッサ22から照合結果を抜き出し、その内容を照
合結果通知42として上位装置1に返信する(ステップ
S69)。
【0079】以上でデータ処理装置側の照合処理は終了
する。
【0080】上位装置1が照合結果通知42を受信する
と(ステップS48)、その内容をオペレータに通知し
て上位装置側の照合処理も終了する。
【0081】以上が、上位装置1がデータ処理装置2に
対して、照合処理を行う場合の具体的な動作である。こ
の時点で、データ処理装置2がキャッシュエリア216
に保持しているデータベース3aは、キャッシュとして
保持したままであり、その内容も、上位装置1とデータ
処理装置2で整合性が取られている。この状態で、上位
装置1は引き続きデータ処理装置2に対して、次の照合
処理を行う。次の照合で、新たにオペレータから指示さ
れる内容により、サーチデータ情報30が作り直され、
その内容も変わる(しかし、データベース3aの内容に
変更はない)。新たなサーチデータ情報30に、データ
ベース3aが照合対象として入っていれば、データ処理
装置2が行う照合処理において、キャッシュエリア21
6に格納してあるデータベース3aを再度使用する(新
たにオペレータから指示された照合処理の動作も、上述
した照合処理の動作と同じである)。これは、上位装置
1がディスク装置3のデータベース3aを更新するまで
有効である。
【0082】次に、上位装置1がディスク装置3に存在
するデータベースにベースデータの追加を行う場合で、
そのデータベースがデータ処理装置2のキャッシュとし
て保持されていない場合の動作について説明する。な
お、ベースデータが追加されるデータベースは、データ
ベース3bとする。
【0083】データベース作成・更新手段11は、オペ
レータから、追加するベースデータBDと、そのベース
データを登録するデータベースの番号「3b」を受け取
る(ステップS1)。ディスク装置3にデータベース3
bが存在し(ステップS2)、かつ、そのデータベース
3bはデータ処理装置2のキャッシュとして存在してい
ないので(ステップS4)、図14に示すように、デー
タベース3bの末尾データ(ベースデータBDbβ)の
後ろに、追加するベースデータBDをベースデータBD
b(β+1)として格納する(ステップS7)。
【0084】以上が、データ処理装置2のキャッシュと
して保持されていないデータベースの更新を行う具体的
な動作である。この動作では、データ処理装置2のキャ
ッシュテーブル215,キャッシュエリア216(デー
タベース3aが格納してある)とも、変更されておら
ず、かつ、ディスク装置3のデータベース3aの内容も
また変更されていない。よって、キャッシュエリア21
6が保持しているデータベースの内容は、上位装置1,
データ処理装置2双方で整合性が保たれている。また、
キャッシュテーブル215,キャッシュエリア216の
内容も保持されたままであるので、継続してキャッシュ
エリア216を使った照合処理が可能である。
【0085】次に、上位装置1がディスク装置3に存在
するデータベースにベースデータの追加を行う場合で、
そのデータベースがデータ処理装置2のキャッシュとし
て保持されている場合の動作について説明する。
【0086】データベース作成・更新手段11は、オペ
レータから、追加するベースデータBDと、そのベース
データを登録するデータベースの番号「3a」を受け取
る(ステップS1)。ディスク装置3にデータベース3
aが存在し(ステップS2)、かつ、そのデータベース
3aはデータ処理装置2のキャッシュとして存在してい
るので(ステップS4)、データ処理装置1に対してキ
ャッシュクリア指示45を送信する(ステップS5)。
【0087】データ処理装置2のキャッシュ処理手段2
14がキャッシュクリア指示45を受信すると、キャッ
シュテーブル215の、データベース開始位置,データ
ベース終了位置,キャッシュ内先頭位置,キャッシュ内
終了位置を全てクリアする(ステップS31)。その
後、上位装置1に対してキャッシュクリア完了通知46
を送信する(ステップS32)。以上でデータ処理装置
側のキャッシュクリア処理は終了する。
【0088】上位装置1がキャッシュクリア完了通知4
6を受け取ると(ステップS6)、図15に示すよう
に、データベース3aの末尾データ(ベースデータBD
aα)の後ろに、追加するベースデータBDをベースデ
ータBDa(α+1)として格納する(ステップS
7)。
【0089】以上が、データ処理装置2のキャッシュと
して保持されているデータベースの更新を行う動作であ
る。この動作では、上位装置1はディスク装置3に存在
するデータベース3aを更新している。一方、データ処
理装置2のキャッシュテーブル215がクリアされてい
るので、この後オペレータからデータベース3aを用い
る照合要求があっても、データ処理装置2で行う照合処
理は、キャッシュテーブル215の内容とデータベース
3aの開始/終了位置とが一致しないため、キャッシュ
エリア216が保持しているベースデータを使用せず
に、ディスク装置3からベースデータを読み込んで照合
を行う。よって、キャッシュエリア216が保持してい
るデータベースの内容(ディスク装置3の内容と異なっ
ている)は、上位装置1,データ処理装置2双方で整合
性が保たれている。
【0090】次に、本実施の形態の効果について説明す
る。
【0091】本実施形態のデータベース装置は、データ
処理装置2のキャッシュエリア216にキャッシュすべ
きデータベースをオペレータが任意に指定でき、かつ、
データ処理装置2側でキャッシュが勝手に入れ替えられ
ない。このため、オペレータは、更新の予定がなく、し
かも照合対象として良く利用するデータベースを予めデ
ータ処理装置2内にキャッシュしておけば、その後複数
回行う照合処理でそのキャッシュデータを有効に活用で
き、データ処理装置2がディスク装置3からデータベー
スを読むためのI/Oを削減できる。また、データ処理
装置2にキャッシュされているデータベースが更新され
た場合、自動的にキャッシュがクリアされるので、更新
前のデータベースに対して検索が行われるといった事態
が解消される。
【0092】また、「発明が解決しようとする課題」の
箇所で触れたように、上位装置1から照合指示を受けた
ときに指定されたサーチ範囲のデータベースがキャッシ
ュエリアに存在しない場合に、データ処理装置2がディ
スク装置3から該当するデータベースをキャッシュエリ
アに読み込んで照合処理を進めるように構成すると、例
えば、キャッシュエリア216が空の状態で、データベ
ース3aを照合対象とする照合指示41A、データベー
ス3bを照合対象とする照合指示41B、再びデータベ
ース3aを照合対象とする照合指示41Cがその順に出
された場合、各照合指示ごとにキャッシュの入れ替えに
伴うI/Oが発生する。しかし、本実施の形態では、照
合指示41Aを出す前のデータベース3aのキャッシュ
指示に伴うI/Oと、照合指示41Bを処理するための
I/Oとの2回で済み、無駄なキャッシュの入れ替えを
防止できる。
【0093】図16は本発明の別の実施の形態に係るデ
ータベース装置のブロック図である。この例のデータベ
ース装置は、CPUおよびメモリ等を有する上位装置1
と、同じくCPUおよびメモリ等を有する制御プロセッ
サ21と照合プロセッサ22で構成されたデータ処理装
置2と、双方を相互に通信可能に接続する通信回線4
と、上位装置1と制御プロセッサ21とで共有されるデ
ィスク装置3と、上位装置1に接続された利用者入出力
装置5とで構成される。また、M1,M2は、フロッピ
ィディスク,CD−ROM,半導体メモリ等の機械読み
取り可能な記録媒体であり、記録媒体M1には上位装置
用プログラムが、記録媒体M2にはデータ処理装置用プ
ログラムがそれぞれ記録されている。記録媒体M1に記
録されたプログラムは上位装置1を構成するCPUによ
って読み取られ、その動作を制御することにより、上位
装置1上に図1に示したデータベース作成・更新手段1
1,照合指示手段12,キャッシュ指示手段13,キャ
ッシュクリア指示手段14を生成する。他方、記録媒体
M2に記録されたプログラムは制御プロセッサ21に読
み取られ、その動作を制御することにより、制御プロセ
ッサ21上に図1に示したサーチデータ処理手段21
1,サーチ範囲テーブル212,ベースデータ処理手段
213,キャッシュ処理手段214,キャッシュテーブ
ル215,キャッシュエリア216を生成する。
【0094】以上、本発明の実施の形態について説明し
たが、本発明は以上の実施の形態にのみ限定されず、そ
の他、各種の付加変更が可能である。例えば、以下のよ
うな付加変更が可能である。
【0095】(1)先の実施の形態では、本発明を指紋
照合を行うデータベース装置に適用したが、文献データ
ベースに対する全件検索など一般的な検索を行うデータ
ベース装置に本発明は適用可能である。
【0096】(2)先の実施の形態では、キャッシュエ
リア216に一つのデータベースを保持しているが、複
数のデータベースを保持する。この場合、キャッシュ指
示43で複数のデータベースのキャッシュを同時に指定
可能にしても良く、キャッシュクリア指示45では、キ
ャッシュエリア216に格納されている複数のデータベ
ースのうち、更新されたデータベースのキャッシュだけ
を無効化する。
【0097】(3)上位装置1のキャッシュ指示手段1
3からキャッシュ指示43で指示されたデータベース
が、キャッシュエリア216に入りきらない場合、デー
タ処理装置2のキャッシュ処理手段214はそのデータ
ベースをキャッシュエリア216に保持せず、「キャッ
シュ不可通知」を上位装置1に返す。上位装置1のキャ
ッシュ指示手段13はその通知を受けると、そのデータ
ベースはデータ処理装置2でキャッシュされていないと
認識し、利用者入出力装置5を通じてオペレータにその
旨通知する。
【0098】(4)上位装置1のキャッシュ指示手段1
3は、オペレータからの指示に従って、データ処理装置
2に対して、「キャッシュエリア残容量要求通知」を出
し、データ処理装置2のキャッシュ処理手段214がそ
の通知を受けると、未使用のキャッシュエリア容量を
「キャッシュエリア残容量報告通知」として、上位装置
1に返信し、キャッシュ指示手段13がそれをオペレー
タに通知する。オペレータは、その通知で残容量を知る
ことができるので、その残容量に入りきれるデータベー
スを探し、そのデータベースの「キャッシュ指示」をデ
ータ処理装置2に出すことができる。
【0099】(5)上位装置1のキャッシュクリア指示
手段14は、データ処理装置2にキャッシュされている
データベースが更新されたときにキャッシュクリア指示
45を送信する以外に、データ処理装置2にキャッシュ
されているデータベースの利用率が低下したときに自動
的にキャッシュクリア指示45を出し、キャッシュ指示
手段13にその旨を通知する。キャッシュされているデ
ータベースの利用率が低下したか否かは、例えば、その
データベースを使用しない照合指示41が一定回数続い
たか否か、或いは過去一定回数の照合指示41の内でそ
のデータベースが使用された照合指示の割合が所定値以
下になったか否か等で判断する。他方、キャッシュ指示
手段13は、上記の通知を受けると、別のデータベース
のキャッシュ指示43を出す。どのデータベースのキャ
ッシュを指示するかは、オペレータに任せる方法と自動
化する方法とがある。オペレータに任せる場合、利用者
入出力装置5にメッセージを出してキャッシュすべきデ
ータベースを指定させる。自動化する場合、ディスク装
置3に格納されている複数のデータベースの中から最適
なものを所定の方法で自ら選択する。その方法として
は、例えば、一定期間更新されず且つそのデータベース
を用いた照合指示41が一定回数を越えているデータベ
ース(複数ある場合には回数のより多いもの)を選択す
る方法や、一定期間更新されず且つ過去一定回数の照合
指示41のうちでそのデータベースを使用した照合指示
の割合が最も高いデータベースを選択する方法などがあ
る。これにより、キャッシュのヒット率が高まる。
【0100】(6)先の実施の形態では、キャッシュす
べきデータベースを利用者が指定したが、それに代え
て、またそれに加えて、キャッシュ指示手段13にキャ
ッシュすべきデータベースを自動的に判断してキャッシ
ュ指示を出す機能を持たせる。どのデータベースをキャ
ッシュすべきかは、前記(5)と同様に、例えば、一定
期間更新されず且つそのデータベースを用いた照合指示
41が一定回数を越えているデータベース(複数ある場
合には回数のより多いもの)を選択する方法や、一定期
間更新されず且つ過去一定回数の照合指示41のうちで
そのデータベースを使用した照合指示の割合が最も高い
データベースを選択する方法などがある。キャッシュ指
示手段13は、データ処理装置2中のデータベースのキ
ャッシュがそのデータベースの更新に伴って無効化され
た旨の報告をキャッシュクリア指示手段14から受けた
とき、前述の方法で選択した最適なデータベースのキャ
ッシュ指示41をデータ処理装置2に送出する。これに
より、キャッシュのヒット率が高まる。
【0101】(7)先の実施の形態では、照合指示41
とキャッシュ指示43とを別々の指示としたが、照合指
示41中にキャッシュ指示43を含め、1つの指示で済
ませることもできる。この場合、データ処理装置2で
は、受信した照合指示41中にキャッシュ指示が含まれ
ていれば、指示されたデータベースをキャッシュした後
に、照合の処理を開始することになる。含まれていなけ
れば、図1の実施の形態と同様の動作となる。
【0102】
【発明の効果】以上説明したように本発明によれば、以
下のような効果が得られる。
【0103】データ処理装置における処理速度の向上が
可能となる。その理由は、データ処理装置のキャッシュ
エリアにキャッシュすべきデータベースを上位装置から
指定でき、また、データ処理装置側でキャッシュを勝手
に入れ替えないようにしているため、検索対象として良
く利用するデータベースを予めデータ処理装置内にキャ
ッシュデータとして保持しておけば、複数回行う検索処
理でそのキャッシュデータを何回でも利用でき、その結
果、データ処理装置がディスク装置からデータベースを
読むためのI/Oが削減されるからである。
【0104】最新内容のデータベースに基づく検索を保
証することができる。その理由は、データ処理装置にキ
ャッシュされているデータベースが更新された場合、自
動的にキャッシュがクリアされるため、更新前のデータ
ベースに対して検索が行われることを防止できるからで
ある。
【図面の簡単な説明】
【図1】本発明の実施の形態に係るデータベース装置の
ブロック図である。
【図2】データベース作成・更新手段の処理例を示すフ
ローチャートである。
【図3】データベースおよびサーチデータ情報の構成例
を示す図である。
【図4】キャッシュ指示手段の処理例を示すフローチャ
ートである。
【図5】キャッシュ指示の内容例を示す図である。
【図6】キャッシュ指示を受信したときのキャッシュ処
理手段の処理例を示すフローチャートである。
【図7】キャッシュテーブルの内容例を示す図である。
【図8】キャッシュクリア指示を受信したときのキャッ
シュ処理手段の処理例を示すフローチャートである。
【図9】照合指示手段の処理例を示すフローチャートで
ある。
【図10】照合指示の内容例を示す図である。
【図11】サーチデータ処理手段およびベースデータ処
理手段の処理例を示すフローチャートである。
【図12】サーチ範囲テーブルの内容例を示す図であ
る。
【図13】本発明の実施の形態の具体的な動作の説明図
である。
【図14】データベースにデータを追加する様子を示す
図である。
【図15】データベースにデータを追加する様子を示す
図である。
【図16】本発明の別の実施の形態に係るデータベース
装置のブロック図である。
【図17】従来のデータベース装置のブロック図であ
る。
【符号の説明】
1…上位装置 11…データベース作成・更新手段 12…照合指示手段 13…キャッシュ指示手段 14…キャッシュクリア指示手段 2…データ処理装置 21…制御プロセッサ 211…サーチデータ処理手段 212…サーチ範囲テーブル 213…ベースデータ処理手段 214…キャッシュ処理手段 215…キャッシュテーブル 216…キャッシュエリア 22…照合プロセッサ 3…ディスク装置 30…サーチデータ情報 3a〜3m…データベース 4…通信回線 41…照合指示 42…照合結果通知 43…キャッシュ指示 44…キャッシュ完了通知 45…キャッシュクリア指示 46…キャッシュクリア完了通知 5…利用者入出力装置
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06F 17/30 G06F 15/40 350B 15/403 340Z

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 複数のデータベースを格納する外部記憶
    装置と、該外部記憶装置に格納されたデータベースのデ
    ータを対象として検索処理を実行するデータ処理装置
    と、該データ処理装置に対して対象となるデータベース
    を指定して検索処理を依頼する上位装置とから構成され
    るデータベース装置において、 前記データ処理装置のキャッシュエリアにキャッシュす
    べきデータベースを前記上位装置から指定可能とし、且
    つ、前記データ処理装置は、前記上位装置からの検索処
    理の依頼時、対象となるデータベースが前記キャッシュ
    エリアにキャッシュされていれば、それを参照して処理
    を進め、キャッシュされていなければ前記キャッシュエ
    リアを使わずに外部記憶装置から該当データベースのデ
    ータを順次に読み込んで処理を進めることを特徴とする
    データベース装置。
  2. 【請求項2】 前記上位装置は、前記外部記憶装置に格
    納された複数のデータベースのうち前記データ処理装置
    が前記キャッシュエリアにコピーを保持しているデータ
    ベースを更新する場合、前記データ処理装置に対してキ
    ャッシュをクリアするように指示を出し、前記データ処
    理装置はその指示に応答して前記キャッシュエリアに格
    納されているコピーを無効にすることを特徴とする請求
    項1記載のデータベース装置。
  3. 【請求項3】 複数のデータベースを格納する外部記憶
    装置と、該外部記憶装置に格納されたデータベースのデ
    ータを対象として検索処理を実行するデータ処理装置
    と、前記外部記憶装置に格納されたデータベースの更新
    処理および検索対象となるデータベースを指定して前記
    データ処理装置に検索を依頼する処理を行う上位装置と
    から構成されるデータベース装置において、 前記上位装置は、 前記データ処理装置に対し、キャッシュすべきデータベ
    ースを指示するキャッシュ指示手段と、 前記データ処理装置にキャッシュされているデータベー
    スを更新するとき、前記データ処理装置に対し、キャッ
    シュをクリアするように指示するキャッシュクリア指示
    手段とを備え、 前記データ処理装置は、 制御プロセッサと、 与えられたデータが与えられた検索条件に適合するか否
    かを調べる処理プロセッサとを備え、 前記制御プロセッサは、 前記外部記憶装置に格納された少なくとも1つのデータ
    ベースのコピーを格納し得る容量を有するキャッシュエ
    リアと、 前記上位装置の前記キャッシュ指示手段から指示された
    データベースを前記外部記憶装置から読み出して前記キ
    ャッシュエリアに格納し、前記上位装置の前記キャッシ
    ュクリア指示手段からキャッシュをクリアする指示を受
    けたときに前記キャッシュエリアに格納されたコピーを
    無効にするキャッシュ処理手段と、 前記上位装置からの検索要求時、検索条件を前記処理プ
    ロセッサに与えた後、指定された検索範囲内の個々のデ
    ータベースについて、そのデータベースのコピーが前記
    キャッシュエリアに存在すればそのコピー中の個々のデ
    ータを前記処理プロセッサに与えて処理を行わせ、その
    データベースのコピーが前記キャッシュエリアに存在し
    なければ前記外部記憶装置からそのデータベースの個々
    のデータを読み出して前記処理プロセッサに与えて処理
    を行わせる処理手段とを含むことを特徴とするデータベ
    ース装置。
  4. 【請求項4】 前記キャッシュ指示手段は、オペレータ
    から指定されたデータベースを、キャッシュすべきデー
    タベースとして指示することを特徴とする請求項3記載
    のデータベース装置。
  5. 【請求項5】 前記キャッシュ指示手段は、過去一定期
    間更新されず且つ最近の照合指示で良く利用されている
    データベースを、キャッシュすべきデータベースとして
    指示することを特徴とする請求項3記載のデータベース
    装置。
  6. 【請求項6】 複数のデータベースを格納する外部記憶
    装置と、該外部記憶装置に格納されたデータベースのデ
    ータを対象として検索処理を実行するデータ処理装置
    と、前記外部記憶装置に格納されたデータベースの更新
    処理および検索対象となるデータベースを指定して前記
    データ処理装置に検索を依頼する処理を行う上位装置と
    から構成されるデータベース装置において、 前記上位装置を構成するコンピュータを、 前記データ処理装置に対し、キャッシュすべきデータベ
    ースを指示するキャッシュ指示手段、 前記データ処理装置にキャッシュされているデータベー
    スを更新するとき、前記データ処理装置に対し、キャッ
    シュをクリアするように指示するキャッシュクリア指示
    手段、 として機能させ、 前記データ処理装置を構成する制御プロセッサを、 前記外部記憶装置に格納された少なくとも1つのデータ
    ベースのコピーを格納し得る容量を有するキャッシュエ
    リア、 前記上位装置の前記キャッシュ指示手段から指示された
    データベースを前記外部記憶装置から読み出して前記キ
    ャッシュエリアに格納し、前記上位装置の前記キャッシ
    ュクリア指示手段からキャッシュをクリアする指示を受
    けたときに前記キャッシュエリアに格納されたコピーを
    無効にするキャッシュ処理手段、 前記上位装置からの検索要求時、検索条件を、与えられ
    たデータが与えられた検索条件に適合するか否かを調べ
    る処理プロセッサに与えた後、指定された検索範囲内の
    個々のデータベースについて、そのデータベースのコピ
    ーが前記キャッシュエリアに存在すればそのコピー中の
    個々のデータを前記処理プロセッサに与えて処理を行わ
    せ、そのデータベースのコピーが前記キャッシュエリア
    に存在しなければ前記外部記憶装置からそのデータベー
    スの個々のデータを読み出して前記処理プロセッサに与
    えて処理を行わせる処理手段、 として機能させるプログラムを記録した機械読み取り可
    能な記録媒体。
JP11067930A 1999-03-15 1999-03-15 データベース装置及びプログラムを記録した機械読み取り可能な記録媒体 Pending JP2000267911A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11067930A JP2000267911A (ja) 1999-03-15 1999-03-15 データベース装置及びプログラムを記録した機械読み取り可能な記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11067930A JP2000267911A (ja) 1999-03-15 1999-03-15 データベース装置及びプログラムを記録した機械読み取り可能な記録媒体

Publications (1)

Publication Number Publication Date
JP2000267911A true JP2000267911A (ja) 2000-09-29

Family

ID=13359140

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11067930A Pending JP2000267911A (ja) 1999-03-15 1999-03-15 データベース装置及びプログラムを記録した機械読み取り可能な記録媒体

Country Status (1)

Country Link
JP (1) JP2000267911A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004032039A1 (ja) * 2002-10-04 2004-04-15 Sony Corporation データ管理システム及びデータ管理方法、仮想メモリ装置及び仮想メモリの制御方法、リーダ/ライタ装置、並びにicモジュール・アクセス装置及びicモジュールのアクセス制御方法
JP2010079627A (ja) * 2008-09-26 2010-04-08 Internatl Business Mach Corp <Ibm> データベースに対する問合せを処理する装置、処理方法、プログラムおよび記録媒体
JP4575993B1 (ja) * 2010-03-23 2010-11-04 株式会社野村総合研究所 リクエストを処理する情報処理装置、方法及びコンピュータプログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004032039A1 (ja) * 2002-10-04 2004-04-15 Sony Corporation データ管理システム及びデータ管理方法、仮想メモリ装置及び仮想メモリの制御方法、リーダ/ライタ装置、並びにicモジュール・アクセス装置及びicモジュールのアクセス制御方法
JP2010079627A (ja) * 2008-09-26 2010-04-08 Internatl Business Mach Corp <Ibm> データベースに対する問合せを処理する装置、処理方法、プログラムおよび記録媒体
JP4575993B1 (ja) * 2010-03-23 2010-11-04 株式会社野村総合研究所 リクエストを処理する情報処理装置、方法及びコンピュータプログラム
JP2011198250A (ja) * 2010-03-23 2011-10-06 Nomura Research Institute Ltd リクエストを処理する情報処理装置、方法及びコンピュータプログラム

Similar Documents

Publication Publication Date Title
JP4293258B2 (ja) 認証印刷システム、認証印刷方法
JP4162184B2 (ja) データベース管理システムの実行情報を取得する手段を有する記憶装置
US8549526B2 (en) Access control apparatus and access control method
US20090161921A1 (en) Authentication system
CN112887437A (zh) 区块链交易处理方法、区块链节点和区块链
JPH0863377A (ja) ファイルのディスクブロック制御方式
JP4104281B2 (ja) データベースアクセス方法
JP3173361B2 (ja) コンピュータシステム
JP4545873B2 (ja) 情報処理システム、記憶媒体
JP2000267911A (ja) データベース装置及びプログラムを記録した機械読み取り可能な記録媒体
JPH10111821A (ja) クライアント・サーバー・システム
JP4506292B2 (ja) キャッシュ制御方法およびデータ処理システム並びにその処理プログラム
JP3111912B2 (ja) ディスクキャッシュ制御方式
JP2002207618A (ja) オフラインデータベース編集システム
JP2005173823A (ja) Webアプリケーション及びそのデータ共有方法、並びにプログラム
JP4347196B2 (ja) コネクション割り当て方法、装置及びプログラム
JP2000259480A (ja) コンピュータネットワークのディスク管理方法およびディスク管理装置
JP2000082005A (ja) システム間データベース共用システムのデータ処理方式
JP3006527B2 (ja) クライアント/サーバ型データベースシステム
JP2721034B2 (ja) クラスタリング制御システム
JP2938047B1 (ja) データのバッファリングシステム
JP3003759B2 (ja) ジョブ制御方式
JP2835364B2 (ja) データ処理システム
JP2021196927A (ja) 情報処理装置、デバイス管理システム、その制御方法及びプログラム
JPH0784849A (ja) データアクセス制御方法