JP2004252789A - 情報検索装置、情報検索方法、情報検索プログラム及びそのプログラムを記録した記録媒体 - Google Patents
情報検索装置、情報検索方法、情報検索プログラム及びそのプログラムを記録した記録媒体 Download PDFInfo
- Publication number
- JP2004252789A JP2004252789A JP2003043454A JP2003043454A JP2004252789A JP 2004252789 A JP2004252789 A JP 2004252789A JP 2003043454 A JP2003043454 A JP 2003043454A JP 2003043454 A JP2003043454 A JP 2003043454A JP 2004252789 A JP2004252789 A JP 2004252789A
- Authority
- JP
- Japan
- Prior art keywords
- search
- information
- condition
- specified
- search condition
- 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
Images
Abstract
【課題】本発明は、分散データベースシステムで用いられるときにあって、ユーザの要求する検索結果を高速にユーザに提供できるようにする新たな情報検索技術の提供を目的とする。
【解決手段】過去に検索したことにより得てからそれほど時間が経過していないことで、分散データベースシステムを構成する要素データベースの側でまだ更新されていないと考えられる検索結果で、しかも、検索頻度の高い検索条件に対応付けられる検索結果を一時的に保存するようにして、検索要求で指定される検索条件が保存されている場合には、要素データベースを検索することなく、その検索条件に対応付けて保存している検索結果を出力するように処理する。これにより、ユーザが分散データベースシステムで情報検索を行う場合に、ユーザの要求する検索結果を高速にユーザに提供できるようになる。
【選択図】 図1
【解決手段】過去に検索したことにより得てからそれほど時間が経過していないことで、分散データベースシステムを構成する要素データベースの側でまだ更新されていないと考えられる検索結果で、しかも、検索頻度の高い検索条件に対応付けられる検索結果を一時的に保存するようにして、検索要求で指定される検索条件が保存されている場合には、要素データベースを検索することなく、その検索条件に対応付けて保存している検索結果を出力するように処理する。これにより、ユーザが分散データベースシステムで情報検索を行う場合に、ユーザの要求する検索結果を高速にユーザに提供できるようになる。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は分散データベースシステムで用いられる情報検索装置及びその方法と、その情報検索方法の実現に用いられる情報検索プログラム及びそのプログラムを記録した記録媒体とに関し、特に、ユーザの要求する検索結果を高速にユーザに提供できるようにする情報検索装置及びその方法と、その情報検索方法の実現に用いられる情報検索プログラム及びそのプログラムを記録した記録媒体とに関する。
【0002】
【従来の技術】
分散データベースシステムは、構成要素である要素データベースがネットワーク上に分散され、個々の要素データベースがそれぞれ独立のデータを保存している(例えば、特許文献1参照)。
【0003】
このように構成される従来の分散データベースシステムでは、ユーザの指定した検索条件で検索を行う場合、あらかじめ決められた受付サーバがその検索要求を受け付けて、全ての要素データベースに対して二次要求を発行して網羅検索を行うか、インデックス情報等を用いて特定の要素データベースを特定して、それに対して検索要求を発行するようにしていた。
【0004】
また、各要素データベースがユーザからの検索要求を受け付ける装置を具備するというシステムも存在する(例えば、特許文献2参照)。
【0005】
【特許文献1】
特開平8−255168号公報
【特許文献2】
特開平10−116293号公報
【0006】
【発明が解決しようとする課題】
しかしながら、分散データベースシステムでは、要素データベースがそれぞれ独立のデータを保存していることから、従来技術に従っていると、ユーザからの検索要求を受け付けた装置と検索条件に一致する情報を保存する要素データベースとの間の通信速度が、ユーザへの検索結果送信のボトルネックとなっていた。
【0007】
一部の分散データベースシステムでは、検索要求頻度の高い情報を共通データとして保存するという方法も用いられているが、その場合、共通データは固定されており、これから、データが更新された場合に、それを全てに反映させなくてはならず、そのデータの更新が煩雑であるという問題があった。
【0008】
しかも、共通データを保有する場合、共通データに合致しやすくするためには、共通データ格納用領域を大きくする必要があり、その結果、検索時間が長くなるという問題があった。
【0009】
本発明はかかる事情に鑑みてなされたものであり、分散データベースシステムで用いられるときにあって、ユーザの要求する検索結果を高速にユーザに提供できるようにする新たな情報検索技術の提供を目的とする。
【0010】
【課題を解決するための手段】
この目的を達成するために、本発明の情報検索装置は、基本的な構成として、端末からの検索条件を受け付け、その検索条件をキーにして自装置の管理する要素データベース及びネットワークを介して接続される要素データベースを検索して、その検索結果を出力する処理を行うために、▲1▼検索結果を一時的に保存するとともに、それに対応付ける形で、その検索結果の元となった検索条件と、その検索結果の保存を開始した日時情報とを一時的に保存する保存手段と、▲2▼保存手段に対して情報を登録する登録手段と、▲3▼検索要求で指定される検索条件が保存手段に保存されている場合に、その検索条件に対応付けられる検索結果を出力する検索手段と、▲4▼保存開始日時から規定時間が経過した検索結果を保存手段から削除する削除手段とを備えるように構成する。
【0011】
さらに、説明するならば、本発明の情報検索装置は、端末からの検索条件を受け付け、その検索条件をキーにして自装置の管理する要素データベース及びネットワークを介して接続される要素データベースを検索して、その検索結果を出力する処理を行うために、▲1▼検索結果を一時的に保存するとともに、それに対応付ける形で、その検索結果の元となった検索条件と、その検索結果の保存を開始した日時情報と、その検索結果の出力回数情報とを一時的に保存する保存手段と、▲2▼保存手段に対して情報を登録する登録手段と、▲3▼検索要求で指定される検索条件が保存手段に保存されている場合に、その検索条件に対応付けられる検索結果を出力するとともに、その検索条件に対応付けられる出力回数を更新する検索手段と、▲4▼出力回数に基づいて検索条件の検索頻度を評価する評価手段と、▲5▼保存開始日時から規定時間が経過した検索結果を保存手段から削除するとともに、評価手段による評価により得られる検索頻度の低い検索条件に対応付けられる検索結果を保存手段から削除する削除手段と、▲6▼検索要求で指定されることの多い検索条件を記録する記録手段と、▲7▼記録手段に対して情報を書き込む書込手段とを備えるように構成する。
【0012】
以上の各処理手段が動作することで実現される本発明の情報検索方法はコンピュータプログラムで実現できるものであり、このコンピュータプログラムは、半導体メモリなどのような適当な記録媒体に記録して提供したり、ネットワークを介して提供することができる。
【0013】
このように構成される本発明の情報検索装置では、端末から検索条件を指定する検索要求を受け取ると、検索手段は、その検索条件が保存手段に保存されているのか否かを判断して、保存されていないことを判断するときには、自装置の管理する要素データベース及びネットワークを介して接続される要素データベースを検索することで、その検索条件を充足する検索結果を得て、それを検索要求発行元の端末に出力する。
【0014】
この検索結果を受けて、登録手段は、保存手段に空き領域がある場合には、保存手段に対して、その検索結果を登録するとともに、それに対応付ける形で、その検索結果の元となった検索条件と、その検索結果の保存を開始した日時情報と、検索結果の出力回数である1とを登録する。
【0015】
このとき、登録手段は、検索条件の条件項目の数が規定以上となる場合には、その検索条件を指定する検索要求の発行される頻度が低いことを考慮して、保存手段への情報登録を行わないように処理することがある。
【0016】
この保存手段の保存データを受けて、検索手段は、検索要求で指定される検索条件が保存手段に保存されていることを判断するときには、要素データベースを検索せずに、その検索条件に対応付けられる検索結果を保存手段から得て、それを検索要求発行元の端末に出力するとともに、その検索条件に対応付けられる出力回数を1つインクリメントする形で更新する。
【0017】
この保存手段に保存される保存開始日時情報及び出力回数情報を受けて、評価手段は、例えば周期的に処理に入って、保存される検索条件毎に、保存開始日時と出力回数と現在日時とに基づいて単位期間換算の出力回数を算出して、それに基づいて、保存手段に保存される各検索条件の検索頻度を評価する。
【0018】
そして、削除手段は、例えば周期的に処理に入って、保存手段に保存される検索結果の内、保存開始日時から規定時間が経過した検索結果を検出して、それを削除することで、要素データベースの側で更新された可能性の高い古い検索結果を保存手段から削除するとともに、評価手段による評価により得られた検索頻度の低い検索条件に対応付けられる検索結果を削除することで、再利用の可能性の低い検索結果を保存手段から削除する。
【0019】
このようにして、保存手段には、保存を開始してから一定時間が経過していないことで、まだ要素データベースの側で更新されていないと考えられる検索結果で、かつ検索頻度の高い検索条件に対応付けられる検索結果が一時的に保存されるとともに、それに対応付ける形で、その検索結果の元となった検索条件と、その検索結果の保存を開始した日時情報と、その検索結果の出力回数情報とが一時的に保存されることになる。
【0020】
これから、検索手段は、かなりな数の検索要求については、要素データベースを検索することなく、直ちに、正確な検索結果を検索要求発行元の端末に出力することができるようになる。
【0021】
この構成を採るときに、検索頻度の高い検索条件に対応付けられる再利用の可能性の高い検索結果であっても、保存開始から一定時間経過したものについては保存手段から削除されることになり、その結果、保存手段から削除された後、その検索頻度の高い検索条件を指定する検索要求が発行されるときに、保存手段に空き領域がない場合には、その検索頻度の高い検索条件についての検索結果が保存手段に登録されないという不都合が起こる。
【0022】
そこで、書込手段は、記録手段に対して、評価手段による評価により得られる検索頻度の高い検索条件の情報を書き込むようにするとともに、登録手段は、検索要求で指定される検索条件が保存手段には保存されていないものの、記録手段に記録されている場合には、例えば検索頻度の低い検索条件に対応付けられる検索結果を削除することで保存手段に空き領域を確保して、その検索要求により得られる検索結果の情報を強制的に保存手段に登録するようにすることで、検索頻度の高い検索条件に対応付けられる最新の検索結果を優先的に保存手段に保存させておくように処理する。
【0023】
このようにして、本発明の情報検索装置では、まだ要素データベースの側では更新されていないと考えられる検索結果を一時的に保存するようにして、検索要求で指定される検索条件が保存されている場合には、要素データベースを検索することなく、その検索条件に対応付けて保存している検索結果を出力するように処理することから、ユーザが分散データベースシステムで情報検索を行う場合に、ユーザの要求する検索結果を高速にユーザに提供できるようになる。
【0024】
そして、この構成を採るときに、まだ要素データベースの側では更新されていないと考えられる検索結果の内、検索頻度の高い検索条件に対応付けられる検索結果を一時的に保存するという構成を用いることで、小さな保存領域を使いつつ、この効果を実現できるようになる。
【0025】
【発明の実施の形態】
以下、実施の形態に従って本発明を詳細に説明する。
【0026】
図1に、本発明の一実施形態例を図示する。
【0027】
図中、1は本発明の情報検索装置であって、検索条件を指定する検索要求を受け付け、その検索条件をキーにして分散データベースシステムを構成する要素データベースを検索して、その検索結果をユーザ端末2に出力するもの、2はユーザ端末であって、ネットワークなどを介して本発明の情報検索装置1に接続されて、本発明の情報検索装置1に対して検索要求を発行するもの、3は分散データベースシステムを構成する他の情報検索装置であって、ネットワークを介して本発明の情報検索装置1に接続されて、本発明の情報検索装置1からの検索要求に応答して自装置の管理する要素データベースを検索して、その検索結果を返信するものである。
【0028】
本発明の情報検索装置1は、自装置の管理する要素データベース10と、ユーザ端末2からの検索要求を受け付ける検索要求受付処理部11と、検索要求で指定された検索条件の指定するデータを検索する検索処理部12と、検索処理部12の検索した検索結果を一時的に保存する一時保存部13と、規定の周期に応答して起動されて、一時保存部13に保存される検索結果を削除する削除処理部14と、日時を計時する時計部15とを備える。
【0029】
この検索処理部12は、自装置の管理する要素データベース10を検索する機能(ローカル検索機能)と、ネットワークを介して接続される他の情報検索装置3の管理する要素データベースを検索する機能(グローバル検索機能)とを有して、要素データベースを検索する処理を行うグローバル検索処理部120と、一時保存部13を検索する処理を行うキャッシュ検索処理部121とを備える。
【0030】
一時保存部13は、キャッシュリスト130とコンテンツリスト131とを使って、検索処理部12の検索した検索結果を一時的に保存する。
【0031】
図2に、キャッシュリスト130及びコンテンツリスト131の一例を図示する。
【0032】
この図に示すように、コンテンツリスト131は、過去の検索結果(以下、検索コンテンツと称する)を一覧形式で保存するものであり、キャッシュリスト130は、その検索コンテンツに対応付ける形で、その検索コンテンツの元となった検索条件(J1〜Jn)と、その検索コンテンツをコンテンツリスト131に登録したときの日時(その検索コンテンツの保存を開始した日時)と、その検索コンテンツの出力回数とについて管理する。
【0033】
この図に示す例では、キャッシュリスト130は、検索条件/出力回数/登録日時について保存するm個のキャッシュエントリーを有して、それらの各キャッシュエントリーに対応付ける形で、コンテンツリスト131が検索コンテンツを保存するという構成を示している。
【0034】
なお、本実施形態例では、説明の便宜上、検索条件(J1〜Jn)についてはANDの検索条件式で指定される検索条件項目を想定しており、したがって、これらの検索条件(J1〜Jn)の値が全て同じであるということは、その検索条件で過去に検索を行ったことがあるということを意味している。
【0035】
図3及び図4に、検索処理部12の実行する処理フローの一実施形態例を図示し、図5及び図6に、削除処理部14の実行する処理フローの一実施形態例を図示する。
【0036】
次に、これらの処理フローに従って、本発明の情報検索装置1により実行される検索処理について詳細に説明する。
【0037】
先ず最初に、検索処理部12の実行する処理について説明する。
【0038】
検索処理部12は、ユーザ端末2から検索条件を指定して検索要求が発行されると、図3及び図4の処理フローに示すように、先ず最初に、ステップ100で、その検索条件を入力し、続くステップ101で、その検索条件で指定される条件項目の数がJn(キャッシュリスト130に登録可能な条件項目数)を超えるのか否かを判断する。
【0039】
この判断処理に従って、検索条件で指定される条件項目の数がJnを超えることを判断するときには、ステップ102に進んで、グローバル検索処理部120を使って要素データベースを検索して検索コンテンツを得て、続くステップ103で、その検索コンテンツを出力して、処理を終了する。
【0040】
すなわち、検索条件で指定される条件項目の数がJnを超えることを判断するときには、その検索条件を指定する検索要求の発行される頻度が低いことを考慮して、一時保存部13への情報登録を行わないように処理するとともに、それに合わせて、一時保存部13に保存されている検索コンテンツを利用しないように処理するのである。
【0041】
一方、ステップ101で、検索条件で指定される条件項目の数がJnを超えないことを判断するときには、ステップ104に進んで、その検索条件をキーにしてキャッシュリスト130を検索する。
【0042】
続いて、ステップ105で、この検索処理に従って、検索要求で指定された検索条件がキャッシュリスト130に保存されているというチェック結果が得られたのか否かを判断して、キャッシュリスト130にヒットしたことを判断するときには、ステップ106に進んで、ヒットしたキャッシュエントリーの持つ“出力回数”の値を1つインクリメントする。
【0043】
続いて、ステップ107で、ヒットしたキャッシュエントリーに対応付けられる検索コンテンツをコンテンツリスト131から取得し、続くステップ108で、その取得した検索コンテンツを出力して、処理を終了する。
【0044】
すなわち、検索要求で指定された検索条件がキャッシュリスト130に保存されているときには、要素データベースを検索せずに、その検索条件の指す過去に検索した検索コンテンツをコンテンツリスト131から取得して、それを出力するように処理するのである。
【0045】
一方、ステップ105で、検索要求で指定された検索条件がキャッシュリスト130に保存されていないことを判断するときには、ステップ109に進んで、キャッシュリスト130に空きがあるのか否かを判断して、空きがないことを判断するときには、ステップ102に進んで、グローバル検索処理部120を使って要素データベースを検索して検索コンテンツを得て、続くステップ103で、その検索コンテンツを出力して、処理を終了する。
【0046】
すなわち、検索要求で指定された検索条件がキャッシュリスト130に保存されていないときには、要素データベースを検索して検索コンテンツを得て、それを出力するように処理するのである。そして、このとき、キャッシュリスト130に空きがないことから、要素データベースを検索することにより得られた検索コンテンツをコンテンツリスト131に登録(保存)しないように処理するのである。
【0047】
一方、ステップ109で、キャッシュリスト130に空きがあることを判断するときには、ステップ110に進んで、グローバル検索処理部120を使って要素データベースを検索して検索コンテンツを得て、続くステップ111で、空いているキャッシュエントリーに、検索条件を登録するとともに、そのキャッシュエントリーの持つ“登録日時”に現在日時を登録し、さらに、そのキャッシュエントリーの持つ“出力回数”に1を登録する。
【0048】
続いて、ステップ112で、検索コンテンツをキャッシュエントリーに登録した情報と対応をとる形でコンテンツリスト131に登録し、続くステップ113で、その検索コンテンツを出力して、処理を終了する。
【0049】
すなわち、検索要求で指定された検索条件がキャッシュリスト130に保存されていないときには、要素データベースを検索して検索コンテンツを得て、それを出力するように処理するのである。そして、このとき、キャッシュリスト130に空きがあることから、要素データベースを検索することにより得られた検索コンテンツをコンテンツリスト131に登録(保存)するように処理するのである。
【0050】
次に、削除処理部14の実行する処理について説明する。
【0051】
削除処理部14は、規定の処理周期に到達すると、図5及び図6の処理フローに示すように、先ず最初に、ステップ200で、現在の日時を取得する。続いて、ステップ201で、キャッシュリスト130の中から未処理のキャッシュエントリーを1つ選択することで、キャッシュリスト130に登録されている未処理の検索条件を1つ選択する。
【0052】
続いて、ステップ202で、取得した現在日時とその選択したキャッシュエントリーの持つ登録日時との差分値を算出する。すなわち、その選択したキャッシュエントリーにデータを登録してからの経過時間を算出するのである。
【0053】
続いて、ステップ203で、その算出した経過時間を規定の閾値と比較することで、その算出した経過時間がタイムオーバーしているのか否かを判断して、タイムオーバーしていないことを判断するときには、ステップ204に進んで、その算出した経過時間と選択したキャッシュエントリーの持つ出力回数とから単位期間換算の検索頻度を算出する。例えば、10日に換算すると何回の出力回数であるのかということを算出することで、単位期間換算の検索頻度を算出するのである。
【0054】
続いて、ステップ205で、その算出した検索頻度を規定の閾値と比較することで、ステップ201で選択した検索条件が検索頻度の低い検索条件であるのか否かを判断する。
【0055】
この判断処理に従って、ステップ201で選択した検索条件が検索頻度の低い検索条件であることを判断するときには、ステップ206に進んで、選択したキャッシュエントリーのデータを削除し、続くステップ207で、選択したキャッシュエントリーに対応付けられる検索コンテンツをコンテンツリスト131から削除する。一方、この判断処理に従って、ステップ201で選択した検索条件が検索頻度の低い検索条件ではないことを判断するときには、このステップ206/ステップ207の処理を省略する。
【0056】
続いて、ステップ208で、キャッシュリスト130の全てのキャッシュエントリーについて処理を終了したのか否かを判断して、全てのキャッシュエントリーについて処理を終了していないことを判断するときには、ステップ201に戻り、全てのキャッシュエントリーについて処理を終了したことを判断するときには、処理を終了する。
【0057】
一方、ステップ203で、ステップ202で算出した経過時間がタイムオーバーしていることを判断するときには、ステップ209に進んで、選択したキャッシュエントリーのデータを削除し、続くステップ210で、選択したキャッシュエントリーに対応付けられる検索コンテンツをコンテンツリスト131から削除する。
【0058】
続いて、ステップ211で、キャッシュリスト130の全てのキャッシュエントリーについて処理を終了したのか否かを判断して、全てのキャッシュエントリーについて処理を終了していないことを判断するときには、ステップ201に戻り、全てのキャッシュエントリーについて処理を終了したことを判断するときには、処理を終了する。
【0059】
このようにして、削除処理部14は、規定の処理周期に到達すると、古くなった検索コンテンツを削除するとともに、古くなってはいないものの、あまり検索要求のない検索コンテンツについても削除することで、キャッシュリスト130/コンテンツリスト131に空きを作るように処理するのである。
【0060】
そして、これを受けて、検索処理部12は、図3及び図4の処理フローで説明したように、検索要求で指定された検索条件がキャッシュリスト130に登録されている場合には、要素データベースを検索せずに、その検索条件の指す過去に検索した検索コンテンツをコンテンツリスト131から取得して、それを出力するように処理するのである。
【0061】
このようにして、本発明の情報検索装置1によれば、ユーザの要求する検索結果を高速にユーザに提供できるようになる。
【0062】
以上に説明した実施形態例に従うと、タイムオーバーによりキャッシュリスト130から削除された検索条件が極めて検索頻度の高いものであった場合でも、削除された後に、再び検索要求でその検索条件が指定されたとして、キャッシュリスト130に空きがあるとは限らないことで、その検索条件がキャッシュリスト130に登録されないことが起こるという不都合が起こる。
【0063】
図7に、このような不都合を解消する機能を持つ本発明の情報検索装置1の他の実施形態例を図示する。
【0064】
この図7に示す実施形態例に従う場合には、本発明の情報検索装置1は、多頻度検索条件記録域16という記録領域を用意する構成を採って、タイムオーバーによりキャッシュリスト130から検索条件を削除するときに、その検索条件の検索頻度が極めて高い場合には、その検索条件の情報を多頻度検索条件記録域16に記録するようにして、再び検索要求でその検索条件が指定された場合には、キャッシュリスト130に強制的に登録するという処理を行うことになる。
【0065】
図8及び図9に、この処理を実現するために削除処理部14の実行する処理フローの一実施形態例を図示し、図10ないし図12に、この処理を実現するために検索処理部12の実行する処理フローの一実施形態例を図示する。
【0066】
次に、これらの処理フローに従って、図7のように構成される本発明の情報検索装置1により実行される検索処理について詳細に説明する。
【0067】
先ず最初に、削除処理部14の実行する処理について説明する。
【0068】
削除処理部14は、規定の処理周期に到達すると、図8及び図9の処理フローのステップ300〜ステップ308で、図5及び図6の処理フローのステップ200〜ステップ208と同一の処理を実行し、この処理を実行するときに、ステップ303で、ステップ302で算出した経過時間がタイムオーバーしていることを判断するときには、ステップ309に進んで、その経過時間とステップ301で選択したキャッシュエントリーの持つ出力回数とから単位期間換算の検索頻度を算出する。例えば、10日に換算すると何回の出力回数であるのかということを算出することで、単位期間換算の検索頻度を算出するのである。
【0069】
続いて、ステップ310で、その算出した検索頻度を規定の閾値と比較することで、ステップ301で選択した検索条件が検索頻度の極めて高い検索条件であるのか否かを判断する。
【0070】
この判断処理に従って、ステップ301で選択した検索条件が検索頻度の極めて高い検索条件であることを判断するときには、ステップ331に進んで、多頻度検索条件記録域16に、その選択した検索条件の情報を記録し、一方、その選択した検索条件が検索頻度の極めて高い検索条件でないことを判断するときには、このステップ311の処理を省略する。
【0071】
続いて、ステップ312(図5及び図6の処理フローのステップ209に相当する)で、選択したキャッシュエントリーのデータを削除し、続くステップ313(図5及び図6の処理フローのステップ210に相当する)で、選択したキャッシュエントリーに対応付けられる検索コンテンツをコンテンツリスト131から削除する。
【0072】
続いて、ステップ314(図5及び図6の処理フローのステップ211に相当する)で、キャッシュリスト130の全てのキャッシュエントリーについて処理を終了したのか否かを判断して、全てのキャッシュエントリーについて処理を終了していないことを判断するときには、ステップ301に戻り、全てのキャッシュエントリーについて処理を終了したことを判断するときには、処理を終了する。
【0073】
このようにして、削除処理部14は、規定の処理周期に到達すると、古くなった検索コンテンツを削除するとともに、古くなってはいないものの、あまり検索要求のない検索コンテンツについても削除することで、キャッシュリスト130/コンテンツリスト131に空きを作るように処理し、さらに、古くなった検索コンテンツを削除するときに、その検索コンテンツの検索元となった検索条件の検索頻度が極めて高い場合には、その検索条件の情報を多頻度検索条件記録域16に記録するように処理するのである。
【0074】
次に、検索処理部12の実行する処理について説明する。
【0075】
検索処理部12は、ユーザ端末2から検索条件を指定して検索要求が発行されると、図10ないし図12の処理フローのステップ400〜ステップ408で、図3及び図4の処理フローのステップ100〜ステップ108と同一の処理を実行し、この処理を実行するときに、ステップ405で、検索要求で指定された検索条件がキャッシュリスト130に保存されていないことを判断するときには、ステップ409に進んで、キャッシュリスト130に空きがあるのか否かを判断する。
【0076】
この判断処理に従って、キャッシュリスト130に空きがあることを判断するときには、ステップ410に進んで、グローバル検索処理部120を使って要素データベースを検索して検索コンテンツを得て、続くステップ411で、空いているキャッシュエントリーに、検索条件を登録するとともに、そのキャッシュエントリーの持つ“登録日時”に現在日時を登録し、さらに、そのキャッシュエントリーの持つ“出力回数”に1を登録する。
【0077】
続いて、ステップ412で、検索コンテンツをキャッシュエントリーに登録した情報と対応をとる形でコンテンツリスト131に登録する。
【0078】
続いて、ステップ413で、キャッシュエントリーに登録した検索条件が多頻度検索条件記録域16に記録されているのか否かを判断して、記録されていることを判断するときには、ステップ414に進んで、その記録を削除し、一方、記録されていないことを判断するときには、このステップ414の処理を省略する。
【0079】
続いて、ステップ415で、ステップ410で得た検索コンテンツを出力して、処理を終了する。
【0080】
一方、ステップ409で、キャッシュリスト130に空きがないことを判断するときには、ステップ416に進んで、検索要求で指定された検索条件が多頻度検索条件記録域16に記録されているのか否かを判断する。
【0081】
この判断処理に従って、検索要求で指定された検索条件が多頻度検索条件記録域16に記録されていないことを判断するときには、ステップ417に進んで、グローバル検索処理部120を使って要素データベースを検索して検索コンテンツを得て、続くステップ418で、その検索コンテンツを出力して、処理を終了する。
【0082】
一方、ステップ416で、検索要求で指定された検索条件が多頻度検索条件記録域16に記録されていることを判断するときには、ステップ419に進んで、キャッシュリスト130のキャッシュエントリー毎に、現在日時と登録日時との差分値を算出して、その差分値と出力回数とから単位期間換算の検索頻度を算出する。例えば、10日に換算すると何回の出力回数であるのかということを算出することで、単位期間換算の検索頻度を算出するのである。
【0083】
続いて、ステップ420で、その算出した検索頻度に従って、最も低い検索頻度を持つキャッシュエントリーを特定して、その特定したキャッシュエントリーのデータを削除し、続くステップ421で、その削除したキャッシュエントリーに対応付けられる検索コンテンツをコンテンツリスト131から削除する。
【0084】
続いて、ステップ422で、グローバル検索処理部120を使って要素データベースを検索して検索コンテンツを得て、続くステップ423で、データを削除したキャッシュエントリーに、検索条件を登録するとともに、そのキャッシュエントリーの持つ“登録日時”に現在日時を登録し、さらに、そのキャッシュエントリーの持つ“出力回数”に1を登録する。
【0085】
続いて、ステップ424で、検索コンテンツをキャッシュエントリーに登録した情報と対応をとる形でコンテンツリスト131に登録する。続いて、ステップ425で、登録した検索条件を多頻度検索条件記録域16から削除する。
【0086】
続いて、ステップ426で、ステップ422で得た検索コンテンツを出力して、処理を終了する。
【0087】
このようにして、検索処理部12は、検索要求で指定された検索条件がキャッシュリスト130に登録されている場合には、要素データベースを検索せずに、その検索条件の指す過去に検索した検索コンテンツをコンテンツリスト131から取得して、それを出力するとともに、その処理を実行するときに、多頻度検索条件記録域16に記録される検索条件が検索要求で指定される場合には、その検索条件をキャッシュエントリーに強制的に登録することで、新たに得た検索コンテンツをコンテンツリスト131に登録するように処理するのである。
【0088】
これにより、極めて検索頻度の高い検索条件に基づいて検索される検索コンテンツについては、常にコンテンツリスト131に登録されることを実現できるようになるのである。
【0089】
図示実施形態例に従って本発明を説明したが、本発明はこれに限定されるものではない。例えば、実施形態例では、一時保存部13に保存されてからの経過時間のチェックと、一時保存部13に保存されている検索条件の検索頻度の評価を同一周期で行うようにしたが、異なる周期で行うようにしてもよい。また、実施形態例では、一時保存部13に保存されているのか否かの判断を周期的に行うようにしたが、検索要求が発行された時点にその都度行うようにしてもよい。
【0090】
【発明の効果】
以上説明したように、本発明では、まだ要素データベースの側では更新されていないと考えられる検索結果を一時的に保存するようにして、検索要求で指定される検索条件が保存されている場合には、要素データベースを検索することなく、その検索条件に対応付けて保存している検索結果を出力するように処理することから、ユーザが分散データベースシステムで情報検索を行う場合に、ユーザの要求する検索結果を高速にユーザに提供できるようになる。
【0091】
そして、この構成を採るときに、まだ要素データベースの側では更新されていないと考えられる検索結果の内、検索頻度の高い検索条件に対応付けられる検索結果を一時的に保存するという構成を用いることで、小さな保存領域を使いつつ、この効果を実現できるようになる。
【図面の簡単な説明】
【図1】本発明の一実施形態例である。
【図2】キャッシュリスト及びコンテンツリストの一例を示す図である。
【図3】検索処理部の実行する処理フローの一実施形態例である。
【図4】検索処理部の実行する処理フローの一実施形態例である。
【図5】削除処理部の実行する処理フローの一実施形態例である。
【図6】削除処理部の実行する処理フローの一実施形態例である。
【図7】本発明の他の実施形態例である。
【図8】削除処理部の実行する処理フローの他の実施形態例である。
【図9】削除処理部の実行する処理フローの他の実施形態例である。
【図10】検索処理部の実行する処理フローの他の実施形態例である。
【図11】検索処理部の実行する処理フローの他の実施形態例である。
【図12】検索処理部の実行する処理フローの他の実施形態例である。
【符号の説明】
1 情報検索装置
10 要素データベース
11 検索要求受付処理部
12 検索処理部
13 一時保存部
14 削除処理部
15 時計部
16 多頻度検索条件記録域
120 グローバル検索処理部
121 キャッシュ検索処理部
130 キャッシュリスト
131 コンテンツリスト
【発明の属する技術分野】
本発明は分散データベースシステムで用いられる情報検索装置及びその方法と、その情報検索方法の実現に用いられる情報検索プログラム及びそのプログラムを記録した記録媒体とに関し、特に、ユーザの要求する検索結果を高速にユーザに提供できるようにする情報検索装置及びその方法と、その情報検索方法の実現に用いられる情報検索プログラム及びそのプログラムを記録した記録媒体とに関する。
【0002】
【従来の技術】
分散データベースシステムは、構成要素である要素データベースがネットワーク上に分散され、個々の要素データベースがそれぞれ独立のデータを保存している(例えば、特許文献1参照)。
【0003】
このように構成される従来の分散データベースシステムでは、ユーザの指定した検索条件で検索を行う場合、あらかじめ決められた受付サーバがその検索要求を受け付けて、全ての要素データベースに対して二次要求を発行して網羅検索を行うか、インデックス情報等を用いて特定の要素データベースを特定して、それに対して検索要求を発行するようにしていた。
【0004】
また、各要素データベースがユーザからの検索要求を受け付ける装置を具備するというシステムも存在する(例えば、特許文献2参照)。
【0005】
【特許文献1】
特開平8−255168号公報
【特許文献2】
特開平10−116293号公報
【0006】
【発明が解決しようとする課題】
しかしながら、分散データベースシステムでは、要素データベースがそれぞれ独立のデータを保存していることから、従来技術に従っていると、ユーザからの検索要求を受け付けた装置と検索条件に一致する情報を保存する要素データベースとの間の通信速度が、ユーザへの検索結果送信のボトルネックとなっていた。
【0007】
一部の分散データベースシステムでは、検索要求頻度の高い情報を共通データとして保存するという方法も用いられているが、その場合、共通データは固定されており、これから、データが更新された場合に、それを全てに反映させなくてはならず、そのデータの更新が煩雑であるという問題があった。
【0008】
しかも、共通データを保有する場合、共通データに合致しやすくするためには、共通データ格納用領域を大きくする必要があり、その結果、検索時間が長くなるという問題があった。
【0009】
本発明はかかる事情に鑑みてなされたものであり、分散データベースシステムで用いられるときにあって、ユーザの要求する検索結果を高速にユーザに提供できるようにする新たな情報検索技術の提供を目的とする。
【0010】
【課題を解決するための手段】
この目的を達成するために、本発明の情報検索装置は、基本的な構成として、端末からの検索条件を受け付け、その検索条件をキーにして自装置の管理する要素データベース及びネットワークを介して接続される要素データベースを検索して、その検索結果を出力する処理を行うために、▲1▼検索結果を一時的に保存するとともに、それに対応付ける形で、その検索結果の元となった検索条件と、その検索結果の保存を開始した日時情報とを一時的に保存する保存手段と、▲2▼保存手段に対して情報を登録する登録手段と、▲3▼検索要求で指定される検索条件が保存手段に保存されている場合に、その検索条件に対応付けられる検索結果を出力する検索手段と、▲4▼保存開始日時から規定時間が経過した検索結果を保存手段から削除する削除手段とを備えるように構成する。
【0011】
さらに、説明するならば、本発明の情報検索装置は、端末からの検索条件を受け付け、その検索条件をキーにして自装置の管理する要素データベース及びネットワークを介して接続される要素データベースを検索して、その検索結果を出力する処理を行うために、▲1▼検索結果を一時的に保存するとともに、それに対応付ける形で、その検索結果の元となった検索条件と、その検索結果の保存を開始した日時情報と、その検索結果の出力回数情報とを一時的に保存する保存手段と、▲2▼保存手段に対して情報を登録する登録手段と、▲3▼検索要求で指定される検索条件が保存手段に保存されている場合に、その検索条件に対応付けられる検索結果を出力するとともに、その検索条件に対応付けられる出力回数を更新する検索手段と、▲4▼出力回数に基づいて検索条件の検索頻度を評価する評価手段と、▲5▼保存開始日時から規定時間が経過した検索結果を保存手段から削除するとともに、評価手段による評価により得られる検索頻度の低い検索条件に対応付けられる検索結果を保存手段から削除する削除手段と、▲6▼検索要求で指定されることの多い検索条件を記録する記録手段と、▲7▼記録手段に対して情報を書き込む書込手段とを備えるように構成する。
【0012】
以上の各処理手段が動作することで実現される本発明の情報検索方法はコンピュータプログラムで実現できるものであり、このコンピュータプログラムは、半導体メモリなどのような適当な記録媒体に記録して提供したり、ネットワークを介して提供することができる。
【0013】
このように構成される本発明の情報検索装置では、端末から検索条件を指定する検索要求を受け取ると、検索手段は、その検索条件が保存手段に保存されているのか否かを判断して、保存されていないことを判断するときには、自装置の管理する要素データベース及びネットワークを介して接続される要素データベースを検索することで、その検索条件を充足する検索結果を得て、それを検索要求発行元の端末に出力する。
【0014】
この検索結果を受けて、登録手段は、保存手段に空き領域がある場合には、保存手段に対して、その検索結果を登録するとともに、それに対応付ける形で、その検索結果の元となった検索条件と、その検索結果の保存を開始した日時情報と、検索結果の出力回数である1とを登録する。
【0015】
このとき、登録手段は、検索条件の条件項目の数が規定以上となる場合には、その検索条件を指定する検索要求の発行される頻度が低いことを考慮して、保存手段への情報登録を行わないように処理することがある。
【0016】
この保存手段の保存データを受けて、検索手段は、検索要求で指定される検索条件が保存手段に保存されていることを判断するときには、要素データベースを検索せずに、その検索条件に対応付けられる検索結果を保存手段から得て、それを検索要求発行元の端末に出力するとともに、その検索条件に対応付けられる出力回数を1つインクリメントする形で更新する。
【0017】
この保存手段に保存される保存開始日時情報及び出力回数情報を受けて、評価手段は、例えば周期的に処理に入って、保存される検索条件毎に、保存開始日時と出力回数と現在日時とに基づいて単位期間換算の出力回数を算出して、それに基づいて、保存手段に保存される各検索条件の検索頻度を評価する。
【0018】
そして、削除手段は、例えば周期的に処理に入って、保存手段に保存される検索結果の内、保存開始日時から規定時間が経過した検索結果を検出して、それを削除することで、要素データベースの側で更新された可能性の高い古い検索結果を保存手段から削除するとともに、評価手段による評価により得られた検索頻度の低い検索条件に対応付けられる検索結果を削除することで、再利用の可能性の低い検索結果を保存手段から削除する。
【0019】
このようにして、保存手段には、保存を開始してから一定時間が経過していないことで、まだ要素データベースの側で更新されていないと考えられる検索結果で、かつ検索頻度の高い検索条件に対応付けられる検索結果が一時的に保存されるとともに、それに対応付ける形で、その検索結果の元となった検索条件と、その検索結果の保存を開始した日時情報と、その検索結果の出力回数情報とが一時的に保存されることになる。
【0020】
これから、検索手段は、かなりな数の検索要求については、要素データベースを検索することなく、直ちに、正確な検索結果を検索要求発行元の端末に出力することができるようになる。
【0021】
この構成を採るときに、検索頻度の高い検索条件に対応付けられる再利用の可能性の高い検索結果であっても、保存開始から一定時間経過したものについては保存手段から削除されることになり、その結果、保存手段から削除された後、その検索頻度の高い検索条件を指定する検索要求が発行されるときに、保存手段に空き領域がない場合には、その検索頻度の高い検索条件についての検索結果が保存手段に登録されないという不都合が起こる。
【0022】
そこで、書込手段は、記録手段に対して、評価手段による評価により得られる検索頻度の高い検索条件の情報を書き込むようにするとともに、登録手段は、検索要求で指定される検索条件が保存手段には保存されていないものの、記録手段に記録されている場合には、例えば検索頻度の低い検索条件に対応付けられる検索結果を削除することで保存手段に空き領域を確保して、その検索要求により得られる検索結果の情報を強制的に保存手段に登録するようにすることで、検索頻度の高い検索条件に対応付けられる最新の検索結果を優先的に保存手段に保存させておくように処理する。
【0023】
このようにして、本発明の情報検索装置では、まだ要素データベースの側では更新されていないと考えられる検索結果を一時的に保存するようにして、検索要求で指定される検索条件が保存されている場合には、要素データベースを検索することなく、その検索条件に対応付けて保存している検索結果を出力するように処理することから、ユーザが分散データベースシステムで情報検索を行う場合に、ユーザの要求する検索結果を高速にユーザに提供できるようになる。
【0024】
そして、この構成を採るときに、まだ要素データベースの側では更新されていないと考えられる検索結果の内、検索頻度の高い検索条件に対応付けられる検索結果を一時的に保存するという構成を用いることで、小さな保存領域を使いつつ、この効果を実現できるようになる。
【0025】
【発明の実施の形態】
以下、実施の形態に従って本発明を詳細に説明する。
【0026】
図1に、本発明の一実施形態例を図示する。
【0027】
図中、1は本発明の情報検索装置であって、検索条件を指定する検索要求を受け付け、その検索条件をキーにして分散データベースシステムを構成する要素データベースを検索して、その検索結果をユーザ端末2に出力するもの、2はユーザ端末であって、ネットワークなどを介して本発明の情報検索装置1に接続されて、本発明の情報検索装置1に対して検索要求を発行するもの、3は分散データベースシステムを構成する他の情報検索装置であって、ネットワークを介して本発明の情報検索装置1に接続されて、本発明の情報検索装置1からの検索要求に応答して自装置の管理する要素データベースを検索して、その検索結果を返信するものである。
【0028】
本発明の情報検索装置1は、自装置の管理する要素データベース10と、ユーザ端末2からの検索要求を受け付ける検索要求受付処理部11と、検索要求で指定された検索条件の指定するデータを検索する検索処理部12と、検索処理部12の検索した検索結果を一時的に保存する一時保存部13と、規定の周期に応答して起動されて、一時保存部13に保存される検索結果を削除する削除処理部14と、日時を計時する時計部15とを備える。
【0029】
この検索処理部12は、自装置の管理する要素データベース10を検索する機能(ローカル検索機能)と、ネットワークを介して接続される他の情報検索装置3の管理する要素データベースを検索する機能(グローバル検索機能)とを有して、要素データベースを検索する処理を行うグローバル検索処理部120と、一時保存部13を検索する処理を行うキャッシュ検索処理部121とを備える。
【0030】
一時保存部13は、キャッシュリスト130とコンテンツリスト131とを使って、検索処理部12の検索した検索結果を一時的に保存する。
【0031】
図2に、キャッシュリスト130及びコンテンツリスト131の一例を図示する。
【0032】
この図に示すように、コンテンツリスト131は、過去の検索結果(以下、検索コンテンツと称する)を一覧形式で保存するものであり、キャッシュリスト130は、その検索コンテンツに対応付ける形で、その検索コンテンツの元となった検索条件(J1〜Jn)と、その検索コンテンツをコンテンツリスト131に登録したときの日時(その検索コンテンツの保存を開始した日時)と、その検索コンテンツの出力回数とについて管理する。
【0033】
この図に示す例では、キャッシュリスト130は、検索条件/出力回数/登録日時について保存するm個のキャッシュエントリーを有して、それらの各キャッシュエントリーに対応付ける形で、コンテンツリスト131が検索コンテンツを保存するという構成を示している。
【0034】
なお、本実施形態例では、説明の便宜上、検索条件(J1〜Jn)についてはANDの検索条件式で指定される検索条件項目を想定しており、したがって、これらの検索条件(J1〜Jn)の値が全て同じであるということは、その検索条件で過去に検索を行ったことがあるということを意味している。
【0035】
図3及び図4に、検索処理部12の実行する処理フローの一実施形態例を図示し、図5及び図6に、削除処理部14の実行する処理フローの一実施形態例を図示する。
【0036】
次に、これらの処理フローに従って、本発明の情報検索装置1により実行される検索処理について詳細に説明する。
【0037】
先ず最初に、検索処理部12の実行する処理について説明する。
【0038】
検索処理部12は、ユーザ端末2から検索条件を指定して検索要求が発行されると、図3及び図4の処理フローに示すように、先ず最初に、ステップ100で、その検索条件を入力し、続くステップ101で、その検索条件で指定される条件項目の数がJn(キャッシュリスト130に登録可能な条件項目数)を超えるのか否かを判断する。
【0039】
この判断処理に従って、検索条件で指定される条件項目の数がJnを超えることを判断するときには、ステップ102に進んで、グローバル検索処理部120を使って要素データベースを検索して検索コンテンツを得て、続くステップ103で、その検索コンテンツを出力して、処理を終了する。
【0040】
すなわち、検索条件で指定される条件項目の数がJnを超えることを判断するときには、その検索条件を指定する検索要求の発行される頻度が低いことを考慮して、一時保存部13への情報登録を行わないように処理するとともに、それに合わせて、一時保存部13に保存されている検索コンテンツを利用しないように処理するのである。
【0041】
一方、ステップ101で、検索条件で指定される条件項目の数がJnを超えないことを判断するときには、ステップ104に進んで、その検索条件をキーにしてキャッシュリスト130を検索する。
【0042】
続いて、ステップ105で、この検索処理に従って、検索要求で指定された検索条件がキャッシュリスト130に保存されているというチェック結果が得られたのか否かを判断して、キャッシュリスト130にヒットしたことを判断するときには、ステップ106に進んで、ヒットしたキャッシュエントリーの持つ“出力回数”の値を1つインクリメントする。
【0043】
続いて、ステップ107で、ヒットしたキャッシュエントリーに対応付けられる検索コンテンツをコンテンツリスト131から取得し、続くステップ108で、その取得した検索コンテンツを出力して、処理を終了する。
【0044】
すなわち、検索要求で指定された検索条件がキャッシュリスト130に保存されているときには、要素データベースを検索せずに、その検索条件の指す過去に検索した検索コンテンツをコンテンツリスト131から取得して、それを出力するように処理するのである。
【0045】
一方、ステップ105で、検索要求で指定された検索条件がキャッシュリスト130に保存されていないことを判断するときには、ステップ109に進んで、キャッシュリスト130に空きがあるのか否かを判断して、空きがないことを判断するときには、ステップ102に進んで、グローバル検索処理部120を使って要素データベースを検索して検索コンテンツを得て、続くステップ103で、その検索コンテンツを出力して、処理を終了する。
【0046】
すなわち、検索要求で指定された検索条件がキャッシュリスト130に保存されていないときには、要素データベースを検索して検索コンテンツを得て、それを出力するように処理するのである。そして、このとき、キャッシュリスト130に空きがないことから、要素データベースを検索することにより得られた検索コンテンツをコンテンツリスト131に登録(保存)しないように処理するのである。
【0047】
一方、ステップ109で、キャッシュリスト130に空きがあることを判断するときには、ステップ110に進んで、グローバル検索処理部120を使って要素データベースを検索して検索コンテンツを得て、続くステップ111で、空いているキャッシュエントリーに、検索条件を登録するとともに、そのキャッシュエントリーの持つ“登録日時”に現在日時を登録し、さらに、そのキャッシュエントリーの持つ“出力回数”に1を登録する。
【0048】
続いて、ステップ112で、検索コンテンツをキャッシュエントリーに登録した情報と対応をとる形でコンテンツリスト131に登録し、続くステップ113で、その検索コンテンツを出力して、処理を終了する。
【0049】
すなわち、検索要求で指定された検索条件がキャッシュリスト130に保存されていないときには、要素データベースを検索して検索コンテンツを得て、それを出力するように処理するのである。そして、このとき、キャッシュリスト130に空きがあることから、要素データベースを検索することにより得られた検索コンテンツをコンテンツリスト131に登録(保存)するように処理するのである。
【0050】
次に、削除処理部14の実行する処理について説明する。
【0051】
削除処理部14は、規定の処理周期に到達すると、図5及び図6の処理フローに示すように、先ず最初に、ステップ200で、現在の日時を取得する。続いて、ステップ201で、キャッシュリスト130の中から未処理のキャッシュエントリーを1つ選択することで、キャッシュリスト130に登録されている未処理の検索条件を1つ選択する。
【0052】
続いて、ステップ202で、取得した現在日時とその選択したキャッシュエントリーの持つ登録日時との差分値を算出する。すなわち、その選択したキャッシュエントリーにデータを登録してからの経過時間を算出するのである。
【0053】
続いて、ステップ203で、その算出した経過時間を規定の閾値と比較することで、その算出した経過時間がタイムオーバーしているのか否かを判断して、タイムオーバーしていないことを判断するときには、ステップ204に進んで、その算出した経過時間と選択したキャッシュエントリーの持つ出力回数とから単位期間換算の検索頻度を算出する。例えば、10日に換算すると何回の出力回数であるのかということを算出することで、単位期間換算の検索頻度を算出するのである。
【0054】
続いて、ステップ205で、その算出した検索頻度を規定の閾値と比較することで、ステップ201で選択した検索条件が検索頻度の低い検索条件であるのか否かを判断する。
【0055】
この判断処理に従って、ステップ201で選択した検索条件が検索頻度の低い検索条件であることを判断するときには、ステップ206に進んで、選択したキャッシュエントリーのデータを削除し、続くステップ207で、選択したキャッシュエントリーに対応付けられる検索コンテンツをコンテンツリスト131から削除する。一方、この判断処理に従って、ステップ201で選択した検索条件が検索頻度の低い検索条件ではないことを判断するときには、このステップ206/ステップ207の処理を省略する。
【0056】
続いて、ステップ208で、キャッシュリスト130の全てのキャッシュエントリーについて処理を終了したのか否かを判断して、全てのキャッシュエントリーについて処理を終了していないことを判断するときには、ステップ201に戻り、全てのキャッシュエントリーについて処理を終了したことを判断するときには、処理を終了する。
【0057】
一方、ステップ203で、ステップ202で算出した経過時間がタイムオーバーしていることを判断するときには、ステップ209に進んで、選択したキャッシュエントリーのデータを削除し、続くステップ210で、選択したキャッシュエントリーに対応付けられる検索コンテンツをコンテンツリスト131から削除する。
【0058】
続いて、ステップ211で、キャッシュリスト130の全てのキャッシュエントリーについて処理を終了したのか否かを判断して、全てのキャッシュエントリーについて処理を終了していないことを判断するときには、ステップ201に戻り、全てのキャッシュエントリーについて処理を終了したことを判断するときには、処理を終了する。
【0059】
このようにして、削除処理部14は、規定の処理周期に到達すると、古くなった検索コンテンツを削除するとともに、古くなってはいないものの、あまり検索要求のない検索コンテンツについても削除することで、キャッシュリスト130/コンテンツリスト131に空きを作るように処理するのである。
【0060】
そして、これを受けて、検索処理部12は、図3及び図4の処理フローで説明したように、検索要求で指定された検索条件がキャッシュリスト130に登録されている場合には、要素データベースを検索せずに、その検索条件の指す過去に検索した検索コンテンツをコンテンツリスト131から取得して、それを出力するように処理するのである。
【0061】
このようにして、本発明の情報検索装置1によれば、ユーザの要求する検索結果を高速にユーザに提供できるようになる。
【0062】
以上に説明した実施形態例に従うと、タイムオーバーによりキャッシュリスト130から削除された検索条件が極めて検索頻度の高いものであった場合でも、削除された後に、再び検索要求でその検索条件が指定されたとして、キャッシュリスト130に空きがあるとは限らないことで、その検索条件がキャッシュリスト130に登録されないことが起こるという不都合が起こる。
【0063】
図7に、このような不都合を解消する機能を持つ本発明の情報検索装置1の他の実施形態例を図示する。
【0064】
この図7に示す実施形態例に従う場合には、本発明の情報検索装置1は、多頻度検索条件記録域16という記録領域を用意する構成を採って、タイムオーバーによりキャッシュリスト130から検索条件を削除するときに、その検索条件の検索頻度が極めて高い場合には、その検索条件の情報を多頻度検索条件記録域16に記録するようにして、再び検索要求でその検索条件が指定された場合には、キャッシュリスト130に強制的に登録するという処理を行うことになる。
【0065】
図8及び図9に、この処理を実現するために削除処理部14の実行する処理フローの一実施形態例を図示し、図10ないし図12に、この処理を実現するために検索処理部12の実行する処理フローの一実施形態例を図示する。
【0066】
次に、これらの処理フローに従って、図7のように構成される本発明の情報検索装置1により実行される検索処理について詳細に説明する。
【0067】
先ず最初に、削除処理部14の実行する処理について説明する。
【0068】
削除処理部14は、規定の処理周期に到達すると、図8及び図9の処理フローのステップ300〜ステップ308で、図5及び図6の処理フローのステップ200〜ステップ208と同一の処理を実行し、この処理を実行するときに、ステップ303で、ステップ302で算出した経過時間がタイムオーバーしていることを判断するときには、ステップ309に進んで、その経過時間とステップ301で選択したキャッシュエントリーの持つ出力回数とから単位期間換算の検索頻度を算出する。例えば、10日に換算すると何回の出力回数であるのかということを算出することで、単位期間換算の検索頻度を算出するのである。
【0069】
続いて、ステップ310で、その算出した検索頻度を規定の閾値と比較することで、ステップ301で選択した検索条件が検索頻度の極めて高い検索条件であるのか否かを判断する。
【0070】
この判断処理に従って、ステップ301で選択した検索条件が検索頻度の極めて高い検索条件であることを判断するときには、ステップ331に進んで、多頻度検索条件記録域16に、その選択した検索条件の情報を記録し、一方、その選択した検索条件が検索頻度の極めて高い検索条件でないことを判断するときには、このステップ311の処理を省略する。
【0071】
続いて、ステップ312(図5及び図6の処理フローのステップ209に相当する)で、選択したキャッシュエントリーのデータを削除し、続くステップ313(図5及び図6の処理フローのステップ210に相当する)で、選択したキャッシュエントリーに対応付けられる検索コンテンツをコンテンツリスト131から削除する。
【0072】
続いて、ステップ314(図5及び図6の処理フローのステップ211に相当する)で、キャッシュリスト130の全てのキャッシュエントリーについて処理を終了したのか否かを判断して、全てのキャッシュエントリーについて処理を終了していないことを判断するときには、ステップ301に戻り、全てのキャッシュエントリーについて処理を終了したことを判断するときには、処理を終了する。
【0073】
このようにして、削除処理部14は、規定の処理周期に到達すると、古くなった検索コンテンツを削除するとともに、古くなってはいないものの、あまり検索要求のない検索コンテンツについても削除することで、キャッシュリスト130/コンテンツリスト131に空きを作るように処理し、さらに、古くなった検索コンテンツを削除するときに、その検索コンテンツの検索元となった検索条件の検索頻度が極めて高い場合には、その検索条件の情報を多頻度検索条件記録域16に記録するように処理するのである。
【0074】
次に、検索処理部12の実行する処理について説明する。
【0075】
検索処理部12は、ユーザ端末2から検索条件を指定して検索要求が発行されると、図10ないし図12の処理フローのステップ400〜ステップ408で、図3及び図4の処理フローのステップ100〜ステップ108と同一の処理を実行し、この処理を実行するときに、ステップ405で、検索要求で指定された検索条件がキャッシュリスト130に保存されていないことを判断するときには、ステップ409に進んで、キャッシュリスト130に空きがあるのか否かを判断する。
【0076】
この判断処理に従って、キャッシュリスト130に空きがあることを判断するときには、ステップ410に進んで、グローバル検索処理部120を使って要素データベースを検索して検索コンテンツを得て、続くステップ411で、空いているキャッシュエントリーに、検索条件を登録するとともに、そのキャッシュエントリーの持つ“登録日時”に現在日時を登録し、さらに、そのキャッシュエントリーの持つ“出力回数”に1を登録する。
【0077】
続いて、ステップ412で、検索コンテンツをキャッシュエントリーに登録した情報と対応をとる形でコンテンツリスト131に登録する。
【0078】
続いて、ステップ413で、キャッシュエントリーに登録した検索条件が多頻度検索条件記録域16に記録されているのか否かを判断して、記録されていることを判断するときには、ステップ414に進んで、その記録を削除し、一方、記録されていないことを判断するときには、このステップ414の処理を省略する。
【0079】
続いて、ステップ415で、ステップ410で得た検索コンテンツを出力して、処理を終了する。
【0080】
一方、ステップ409で、キャッシュリスト130に空きがないことを判断するときには、ステップ416に進んで、検索要求で指定された検索条件が多頻度検索条件記録域16に記録されているのか否かを判断する。
【0081】
この判断処理に従って、検索要求で指定された検索条件が多頻度検索条件記録域16に記録されていないことを判断するときには、ステップ417に進んで、グローバル検索処理部120を使って要素データベースを検索して検索コンテンツを得て、続くステップ418で、その検索コンテンツを出力して、処理を終了する。
【0082】
一方、ステップ416で、検索要求で指定された検索条件が多頻度検索条件記録域16に記録されていることを判断するときには、ステップ419に進んで、キャッシュリスト130のキャッシュエントリー毎に、現在日時と登録日時との差分値を算出して、その差分値と出力回数とから単位期間換算の検索頻度を算出する。例えば、10日に換算すると何回の出力回数であるのかということを算出することで、単位期間換算の検索頻度を算出するのである。
【0083】
続いて、ステップ420で、その算出した検索頻度に従って、最も低い検索頻度を持つキャッシュエントリーを特定して、その特定したキャッシュエントリーのデータを削除し、続くステップ421で、その削除したキャッシュエントリーに対応付けられる検索コンテンツをコンテンツリスト131から削除する。
【0084】
続いて、ステップ422で、グローバル検索処理部120を使って要素データベースを検索して検索コンテンツを得て、続くステップ423で、データを削除したキャッシュエントリーに、検索条件を登録するとともに、そのキャッシュエントリーの持つ“登録日時”に現在日時を登録し、さらに、そのキャッシュエントリーの持つ“出力回数”に1を登録する。
【0085】
続いて、ステップ424で、検索コンテンツをキャッシュエントリーに登録した情報と対応をとる形でコンテンツリスト131に登録する。続いて、ステップ425で、登録した検索条件を多頻度検索条件記録域16から削除する。
【0086】
続いて、ステップ426で、ステップ422で得た検索コンテンツを出力して、処理を終了する。
【0087】
このようにして、検索処理部12は、検索要求で指定された検索条件がキャッシュリスト130に登録されている場合には、要素データベースを検索せずに、その検索条件の指す過去に検索した検索コンテンツをコンテンツリスト131から取得して、それを出力するとともに、その処理を実行するときに、多頻度検索条件記録域16に記録される検索条件が検索要求で指定される場合には、その検索条件をキャッシュエントリーに強制的に登録することで、新たに得た検索コンテンツをコンテンツリスト131に登録するように処理するのである。
【0088】
これにより、極めて検索頻度の高い検索条件に基づいて検索される検索コンテンツについては、常にコンテンツリスト131に登録されることを実現できるようになるのである。
【0089】
図示実施形態例に従って本発明を説明したが、本発明はこれに限定されるものではない。例えば、実施形態例では、一時保存部13に保存されてからの経過時間のチェックと、一時保存部13に保存されている検索条件の検索頻度の評価を同一周期で行うようにしたが、異なる周期で行うようにしてもよい。また、実施形態例では、一時保存部13に保存されているのか否かの判断を周期的に行うようにしたが、検索要求が発行された時点にその都度行うようにしてもよい。
【0090】
【発明の効果】
以上説明したように、本発明では、まだ要素データベースの側では更新されていないと考えられる検索結果を一時的に保存するようにして、検索要求で指定される検索条件が保存されている場合には、要素データベースを検索することなく、その検索条件に対応付けて保存している検索結果を出力するように処理することから、ユーザが分散データベースシステムで情報検索を行う場合に、ユーザの要求する検索結果を高速にユーザに提供できるようになる。
【0091】
そして、この構成を採るときに、まだ要素データベースの側では更新されていないと考えられる検索結果の内、検索頻度の高い検索条件に対応付けられる検索結果を一時的に保存するという構成を用いることで、小さな保存領域を使いつつ、この効果を実現できるようになる。
【図面の簡単な説明】
【図1】本発明の一実施形態例である。
【図2】キャッシュリスト及びコンテンツリストの一例を示す図である。
【図3】検索処理部の実行する処理フローの一実施形態例である。
【図4】検索処理部の実行する処理フローの一実施形態例である。
【図5】削除処理部の実行する処理フローの一実施形態例である。
【図6】削除処理部の実行する処理フローの一実施形態例である。
【図7】本発明の他の実施形態例である。
【図8】削除処理部の実行する処理フローの他の実施形態例である。
【図9】削除処理部の実行する処理フローの他の実施形態例である。
【図10】検索処理部の実行する処理フローの他の実施形態例である。
【図11】検索処理部の実行する処理フローの他の実施形態例である。
【図12】検索処理部の実行する処理フローの他の実施形態例である。
【符号の説明】
1 情報検索装置
10 要素データベース
11 検索要求受付処理部
12 検索処理部
13 一時保存部
14 削除処理部
15 時計部
16 多頻度検索条件記録域
120 グローバル検索処理部
121 キャッシュ検索処理部
130 キャッシュリスト
131 コンテンツリスト
Claims (14)
- 端末からの検索条件を受け付け、その検索条件をキーにして自装置の管理する要素データベース及びネットワークを介して接続される要素データベースを検索して、その検索結果を出力する情報検索装置において、
検索結果を一時的に保存するとともに、それに対応付ける形で、その検索結果の元となった検索条件と、その検索結果の保存を開始した日時情報とを一時的に保存する保存手段に対して、それらの情報を登録する手段と、
検索要求で指定される検索条件が上記保存手段に保存されている場合に、その検索条件に対応付けられる検索結果を出力する手段と、
上記保存開始日時から規定時間が経過した検索結果を上記保存手段から削除する手段とを備えることを、
特徴とする情報検索装置。 - 請求項1記載の情報検索装置において、
上記登録する手段は、検索要求で指定される検索条件の条件項目の数が規定以上となる場合には、上記保存手段への情報登録を行わないことを、
特徴とする情報検索装置。 - 端末からの検索条件を受け付け、その検索条件をキーにして自装置の管理する要素データベース及びネットワークを介して接続される要素データベースを検索して、その検索結果を出力する情報検索装置において、
検索結果を一時的に保存するとともに、それに対応付ける形で、その検索結果の元となった検索条件と、その検索結果の保存を開始した日時情報と、その検索結果の出力回数情報とを一時的に保存する保存手段に対して、それらの情報を登録する手段と、
検索要求で指定される検索条件が上記保存手段に保存されている場合に、その検索条件に対応付けられる検索結果を出力するとともに、その検索条件に対応付けられる上記出力回数を更新する手段と、
上記出力回数に基づいて検索条件の検索頻度を評価する手段と、
上記保存開始日時から規定時間が経過した検索結果を上記保存手段から削除するとともに、上記評価により得られる検索頻度の低い検索条件に対応付けられる検索結果を上記保存手段から削除する手段とを備えることを、
特徴とする情報検索装置。 - 請求項3記載の情報検索装置において、
上記登録する手段は、検索要求で指定される検索条件の条件項目の数が規定以上となる場合には、上記保存手段への情報登録を行わないことを、
特徴とする情報検索装置。 - 請求項3又は4記載の情報検索装置において、
上記評価する手段は、上記保存開始日時と上記出力回数と現在日時とに基づいて単位期間換算の出力回数を算出して、それに基づいて、検索条件の検索頻度を評価することを、
特徴とする情報検索装置。 - 請求項3ないし5のいずれか1項に記載の情報検索装置において、
検索要求で指定されることの多い検索条件を記録する記録手段に対して、上記評価により得られる検索頻度の高い検索条件の情報を書き込む手段を備え、
上記登録する手段は、検索要求で指定される検索条件が上記保存手段に保存されていないものの、上記記録手段に記録されている場合には、その検索要求により得られる検索結果の情報を上記保存手段に強制的に登録することを、
特徴とする情報検索装置。 - 端末からの検索条件を受け付け、その検索条件をキーにして自装置の管理する要素データベース及びネットワークを介して接続される要素データベースを検索して、その検索結果を出力する情報検索方法において、
検索結果を一時的に保存するとともに、それに対応付ける形で、その検索結果の元となった検索条件と、その検索結果の保存を開始した日時情報とを一時的に保存する保存手段に対して、それらの情報を登録する過程と、
検索要求で指定される検索条件が上記保存手段に保存されている場合に、その検索条件に対応付けられる検索結果を出力する過程と、
上記保存開始日時から規定時間が経過した検索結果を上記保存手段から削除する過程とを備えることを、
特徴とする情報検索方法。 - 請求項7記載の情報検索方法において、
上記登録する過程では、検索要求で指定される検索条件の条件項目の数が規定以上となる場合には、上記保存手段への情報登録を行わないことを、
特徴とする情報検索方法。 - 端末からの検索条件を受け付け、その検索条件をキーにして自装置の管理する要素データベース及びネットワークを介して接続される要素データベースを検索して、その検索結果を出力する情報検索方法において、
検索結果を一時的に保存するとともに、それに対応付ける形で、その検索結果の元となった検索条件と、その検索結果の保存を開始した日時情報と、その検索結果の出力回数情報とを一時的に保存する保存手段に対して、それらの情報を登録する過程と、
検索要求で指定される検索条件が上記保存手段に保存されている場合に、その検索条件に対応付けられる検索結果を出力するとともに、その検索条件に対応付けられる上記出力回数を更新する過程と、
上記出力回数に基づいて検索条件の検索頻度を評価する過程と、
上記保存開始日時から規定時間が経過した検索結果を上記保存手段から削除するとともに、上記評価により得られる検索頻度の低い検索条件に対応付けられる検索結果を上記保存手段から削除する過程とを備えることを、
特徴とする情報検索方法。 - 請求項9記載の情報検索方法において、
上記登録する過程では、検索要求で指定される検索条件の条件項目の数が規定以上となる場合には、上記保存手段への情報登録を行わないことを、
特徴とする情報検索方法。 - 請求項9又は10記載の情報検索方法において、
上記評価する過程では、上記保存開始日時と上記出力回数と現在日時とに基づいて単位期間換算の出力回数を算出して、それに基づいて、検索条件の検索頻度を評価することを、
特徴とする情報検索方法。 - 請求項7ないし11のいずれか1項に記載の情報検索方法において、
検索要求で指定されることの多い検索条件を記録する記録手段に対して、上記評価により得られる検索頻度の高い検索条件の情報を書き込む過程を備え、
上記登録する過程では、検索要求で指定される検索条件が上記保存手段に保存されていないものの、上記記録手段に記録されている場合には、その検索要求により得られる検索結果の情報を上記保存手段に強制的に登録することを、
特徴とする情報検索方法。 - 請求項7ないし12のいずれか1項に記載の情報検索方法の実現に用いられる処理をコンピュータに実行させるための情報検索プログラム。
- 請求項7ないし12のいずれか1項に記載の情報検索方法の実現に用いられる処理をコンピュータに実行させるための情報検索プログラムを記録した記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003043454A JP2004252789A (ja) | 2003-02-21 | 2003-02-21 | 情報検索装置、情報検索方法、情報検索プログラム及びそのプログラムを記録した記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003043454A JP2004252789A (ja) | 2003-02-21 | 2003-02-21 | 情報検索装置、情報検索方法、情報検索プログラム及びそのプログラムを記録した記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004252789A true JP2004252789A (ja) | 2004-09-09 |
Family
ID=33026431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003043454A Pending JP2004252789A (ja) | 2003-02-21 | 2003-02-21 | 情報検索装置、情報検索方法、情報検索プログラム及びそのプログラムを記録した記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004252789A (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011034323A (ja) * | 2009-07-31 | 2011-02-17 | Nippon Telegr & Teleph Corp <Ntt> | 情報端末装置、情報検索方法、および情報検索プログラム |
US8782079B2 (en) | 2009-12-22 | 2014-07-15 | Fujitsu Limited | Configuration information management device, distributed information management system and method |
US9348847B2 (en) | 2012-02-29 | 2016-05-24 | Fujitsu Limited | Data access control apparatus and data access control method |
JP6126764B1 (ja) * | 2016-03-25 | 2017-05-10 | 楽天株式会社 | 検索装置、検索方法、プログラム、および非一時的なコンピュータ読取可能な情報記録媒体 |
CN106776668A (zh) * | 2015-11-19 | 2017-05-31 | 财团法人资讯工业策进会 | 搜寻伺服器、终端装置及用于分布式网络的搜寻方法 |
WO2019167739A1 (ja) * | 2018-03-02 | 2019-09-06 | 国立大学法人神戸大学 | 不要電波評価システム |
JP2019194882A (ja) * | 2014-02-19 | 2019-11-07 | スノーフレーク インク. | ファーストクラスデータベース要素としての半構造データの実装 |
-
2003
- 2003-02-21 JP JP2003043454A patent/JP2004252789A/ja active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011034323A (ja) * | 2009-07-31 | 2011-02-17 | Nippon Telegr & Teleph Corp <Ntt> | 情報端末装置、情報検索方法、および情報検索プログラム |
US8782079B2 (en) | 2009-12-22 | 2014-07-15 | Fujitsu Limited | Configuration information management device, distributed information management system and method |
US9348847B2 (en) | 2012-02-29 | 2016-05-24 | Fujitsu Limited | Data access control apparatus and data access control method |
JP2019194882A (ja) * | 2014-02-19 | 2019-11-07 | スノーフレーク インク. | ファーストクラスデータベース要素としての半構造データの実装 |
JP7130600B2 (ja) | 2014-02-19 | 2022-09-05 | スノーフレーク インク. | ファーストクラスデータベース要素としての半構造データの実装 |
CN106776668A (zh) * | 2015-11-19 | 2017-05-31 | 财团法人资讯工业策进会 | 搜寻伺服器、终端装置及用于分布式网络的搜寻方法 |
JP2017097823A (ja) * | 2015-11-19 | 2017-06-01 | 財團法人資訊工業策進會 | 分散ネットワークで使用するための検索サーバ、端末装置、及び検索方法 |
JP6126764B1 (ja) * | 2016-03-25 | 2017-05-10 | 楽天株式会社 | 検索装置、検索方法、プログラム、および非一時的なコンピュータ読取可能な情報記録媒体 |
WO2017163415A1 (ja) * | 2016-03-25 | 2017-09-28 | 楽天株式会社 | 検索装置、検索方法、プログラム、および非一時的なコンピュータ読取可能な情報記録媒体 |
WO2019167739A1 (ja) * | 2018-03-02 | 2019-09-06 | 国立大学法人神戸大学 | 不要電波評価システム |
JPWO2019167739A1 (ja) * | 2018-03-02 | 2020-10-01 | 国立大学法人神戸大学 | 不要電波評価システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11775524B2 (en) | Cache for efficient record lookups in an LSM data structure | |
US8738572B2 (en) | System and method for storing data streams in a distributed environment | |
US8706710B2 (en) | Methods for storing data streams in a distributed environment | |
EP2746970B1 (en) | Timeline index for managing temporal data | |
US20210303566A1 (en) | Data storage using a bi-temporal index | |
US20130185266A1 (en) | Location independent files | |
KR20190022761A (ko) | 검색 캐시 업데이트 방법 및 장치 | |
US20090187545A1 (en) | Method and apparatus for data processing with index search | |
JP3521176B2 (ja) | 検索方法および検索装置 | |
US20080005077A1 (en) | Encoded version columns optimized for current version access | |
JP2004252789A (ja) | 情報検索装置、情報検索方法、情報検索プログラム及びそのプログラムを記録した記録媒体 | |
US20040236727A1 (en) | Method, query optimizer, and computer program product for implementing live switchover to temporary sparse index for faster query perfomance | |
CN107004036B (zh) | 用以搜索包含大量条目的日志的方法和系统 | |
CN110750566A (zh) | 数据处理方法、装置、缓存系统及缓存管理平台 | |
KR102415155B1 (ko) | 데이터 검색 장치 및 방법 | |
CN108984720B (zh) | 基于列存储的数据查询方法、装置、服务器及存储介质 | |
CN108694219B (zh) | 一种数据处理方法及装置 | |
JPH09153048A (ja) | 情報検索方法及び装置 | |
KR20070031152A (ko) | 검색어 입력에 대한 검색 결과를 제공하는 방법 및 그방법을 채용한 검색 엔진 | |
JP2001318813A (ja) | データ管理方法 | |
JP2006106907A (ja) | 構造化文書管理システム、索引構築方法及びプログラム | |
US20210133194A1 (en) | Tag coexistence detection | |
JP2000148548A (ja) | 不要レコード削除装置 | |
JP2002215520A (ja) | 電子掲示板作成装置及び方法と電子掲示板作成処理用プログラム及びそのプログラムの記録媒体 | |
CN113886702A (zh) | 一种基于动态缓存机制的混合云搜索引擎及搜索方法 |