(57)【要約】    【課題】      索引更新ための記憶容量の増大を抑え、効率的な索引の更新・検索を可能とすること。    【解決手段】  ホームサーバ１４０では、索引更新用データ受信手段１０８が情報端末１５０の索引更新用データ送信手段１０２から索引更新用データ１０９を受信すると、索引更新情報作成手段１１３が索引更新情報１１４を作成して索引更新情報送信手段１１５を介し情報端末１５０へ送信する。情報端末１５０では、索引更新情報受信手段１０７がその索引更新情報を受信し、検索手段１０６はバイナリ差分情報１１４ａを含む索引更新情報１１４と、端末側索引１０３との二つに対してファイルアクセスを行うことにより、更新情報適用手段１０５が端末側索引１０３を実際に更新しなくとも、仮想的に更新された端末側索引１０３の検索を行なうことができる。  【選択図】      図１
2006227715.tif 000002
【特許請求の範囲】
【請求項１】
情報端末に接続され索引を更新する索引サーバであって、
索引更新用データを受信する索引更新用データ受信手段と、
前記索引更新用データに基づいてサーバ側索引を更新する索引更新手段と、
前記更新したサーバ側索引に対する前記情報端末側の端末側索引における更新処理の内容を示す索引更新情報を作成する索引更新情報作成手段と、
前記索引更新情報を前記情報端末に対し送信する索引更新情報送信手段と、
を備えた索引サーバ。
【請求項２】
前記索引更新情報作成手段は、さらに、
前記索引更新情報を作成する際、どの単語に関する情報が変更されたかを示す単語変更表を作成して前記索引更新情報に含める、
ことを特徴とする請求項１記載の索引サーバ。
【請求項３】
前記索引更新情報作成手段は、さらに、
前記索引更新情報を作成する際、更新前の索引と、更新後の索引との間で、レコードの追加、変更、削除等のオペレーションにより単語のレコード番号がどのように変更されたかを示すレコード番号変更表を作成して前記索引更新情報に含める、
ことを特徴とする請求項１記載の索引サーバ。
【請求項４】
さらに、
前記情報端末に応じ前記索引更新用データ受信手段および前記索引更新情報送信手段の動作を制御し、前記情報端末からの前記索引更新用データの受信および前記索引更新用情報の送信を制御する端末情報管理手段、
を有することを特徴とする請求項１記載の索引サーバ。
【請求項５】
前記端末情報管理手段は、さらに、前記情報端末における端末側索引が更新されたか否かの更新状況を管理し、
前記索引更新情報作成手段は、さらに、
新たな索引更新情報を作成した際、前記端末情報管理手段による前記情報端末における端末側索引の更新状況に基づいて、前記新たに作成した索引更新情報と、前記情報端末が現時点で保持する索引更新情報とを用いて、両方の索引更新情報を一つにまとめた索引更新情報を作成して、前記索引更新情報作成手段を介し前記情報端末へ送信する、
ことを特徴とする請求項１記載の索引サーバ。
【請求項６】
請求項１〜請求項５のいずれかの請求項に記載の索引サーバと接続される情報端末であって、
前記索引サーバから前記索引更新情報を受信する索引更新情報受信手段と、
前記索引更新情報の内容を解釈して、端末側索引と、前記索引更新情報とへアクセスして前記索引サーバ側の更新後のサーバ側索引と同一の索引内容で検索を行う検索手段を、
有することを特徴とする情報端末。
【請求項７】
さらに、
端末側索引における前記索引サーバからの前記索引更新情報の適用を管理し、前記索引更新情報適用の有無を前記索引サーバに伝える索引更新管理手段を、
有することを特徴とする請求項６記載の情報端末。
【請求項８】
請求項１〜請求項５のいずれかの請求項に記載の索引サーバと、
請求項６または請求項７記載の情報端末と、
からなることを特徴とする分散型データベースシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報端末に接続され索引を更新する索引サーバ、その索引サーバから索引更新情報を受信する情報端末、そしてこれらの索引サーバおよび情報端末からなる分散型データベースシステムに関する。
【背景技術】
【０００２】
索引サーバ側で索引の更新を行い、クライアントである情報端末側では、索引サーバ側で作成した索引を受信して同一の索引を保持するサーバ・クライアント型の分散データベースシステムが存在する。
【０００３】
図１３は、従来型の分散型データベースシステムの全体構成図である。
【０００４】
図１３に示すように、索引サーバであるホームサーバ１４０は、ユーザの検索対象となるサーバ側索引１１２と、索引更新のための索引更新用データ１０９が投入されるとサーバ側索引１１２を更新する索引更新手段１１１と、情報端末１５０が保持する各端末側索引１０３を効率よく更新するために、情報端末１５０側での更新処理命令が書かれた索引更新情報１１４を作成する索引更新情報作成手段１１３と、索引更新情報１１４を端末１５０に送信する索引更新情報送信手段１１５とから構成されている。
【０００５】
一方、情報端末１５０は、ホームサーバ１４０の索引更新情報送信手段１１５より送信された索引更新情報１１４を受信する各索引更新情報受信手段１０７と、索引更新情報１１４を入力として端末側索引１０３を更新する更新情報適用手段１０５と、各ユーザによる端末側索引１０３の検索を可能にする検索手段１０６とにより構成されている。
【０００６】
図１４は、情報端末１５０における検索手段１０６の検索処理の流れを示す図である。まず、索引更新情報１１４を元に、更新情報適用手段１０５により、旧版索引から新版索引を作成して初めて、新版索引の検索が可能となる。ユーザが新版索引の検索を行うために、検索キーワードが外部から入力されると（ＳＴ１）、検索手段１０６は、既知の手法であるＮ−ｇｒａｍ方式などのような手法によりキーワードを解析して索引に登録された単語単位に分割する（ＳＴ２）。そして分割された各単語について、当該単語の出現するレコード番号を求める（ＳＴ３）。
【０００７】
レコード番号集合が求まったら、検索手段１０６は、単語集合の次の単語について、存在するかどうかを確認し、分割単語リストの全単語のレコード番号を求めたか否かを判断し（ＳＴ４）、あれば同様の処理を行うが、この際、既にレコード番号集合を求めた単語が存在する場合、新たに求めたレコード番号集合との積集合を求める（ＳＴ５）。
【０００８】
これを繰り返し、求まった単語集合の全ての単語について、絞り込まれたレコード集合を求めたら（ＳＴ４“ＹＥＳ”）、求まったレコード集合をリターン、すなわちユーザに検索結果を提示する（ＳＴ６）。
【０００９】
このモデルでは、図１３に示すように、ホームサーバ１４０側で索引の更新を行う際に、情報端末１５０側で索引の更新を指示する索引更新情報を作成する索引更新情報作成手段１１３を有しており、その索引更新情報を情報端末１５０側に送信する。
【００１０】
情報端末１５０側では、更新情報適用手段１０５がその索引更新情報に基づいて端末側索引１０３の更新を行い、その更新後、検索手段１０６が更新された端末側索引１０３の検索を行うようにしている。
【特許文献１】特開２００２−１６９８０５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、ホームサーバ１４０側から情報端末１５０側に対し索引更新情報を転送し、情報端末１５０側では受信した索引更新情報により索引を更新してから検索をする従来の分散型データシステムでは、情報端末１５０が索引更新情報を受信し、更新情報適用手段１０５などによる索引作成処理を完了して初めて検索可能となるため、情報端末１５０での索引作成処理中は、情報端末１５０側単体では新しい索引を検索できない、という課題がある。
【００１２】
また、ホームサーバ１４０側から索引更新情報を受信した際、情報端末１５０は端末側索引１０３を更新せずに、新たに端末側索引１０３を作成し直す従来の方式は、記憶容量が増大する、という課題がある。
【００１３】
また、情報端末１５０が、モバイル機器などのバッテリを搭載した機器である場合、索引更新処理による多大なディスクアクセスは、消費電力量が大きい、という課題である。
【００１４】
本発明は、このような課題を解決するものであり、索引更新ための記憶容量の増大を抑え、効率的な索引の更新・検索を可能とする索引サーバ、情報端末、および分散型データベースシステムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
前記課題を解決するため、本発明の索引サーバは、情報端末に接続され索引を更新する索引サーバであって、索引更新用データを受信する索引更新用データ受信手段と、前記索引更新用データに基づいてサーバ側索引を更新する索引更新手段と、前記更新したサーバ側索引に対する前記情報端末側の端末側索引における更新処理の内容を示す索引更新情報を作成する索引更新情報作成手段と、前記索引更新情報を前記情報端末に対し送信する索引更新情報送信手段と、を備えた構成を採る。
【００１６】
また、前記索引更新情報作成手段は、さらに、前記索引更新情報を作成する際、どの単語に関する情報が変更されたかを示す単語変更表を作成して前記索引更新情報に含める、構成を採る。
【００１７】
また、前記索引更新情報作成手段は、さらに、前記索引更新情報を作成する際、更新前の索引と、更新後の索引との間で、レコードの追加、変更、削除等のオペレーションにより単語のレコード番号がどのように変更されたかを示すレコード番号変更表を作成して前記索引更新情報に含める、構成を採る。
【００１８】
また、さらに、前記情報端末に応じ前記索引更新用データ受信手段および前記索引更新情報送信手段の動作を制御し、前記情報端末からの前記索引更新用データの受信および前記索引更新用情報の送信を制御する端末情報管理手段、を有する構成を採る。
【００１９】
また、前記端末情報管理手段は、さらに、前記情報端末における端末側索引が更新されたか否かの更新状況を管理し、前記索引更新情報作成手段は、さらに、新たな索引更新情報を作成した際、前記端末情報管理手段による前記情報端末における端末側索引の更新状況に基づいて、前記新たに作成した索引更新情報と、前記情報端末が現時点で保持する索引更新情報とを用いて、両方の索引更新情報を一つにまとめた索引更新情報を作成して、前記索引更新情報作成手段を介し前記情報端末へ送信する、構成を採る。
【００２０】
また、本発明の情報端末は、前記いずれかの索引サーバと接続される情報端末であって、前記索引サーバから前記索引更新情報を受信する索引更新情報受信手段と、前記索引更新情報の内容を解釈して、端末側索引と、前記索引更新情報とへアクセスして前記索引サーバ側の更新後のサーバ側索引と同一の索引内容で検索を行う検索手段を、有する構成を採る。
【００２１】
また、さらに、端末側索引における前記索引サーバからの前記索引更新情報の適用を管理し、前記索引更新情報適用の有無を前記索引サーバに伝える索引更新管理手段を、有する構成を採る。
【００２２】
また、本発明の分散型データベースシステムは、前記いずれかの索引サーバと、前記いずれかの情報端末と、からなる構成をとる。
【発明の効果】
【００２３】
本発明によれば、索引サーバでは、情報端末から索引更新用データを受信して、その索引更新用データに基づいてサーバ側索引を更新し、更新したサーバ側索引に対する情報端末側の端末側索引における更新処理の内容を示す索引更新情報を作成して、情報端末に対し送信し、情報端末では、索引サーバから索引更新情報を受信し、その索引更新情報の内容を解釈して、端末側索引と索引更新情報とへアクセスして索引サーバ側の更新後のサーバ側索引と同一の索引内容で検索を行うため、情報端末側における索引更新ための記憶容量の増大を抑えることでき、効率的に索引を更新・検索することができる。
【発明を実施するための最良の形態】
【００２４】
実施の形態１．
以下、本発明の実施の形態１を、図面を参照しながら具体的に説明する。
【００２５】
図１は、本発明の実施の形態に係るホームサーバおよび情報端末により構成される分散型データベースシステムの全体構成図である。
【００２６】
図１に示すように、本実施の形態の分散型データベースシステムは、索引サーバであるホームサーバ１４０に対し、１台または複数台の情報端末１５０が接続されて構成されている。
【００２７】
情報端末１５０は、ユーザがネットワークからダウンロードしてきたコンテンツをダウンロードして格納するコンテンツ受信手段１０１と、検索対象とする前記コンテンツデータに付随する文書データ、例えば、画像コンテンツならばその画像の説明文などのテキストデータなどである索引更新用データを、ホームホームサーバ１４０へ送信する索引更新用データ送信手段１０２と、ホームホームサーバ１４０から送信された索引更新情報１１４を受信する索引更新情報受信手段１０７と、索引更新情報受信手段１０７にて受信した索引更新情報１１４と、既に保持している索引を格納する端末側索引１０３と、前記情報処理端末側索引１０３と前記索引更新情報１１４とを入力して実際に更新を行わなくとも、索引検索時に端末側索引１０３と索引更新情報１１４とを同時に解釈して検索することにより、論理的に更新後の索引内容と同じ検索結果を得られるという擬似的にホームサーバ１４０側で作成した新版索引を検索するための検索手段１０６と、端末側索引１０３と索引更新情報１１４とにアクセスして実際に索引の更新を行う更新情報適用手段１０５とを有している。
【００２８】
一方、ホームサーバ１４０は、情報端末１５０の索引更新用データ送信手段１０２から送信された索引更新用データを受信する索引更新用データ受信手段１０８と、前記索引更新用データ受信手段１０８にて受信した索引更新用データ１０９と、ホームサーバ１４０にサーバ側索引１１２が存在せず初めて索引更新用データ１０９を受信した際に受信した文書を検索するための索引を作成する索引作成手段１１０と、索引作成手段１１０により作成されるサーバ側索引１１２と、サーバ側索引１１２が既に存在している場合に索引更新用データ１０９を受信した場合サーバ側索引１１２を更新する索引更新手段１１１と、索引作成手段１１０または索引更新手段１１１によって作成された新版のサーバ側索引１１２より情報端末１５０側に送信すべきサーバ側索引１１２の差分情報を作成する索引更新情報作成手段１１３と、索引更新情報作成手段１１３により作成された索引更新情報１１４と、接続された各情報端末１５０へ索引更新情報１１４を送信する索引更新情報送信手段１１５と、ホームサーバ１４０に接続される複数情報端末１５０がどのデータベースを保持しているかという情報と各端末側索引１０３へのユーザ毎のアクセス権を持ち、各情報端末１５０に応じ索引更新用データ受信手段１０８と索引更新情報送信手段１１５の動作を制御する端末情報管理手段１１６とを有している。なお、索引更新用データ受信手段１０８は、情報端末１５０の索引更新用データ送信手段１０２から送信された索引更新用データを受信するものとして説明したが、本発明ではこれに限らず、情報端末１５０に限らず、他の通信装置や、サーバから受信するようにしていても勿論良い。
【００２９】
ホームサーバ１４０に接続される複数情報端末１５０は、各々、ハードディスク等のデータベースを有しており、端末情報管理手段１１６は、これらの情報端末が、どのデータベースを保持しているかという情報を管理している。
【００３０】
また、端末情報管理手段１１６は、各情報端末１５０が保持している端末側索引１０３やコンテンツを他の情報端末１５０へ配布や閲覧することのアクセス権を制御する。また、この制御は、情報端末１５０のＩＤで制御するだけでなく、情報端末１５０を利用するユーザＩＤとの組み合わせで行っても良い。これにより、索引更新情報送信手段１１５は、これら情報端末１５０のＩＤ等の管理情報の内容により、端末側索引１０３を更新すべき情報端末１５０を決定し、索引更新情報を送信することで、同じ索引を複数の情報端末１５０間でセキュアに共有できる。また、情報端末１５０の保持するコンテンツを、ユーザＩＤや、情報端末ＩＤの条件により閲覧できるように、コンテンツに対するアクセス権の管理もこの端末情報管理手段１１６で行ってもよい。
【００３１】
図２に、本実施の形態１による索引更新情報１１４に含まれるバイナリ差分情報１１４ａの一例を示す。
【００３２】
本実施の形態１では、索引更新情報１１４として、図２に示すようなバイナリ差分情報１１４ａを用いる。バイナリ差分情報１１４ａは、更新前のサーバ側索引１１２と、更新後のサーバ側索引１１２との間で、バイナリデータとして差分をとった場合に、３つのオペレーション（挿入、削除、置換）と、挿入、置換が発生した場合のバイナリデータを記録したものである。本実施の形態１の場合、このバイナリ差分情報１１４ａだけをもって、索引更新情報１１４としている。
【００３３】
図２において、例えば、“０１，Ｉ，４，ＦＦ，４３，Ａ０，Ｄ１”は、索引ファイルの１バイト目に、４バイトの”０ｘＦＦ  ０ｘ４３  ０ｘＡ０  ０ｘＤ１”を挿入することを示している。また、“１０，Ｒ，２，０Ｆ，３６”は、索引ファイルの１０バイト目から２バイトを“０ｘ０Ｆ  ０ｘ３６”に置換すること示しており、“１５，Ｄ，１”は、索引ファイルの１５バイト目から１バイトを削除することを示している。
【００３４】
図３は、 本実施の形態１の情報端末１５０における検索手段１０６の構成を示すブロック図である。
【００３５】
図３において、新版の更新において、索引更新情報１１４を更新情報適用手段１０５により、適用しなくとも、検索を行うための検索手段１０６の構成を示す図である。
【００３６】
つまり、図３において、実施の形態１の情報端末１５０の検索手段１０６は、検索キーワード解析手段８０２と、検索結果取得手段８０３と、検索結果格納手段８０４と、ファイルアクセス手段８０６と、索引更新情報１１４であるバイナリ差分情報１１４ａを解釈する索引更新情報解釈手段８０７とを有している。
【００３７】
図４は、本実施の形態１の検索手段１０６による検索処理の流れを示すフローチャートである。
【００３８】
まず、本実施の形態１の検索手段１０６では、ユーザがキーボード等の検索キーワード入力手段８０１を用いて検索キーワードを入力すると、検索キーワード解析手段８０２がその検索キーワードを取得し（ＳＴ１００）、続いて端末側索引１０３内にある辞書等を用いてその検索キーワードの解析処理を行い、検索可能な単語集合に分割して、解析結果を検索結果取得手段８０３へ出力する（ＳＴ２００）。
【００３９】
検索結果取得手段８０３は、検索キーワード解析手段８０２から分割処理された検索キーワードを受信すると、検索結果取得手段８０３は、その検索キーワードに基づき端末側索引１０３へのファイルアクセスが生じた際、索引更新情報解釈手段８０７からバイナリ差分情報１１４ａを先に読込み、該当アドレスが変更されているか否かで、バイナリ差分情報１１４ａか、旧版の端末側索引１０３のどちらにアクセスすべきかを決定し、検索結果レコードの集合を求める（ＳＴ３００）。これにより、新版の端末側索引１０３の論理的なファイルアドレスと、バイナリデータとを得ることが出来る。このようにして、レコード集合を求め、検索結果レコードの集合をリターンして、検索結果格納手段８０４に格納する（ＳＴ４００）。
【００４０】
このようにして、ファイルアクセス手段８０６を介して検索キーワード解析手段８０２または検索結果取得手段８０３が端末側索引１０３にアクセスしたり、索引更新情報解釈手段８０７を介して検索キーワード解析手段８０２が索引更新情報１１４であるバイナリ差分情報１１４ａにアクセスして、新版索引を擬似的または仮想的に構築して論理的かつ効率的に検索できる。
【００４１】
図５は、索引更新情報作成手段１１３により作成されたバイナリ差分情報１１４ａを用いて新版の索引を実際に更新しなくても検索できる仕組みの概念例を示す図である。
【００４２】
バイナリ差分情報１１４ａが、図５に示すように、“０１，Ｉ，４，ＦＦ，４３，Ａ０，Ｄ１（索引ファイルの１バイト目に４バイト０ｘＦＦ  ０ｘ４３  ０ｘＡ０  ０ｘＤ１を挿入）”、“１０，Ｒ，２，０Ｆ，３６（索引ファイルの１０バイト目から２バイトを０ｘ０Ｆ  ０ｘ３６に置換）”、“１５，Ｄ，１（索引ファイルの１５バイト目から１バイトを削除）”という内容の場合であるとする。
【００４３】
そして、検索手段１０６が１〜３２バイト目の情報を取得する必要があるとする。
【００４４】
この場合、まず、索引更新情報解釈手段８０７は、バイナリ差分情報１１４ａの“０１，Ｉ，４，ＦＦ，４３，Ａ０，Ｄ１（索引ファイルの１バイト目に４バイト０ｘＦＦ  ０ｘ４３  ０ｘＡ０  ０ｘＤ１を挿入）”に基づき、端末側索引１０３の１バイト目に４バイト、すなわち“ＦＦ  ４３  Ａ０  Ｄ１”を読み込む。
【００４５】
次いで、ファイルアクセス手段８０６は、端末側索引１０３の１バイト目から９バイト、すなわち“００  ０１  ０２  ０３  ０４  ０５  ０６  ０７  ０８”を読み込み、続いて索引更新情報解釈手段８０７がバイナリ差分情報１１４ａの“１０，Ｒ，２，０Ｆ，３６（索引ファイルの１０バイト目から２バイトを０ｘ０Ｆ  ０ｘ３６に置換）”に基づき、端末側索引１０３の１０バイト目から２バイトを２バイト、すなわち“０Ｆ  ３６”を読み込む。
【００４６】
次に、ファイルアクセス手段８０６は、端末側索引１０３の１２バイト目から３バイト、すなわち“０Ｂ  ０Ｃ  ０Ｄ”読み込み、続いて索引更新情報解釈手段８０７がバイナリ差分情報１１４ａの“１５，Ｄ，１（索引ファイルの１５バイト目から１バイトを削除）”に基づき、端末側索引１０３の１５バイト目である“０Ｅ”を削除する。
【００４７】
そして、最後に、ファイルアクセス手段８０６が端末側索引１０３の１６バイト目から１４バイト、すなわち“０Ｆ  ００  ０１  ０２  ０３  ０４  ０５  ０６  ０７  ０８  ０９  ０Ａ  ０Ｂ  ０Ｃ”を読み込む。
【００４８】
このようにして、検索手段１０６は、バイナリ差分情報１１４ａを含む索引更新情報１１４を用いて、更新された端末側索引１０３の１バイト目から３２バイト、すなわち、“ＦＦ  ４３  Ａ０  Ｄ１  ００  ０１  ０２  ０３  ０４  ０５  ０６  ０７  ０８  ０Ｆ  ３６  ０Ｂ  ０Ｃ  ０Ｄ  ０Ｆ  ００  ０１  ０２  ０３  ０４  ０５  ０６  ０７  ０８  ０９  ０Ａ  ０Ｂ  ０Ｃ”を読み込むことができる。
【００４９】
このように、本実施の形態１の検索手段１０６は、端末側索引１０３自体は、更新されていなくても、端末側索引１０３と、バイナリ差分情報１１４ａを含む索引更新情報１１４との内容を読み込むことにより、仮想的に更新された端末側索引１０３を構築して、仮想的に更新された端末側索引１０３を読み出すことが可能となる。
【００５０】
なお、更新情報適用手段１０５は、検索手段１０６が端末側索引１０３と索引更新情報１１４とにアクセスしていないタイミングや、ユーザがこの情報端末１５０を操作していない時、電源等のＯＦＦボタンを操作して操作の終了をする時等を見計らって、ホームサーバ１４０から索引更新情報１１４が来ていれば、索引更新情報１１４を用いて端末側索引１０３を更新するようにする。
【００５１】
このように、本実施の形態１によれば、更新情報適用手段１０５が端末側索引１０３を実際に更新しなくとも、バイナリ差分情報１１４ａを含む索引更新情報１１４と、端末側索引１０３との二つに対してアクセスを行うことで、ホームサーバ１４０により更新された端末側索引１０３を検索を行うことができ、計算処理負荷をさほど上げずに、ホームサーバ１４０側で作成した新版の検索が論理的に可能となる。
【００５２】
この際、バイナリ差分情報１１４ａは、主記憶（メインメモリ）上に全て読込んでおくようにすれば、さらに、高速化が図れる。
【００５３】
その結果、情報端末１５０側での更新された新版の索引の検索においては、更新情報適用手段１０５により端末側索引１０３を新版に更新せずとも、旧版索引から新版索引を作成する際に作成される、追加、削除、変更に関する情報と、追加、変更の場合、内容のバイト列を記録するバイナリ差分情報１１４ａを索引更新情報１１４とすることにより、旧版索引である端末側索引１０３と、索引更新情報１１４の二つを用いて、ファイルアクセス処理が発生する毎に、索引更新情報１１４の情報を解釈する索引更新情報解釈手段８０７から制御するだけでよく、高い計算処理負荷を与えずに擬似的に新版索引の検索を行え、効率的な更新処理が可能となる。
【００５４】
実施の形態２．
次に、本実施の形態２について説明する。
【００５５】
図６は、本実施の形態２におけるホームサーバ１４０の索引更新情報作成手段１１３と、これにより作成される索引更新情報１１４の一例を示すブロック図である。
【００５６】
図６に示すように、本実施の形態２では、索引更新情報１１４は、実施の形態１と同様のバイナリ差分情報１１４ａの他、単語変更表１１４ｂと、レコード番号変更表１１４ｃとを含んでおり、これに応じて、索引更新情報作成手段１１３は、単語変更表作成手段３０３と、レコード番号変更表作成手段３０４と、バイナリ差分情報作成手段３０５とを有している。
【００５７】
単語変更表１１４ｂとは、旧版索引から新版索引への更新時に、サーバ側索引１１２内部に保持する辞書すなわち検索対象文書中に出現する全単語の情報において、単語の出現するレコードと、その出現位置などの登録情報に変更が発生する単語とについての変更の有無を記載したものである。索引更新情報作成手段１１３の単語変更表作成手段３０３が、単語変更表１１４ｂを作成する。
【００５８】
また、レコード番号変更表１１４ｃとは、旧版索引と更新後の新版索引において、登録している各文書のレコード番号が、どのように変更されたかを記録しているかを示すものである。索引更新情報作成手段１１３のレコード番号変更表作成手段３０４が、レコード番号変更表１１４ｃを作成する。
【００５９】
図７に、図６に示す本実施の形態２の索引更新情報１１４の具体例を示す。
【００６０】
図６でも説明したように、本実施の形態２では、索引更新情報１１４は、実施の形態１と同様のバイナリ差分情報１１４ａの他、単語変更表１１４ｂと、レコード番号変更表１１４ｃとから構成されている。
【００６１】
バイナリ差分情報１１４ａは、図２に示す実施の形態１と同様のもので、例えば、“０１，Ｉ，４，ＦＦ，４３，Ａ０，Ｄ１”は、索引ファイルの１バイト目に、４バイトの”０ｘＦＦ  ０ｘ４３  ０ｘＡ０  ０ｘＤ１”を挿入することを示し、“１０，Ｒ，２，０Ｆ，３６”は、索引ファイルの１０バイト目から２バイトを“０ｘ０Ｆ  ０ｘ３６”に置換すること示し、“１５，Ｄ，１”は、索引ファイルの１５バイト目から１バイトを削除することを示している。
【００６２】
レコード番号変更表１１４ｃでは、例えば、“１００：３：Ｄ”は、レコード番号１００以降は３前方にずらす、２００：４：Ａ”は、レコード番号２００以降は４後方にずらすことを示している。
【００６３】
単語変更表１１４ｂでは、例えば、“単語０：○”は、○がついている単語０は変更あり、“単語１：×”は、×がついている単語１は変更なし、“単語Ｎ：○”○がついている単語Ｎは変更ありを示している。
【００６４】
図８は、本実施の形態２における索引更新情報１１４を用いた情報端末１５０側での索引検索処理を行う際の検索手段１０６の詳細な構成を示すブロック図である。
【００６５】
図８において、索引更新情報１１４として、バイナリ差分情報１１４ａだけを用いて検索する図３に示す実施の形態１の検索手段１０６の構成に対し、単語変更表１１４ｂを解釈し、変更の有った単語については、バイナリ差分情報１１４ａを用いて検索し、変更がない場合、旧版の端末側索引１０３を検索対象とするように、検索結果取得手段８０３へ指示する単語変更表解釈手段８０８を設ける。
【００６６】
また、単語変更表解釈手段８０８がバイナリ差分情報１１４ａを用いずに旧版の端末側索引１０３からレコード集合を求めた場合は、当該単語の変更が無ければ、新版での検索を行った結果集合（レコード番号集合）と等しくなるが、新版でいずれかのレコードに変更、追加、削除などの操作がなされている場合、旧版の端末側索引１０３と新版の索引との間におけるレコード番号のずれが発生する。このため、本実施の形態２では、検索結果取得手段８０３に結果を返す前に、旧版と新版とのずれを解消するための情報が記載されるレコード番号変更表１１４ｃを用いてレコード番号を修正するレコード番号変更表解釈手段８０９を有している。
【００６７】
図９は、単語変更表１１４ｂと、レコード番号変更表１１４ｃを用いた本実施の形態２の情報端末１５０側での索引検索処理を示すフローチャートである。
【００６８】
図９に示すように検索手段１０６では、ユーザがキーボード等の検索キーワード入力手段８０１を用いて検索キーワードを入力すると、検索キーワード解析手段８０２がその検索キーワードを取得し（ＳＴ２００）、続いて検索キーワード解析手段８０２が端末側索引１０３内にある辞書等を用いてその検索キーワードの解析処理を行い、検索可能な単語集合に分割して、解析結果を、本実施の形態２の場合、検索結果取得手段８０３へ出力する（ＳＴ２１０）。
【００６９】
単語変更表解釈手段８０８は、検索キーワード解析手段８０２から分割された単語集合を受けると、その分割された全ての単語について、図７に示すような単語変更表１１４ｂに基づいて、分割された単語に変更があるか否か判断し、その判断結果を検索結果取得手段８０３へ出力する（ＳＴ２２０）。
【００７０】
ここで、単語変更表解釈手段８０８が分割された単語に変更があると判断した場合（ＳＴ２２０“Ｙｅｓ”）、検索結果取得手段８０３は、索引更新情報解釈手段８０７へ指示を出力して、その変更がある単語についてバイナリ差分情報１１４ａを解釈することにより、ホームサーバ１４０側で作成した新版サーバ側索引１１２を擬似的に検索し、該当する単語の出現するレコード番号の集合を取得する（ＳＴ２３０）。
【００７１】
これに対し、単語変更表解釈手段８０８が分割された単語に変更がないと判断した場合（ＳＴ２２０“Ｎｏ”）、検索結果取得手段８０３は、その変更がない単語についてバイナリ差分情報１１４ａを予め解釈した上でファイルアクセス手段８０６へ指示を出し、ファイルアクセス手段８０６が旧版の索引である端末側索引１０３をそのまま検索し、レコード集合を求める（ＳＴ２４０）。
【００７２】
そして、レコード番号変更表解釈手段８０９は、単語変更表解釈手段８０８からの指示を受けて、図７に示すようにレコード番号集合がどのようにずれるかを記録したレコード番号変更表１１４ｃを用いて、例えば、１００番のレコード番号が求まった場合には、それぞれ３前方にずらしレコード番号９７に修正して、新版索引の正しい検索結果を求める（ＳＴ２５０）。
【００７３】
そして、ＳＴ２１０にて分割された全ての単語について以上の処理が終了したか否かを判断し（ＳＴ２６０）、分割された全ての単語について以上の処理が終了していない場合には（ＳＴ２６０“Ｎｏ”）、ＳＴ２１０の処理に戻り、以上の処理を繰り返す一方、分割された全ての単語について以上の処理が終了した場合には（ＳＴ２６０“Ｙｅｓ”）、求めた検索結果の集合をリターンして、検索結果格納手段８０４へ格納する（ＳＴ２７０）。
【００７４】
このように各単語について同様の処理を行いながら、単語変更表１１４ｂを参照して検索すべき単語の集合である検索レコード集合を絞り込むことで、迅速に新版索引を検索したときの正しい最終検索結果を得ることが出来る。
【００７５】
図１０は、本実施の形態２において索引更新情報作成手段１１３により作成された索引更新情報１１４を用いて新版の索引を実際に検索する際の具体例を示す図である。
【００７６】
なお、実施の形態１のようにバイナリ差分情報１１４ａを用いる場合の具体例は、図５にて既に説明済みなので、ここでは説明は省略し、レコード番号変更表１１４ｃ及び単語変更表１１４ｂを用いる場合の検索について説明するものとする。
【００７７】
図１０に示す更新の例では、更新前索引（初期世代）におけるレコード番号２，４（Ｒｎｏ２，４）のレコードが削除され、レコード番号３，５（Ｒｎｏ３，５）のレコードが各々更新後索引（第２世代）におけるレコード番号６，７（Ｒｎｏ６，７）に変更される場合を示している。
【００７８】
つまり、更新前索引（初期世代）におけるレコード番号２（Ｒｎｏ２）の“Ｓ社は、月額料金５，０００円でプロバイダサービス開始”、レコード番号４（Ｒｎｏ４）の“Ｉ社は、次世代プロセッサＸを発表。”というレコードは削除し、更新前索引（初期世代）におけるレコード番号３（Ｒｎｏ３）の“ＭＮ社は冬季限定の発泡酒発売。”、レコード番号５（Ｒｎｏ５）の“Ａ社は、９月の受注大幅減。”というレコードが、それぞれ、更新後索引（第２世代）におけるレコード番号６（Ｒｎｏ６）の“ＭＮ社は春季限定の発泡酒を来月上旬に発売する。”、レコード番号７（Ｒｎｏ７）の“Ａ社は、１０月の受注大幅増。”というレコードに変更される場合を示している。
【００７９】
ここで、変更レコードであるレコード番号３（Ｒｎｏ３）のレコードに着目すると、“ＭＮ社”は、更新後のレコード番号６（Ｒｎｏ６）において、出現位置および内容に変更が無いため、単語変更表１１４ｂの“ＭＮ社”の単語のところには変更が無いフラグである“×”が記載される一方、“冬季限定”の単語のところは“春季限定”という単語に変更されるため、変更があることを示すフラグとして“○”が単語変更表１１４ｂに記載されることになる。
【００８０】
よって、例えば、更新後の索引検索において、“冬季限定”という単語を検索文字列とした場合おいては、単語変更表１１４ｂを参照して変更されていることを知ることができるので、バイナリ差分情報１１４ａの検索のみを行うことで、更新後の端末側索引１０３が存在するように仮想的または擬似的に検索することができる。
【００８１】
また、“ＭＮ社”を検索文字列として更新後の索引を検索した場合は、単語変更表１１４ｂを参照して“ＭＮ社”の出現位置および内容が変更していないことを知ることができるため、更新前の索引である端末側索引１０３を検索することになる。
【００８２】
しかし、この図１０に示す例の場合、更新前の端末側索引１０３を検索する際、求まるレコード番号は３であるが、更新後はレコード番号が３から６に変更されているため、レコード番号変更表１１４ｃにより、更新前の端末側索引１０３のレコード番号３以降のレコードは、全て３を加えて解釈することで、正しくレコード番号６を得ることができる。
【００８３】
このように、本実施の形態２によれば、索引更新情報１１４として、旧版索引と新版索引との間の更新部分に対する検索手段１０６の動作を指定するバイナリ差分情報１１４ａと、旧版索引と新版索引の索引内容の差異において、特に、どの単語の情報が変更されたかと、その変更内容を記述した単語変更表１１４ｂと、旧版索引と新版索引との間で論理的にレコード番号がどのようにずれたかを記述したレコード番号変更表１１４ｃとを有し、索引更新情報作成手段１１３は、これらを作成するバイナリ差分作成手段３０５、単語変換表作成手段３０３、レコード番号変更表作成手段３０４を設けているため、実施の形態１と同様の効果が得られると共に、単語変更表１１４ｂとレコード番号変更表１１４ｃとを用いることで、実施の形態１の場合のようにバイナリ差分情報１１４ａを常に適用して検索する場合よりも、無駄なアクセスおよび計算処理量が減り、効率的な検索が可能となる。
【００８４】
つまり、本実施の形態２の場合、索引更新情報１１４にバイナリ差分情報１１４ａの他、単語変更表１１４ｂを追加することにより、検索手段１０６の検索時に、ユーザの入力したキーワードに対応する単語が旧版索引と新版索引において、その内容（出現位置や、レコード番号リストなど）の変更の有無を調べることで、バイナリ差分情報１１４ａへアクセスする必要の有無を決定できるため、変更のない単語の場合は、旧版索引である更新されていない端末側索引１０３だけにアクセスすればよいため、無駄なアクセスおよび計算処理量が減り、効率的な検索が可能となる。
【００８５】
また、本実施の形態２の場合、情報端末１５０側の検索処理において、索引更新情報１１４にバイナリ差分情報１１４ａと単語変更表１１４ｂの他、さらにレコード番号変更表１１４ｃを加え、レコード番号変更表１１４ｃを参照することにより、旧版索引を検索して得られた検索結果の集合であるレコード番号集合は、新版索引ではレコード番号がどう論理的にずれるかを簡単に計算することができ、さらに効率の良い検索が可能となる。
【００８６】
実施の形態３．
次に、本発明の実施の形態３について説明する。
【００８７】
情報端末１５０側で、更新情報適用手段１０５により、索引更新情報を適用しない間に、ホームサーバ１４０より新たな索引更新情報が情報端末１５０に送信され受信された場合、情報端末１５０は、これまでの処理を複数段重ねる、あるいは複数回繰り返すことにより、複数の索引更新情報を入力として、新たな版の索引の検索を行うことになる。しかし、このように複数段または複数回にわたる索引更新情報の解釈および更新処理を行っていては、処理が複雑になり計算量が多くなる。
【００８８】
そのため、本実施の形態３では、情報端末１５０からホームサーバ１４０に索引更新用データ１０９が送信され、ホームサーバ１４０にて索引更新情報作成手段１１３が索引更新情報１１４を作成する際に、送信先となる情報端末１５０の保持する端末側索引１０３が、その更新情報適用手段１０５により更新されたか否か等の端末の状態を管理する索引更新管理手段１１７を、情報端末１５０側に設けたものである。
【００８９】
図１１は、ホームサーバ１４０と情報端末１５０とからなる本実施の形態３の分散データシステムの構成を示すブロック図である。
【００９０】
本実施の形態３では、情報端末１５０に、情報端末１５０が保持する端末側索引１０３が更新情報適用手段１０５により更新されたか否かを管理する索引更新管理手段１１７を設けている。その他の構成は、図１に示す実施の形態１のものと同じであるので、同一番号を付して説明は省略する。
【００９１】
図１２は、本実施の形態３における情報端末１５０とホームサーバ１４０との間での索引更新処理の例を示すシーケンス図である。以後、図１２の流れに沿って説明する。
【００９２】
各情報端末１５０に保持される索引更新情報１１４が存在しない場合、または更新情報適用手段１０５により索引更新情報１１４が端末側索引１０３にすでに反映されて更新されている場合において、ユーザが新たなコンテンツをダウンロード等した場合、まず、索引更新用データ送信手段１０２からホームサーバ１４０に索引更新用データが送信される（ＳＴ４００）。
【００９３】
すると、ホームサーバ１４０側では、索引更新用データ受信手段１０８が索引更新用データ１０９を受信して記憶し、索引更新情報作成手段１１３がその索引更新用データを用いて索引更新情報１１４を作成し（ＳＴ４１０）、作成した索引更新情報１１４を索引更新情報送信手段１１５が情報端末１５０へ送信する（ＳＴ４２０）。
【００９４】
ここで、情報端末１５０の索引更新用データ送信手段１０２が索引更新用データ１０９を送信して、ホームサーバ１４０の索引更新用データ受信手段１０８が受信した場合、索引更新用データ受信手段１０８から端末情報管理手段１１６へ連絡が行く。
【００９５】
端末情報管理手段１１６は、端末側索引１０３が更新情報適用手段１０５により、更新されたかどうかを確認するための索引更新状況確認情報を、新たに設けられた索引更新管理手段１１７に送信する（ＳＴ４３０）。
【００９６】
すると、索引更新管理手段１１７は、端末情報管理手段１１６からの索引更新状況確認情報を受けて、端末側索引１０３が更新されているか否かを確認し、更新されていない場合は、端末情報管理手段１１６に対し更新していないという更新状況を送信する（ＳＴ４４０）。なお、端末側索引１０３が更新されている場合には、索引更新管理手段１１７は、端末情報管理手段１１６に対し更新されているという更新状況は送らないものとする。
【００９７】
すると、情報端末１５０の索引更新管理手段１１７から更新状況情報を受け取ったホームサーバ１４０の端末情報管理手段１１６は、索引更新管理手段１１７から端末側索引１０３を更新していないという更新状況を受け取った場合には、索引更新情報作成手段１１３に対し、索引更新情報作成の処理を変更するように指示する。
【００９８】
この時、すなわち端末情報管理手段１１６に対し更新していないという更新状況を送信した場合には、情報端末１５０側では、索引更新管理手段１１７は新たな索引更新情報を受信するまで、更新情報適用手段１０５による更新処理を禁じるように動作する（ＳＴ４５０）。
【００９９】
一方、ホームサーバ１４０側では、索引更新情報作成手段１１３は、端末情報管理手段１１６より端末側索引１０３が更新されてなく、索引更新情報作成の処理を変更するような指示を受け取ると、索引更新情報を作成する際に、現時点で情報端末１５０が保持している索引更新情報１１４と、新たに送信しようする索引更新情報１１４とを入力として、バイナリ差分情報１１４ａに関しては、オペレーション（削除、追加、変更）の重ね合わせと、バイナリデータの重ね合わせを行い、単語変更表１１４ｂについても、新たに変更の発生した単語については、変更ありのチェックを入れるようにし、レコード番号変更表１１４ｃについては、オペレーションの重ね合せにより、新たな索引更新情報を作成し（ＳＴ４６０）、索引更新情報送信手段１１５を介し送信させる（ＳＴ４７０）。
【０１００】
これにより、情報端末１５０側において、索引更新情報適用手段１０５により索引更新を行わない間に、ホームサーバ１４０から新たな索引更新情報を受信した場合に、情報端末１５０側で更新情報適用手段１０５による複数段の更新処理を行わなくとも、一回の更新処理で済むことになり、効率的な検索の仕組みを保ちつつ、最新の索引を検索することが可能となる。
【０１０１】
このように、本実施の形態３では、情報端末１５０側に端末側索引１０３が更新されたか否かを確認する索引更新管理手段１１７を設け、ホームサーバ１４０側の端末情報管理手段１１６は、索引更新管理手段１１７から端末側索引１０３が更新されていないことを示す更新状況を受信して、索引更新情報適用手段１０５により索引更新を行わない間に、ホームサーバ１４０から新たな索引更新情報を受信した場合、新たな索引更新情報を作成して、索引更新情報送信手段１１５を介し送信するようにしたので、情報端末１５０側における検索処理を効率的に実施でき、かつ、索引更新情報１１４を適用して新版索引を作成しなくても新版の検索を行えるため、データベースの容量増加を少なく抑えることができる。
【産業上の利用可能性】
【０１０２】
本発明に係る索引サーバ、情報端末、分散型データベースシステムによれば、索引更新ための記憶容量の増大を抑え、効率的な索引の更新・検索を可能とすることができる、という効果を有し、ハードディスクドライブ（ＨＤＤ）搭載のＤＶＤレコーダ等のホームサーバや、携帯電話やパソコン等の通信情報端末や、これらを有線または無線のネットワークにより接続した分散型データベースシステムに有用である。
【図面の簡単な説明】
【０１０３】
【図１】本発明の実施の形態に係るホームサーバおよび情報端末により構成される分散型データベースシステムの全体構成図
【図２】本実施の形態１の索引更新情報に含まれるバイナリ差分情報の一例を示す図
【図３】本実施の形態１の情報端末における検索手段の構成を示すブロック図
【図４】本実施の形態１の検索手段による検索処理の流れを示すフローチャート
【図５】索引更新情報作成手段により作成されたバイナリ差分情報を用いて新版の索引を実際に更新しなくても検索できる仕組みの概念例を示す図
【図６】本実施の形態２におけるホームサーバの索引更新情報作成手段と、これにより作成される索引更新情報の一例を示すブロック図
【図７】図６に示す本実施の形態２の索引更新情報の具体例を示す図
【図８】本実施の形態２における索引更新情報を用いた情報端末側での索引検索処理を行う際の検索処理手段の詳細な構成を示すブロック図
【図９】単語変更表と、レコード番号変更表を用いた本実施の形態２の情報端末側での索引検索処理を示すフローチャート
【図１０】本実施の形態２において索引更新情報作成手段により作成された索引更新情報を用いて新版の索引を実際に検索する際の具体例を示す図
【図１１】ホームサーバと情報端末とからなる本実施の形態３の分散データシステムの構成を示すブロック図
【図１２】本実施の形態３における情報端末とホームサーバとの間での索引更新処理の例を示すシーケンス図
【図１３】従来の分散型データベースシステムの構成を示すブロック図
【図１４】従来の文書検索処理の手順を説明する図
【符号の説明】
【０１０４】
１０１  コンテンツ受信手段
１０２  索引更新用データ送信手段
１０３  端末側索引
１０５  更新情報適用手段
１０６  検索手段
１０７  索引更新情報受信手段
１０８  索引更新用データ受信手段
１０９  索引更新用データ
１１０  索引作成手段
１１１  索引更新手段
１１２  サーバ側索引
１１３  索引更新情報作成手段
１１４  索引更新情報
１１５  索引更新情報送信手段
１１６  端末情報管理手段
１１７  索引更新管理手段
１４０  ホームサーバ
１５０  情報端末
３０３  単語変更表作成手段
３０４  レコード番号変更表作成手段
３０５  バイナリ差分情報作成手段
１１４ａ  バイナリ差分情報
１１４ｂ  単語変更表
１１４ｃ  レコード番号変更表
８０１  検索キーワード入力手段
８０２  検索キーワード解析手段
８０３  検索結果取得手段
８０４  検索結果格納手段
８０５  検索結果出力手段
８０６  ファイルアクセス手段
８０７  索引更新情報解釈手段
８０８  単語変更表解釈手段
８０９  レコード番号変更表解釈手段
【図１】
2006227715.tif 000003
【図２】
2006227715.tif 000004
【図３】
2006227715.tif 000005
【図４】
2006227715.tif 000006
【図５】
2006227715.tif 000007
【図６】
2006227715.tif 000008
【図７】
2006227715.tif 000009
【図８】
2006227715.tif 000010
【図９】
2006227715.tif 000011
【図１０】
2006227715.tif 000012
【図１１】
2006227715.tif 000013
【図１２】
2006227715.tif 000014
【図１３】
2006227715.tif 000015
【図１４】
2006227715.tif 000016