明 細 書
情報検索システムと情報検索方法ならびにプログラム
技術分野
[0001] [関連出願の記載]
本発明は、 日本国特許出願:特願 2006— 275169号(平成 18年 10月 6日出願) の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み 込み記載されてレ、るものとする。
本発明は情報検索システム、情報検索方法及び情報検索用プログラムに関し、特 に過去の視点に基づく検索を可能とする情報検索システム、情報検索方法及び情 報検索用プログラムに関する。
背景技術
[0002] Google (登録商標)等に代表される Web検索システムの普及により、電子ファイル 等に対する全文検索システムが一般化してきた。ユーザは検索システムを用いて情 報を検索する作業を行うことを日常的に行うようになっている。
[0003] 現在、電子ファイル等に対する全文検索システムは、高速に検索するためのインデ ックス(索引)をあらかじめ作成しておき、このインデックスを用いて電子ファイルを検 索する仕組みが主流となっている。このような情報検索システムの例力 特許文献 1、 非特許文献 1に記載されて!/、る。
[0004] インデックスを作成する技術として、 N— gramを用いた方式、形態素解析方式が知 られている(非特許文献 1)。
[0005] これらの方式によって作成されたインデックスは、一般的に、非圧縮で、元文書の 2
00〜300%の容量となり、大きな容量を必要とする。
[0006] また、このインデックスを動的に更新するのが困難である、という問題がある。
[0007] 検索処理は、このインデックスを用いて行うために、ユーザは、インデックスを作成あ るいは更新した時点における、検索対象のデータの状態に対する検索結果を得るこ とが出来る。
[0008] 例えば、インデックスが 1日前の時点の検索対象データに基づいて作成された場合
、それ以降に検索対象データに対して増加あるいは更新された状態は、検索結果に 反映されない。
[0009] 従って、出来るだけリアルタイムに検索対象のデータをインデックスに取り込むこと が求められている。そのような技術が、特許文献 1、特許文献 2に記載されている。
[0010] 特許文献 1には、新たに登録された文書ファイルに対応するインデックスを作成して メモリにしておき、文書検索部は、メモリに格納された新規文書データのインデックス データと、ディスク装置に格納された既存の文書ファイルのインデックスデータの双方 を用いて文書ファイルを検索する文書検索装置が開示されている。また特許文献 2 には、新規文書をインデックスに登録する際に、主インデックスよりも小さな副インデッ タスに登録し、検索時には、各インデックスにアクセスして検索し、その結果を合わせ て検索結果とする文書検索装置が開示されている。
[0011] 特許文献 1 :特開平 9 223152号公報 (第 1頁)
特許文献 2:特開平 7— 146880号公報
非特許文献 1 :北研二、津田和彦、獅々堀正幹著、「情報検索アルゴリズム」共立出 版、 2002年 1月 1曰、 pp. 6、 pp. 160—179
発明の開示
発明が解決しょうとする課題
[0012] 以上の特許文献及び非特許文献の開示事項は、本書に引用をもって繰り込み記 載されているものとする。以下に、本発明による関連技術の分析を与える。従来及び 現行の情報検索システムは、下記記載の問題点を有してレ、る。
[0013] すなわち、ユーザが過去に行った検索タエリーと同様の操作を行っても、以前と同 じ方法で情報に迪り着くことが出来ない場合がある、ということである。
[0014] その理由は、検索対象となる情報源が、 日々、増大/変更されるシステムにおいて は、検索用インデックスも、 日々追加/更新されるために、ユーザが行った検索クエリ 一が同一なものであっても、検索システムは異なる検索結果を返すためである。
[0015] ユーザが過去に発見したファイルや、 Web上の情報源に迪り着くために、そのフアイ ノレのパスや URI (Uniform Resource Identifier)を記憶しておくということが考えられる
〇
[0016] し力、し、ユーザは、一般的に、ファイルのパスや URIを記憶しておかずに、どのよう に情報に迪り着レ、たかのみを記憶して!/、ることがある。
[0017] 具体的には、今日のように、検索エンジンが一般化した状況では、検索エンジンに 対して入力した検索クエリーだけを記憶しておき、再度、検索するのである。
[0018] 例えば、「3日前に〇〇というキーワードで検索して見つかったあの Webページ」の ように記憶しておくのである。
[0019] しかしながら、検索エンジンのインデックスは、 日々更新/増加されているために、 ユーザは同じキーワードで検索しても、異なる検索結果を得ることがある。そのため、 以前得たファイルや情報に再び迪り着けなくなることがある。
[0020] 過去の時点と同じ検索結果を得たいというユーザからのニーズが起きる可能性があ
[0021] したがって、本発明は、上記課題に鑑みて全く新規に創案されたものであって、そ の主たる目的は、過去の基点に基づいた検索を可能とする情報検索システム、方法 、プログラムを提供することにある。
課題を解決するための手段
[0022] 本願で開示される発明は、前記課題を解決するため、概略以下の構成とされる。
[0023] 本発明に係る情報検索システムは、情報検索用のインデックスとして、時系列に区 分されてなる区分インデックスをインデックス格納手段に用意しておき、
検索要求で指定された条件に基づき、時系列にしたがって区分された複数の区分 インデックスの中から、対応する区分インデックスを選択し、前記選択した区分インデ ックスを用いて検索を行う手段を備えて!/、る。
[0024] 本発明に係る情報検索システムは、文書検索用のインデックスとして、時系列に区 分されてなる区分インデックスをインデックス格納手段に登録するインデックス登録手 段と、検索条件として、検索の基点となる、時間又は契機情報を入力する検索条件 入力手段と、入力された検索の基点となる前記情報に基づき、前記インデックス格納 手段から、過去の区分インデックスを選択的に読み込み、検索処理を行う検索手段と 、を備えている。
[0025] 本発明においては、検索の基点となる時間情報が指定入力されない場合、前記検
索手段は、前記インデックス格納手段に登録されている、最新インデックスと過去の 区分インデックスの全てを用いて検索する。
[0026] 本発明にお!/、ては、インデックスを区分して登録する契機を、前記インデックス登録 手段に通知する区分契機通知手段を備えた構成としてもよい。
[0027] 本発明にお!/、ては、検索対象の文書のバックアップに関連付けて、インデックスを 区分する契機を、前記インデックス登録手段に通知する手段を備えた構成としてもよ い。
[0028] 本発明においては、前記検索手段は、複数のインデックスに同一文書に対するイン デッタスデータが格納されて!/、る場合、新しレ、インデックスを優先して処理をする。
[0029] 本発明にお!/、ては、前記インデックス登録手段は、文書を格納する文書格納手段 から、インデックスに登録する文書を読み出し、インデックスに登録するために必要な 所定の事前処理を行って最新インデックスに対して登録し、インデックスの区分処理 を行うにあたり、インデックスの区分の契機か否かを判断し、インデックス区分の契機 の場合には、現在の最新インデックスのインデックスを区分インデックスの 1つに設定 した上で、最新インデックスを空で作成し、この空の最新インデックスを、前記インデッ タス登録手段のインデックスの登録先とする。
[0030] 本発明におレ、ては、前記インデックス格納手段に記録される前記区分インデックス 力 過去の時点での情報検索に利用された所定の属性情報を含み、前記過去の時 点に対応する区分インデックスを選択して検索することで、前記過去の時点の属性 情報に基づいた情報検索結果を出力自在としている。
[0031] 本発明に係る方法は、情報検索用のインデックスとして時系列に区分されてなる区 分インデックスを予め用意しておき、
検索要求で指定された条件に基づき、時系列に区分された複数の区分インデック スの中から、対応する区分インデックスを選択し、選択した区分インデックスを用いて 検索を行う。
[0032] 本発明に係る方法は、文書検索用のインデックスとして時系列に区分されてなる区 分インデックスをインデックス格納手段に登録するインデックス登録工程と、
検索条件として、検索の基点となる、時間又は契機情報を入力する工程と、
入力された検索の基点となる、前記情報に基づき、前記インデックス格納手段から 、過去の区分インデックスを、選択的に読み込み、検索処理を行う工程と、
を含む。
[0033] 本発明に係る方法において、検索の基点時間情報が指定入力されない場合、前 記インデックス格納手段に登録された全てのインデックスを用いて検索する。
[0034] 本発明にお!/、て、インデックスを区分する契機を、前記インデックス登録工程に通 知する工程を含む。
[0035] 本発明に係る方法において、検索対象の文書のバックアップに関連付けて、インデ ックスを区分する契機を、前記インデックス登録工程に通知する工程を含む。
[0036] 本発明に係るコンピュータプログラムは、文書検索用のインデックスとして時系列に したがって区分してなる区分インデックスをインデックス格納手段に登録する処理と、 検索条件として、検索の基点となる、時間又は契機情報を入力する処理と、 入力された検索の基点となる、前記情報に基づき、前記インデックス格納手段から 、過去の区分インデックスを選択して検索を行う処理と、をコンピュータに実行させる プログラムよりなる。
発明の効果
[0037] 本発明によれば、過去の基点に基づく検索処理を実現することができる。
[0038] その理由は、本発明においては、インデックスを時系列に区分して記録しておき、 過去の基点よりも古いインデックスのみを用いて検索処理を行うためである。
図面の簡単な説明
[0039] [図 1]本発明の第 1の実施の形態の構成を示すブロック図である。
[図 2]本発明の第 1の実施の形態における、インデックスの管理例を示す図である。
[図 3]本発明の第 1の実施の形態における、検索処理動作を示す流れ図である。
[図 4]本発明の第 1の実施の形態における、検索処理動作のインデックス読み込み処 理を示す図である。
[図 5]本発明の第 1の実施の形態における、インデックスへの追加処理を示す流れ図 である。
[図 6]本発明の第 1の実施の形態の動作を示す流れ図である。
[図 7]本発明の第 1の実施の形態の変形例として、時系列分析機能の説明をするた めの図である。
[図 8]本発明の第 2の実施の形態の構成を示すブロック図である。
[図 9]本発明の第 2の実施の形態における、バックアップ手段と連携したインデックス 区分の動作の流れを示す流れ図である。
[図 10]本発明の第 2の実施の形態における、検索処理動作を示す流れ図である。
[図 11]本発明の第 2の実施の形態における、検索処理中のインデックス読みこみ処 理を示す図である。
[図 12]本発明の第 3の実施の形態の構成を示すブロック図である。
符号の説明
[0040] 1 文書格納手段
2 インデックス登録手段
3 検索手段
4 検索条件入力手段
5 検索結果出力手段
6 バックアップ手段
7 区分契機通知手段
8 インデックス管理手段
10 最新インデックス
11— 17 区分インデックス
100 過去インデックス格納部
発明を実施するための最良の形態
[0041] 次に、本発明を実施するための最良の形態について図面を参照して詳細に説明 する。
[0042] 図 1は、本発明の第 1の実施の形態の構成を示す図である。図 1を参照すると、文 書格納手段 1と、インデックス登録手段 2と、検索手段 3と、検索条件入力手段 4と、検 索結果出力手段 5と、過去インデックス格納部 100とを備えている。
[0043] 過去インデックス格納部 100は、区分インデックス 11〜; 14を含む。区分インデック
ス 11〜14は、図 1では 4つの構成であるが数に制限はない。
[0044] これらの手段はそれぞれ概略次のように動作する。
[0045] 文書格納手段 1は、検索対象の文書を保持する機能を果たす。文書格納手段 1は 、例えば、
'ユーザが保持するパーソナルコンピュータのハードディスク装置や、 •NAS (Network Attached Storage)等の外部装置、
• WWW (World Wide Web)、
•Intranet (企業内の Webページ群)
等が挙げられる。
[0046] 検索対象の文書とは、上記のような格納手段内に存在する Webページやオフィス 文書等の電子ファイル、データベース内の構造化された情報等がある。
[0047] インデックス登録手段 2は、文書格納手段 1が保持する検索対象の文書のインデッ タスを作成し最新インデックス 10に登録する機能を持つ。
[0048] 検索手段 3は、区分インデックス 10〜; 14のインデックスを用いて、検索処理を行う。
検索キーワードや検索する時点(いつの時点における文書群に対して検索するか) 等の検索条件は、検索条件入力手段 4から受け取る。検索処理の結果は、検索結果 出力手段 5に渡す。
[0049] 検索条件入力手段 4は、
'検索するための検索キーワードや、
•検索の基点となる情報、
等の検索条件を指定し、検索手段 3に対して受け渡す機能を果たす。検索の基点 となる情報は、例えば年月日、あるいは、時、分等の時間情報のほか、時間に関連し たイベント等の契機情報であってもよ!/、。
[0050] 検索条件入力手段 4の一例として、例えば、ユーザの Webブラウザ上から入力する 検索キーワードの入力ボックス等を用いることができる。
[0051] 検索結果出力手段 5は、検索手段 3が行った検索処理の結果を受け取り、ユーザ に検索結果として出力する機能を果たす。検索結果出力手段 5の一例として、例え ば、ユーザの Webブラウザ上に検索結果の一覧を出力するソフトウェアが用いられる
[0052] なお、インデックス登録手段 2と、検索手段 3と、検索条件入力手段 4と、検索結果 出力手段 5は、コンピュータで動作するプログラム制御により、その機能、処理が実現 される。
[0053] 最新インデックス 10、及び、過去インデックス格納部 100に含まれる区分インデック ス 1;!〜 14は、検索処理に用いるインデックスである。そのインデックスを何らかの契 機により時系列に区分したものである。
[0054] このうち、最新の更新分の区分インデックスを最新インデックス 10とする。
[0055] インデックス登録手段 2は、新規文書あるいは更新文書をインデックス化して、常に
、最新インデックス 10へ登録する。
[0056] なお、図 1では、過去の区分インデックスは合計 4つの構成である力 区分インデッ タスの数に制限はなぐ時系列に区分されるたびに増加していく。
[0057] 最新インデックス 10、区分インデックス;!;!〜 14は、メモリや磁気ディスク装置等の 記憶装置に対して保存される。
[0058] 保存する形式としては、
•通常のファイルの形式、
'データベース上のレコード
等がある。
[0059] 最新インデックス 10、区分インデックス;!;!〜 14は、それぞれ異なる記憶装置に保 存されてもよ!/、し、同じ記憶装置に保存されてもょレ、。
[0060] 図 2は、インデックスの管理の一実施例を説明するための模式図である。図 2の例 の場合、時系列にインデックスが区分され、 1日 1回、インデックスが区分されるものと する。図 2の例における現在の日付は、「5/11」とし、
•現在における文書のインデックス登録は、最新インデックス 10に行われる。
[0061] 区分インデックスとして、
•1日前の「5/10」分の登録された分は、右隣の区分インデックス 11に保持され
• 2日前の「5/9」分に登録された分は区分インデックス 12に保持されて!/、る、
はずである。
[0062] このように、過去の最新インデックスを、そのまま、区分インデックスとして、順次、保 持していく。
[0063] 時間の経過とともに、過去のインデックスが増加していくこととなる。
[0064] ある定められたインデックスを区分する契機において、最新分のインデックス (イン デッタス登録手段 2がインデックスを登録する対象)を新規に作成する。
[0065] そして、それまで、最新分のインデックスであったインデックス(最新インデックス 10) は、 2番目に新しいインデックスとして、区分インデックスの 1つとなる。
[0066] これらの仕組みを、インデックス登録手段 2の登録先への登録パスを変更することに よって実現してもよい。
[0067] または、最新インデックス 10のデータを、過去インデックス格納部 100にコピーして 、新しい区分インデックスを作成し、最新インデックス 10を空にすることによって実現 してもよい。
[0068] なお、最新インデックス 10及び区分インデックス 11〜; 17の物理的あるいは論理的 な記憶位置は問わない。
[0069] 次に、図 3のフローチャートを参照して、本実施の形態の検索処理動作について詳 細に説明する。
[0070] まず、ユーザは検索条件入力手段 4を介して、検索条件を入力する(図 3のステップ
S 101)。
[0071] 検索条件には、
•通常の検索タエリーの情報 (検索のキーワード等)と、
•必要ならば、検索処理の基点となる日時の情報(「基点情報」という) を入力する。
[0072] この基点情報は、過去の視点に基づぐ検索処理を行う際に必要な情報である。
[0073] 過去の視点に基づく検索処理とは、例えば 3日前に行った検索処理と全く同等の 結果を得たい場合に、 3日前の情報に基づく検索を行うことである。
[0074] 次に、検索手段 3は、基点情報が入力されているかどうかを確認する (ステップ S 10
2)。
[0075] 基点情報が入力されていない場合 (ステップ S 102の No分岐)、検索手段 3は、イン
[0076] ステップ S103の処理について、図 4に示した例に即して説明する。
[0077] 区分インデックスは、 11から 17まで存在するとする。その時、最新インデックス 10か ら、区分インデックス 17まで、全てのインデックスを読んで検索処理を行う。
[0078] この際、同一文書に対して更新が行われた際には、複数のインデックスに、同一文 書に対するインデックスデータが格納されていることになる力 常に、新しいインデッ タスを優先する(図 4においては、左側に存在するインデックスを優先する)。
[0079] ステップ S103で、検索手段 3は、リード (Read)したインデックス情報に基づき、検 索処理を実行する(ステップ S104)。そして、検索手段 3は、検索結果出力手段 5に 対して、検索結果を通知する。
[0080] ステップ S102が Yesの場合(基点情報が入力されている場合)、検索手段 3は、指 定された規定情報以前のインデックスを読んで検索を行う(ステップ S105)。
[0081] ステップ S105の動作について、図 4に示した例に即して説明する。
[0082] 今回は、基点情報が「5/8」と入力されたとする。このとき、「5/8」のインデックスに 基づいて検索処理を行うため、検索手段 3は、「5/8」分の区分インデックス 12から
[0083] つまり、最新の更新分(「5/10」以降の情報)が登録されている最新インデックス 1 0と、「5/9」分が登録されている区分インデックス 11とは読み込まず、その他のイン デッタス全てを読み込んで検索処理を行う。
[0084] この際、ステップ S103と同様に、同一文書に対して更新が行われた際には、複数 のインデックスに同一文書に対するインデックスデータが格納されていることになるが 、常に新しいインデックスを優先する(図 4においては、左側に存在するインデックス を優先する)。
[0085] このような仕組みで検索処理を行うことによって、基点情報に入力された時間時点 における、インデックスのデータに基づいて、検索処理を行うことが出来る。
[0086] 本発明の実施形態の変形として、ステップ S105あるいは S103の検索処理におい て、過去の区分インデックスを全て読まな!/、ようにしてもよ!/、。
[0087] 例えば、最新インデックス 10から、区分インデックス 14まで読み込み、それより古い
[0088] このようにすると、最新分から「5/6」の更新変更分までが、検索対象となり、それ 以前の更新変更分は、検索対象にならない。
[0089] どの程度過去の区分インデックスまで読むかは、検索性能とのトレードオフである。
[0090] どの程度過去の区分インデックスまで読むかは、例えば、次のような方法で決定す ること力 S出来る。
[0091] (A)検索条件入力手段 4が、「何日前までに変更されたファイルを検索するか」を指 定するか、
(B)検索手段 3が読み込みを行う、インデックスの限界サイズを決めておき、それ以 上の区分インデックスは読み込まないようにする、
等である。
[0092] (B)の方法は、検索処理を行うサーバのキャッシュメモリサイズにより決定する等の 実施形態が考えられる。
[0093] この変形を用いることによって、検索処理性能を向上させることができる。
[0094] その理由は、検索処理性能を決定する一要素として読み込むインデックス容量が あるためである。
[0095] 次に、本発明の第 1実施形態において、検索処理を行うための事前準備について 説明する。
[0096] 本実施の形態において、検索処理を行うために、
•検索対象の文書のインデックス化と、
•インデックスの区分処理、
の 2つの処理が必要である。その処理動作につ!/、て順に説明する。
[0097] まず、検索対象の文書のインデックス登録処理の動作について、図 5のフローチヤ ートを参照して説明する。
[0098] 最初に、インデックス登録手段 2は、文書格納手段 1から、インデックスに登録する 文書 (検索対象とする文書)を読み出す(図 5のステップ S201)。
[0099] 次に、インデックスに登録するための処理の事前処理を行う(ステップ S202)。
[0100] この事前処理とは、インデックス手法の一方式である、転置ファイル法を例にあげる と、以下の処理を含む。
[0101] ·検索対象の文書を読み出してテキストを抽出し、そのテキストからインデックスに 登録する索引語を抽出する。
[0102] ·その索引語の出現位置、回数等を認識する。
[0103] インデックス化方法の詳細は、非特許文献 1等の文献に記載されているため、省略 する。
[0104] 最後に、インデックス登録手段 2は、事前処理によって明らかになったインデックス に登録するための情報を、最新インデックス 10に対して登録する(ステップ S203)。
[0105] 最新インデックス 10内に、該検索対象の文書の情報が存在しない場合には、新規 追加の処理を行う。
[0106] 最新インデックス 10内に該検索対象の文書の情報が存在する場合には、更新の 処理を行う。
[0107] なお、通常の検索インデックスの作成においては、新規作成と更新、削除について
、インデックスの更新処理を行う。
[0108] 新規作成と更新については、前述した通りである力 削除については、最新インデ ックス 10に対して、削除文書のインデックスを空として、登録する処理を行い、過去の 区分インデックス 11以降を削除しなレ、。
[0109] 次に、インデックス区分処理の動作について、図 6のフローチャートを参照して説明 する。
[0110] なお、このインデックス区分処理は、インデックス登録手段 2が行ってもよいし、別途 インデックスを管理する手段を用意して行ってもょレ、。
[0111] まず、インデックスの区分の契機であるか否かを判断する(図 6のステップ S301)。
[0112] インデックスを区分する契機は、例えば、
•定期的に区分するとして、時刻や曜日を定めておいてもよいし、
•インデックスのサイズで決定して区分してもよい。
[0113] インデックス区分契機でない場合には、インデックス区分処理は必要ないため、本 処理フローでは何も行わない。
[0114] インデックス区分の契機であった場合、現時点で最新インデックス 10であるインデッ タスを区分インデックスの 1つとする(ステップ S302)。
[0115] この実施例は様々な方法があるが、例えば
•最新インデックス 10を、過去インデックス格納部 100に、物理的あるいは論理的 にコピーする、
•最新インデックス 10を区分インデックスとして扱うようリネームする、 •インデックス登録手段 2の登録先のインデックスを変更する、
等がある。
[0116] 最後に、新たな最新インデックス 10を新規に空で作成する(ステップ S303)。
[0117] この最新インデックス 10を、以降のインデックス登録手段 2のインデックス登録先と する。
[0118] なお、インデックスの区分処理は、このような図 6のフローで行ってもよいが、他の何 らかの手段からの通知により、イベントとして区分処理をしてもよい。
[0119] 例えば、毎日 0時にインデックスを区分する場合、毎日 0時に、インデックスの区分 処理を要求するための通知を送る手段を別途用意し、その通知を、区分処理担当の 手段に対して通知する。 0時以前の昨日の最新インデックス力 最新の過去の区分ィ ンデッタスとなり、新たな最新インデックス 10を、以降のインデックス登録手段 2の登 録先として 1日分の区分インデックスが作成される。
[0120] なお、後述する本発明の第 2の実施の形態は、このような仕組みによるものの一例 である。
[0121] また、インデックス区分処理は、インデックス登録手段 2が行わなければならないも のではなぐインデックスの区分のみを別に行う手段を別途用意してもよい。それぞれ に最適な実装方法を選択すればょレ、。
[0122] 本発明の第 1の実施形態の作用効果を説明する。
[0123] 過去のある時点に基づく検索処理を実現するためには、過去の時点におけるイン デッタスを全て保持しておく必要があるが、第 1の実施形態では、時系列に区分して 、インデックスを保持し、入力された基点情報に基づいて、読むインデックスを変更す るために、過去インデックスの保持容量を削減することができる、という効果がある。
[0124] また、最新分のインデックスのみを保持する方法においても、過去の検索結果を保 持しておくことによって、同様のことを実現することが出来る力 これは、過去に実際 に行われた検索に対してし力、、過去の視点における、検索結果を返すことができない
[0125] 本実施の形態においては、過去に検索タエリーが行われなくても、過去の視点に基 づく検索を実現することが出来る。
[0126] また、最新インデックス 10は、最新登録分のインデックスのみが格納されているため に、容量が小さくて済む。すなわち、最新登録分のインデックスのみが差分として格 納される。基準となる過去の 1つの区分インデックスに対して、以降の区分インデック スは、差分情報のみが蓄積されることになる。従って、高速な記憶装置(半導体メモリ 等)に格納することができるため、インデックスの追加更新処理等を高速に行うことが できる。
[0127] 本発明の第 1の実施の形態の変形 (その 2)について説明する。本発明の第 1の実 施の形態の変形 2では、時系列に検索結果を分析する。
[0128] 本発明の第 1の実施の形態を応用することによって、次のような機能を得ることがで きる。
[0129] ·ある検索タエリーに対する検索結果の時系列推移の表示、
•同一文書のある検索クエリ に対する検索順位の推移の表示。
[0130] 図 7を例に挙げて説明すると、このように、検索処理の対象となるインデックスを変 更した検索処理を行うと、 日付毎の検索結果を得ることができる。
[0131] この検索結果をまとめて集計することによって、上記の機能を達成することができる
[0132] なお、本実施形態では、各区分インデックスは、インデックス登録時の日時等にした 力 Sつて時系列的に区分されている力 これとは別に、インデックスの作成で参照され た文書の属性 (例えばタイプスタンプ等)に基づいて、区分インデックスに区分けする 構成としてあよい。
[0133] 次に、本発明の第 2の実施形態について図面を参照して詳細に説明する。図 8を 参照すると、本発明の第 2の実施形態は、図 1に示される第 1の実施形態に加え、バ
ックアップ手段 6と、区分契機通知手段 7とを含む。
[0134] この 2つの手段以外は、前記第 1の実施の形態と同一であるため、説明を省略する
。バックアップ手段 6と、区分契機通知手段 7とは、概略次のように動作する。
[0135] ノ ックアップ手段 6は、文書格納手段 1に格納されているデータのバックアップ(予 備)を作成し記憶しておく手段である。
[0136] バックアップ手段 6は、文書格納手段 1に格納されているデータを、ある契機のデー タに復元するためのものであり、実際に、データ全体又は変更分の複製を記憶装置 に定期的に保存するものが例としてあげられる。
[0137] また、「スナップショット」と呼ばれるような、ディスク内のデータの位置を示すポインタ 情報を記録するような仕組みで、実際のデータの複製を持たずに文書格納手段 1の データをある一時点に復元することができるものもバックアップ手段 6の 1つと見なす。
[0138] また、他には、
•CDP (Continuous Data Protection;継続的データ保護)制御ソフトウェアや
•データベースソフトウェア、
•ジャーナリングソフトウェア
のような、過去のデータにアクセスすることが出来るデータ保護手法を、バックアツ プ手段 6として利用しても良い。
[0139] CDPは、データが更新されるたびに、その変更内容を時系列的に保存してゆくデ ータ保護手法であり、ストレージに対するデータ書き込みをトラッキング、キヤプチヤし 、データ更新が発生したとき、その変更内容を、二次ストレージ (変更履歴データべ ース)にジャーナリングしていく。
[0140] これにより、過去のどの時点のデータも、再現することができ(Any Point In Time (
APIT) Recovery)、データ損失を回避することができる。
[0141] これは、秒単位で追加バックアップを取り続けることに相当する。
[0142] スナップショットでは、データは数十分のオーダでしか復元できないが、 CDPでは、 数秒レベルでデータの復旧地点を設定することができる。
[0143] なお、データの変更履歴の記録だけからは、実データ全体を復元することはできな
いため、スタート地点として、ボリューム全体のレプリケーシヨンを行い、このレプリケー シヨンに対する変更履歴を時系列で記録して!/、く構成とされる)。
[0144] CDPのタイプとして、
•ブロック型、
•ファイル型、
•アプリケーション型
力 sある。
[0145] ブロック型は、物理ディスク又はロジカルボリュームレベルのブロック単位でデータ 変更をトラックする。
[0146] ファイル型は、ファイル.レベルでデータ変更をトラックする。
[0147] アプリケーション型は、ログ情報や APIにより特定のアプリケーションの動きを認識し
、ファイル更新やイベント単位でトラックする。
[0148] トラック頻度は、ブロック単位の場合、例えば秒単位以上、ファイル型、アプリケーシ ヨン型は、例えばファイル 'イベント更新毎を最小単位とする。
[0149] 二次ストレージへの書き込みは、同期型、非同期型がある。
[0150] なお、 CDPソフトウェアとしては、 TimeSpring社の「TimDataTM」(商標)等が巿 販されている。
[0151] 区分契機通知手段 7は、バックアップ手段 6が、文書格納手段 1のデータの複製(あ るいは復元可能な点)を保持して!/、る契機の一部あるいは全てを通知する手段であ
[0152] この通知された契機に従い、インデックス登録手段 2は、インデックスの区分を行う。
[0153] 具体的には、バックアップ手段 6が、 1日に 1回、毎日 0時に、バックアップを行うとす ると、区分契機通知手段 7は、インデックスの区分を、毎日 0時に、インデックス登録 手段 2に指示する。
[0154] 本発明の第 2の実施形態における、ノ ックアップシステムと連携して、インデックスを 区分する動作の流れについて、図 9を参照して説明する。
[0155] まず、バックアップ手段 6が、文書格納手段 1に保持されているデータのバックアツ プを取得する(図 9のステップ S401)。
[0156] 具体的な実施例としては、文書格納手段 1の記憶装置から、バックアップ時点のデ ータを読み込み、バックアップ手段の記憶装置に記憶すると!/、うものが挙げられる。
[0157] 次に、バックアップ手段 6がバックアップを取得した契機を、区分契機通知手段 7が インデックス登録手段 2 (インデックス区分処理を担当する手段)に対して通知する(ス テツプ S402)。
[0158] 最後に、インデックス登録手段 2が、インデックス区分処理を行う(ステップ S403)。
[0159] インデックス区分処理に関しては、前記第 1の実施の形態と同一である。
[0160] 本発明の第 2の実施の形態に基づくシステムでは、前記第 1の実施の形態と同様の 過去の基点に基づく検索に加え、バックアップデータに対する検索処理を実現する ことが出来る。
[0161] 図 10のフローチャートを参照して、本実施の形態の検索処理動作について詳細に 説明する。
[0162] まず、ユーザは検索条件入力手段 4を介して、検索条件を入力する(図 10のステツ プ S501)。
[0163] 検索条件には、
•通常の検索タエリーの情報 (検索のキーワード等)と、
•必要ならば検索対象のバックアップデータの種類(あるいは、バックアップ採取 時間)を指定あるいは選択する。
[0164] 毎日 0時にバックアップを開始する場合、検索条件の時間情報としては、年月日情 報を入力するようにしてもよいし、あるいは、月、週に何回力、バックアップする場合、何 月の何回目のバックアップ以前あるいは以降等という、バックアップイベント情報を、 過去情報として指定してもよい。なお、検索の基点となる条件として、時間の範囲、あ るいは論理式で与えるようにしてもょレ、。
[0165] 次に、検索手段 3が検索処理を行うが、その最初に、バックアップデータの種類が 指定されて!/、るかどうかを確認する(ステップ S 502)。
[0166] ノ ックアップデータが選択されて!/、な!/、場合 (Noの場合)には、検索手段 3はイン デッタスを全て読んで検索処理を行う(ステップ S 503)。
[0167] この処理については、第 1の実施の形態と同様であるので、説明を省略する。
[0168] ステップ S503で読み込んだインデックス情報に基づき、検索処理を完了する (ステ ップ S 505)。
[0169] 検索手段 3は、検索結果出力手段 5に対して検索結果を通知する。
[0170] ステップ S502が Yesの場合 (バックアップデータを指定されている場合)、検索手 段 3は指定されたバックアップデータの採取時点以前のインデックスを読んで検索を 行う(ステップ S 504)。
[0171] ステップ S504の動作について、図 11を例に説明する。
[0172] 図 11は、インデックスの区分の様子を示した図である。 1日に 1回バックアップを取 つているシステムであり、バックアップの契機でインデックスを区分している。
[0173] この場合、「5/9」に採取したバックアップから、「5/10」にバックアップを取るまで の更新が区分インデックス 11に反映される。
[0174] 今回、「5/9」に取得したバックアップデータに対して検索処理を行うとすると、検 索手段 3は、区分インデックス 12以降の区分インデックスを読み込み、検索処理を行
5。
[0175] なお、前記例では、フルバックアップを採取したシステムを前提とした力 同様に、「
5/9」に採取した差分バックアップデータに対する検索を行うことも出来る。
[0176] 図 11を例に説明すると、検索手段 3は、区分インデックス 12のみを読み込み、検索 処理を行う。
[0177] なお、検索手段 3の検索処理 (ステップ S504)、あるいは、検索結果出力手段 5が 行う結果の出力処理段階 (ステップ S505)において、検索結果のファイルへのパス(
URIやファイル名等)を書き換える必要がある。
[0178] 検索インデックスに格納されている、検索対象文書へのパスは、文書格納手段 1に 存在することが前提なためである。
[0179] これは、バックアップ手段に記録される検索対象文書へのパスは、バックアップ手段 が決定するルールに基づくため、その変換ルールをバックアップ手段 6は、事前に検 索手段 3あるいは検索結果出力手段 5に通知しておく。
[0180] 図 8の構成は、検索手段 3 (ステップ S504)でパスの変換を行う場合である。
[0181] 本発明の第 2の実施の形態の変形は、過去のインデックスでヒットしたファイルは、
参照先をバックアップ先に変更する、 CDPソフトウェアのような動きが出来る。
[0182] また、本発明の第 2の実施の形態における、検索処理(図 10のステップ S503及び S504)において、旧版の文書を検索にヒットさせるように、第 2の実施の形態を変形 することが可能である。
[0183] 本発明の第 2の実施の形態においては、図 10のステップ S503及び S504におい ては、前記第 1の実施の形態と同様に、複数の区分インデックスに存在する同一文 書のインデックスは、検索手段 3が読み込む範囲で、一番新しい区分インデックスを 優先するよう動作する。
[0184] 本発明の第 2の実施の形態の変形では、区分インデックスのいずれかでヒットした 文書は、文書のパス(参照先)をバックアップ手段 6における記憶先に変更する。
[0185] そして、同一文書のインデックスが複数ヒットしても、その両方を検索結果に提示す
[0186] なお、区分インデックスでヒットした文書の全てのパスを、バックアップのパスへ変更 してもよいが、その文書が最新の場合 (ヒットした区分インデックスよりも新しいインデッ タスに、該文書が存在しない場合)には、パスを変更せずに、文書格納手段 1のパス のまま提示し、バックアップ手段 6にヒットした文書が存在する場合には、バックアップ 手段 6における記憶先に、当該文書のパスを変更するようにしてもよい。
[0187] ノ ックアップ手段によって採取されたバックアップデータに対する検索機能を提供 するには、現状では、バックアップデータに対してインデックスを作成する必要があつ た。
[0188] しかし、本実施の形態を用いることにより、主たる文書格納手段 1に対するインデッ タスのみで、バックアップデータに対する検索機能を実現することが出来る、という効 果がある。
[0189] これに伴い、バックアップデータに対するインデックス登録処理が不要であるため、 インデックスに必要な記憶容量ならびに計算処理に必要な計算機資源を削減するこ と力 Sできる。
[0190] 過去の区分インデックスにおいて、検索ヒットした文書の参照先をバックアップ手段 が記憶している場所にすることにより、本発明の検索システムは、 CDPと同様に過去
の履歴にアクセスできるという効果がある。また過去の状態に基づく検索が実現でき るため、ファイルの過去のある時点にしか存在しなかった単語などで検索を行うことが できる。
[0191] 次に、本発明の第 3の実施形態について図面を参照して詳細に説明する。本発明 の第 3の実施の形態においては、過去の区分インデックスをマージする構成としたも のである。
[0192] 図 12を参照すると、本発明の第 3の実施形態は、図 1に示した前記第 1の実施形態 に加え、インデックス管理手段 8を含む。
[0193] これ以外は、前記第 1の実施形態と同一であるため、説明を省略する。
[0194] なお、図 8に示される、前記第 2の実施の形態に、インデックス管理手段 8を加えた 構成として、第 3の実施の形態を実現しても良い。
[0195] インデックス管理手段 8は、概略、次のように動作する。インデックス管理手段 8は、 区分インデックスのうち単数あるレ、は複数にアクセスし、区分インデックスをマージし て、 1つの区分インデックスにするという機能を果たす。
[0196] 区分インデックスをマージするということは、転置ファイル法によるインデックス作成 方式を例に挙げると、複数含まれている同一文書のインデックスを、新しい方を残し て 1つにして、複数の転置ファイルを 1つの転置ファイルとすることとなる。
[0197] 区分インデックスをマージする処理は、次のような条件で行うことが考えられる。
[0198] · 区分インデックスがー定数を超えた時、
• 区分インデックスが一定容量を超えた時、
• 区分インデックスが一定期間より古くなつた時。
[0199] 本実施の形態により、区分インデックスをマージすることによって、検索処理性能を 高速化することができる。
[0200] その理由は、区分インデックスをマージすることにより、同一文書のインデックスを複 数読むような、インデックスの非効率性が改善されるためである。
[0201] 本発明の第 3の発明の実施の形態の変形について説明する。
[0202] 本変形では、第 1の実施の形態の変形で、過去の区分インデックスの読み込みを 途中で止めると、過去のファイルが検索ヒットしないという問題を解決するために、コン
ピュータにおけるキャッシュのようなインデックスの動作を果たす。本変形では、インデ ックス管理手段 8が、次のような機能を果たす。
[0203] インデックス管理手段 8が、最新インデックス及び区分インデックス 11〜; 15を読み 込み、インデックスに含まれる文書の幾つかを抽出して新たな区分インデックスを作 成する。
[0204] そして、その区分インデックスは、通常の区分インデックスとは別に扱い、検索処理 で読み込みを途中で止める場合にも、必ず読み込むこととする。
[0205] 区分インデックス力、ら選択する文書は、一定のルールで抽出すればよい。そのルー ノレは、例えば次のような例が考えられる。
[0206] ·一定期間以上更新されないが、ユーザからの READは頻繁に行われる文書、 •ユーザが重要と指定した文書、
.特定のキーワードが文書内に含まれる文書。
[0207] このようにすることによって、第 1の実施の形態の変形において、過去のファイルが 検索ヒットしない、という問題が発生するが、インデックス管理手段 8が選択した文書 は更新されてレ、なくても、検索にヒットしな!/、と!/、うことが起きな!/、と!/、う効果がある。
[0208] なお、上記各実施形態及びその変形例にぉレヽて、インデックスに記録される情報( 属性情報)として、後に再計算不可能な、あるいは再計算が困難な情報が記録され る場合には、当該インデックスの属性に応じて、過去の時点における文書群の特徴 に基づいた情報検索を、過去に遡った環境下で実現することができる。インデックス に記録される、後に再計算不可能な、あるいは再計算が困難な情報の例として、検 索結果のランキングに利用する、キーワードの頻度等の数値データ、文書の重要度 等を示すスコア等が挙げられる。過去の時点における、この種の情報が記録されると 、後の情報検索において過去の検索時と同様のランキングの検索結果が出力可能と なる。
[0209] 本発明において、後に再計算可能な情報のみがインデックスに記録される場合に は、過去の時点の文書に対する情報検索を効率的に実行できる。ここで、「情報検索 の効率的な実行」とは、完全な過去のインデックスを保持する記憶容量や、ノ ックアツ プ等からインデックスを再生成する計算量等を、削減可能であることをいう。後に再計
算可能な情報の例としては、キーワードとその出現文書の対応情報等がある。
[0210] 上記の再計算不可能なインデックス情報 (静的なスコア情報)、及び、再計算可能 なインデックス情報が別の記憶領域に格納されている場合には、両者を時系列に区 分することで、本発明を適用することができる。図 1には、時間軸に関して一つの系列 の区分インデックス(10〜14)を備えた構成が示されて!/、る力 本発明にお!/、ては、 時間軸に関して複数系列の区分インデックスを備えた構成としてもよいことは勿論で ある。すなわち、インデックスを複数の記憶領域に配置するシステムにも本発明を適 用すること力 Sできる。この場合、複数の記憶領域のインデックスについて、それぞれ時 系列に区分された、複数系列の区分インデックスが設けられる。
[0211] 上記した各実施の形態の作用効果について説明する。
[0212] (A)過去の基点に基づく検索処理を実現することができる。その理由は、上記した 実施の形態では、インデックスを時系列に区分して記録しておき、過去の基点より古 V、インデックスのみを用いて検索処理を行う構成としたためである。
[0213] (B)また、上記効果を奏しながら、インデックスの追加更新処理等を高速に行うこと ができる。その理由は、上記実施の形態においては、追加更新対象となるインデック スは、一定期間の追加更新分だけを記録する区分されたインデックスであるため、容 量が小さくてすむ。従って、高速な記憶装置 (半導体メモリ等)に格納することが出来 るため、インデックスの追加更新処理等を高速に行うことが出来る。
[0214] (C)さらに、インデックスの保持容量の増大を抑止低減可能としている。過去のある 時点に基づく検索処理を実現するためには、過去の時点におけるインデックスを全 て保持しておく必要があるが、上記実施形態においては、時系列に区分してインデッ タスを保持し、入力された基点情報に基づいて、インデックスを変更するためである。
[0215] (D)さらにまた、バックアップデータにインデックスを作成する必要は無い。その理 由は、上記実施の形態においては、インデックス区分の契機と、バックアップ取得の 契機とを同一にし、検索結果の参照先を、バックアップデータに変更することによって 、 ノ ックアップデータへの検索を、別のインデックスを用意することなく実現できるため である。これに伴い、ノ^クアップデータに対するインデックス登録処理が不要である ため、ノ ックアップ装置に、インデックス化に必要な記憶容量ならびに計算処理に必
要な計算機資源を削減することができる。
[0216] 本発明によれば、例えば、
•World Wide Webに存在する情報検索システムや、
•組織内の情報 (イントラネットの Webや、組織における情報システム、データべ一 ス、ストレージ等が保有する情報)
に対する情報検索システムといった用途に適用できる。すなわち、本発明は、検索 エンジン等に、上記した実施形態の情報検索システムを備えてもよ!/、ことは勿論であ
[0217] また、本発明は、何らかの分析のために中間データを保有する情報処理システム にも適用可能である。
[0218] 本発明は、バックアップやアーカイブデータに対する検索システムといった用途にも 適用可能である。例えば、データマイニング処理又はテキストマイニング処理を行うマ イニング装置に、請求項 1等の本発明の情報検索システムを備えた構成としてもよい 。あるいは、携帯通信端末 (携帯電話機)に、請求項 1等の本発明の情報検索システ ムを備えた構成としてもよい。あるいは、音楽(音声) /画像 (動画)等のメディア再生 装置に、請求項 1等の本発明の情報検索システムを備えた構成としてもよい。あるい は、名簿情報を管理する装置に、請求項 1等の本発明の情報検索システムを備えた 構成としてもよい。あるいは、カラオケ装置に、請求項 1等の本発明の情報検索シス テムを備えた構成としてもよい。これらの装置において、例えばインデックスの属性に 応じて、過去の時点における属性情報に基づいた情報検索を実現する構成とした場 合、ユーザが過去に行った検索操作と同等の操作を行った場合に、以前と同じ方法 で同じ情報に迪り着くことを可能としている。
[0219] 以上、本発明を上記実施例に即して説明したが、本発明は上記実施例の構成にの み制限されるものでなく、本発明の範囲内で当業者であればなし得るであろう各種変 形、修正を含むことは勿論である。