JP2006227715A - 索引サーバ、情報端末、および分散型データベースシステム - Google Patents

索引サーバ、情報端末、および分散型データベースシステム Download PDF

Info

Publication number
JP2006227715A
JP2006227715A JP2005037819A JP2005037819A JP2006227715A JP 2006227715 A JP2006227715 A JP 2006227715A JP 2005037819 A JP2005037819 A JP 2005037819A JP 2005037819 A JP2005037819 A JP 2005037819A JP 2006227715 A JP2006227715 A JP 2006227715A
Authority
JP
Japan
Prior art keywords
index
information
terminal
update
update information
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
JP2005037819A
Other languages
English (en)
Inventor
Koichi Tamatoshi
公一 玉利
Yuji Sugano
祐司 菅野
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2005037819A priority Critical patent/JP2006227715A/ja
Publication of JP2006227715A publication Critical patent/JP2006227715A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】 索引更新ための記憶容量の増大を抑え、効率的な索引の更新・検索を可能とすること。
【解決手段】 ホームサーバ140では、索引更新用データ受信手段108が情報端末150の索引更新用データ送信手段102から索引更新用データ109を受信すると、索引更新情報作成手段113が索引更新情報114を作成して索引更新情報送信手段115を介し情報端末150へ送信する。情報端末150では、索引更新情報受信手段107がその索引更新情報を受信し、検索手段106はバイナリ差分情報114aを含む索引更新情報114と、端末側索引103との二つに対してファイルアクセスを行うことにより、更新情報適用手段105が端末側索引103を実際に更新しなくとも、仮想的に更新された端末側索引103の検索を行なうことができる。
【選択図】 図1

Description

本発明は、情報端末に接続され索引を更新する索引サーバ、その索引サーバから索引更新情報を受信する情報端末、そしてこれらの索引サーバおよび情報端末からなる分散型データベースシステムに関する。
索引サーバ側で索引の更新を行い、クライアントである情報端末側では、索引サーバ側で作成した索引を受信して同一の索引を保持するサーバ・クライアント型の分散データベースシステムが存在する。
図13は、従来型の分散型データベースシステムの全体構成図である。
図13に示すように、索引サーバであるホームサーバ140は、ユーザの検索対象となるサーバ側索引112と、索引更新のための索引更新用データ109が投入されるとサーバ側索引112を更新する索引更新手段111と、情報端末150が保持する各端末側索引103を効率よく更新するために、情報端末150側での更新処理命令が書かれた索引更新情報114を作成する索引更新情報作成手段113と、索引更新情報114を端末150に送信する索引更新情報送信手段115とから構成されている。
一方、情報端末150は、ホームサーバ140の索引更新情報送信手段115より送信された索引更新情報114を受信する各索引更新情報受信手段107と、索引更新情報114を入力として端末側索引103を更新する更新情報適用手段105と、各ユーザによる端末側索引103の検索を可能にする検索手段106とにより構成されている。
図14は、情報端末150における検索手段106の検索処理の流れを示す図である。まず、索引更新情報114を元に、更新情報適用手段105により、旧版索引から新版索引を作成して初めて、新版索引の検索が可能となる。ユーザが新版索引の検索を行うために、検索キーワードが外部から入力されると(ST1)、検索手段106は、既知の手法であるN−gram方式などのような手法によりキーワードを解析して索引に登録された単語単位に分割する(ST2)。そして分割された各単語について、当該単語の出現するレコード番号を求める(ST3)。
レコード番号集合が求まったら、検索手段106は、単語集合の次の単語について、存在するかどうかを確認し、分割単語リストの全単語のレコード番号を求めたか否かを判断し(ST4)、あれば同様の処理を行うが、この際、既にレコード番号集合を求めた単語が存在する場合、新たに求めたレコード番号集合との積集合を求める(ST5)。
これを繰り返し、求まった単語集合の全ての単語について、絞り込まれたレコード集合を求めたら(ST4“YES”)、求まったレコード集合をリターン、すなわちユーザに検索結果を提示する(ST6)。
このモデルでは、図13に示すように、ホームサーバ140側で索引の更新を行う際に、情報端末150側で索引の更新を指示する索引更新情報を作成する索引更新情報作成手段113を有しており、その索引更新情報を情報端末150側に送信する。
情報端末150側では、更新情報適用手段105がその索引更新情報に基づいて端末側索引103の更新を行い、その更新後、検索手段106が更新された端末側索引103の検索を行うようにしている。
特開2002−169805号公報
しかしながら、ホームサーバ140側から情報端末150側に対し索引更新情報を転送し、情報端末150側では受信した索引更新情報により索引を更新してから検索をする従来の分散型データシステムでは、情報端末150が索引更新情報を受信し、更新情報適用手段105などによる索引作成処理を完了して初めて検索可能となるため、情報端末150での索引作成処理中は、情報端末150側単体では新しい索引を検索できない、という課題がある。
また、ホームサーバ140側から索引更新情報を受信した際、情報端末150は端末側索引103を更新せずに、新たに端末側索引103を作成し直す従来の方式は、記憶容量が増大する、という課題がある。
また、情報端末150が、モバイル機器などのバッテリを搭載した機器である場合、索引更新処理による多大なディスクアクセスは、消費電力量が大きい、という課題である。
本発明は、このような課題を解決するものであり、索引更新ための記憶容量の増大を抑え、効率的な索引の更新・検索を可能とする索引サーバ、情報端末、および分散型データベースシステムを提供することを目的とする。
前記課題を解決するため、本発明の索引サーバは、情報端末に接続され索引を更新する索引サーバであって、索引更新用データを受信する索引更新用データ受信手段と、前記索引更新用データに基づいてサーバ側索引を更新する索引更新手段と、前記更新したサーバ側索引に対する前記情報端末側の端末側索引における更新処理の内容を示す索引更新情報を作成する索引更新情報作成手段と、前記索引更新情報を前記情報端末に対し送信する索引更新情報送信手段と、を備えた構成を採る。
また、前記索引更新情報作成手段は、さらに、前記索引更新情報を作成する際、どの単語に関する情報が変更されたかを示す単語変更表を作成して前記索引更新情報に含める、構成を採る。
また、前記索引更新情報作成手段は、さらに、前記索引更新情報を作成する際、更新前の索引と、更新後の索引との間で、レコードの追加、変更、削除等のオペレーションにより単語のレコード番号がどのように変更されたかを示すレコード番号変更表を作成して前記索引更新情報に含める、構成を採る。
また、さらに、前記情報端末に応じ前記索引更新用データ受信手段および前記索引更新情報送信手段の動作を制御し、前記情報端末からの前記索引更新用データの受信および前記索引更新用情報の送信を制御する端末情報管理手段、を有する構成を採る。
また、前記端末情報管理手段は、さらに、前記情報端末における端末側索引が更新されたか否かの更新状況を管理し、前記索引更新情報作成手段は、さらに、新たな索引更新情報を作成した際、前記端末情報管理手段による前記情報端末における端末側索引の更新状況に基づいて、前記新たに作成した索引更新情報と、前記情報端末が現時点で保持する索引更新情報とを用いて、両方の索引更新情報を一つにまとめた索引更新情報を作成して、前記索引更新情報作成手段を介し前記情報端末へ送信する、構成を採る。
また、本発明の情報端末は、前記いずれかの索引サーバと接続される情報端末であって、前記索引サーバから前記索引更新情報を受信する索引更新情報受信手段と、前記索引更新情報の内容を解釈して、端末側索引と、前記索引更新情報とへアクセスして前記索引サーバ側の更新後のサーバ側索引と同一の索引内容で検索を行う検索手段を、有する構成を採る。
また、さらに、端末側索引における前記索引サーバからの前記索引更新情報の適用を管理し、前記索引更新情報適用の有無を前記索引サーバに伝える索引更新管理手段を、有する構成を採る。
また、本発明の分散型データベースシステムは、前記いずれかの索引サーバと、前記いずれかの情報端末と、からなる構成をとる。
本発明によれば、索引サーバでは、情報端末から索引更新用データを受信して、その索引更新用データに基づいてサーバ側索引を更新し、更新したサーバ側索引に対する情報端末側の端末側索引における更新処理の内容を示す索引更新情報を作成して、情報端末に対し送信し、情報端末では、索引サーバから索引更新情報を受信し、その索引更新情報の内容を解釈して、端末側索引と索引更新情報とへアクセスして索引サーバ側の更新後のサーバ側索引と同一の索引内容で検索を行うため、情報端末側における索引更新ための記憶容量の増大を抑えることでき、効率的に索引を更新・検索することができる。
実施の形態1.
以下、本発明の実施の形態1を、図面を参照しながら具体的に説明する。
図1は、本発明の実施の形態に係るホームサーバおよび情報端末により構成される分散型データベースシステムの全体構成図である。
図1に示すように、本実施の形態の分散型データベースシステムは、索引サーバであるホームサーバ140に対し、1台または複数台の情報端末150が接続されて構成されている。
情報端末150は、ユーザがネットワークからダウンロードしてきたコンテンツをダウンロードして格納するコンテンツ受信手段101と、検索対象とする前記コンテンツデータに付随する文書データ、例えば、画像コンテンツならばその画像の説明文などのテキストデータなどである索引更新用データを、ホームホームサーバ140へ送信する索引更新用データ送信手段102と、ホームホームサーバ140から送信された索引更新情報114を受信する索引更新情報受信手段107と、索引更新情報受信手段107にて受信した索引更新情報114と、既に保持している索引を格納する端末側索引103と、前記情報処理端末側索引103と前記索引更新情報114とを入力して実際に更新を行わなくとも、索引検索時に端末側索引103と索引更新情報114とを同時に解釈して検索することにより、論理的に更新後の索引内容と同じ検索結果を得られるという擬似的にホームサーバ140側で作成した新版索引を検索するための検索手段106と、端末側索引103と索引更新情報114とにアクセスして実際に索引の更新を行う更新情報適用手段105とを有している。
一方、ホームサーバ140は、情報端末150の索引更新用データ送信手段102から送信された索引更新用データを受信する索引更新用データ受信手段108と、前記索引更新用データ受信手段108にて受信した索引更新用データ109と、ホームサーバ140にサーバ側索引112が存在せず初めて索引更新用データ109を受信した際に受信した文書を検索するための索引を作成する索引作成手段110と、索引作成手段110により作成されるサーバ側索引112と、サーバ側索引112が既に存在している場合に索引更新用データ109を受信した場合サーバ側索引112を更新する索引更新手段111と、索引作成手段110または索引更新手段111によって作成された新版のサーバ側索引112より情報端末150側に送信すべきサーバ側索引112の差分情報を作成する索引更新情報作成手段113と、索引更新情報作成手段113により作成された索引更新情報114と、接続された各情報端末150へ索引更新情報114を送信する索引更新情報送信手段115と、ホームサーバ140に接続される複数情報端末150がどのデータベースを保持しているかという情報と各端末側索引103へのユーザ毎のアクセス権を持ち、各情報端末150に応じ索引更新用データ受信手段108と索引更新情報送信手段115の動作を制御する端末情報管理手段116とを有している。なお、索引更新用データ受信手段108は、情報端末150の索引更新用データ送信手段102から送信された索引更新用データを受信するものとして説明したが、本発明ではこれに限らず、情報端末150に限らず、他の通信装置や、サーバから受信するようにしていても勿論良い。
ホームサーバ140に接続される複数情報端末150は、各々、ハードディスク等のデータベースを有しており、端末情報管理手段116は、これらの情報端末が、どのデータベースを保持しているかという情報を管理している。
また、端末情報管理手段116は、各情報端末150が保持している端末側索引103やコンテンツを他の情報端末150へ配布や閲覧することのアクセス権を制御する。また、この制御は、情報端末150のIDで制御するだけでなく、情報端末150を利用するユーザIDとの組み合わせで行っても良い。これにより、索引更新情報送信手段115は、これら情報端末150のID等の管理情報の内容により、端末側索引103を更新すべき情報端末150を決定し、索引更新情報を送信することで、同じ索引を複数の情報端末150間でセキュアに共有できる。また、情報端末150の保持するコンテンツを、ユーザIDや、情報端末IDの条件により閲覧できるように、コンテンツに対するアクセス権の管理もこの端末情報管理手段116で行ってもよい。
図2に、本実施の形態1による索引更新情報114に含まれるバイナリ差分情報114aの一例を示す。
本実施の形態1では、索引更新情報114として、図2に示すようなバイナリ差分情報114aを用いる。バイナリ差分情報114aは、更新前のサーバ側索引112と、更新後のサーバ側索引112との間で、バイナリデータとして差分をとった場合に、3つのオペレーション(挿入、削除、置換)と、挿入、置換が発生した場合のバイナリデータを記録したものである。本実施の形態1の場合、このバイナリ差分情報114aだけをもって、索引更新情報114としている。
図2において、例えば、“01,I,4,FF,43,A0,D1”は、索引ファイルの1バイト目に、4バイトの”0xFF 0x43 0xA0 0xD1”を挿入することを示している。また、“10,R,2,0F,36”は、索引ファイルの10バイト目から2バイトを“0x0F 0x36”に置換すること示しており、“15,D,1”は、索引ファイルの15バイト目から1バイトを削除することを示している。
図3は、 本実施の形態1の情報端末150における検索手段106の構成を示すブロック図である。
図3において、新版の更新において、索引更新情報114を更新情報適用手段105により、適用しなくとも、検索を行うための検索手段106の構成を示す図である。
つまり、図3において、実施の形態1の情報端末150の検索手段106は、検索キーワード解析手段802と、検索結果取得手段803と、検索結果格納手段804と、ファイルアクセス手段806と、索引更新情報114であるバイナリ差分情報114aを解釈する索引更新情報解釈手段807とを有している。
図4は、本実施の形態1の検索手段106による検索処理の流れを示すフローチャートである。
まず、本実施の形態1の検索手段106では、ユーザがキーボード等の検索キーワード入力手段801を用いて検索キーワードを入力すると、検索キーワード解析手段802がその検索キーワードを取得し(ST100)、続いて端末側索引103内にある辞書等を用いてその検索キーワードの解析処理を行い、検索可能な単語集合に分割して、解析結果を検索結果取得手段803へ出力する(ST200)。
検索結果取得手段803は、検索キーワード解析手段802から分割処理された検索キーワードを受信すると、検索結果取得手段803は、その検索キーワードに基づき端末側索引103へのファイルアクセスが生じた際、索引更新情報解釈手段807からバイナリ差分情報114aを先に読込み、該当アドレスが変更されているか否かで、バイナリ差分情報114aか、旧版の端末側索引103のどちらにアクセスすべきかを決定し、検索結果レコードの集合を求める(ST300)。これにより、新版の端末側索引103の論理的なファイルアドレスと、バイナリデータとを得ることが出来る。このようにして、レコード集合を求め、検索結果レコードの集合をリターンして、検索結果格納手段804に格納する(ST400)。
このようにして、ファイルアクセス手段806を介して検索キーワード解析手段802または検索結果取得手段803が端末側索引103にアクセスしたり、索引更新情報解釈手段807を介して検索キーワード解析手段802が索引更新情報114であるバイナリ差分情報114aにアクセスして、新版索引を擬似的または仮想的に構築して論理的かつ効率的に検索できる。
図5は、索引更新情報作成手段113により作成されたバイナリ差分情報114aを用いて新版の索引を実際に更新しなくても検索できる仕組みの概念例を示す図である。
バイナリ差分情報114aが、図5に示すように、“01,I,4,FF,43,A0,D1(索引ファイルの1バイト目に4バイト0xFF 0x43 0xA0 0xD1を挿入)”、“10,R,2,0F,36(索引ファイルの10バイト目から2バイトを0x0F 0x36に置換)”、“15,D,1(索引ファイルの15バイト目から1バイトを削除)”という内容の場合であるとする。
そして、検索手段106が1〜32バイト目の情報を取得する必要があるとする。
この場合、まず、索引更新情報解釈手段807は、バイナリ差分情報114aの“01,I,4,FF,43,A0,D1(索引ファイルの1バイト目に4バイト0xFF 0x43 0xA0 0xD1を挿入)”に基づき、端末側索引103の1バイト目に4バイト、すなわち“FF 43 A0 D1”を読み込む。
次いで、ファイルアクセス手段806は、端末側索引103の1バイト目から9バイト、すなわち“00 01 02 03 04 05 06 07 08”を読み込み、続いて索引更新情報解釈手段807がバイナリ差分情報114aの“10,R,2,0F,36(索引ファイルの10バイト目から2バイトを0x0F 0x36に置換)”に基づき、端末側索引103の10バイト目から2バイトを2バイト、すなわち“0F 36”を読み込む。
次に、ファイルアクセス手段806は、端末側索引103の12バイト目から3バイト、すなわち“0B 0C 0D”読み込み、続いて索引更新情報解釈手段807がバイナリ差分情報114aの“15,D,1(索引ファイルの15バイト目から1バイトを削除)”に基づき、端末側索引103の15バイト目である“0E”を削除する。
そして、最後に、ファイルアクセス手段806が端末側索引103の16バイト目から14バイト、すなわち“0F 00 01 02 03 04 05 06 07 08 09 0A 0B 0C”を読み込む。
このようにして、検索手段106は、バイナリ差分情報114aを含む索引更新情報114を用いて、更新された端末側索引103の1バイト目から32バイト、すなわち、“FF 43 A0 D1 00 01 02 03 04 05 06 07 08 0F 36 0B 0C 0D 0F 00 01 02 03 04 05 06 07 08 09 0A 0B 0C”を読み込むことができる。
このように、本実施の形態1の検索手段106は、端末側索引103自体は、更新されていなくても、端末側索引103と、バイナリ差分情報114aを含む索引更新情報114との内容を読み込むことにより、仮想的に更新された端末側索引103を構築して、仮想的に更新された端末側索引103を読み出すことが可能となる。
なお、更新情報適用手段105は、検索手段106が端末側索引103と索引更新情報114とにアクセスしていないタイミングや、ユーザがこの情報端末150を操作していない時、電源等のOFFボタンを操作して操作の終了をする時等を見計らって、ホームサーバ140から索引更新情報114が来ていれば、索引更新情報114を用いて端末側索引103を更新するようにする。
このように、本実施の形態1によれば、更新情報適用手段105が端末側索引103を実際に更新しなくとも、バイナリ差分情報114aを含む索引更新情報114と、端末側索引103との二つに対してアクセスを行うことで、ホームサーバ140により更新された端末側索引103を検索を行うことができ、計算処理負荷をさほど上げずに、ホームサーバ140側で作成した新版の検索が論理的に可能となる。
この際、バイナリ差分情報114aは、主記憶(メインメモリ)上に全て読込んでおくようにすれば、さらに、高速化が図れる。
その結果、情報端末150側での更新された新版の索引の検索においては、更新情報適用手段105により端末側索引103を新版に更新せずとも、旧版索引から新版索引を作成する際に作成される、追加、削除、変更に関する情報と、追加、変更の場合、内容のバイト列を記録するバイナリ差分情報114aを索引更新情報114とすることにより、旧版索引である端末側索引103と、索引更新情報114の二つを用いて、ファイルアクセス処理が発生する毎に、索引更新情報114の情報を解釈する索引更新情報解釈手段807から制御するだけでよく、高い計算処理負荷を与えずに擬似的に新版索引の検索を行え、効率的な更新処理が可能となる。
実施の形態2.
次に、本実施の形態2について説明する。
図6は、本実施の形態2におけるホームサーバ140の索引更新情報作成手段113と、これにより作成される索引更新情報114の一例を示すブロック図である。
図6に示すように、本実施の形態2では、索引更新情報114は、実施の形態1と同様のバイナリ差分情報114aの他、単語変更表114bと、レコード番号変更表114cとを含んでおり、これに応じて、索引更新情報作成手段113は、単語変更表作成手段303と、レコード番号変更表作成手段304と、バイナリ差分情報作成手段305とを有している。
単語変更表114bとは、旧版索引から新版索引への更新時に、サーバ側索引112内部に保持する辞書すなわち検索対象文書中に出現する全単語の情報において、単語の出現するレコードと、その出現位置などの登録情報に変更が発生する単語とについての変更の有無を記載したものである。索引更新情報作成手段113の単語変更表作成手段303が、単語変更表114bを作成する。
また、レコード番号変更表114cとは、旧版索引と更新後の新版索引において、登録している各文書のレコード番号が、どのように変更されたかを記録しているかを示すものである。索引更新情報作成手段113のレコード番号変更表作成手段304が、レコード番号変更表114cを作成する。
図7に、図6に示す本実施の形態2の索引更新情報114の具体例を示す。
図6でも説明したように、本実施の形態2では、索引更新情報114は、実施の形態1と同様のバイナリ差分情報114aの他、単語変更表114bと、レコード番号変更表114cとから構成されている。
バイナリ差分情報114aは、図2に示す実施の形態1と同様のもので、例えば、“01,I,4,FF,43,A0,D1”は、索引ファイルの1バイト目に、4バイトの”0xFF 0x43 0xA0 0xD1”を挿入することを示し、“10,R,2,0F,36”は、索引ファイルの10バイト目から2バイトを“0x0F 0x36”に置換すること示し、“15,D,1”は、索引ファイルの15バイト目から1バイトを削除することを示している。
レコード番号変更表114cでは、例えば、“100:3:D”は、レコード番号100以降は3前方にずらす、200:4:A”は、レコード番号200以降は4後方にずらすことを示している。
単語変更表114bでは、例えば、“単語0:○”は、○がついている単語0は変更あり、“単語1:×”は、×がついている単語1は変更なし、“単語N:○”○がついている単語Nは変更ありを示している。
図8は、本実施の形態2における索引更新情報114を用いた情報端末150側での索引検索処理を行う際の検索手段106の詳細な構成を示すブロック図である。
図8において、索引更新情報114として、バイナリ差分情報114aだけを用いて検索する図3に示す実施の形態1の検索手段106の構成に対し、単語変更表114bを解釈し、変更の有った単語については、バイナリ差分情報114aを用いて検索し、変更がない場合、旧版の端末側索引103を検索対象とするように、検索結果取得手段803へ指示する単語変更表解釈手段808を設ける。
また、単語変更表解釈手段808がバイナリ差分情報114aを用いずに旧版の端末側索引103からレコード集合を求めた場合は、当該単語の変更が無ければ、新版での検索を行った結果集合(レコード番号集合)と等しくなるが、新版でいずれかのレコードに変更、追加、削除などの操作がなされている場合、旧版の端末側索引103と新版の索引との間におけるレコード番号のずれが発生する。このため、本実施の形態2では、検索結果取得手段803に結果を返す前に、旧版と新版とのずれを解消するための情報が記載されるレコード番号変更表114cを用いてレコード番号を修正するレコード番号変更表解釈手段809を有している。
図9は、単語変更表114bと、レコード番号変更表114cを用いた本実施の形態2の情報端末150側での索引検索処理を示すフローチャートである。
図9に示すように検索手段106では、ユーザがキーボード等の検索キーワード入力手段801を用いて検索キーワードを入力すると、検索キーワード解析手段802がその検索キーワードを取得し(ST200)、続いて検索キーワード解析手段802が端末側索引103内にある辞書等を用いてその検索キーワードの解析処理を行い、検索可能な単語集合に分割して、解析結果を、本実施の形態2の場合、検索結果取得手段803へ出力する(ST210)。
単語変更表解釈手段808は、検索キーワード解析手段802から分割された単語集合を受けると、その分割された全ての単語について、図7に示すような単語変更表114bに基づいて、分割された単語に変更があるか否か判断し、その判断結果を検索結果取得手段803へ出力する(ST220)。
ここで、単語変更表解釈手段808が分割された単語に変更があると判断した場合(ST220“Yes”)、検索結果取得手段803は、索引更新情報解釈手段807へ指示を出力して、その変更がある単語についてバイナリ差分情報114aを解釈することにより、ホームサーバ140側で作成した新版サーバ側索引112を擬似的に検索し、該当する単語の出現するレコード番号の集合を取得する(ST230)。
これに対し、単語変更表解釈手段808が分割された単語に変更がないと判断した場合(ST220“No”)、検索結果取得手段803は、その変更がない単語についてバイナリ差分情報114aを予め解釈した上でファイルアクセス手段806へ指示を出し、ファイルアクセス手段806が旧版の索引である端末側索引103をそのまま検索し、レコード集合を求める(ST240)。
そして、レコード番号変更表解釈手段809は、単語変更表解釈手段808からの指示を受けて、図7に示すようにレコード番号集合がどのようにずれるかを記録したレコード番号変更表114cを用いて、例えば、100番のレコード番号が求まった場合には、それぞれ3前方にずらしレコード番号97に修正して、新版索引の正しい検索結果を求める(ST250)。
そして、ST210にて分割された全ての単語について以上の処理が終了したか否かを判断し(ST260)、分割された全ての単語について以上の処理が終了していない場合には(ST260“No”)、ST210の処理に戻り、以上の処理を繰り返す一方、分割された全ての単語について以上の処理が終了した場合には(ST260“Yes”)、求めた検索結果の集合をリターンして、検索結果格納手段804へ格納する(ST270)。
このように各単語について同様の処理を行いながら、単語変更表114bを参照して検索すべき単語の集合である検索レコード集合を絞り込むことで、迅速に新版索引を検索したときの正しい最終検索結果を得ることが出来る。
図10は、本実施の形態2において索引更新情報作成手段113により作成された索引更新情報114を用いて新版の索引を実際に検索する際の具体例を示す図である。
なお、実施の形態1のようにバイナリ差分情報114aを用いる場合の具体例は、図5にて既に説明済みなので、ここでは説明は省略し、レコード番号変更表114c及び単語変更表114bを用いる場合の検索について説明するものとする。
図10に示す更新の例では、更新前索引(初期世代)におけるレコード番号2,4(Rno2,4)のレコードが削除され、レコード番号3,5(Rno3,5)のレコードが各々更新後索引(第2世代)におけるレコード番号6,7(Rno6,7)に変更される場合を示している。
つまり、更新前索引(初期世代)におけるレコード番号2(Rno2)の“S社は、月額料金5,000円でプロバイダサービス開始”、レコード番号4(Rno4)の“I社は、次世代プロセッサXを発表。”というレコードは削除し、更新前索引(初期世代)におけるレコード番号3(Rno3)の“MN社は冬季限定の発泡酒発売。”、レコード番号5(Rno5)の“A社は、9月の受注大幅減。”というレコードが、それぞれ、更新後索引(第2世代)におけるレコード番号6(Rno6)の“MN社は春季限定の発泡酒を来月上旬に発売する。”、レコード番号7(Rno7)の“A社は、10月の受注大幅増。”というレコードに変更される場合を示している。
ここで、変更レコードであるレコード番号3(Rno3)のレコードに着目すると、“MN社”は、更新後のレコード番号6(Rno6)において、出現位置および内容に変更が無いため、単語変更表114bの“MN社”の単語のところには変更が無いフラグである“×”が記載される一方、“冬季限定”の単語のところは“春季限定”という単語に変更されるため、変更があることを示すフラグとして“○”が単語変更表114bに記載されることになる。
よって、例えば、更新後の索引検索において、“冬季限定”という単語を検索文字列とした場合おいては、単語変更表114bを参照して変更されていることを知ることができるので、バイナリ差分情報114aの検索のみを行うことで、更新後の端末側索引103が存在するように仮想的または擬似的に検索することができる。
また、“MN社”を検索文字列として更新後の索引を検索した場合は、単語変更表114bを参照して“MN社”の出現位置および内容が変更していないことを知ることができるため、更新前の索引である端末側索引103を検索することになる。
しかし、この図10に示す例の場合、更新前の端末側索引103を検索する際、求まるレコード番号は3であるが、更新後はレコード番号が3から6に変更されているため、レコード番号変更表114cにより、更新前の端末側索引103のレコード番号3以降のレコードは、全て3を加えて解釈することで、正しくレコード番号6を得ることができる。
このように、本実施の形態2によれば、索引更新情報114として、旧版索引と新版索引との間の更新部分に対する検索手段106の動作を指定するバイナリ差分情報114aと、旧版索引と新版索引の索引内容の差異において、特に、どの単語の情報が変更されたかと、その変更内容を記述した単語変更表114bと、旧版索引と新版索引との間で論理的にレコード番号がどのようにずれたかを記述したレコード番号変更表114cとを有し、索引更新情報作成手段113は、これらを作成するバイナリ差分作成手段305、単語変換表作成手段303、レコード番号変更表作成手段304を設けているため、実施の形態1と同様の効果が得られると共に、単語変更表114bとレコード番号変更表114cとを用いることで、実施の形態1の場合のようにバイナリ差分情報114aを常に適用して検索する場合よりも、無駄なアクセスおよび計算処理量が減り、効率的な検索が可能となる。
つまり、本実施の形態2の場合、索引更新情報114にバイナリ差分情報114aの他、単語変更表114bを追加することにより、検索手段106の検索時に、ユーザの入力したキーワードに対応する単語が旧版索引と新版索引において、その内容(出現位置や、レコード番号リストなど)の変更の有無を調べることで、バイナリ差分情報114aへアクセスする必要の有無を決定できるため、変更のない単語の場合は、旧版索引である更新されていない端末側索引103だけにアクセスすればよいため、無駄なアクセスおよび計算処理量が減り、効率的な検索が可能となる。
また、本実施の形態2の場合、情報端末150側の検索処理において、索引更新情報114にバイナリ差分情報114aと単語変更表114bの他、さらにレコード番号変更表114cを加え、レコード番号変更表114cを参照することにより、旧版索引を検索して得られた検索結果の集合であるレコード番号集合は、新版索引ではレコード番号がどう論理的にずれるかを簡単に計算することができ、さらに効率の良い検索が可能となる。
実施の形態3.
次に、本発明の実施の形態3について説明する。
情報端末150側で、更新情報適用手段105により、索引更新情報を適用しない間に、ホームサーバ140より新たな索引更新情報が情報端末150に送信され受信された場合、情報端末150は、これまでの処理を複数段重ねる、あるいは複数回繰り返すことにより、複数の索引更新情報を入力として、新たな版の索引の検索を行うことになる。しかし、このように複数段または複数回にわたる索引更新情報の解釈および更新処理を行っていては、処理が複雑になり計算量が多くなる。
そのため、本実施の形態3では、情報端末150からホームサーバ140に索引更新用データ109が送信され、ホームサーバ140にて索引更新情報作成手段113が索引更新情報114を作成する際に、送信先となる情報端末150の保持する端末側索引103が、その更新情報適用手段105により更新されたか否か等の端末の状態を管理する索引更新管理手段117を、情報端末150側に設けたものである。
図11は、ホームサーバ140と情報端末150とからなる本実施の形態3の分散データシステムの構成を示すブロック図である。
本実施の形態3では、情報端末150に、情報端末150が保持する端末側索引103が更新情報適用手段105により更新されたか否かを管理する索引更新管理手段117を設けている。その他の構成は、図1に示す実施の形態1のものと同じであるので、同一番号を付して説明は省略する。
図12は、本実施の形態3における情報端末150とホームサーバ140との間での索引更新処理の例を示すシーケンス図である。以後、図12の流れに沿って説明する。
各情報端末150に保持される索引更新情報114が存在しない場合、または更新情報適用手段105により索引更新情報114が端末側索引103にすでに反映されて更新されている場合において、ユーザが新たなコンテンツをダウンロード等した場合、まず、索引更新用データ送信手段102からホームサーバ140に索引更新用データが送信される(ST400)。
すると、ホームサーバ140側では、索引更新用データ受信手段108が索引更新用データ109を受信して記憶し、索引更新情報作成手段113がその索引更新用データを用いて索引更新情報114を作成し(ST410)、作成した索引更新情報114を索引更新情報送信手段115が情報端末150へ送信する(ST420)。
ここで、情報端末150の索引更新用データ送信手段102が索引更新用データ109を送信して、ホームサーバ140の索引更新用データ受信手段108が受信した場合、索引更新用データ受信手段108から端末情報管理手段116へ連絡が行く。
端末情報管理手段116は、端末側索引103が更新情報適用手段105により、更新されたかどうかを確認するための索引更新状況確認情報を、新たに設けられた索引更新管理手段117に送信する(ST430)。
すると、索引更新管理手段117は、端末情報管理手段116からの索引更新状況確認情報を受けて、端末側索引103が更新されているか否かを確認し、更新されていない場合は、端末情報管理手段116に対し更新していないという更新状況を送信する(ST440)。なお、端末側索引103が更新されている場合には、索引更新管理手段117は、端末情報管理手段116に対し更新されているという更新状況は送らないものとする。
すると、情報端末150の索引更新管理手段117から更新状況情報を受け取ったホームサーバ140の端末情報管理手段116は、索引更新管理手段117から端末側索引103を更新していないという更新状況を受け取った場合には、索引更新情報作成手段113に対し、索引更新情報作成の処理を変更するように指示する。
この時、すなわち端末情報管理手段116に対し更新していないという更新状況を送信した場合には、情報端末150側では、索引更新管理手段117は新たな索引更新情報を受信するまで、更新情報適用手段105による更新処理を禁じるように動作する(ST450)。
一方、ホームサーバ140側では、索引更新情報作成手段113は、端末情報管理手段116より端末側索引103が更新されてなく、索引更新情報作成の処理を変更するような指示を受け取ると、索引更新情報を作成する際に、現時点で情報端末150が保持している索引更新情報114と、新たに送信しようする索引更新情報114とを入力として、バイナリ差分情報114aに関しては、オペレーション(削除、追加、変更)の重ね合わせと、バイナリデータの重ね合わせを行い、単語変更表114bについても、新たに変更の発生した単語については、変更ありのチェックを入れるようにし、レコード番号変更表114cについては、オペレーションの重ね合せにより、新たな索引更新情報を作成し(ST460)、索引更新情報送信手段115を介し送信させる(ST470)。
これにより、情報端末150側において、索引更新情報適用手段105により索引更新を行わない間に、ホームサーバ140から新たな索引更新情報を受信した場合に、情報端末150側で更新情報適用手段105による複数段の更新処理を行わなくとも、一回の更新処理で済むことになり、効率的な検索の仕組みを保ちつつ、最新の索引を検索することが可能となる。
このように、本実施の形態3では、情報端末150側に端末側索引103が更新されたか否かを確認する索引更新管理手段117を設け、ホームサーバ140側の端末情報管理手段116は、索引更新管理手段117から端末側索引103が更新されていないことを示す更新状況を受信して、索引更新情報適用手段105により索引更新を行わない間に、ホームサーバ140から新たな索引更新情報を受信した場合、新たな索引更新情報を作成して、索引更新情報送信手段115を介し送信するようにしたので、情報端末150側における検索処理を効率的に実施でき、かつ、索引更新情報114を適用して新版索引を作成しなくても新版の検索を行えるため、データベースの容量増加を少なく抑えることができる。
本発明に係る索引サーバ、情報端末、分散型データベースシステムによれば、索引更新ための記憶容量の増大を抑え、効率的な索引の更新・検索を可能とすることができる、という効果を有し、ハードディスクドライブ(HDD)搭載のDVDレコーダ等のホームサーバや、携帯電話やパソコン等の通信情報端末や、これらを有線または無線のネットワークにより接続した分散型データベースシステムに有用である。
本発明の実施の形態に係るホームサーバおよび情報端末により構成される分散型データベースシステムの全体構成図 本実施の形態1の索引更新情報に含まれるバイナリ差分情報の一例を示す図 本実施の形態1の情報端末における検索手段の構成を示すブロック図 本実施の形態1の検索手段による検索処理の流れを示すフローチャート 索引更新情報作成手段により作成されたバイナリ差分情報を用いて新版の索引を実際に更新しなくても検索できる仕組みの概念例を示す図 本実施の形態2におけるホームサーバの索引更新情報作成手段と、これにより作成される索引更新情報の一例を示すブロック図 図6に示す本実施の形態2の索引更新情報の具体例を示す図 本実施の形態2における索引更新情報を用いた情報端末側での索引検索処理を行う際の検索処理手段の詳細な構成を示すブロック図 単語変更表と、レコード番号変更表を用いた本実施の形態2の情報端末側での索引検索処理を示すフローチャート 本実施の形態2において索引更新情報作成手段により作成された索引更新情報を用いて新版の索引を実際に検索する際の具体例を示す図 ホームサーバと情報端末とからなる本実施の形態3の分散データシステムの構成を示すブロック図 本実施の形態3における情報端末とホームサーバとの間での索引更新処理の例を示すシーケンス図 従来の分散型データベースシステムの構成を示すブロック図 従来の文書検索処理の手順を説明する図
符号の説明
101 コンテンツ受信手段
102 索引更新用データ送信手段
103 端末側索引
105 更新情報適用手段
106 検索手段
107 索引更新情報受信手段
108 索引更新用データ受信手段
109 索引更新用データ
110 索引作成手段
111 索引更新手段
112 サーバ側索引
113 索引更新情報作成手段
114 索引更新情報
115 索引更新情報送信手段
116 端末情報管理手段
117 索引更新管理手段
140 ホームサーバ
150 情報端末
303 単語変更表作成手段
304 レコード番号変更表作成手段
305 バイナリ差分情報作成手段
114a バイナリ差分情報
114b 単語変更表
114c レコード番号変更表
801 検索キーワード入力手段
802 検索キーワード解析手段
803 検索結果取得手段
804 検索結果格納手段
805 検索結果出力手段
806 ファイルアクセス手段
807 索引更新情報解釈手段
808 単語変更表解釈手段
809 レコード番号変更表解釈手段

Claims (8)

  1. 情報端末に接続され索引を更新する索引サーバであって、
    索引更新用データを受信する索引更新用データ受信手段と、
    前記索引更新用データに基づいてサーバ側索引を更新する索引更新手段と、
    前記更新したサーバ側索引に対する前記情報端末側の端末側索引における更新処理の内容を示す索引更新情報を作成する索引更新情報作成手段と、
    前記索引更新情報を前記情報端末に対し送信する索引更新情報送信手段と、
    を備えた索引サーバ。
  2. 前記索引更新情報作成手段は、さらに、
    前記索引更新情報を作成する際、どの単語に関する情報が変更されたかを示す単語変更表を作成して前記索引更新情報に含める、
    ことを特徴とする請求項1記載の索引サーバ。
  3. 前記索引更新情報作成手段は、さらに、
    前記索引更新情報を作成する際、更新前の索引と、更新後の索引との間で、レコードの追加、変更、削除等のオペレーションにより単語のレコード番号がどのように変更されたかを示すレコード番号変更表を作成して前記索引更新情報に含める、
    ことを特徴とする請求項1記載の索引サーバ。
  4. さらに、
    前記情報端末に応じ前記索引更新用データ受信手段および前記索引更新情報送信手段の動作を制御し、前記情報端末からの前記索引更新用データの受信および前記索引更新用情報の送信を制御する端末情報管理手段、
    を有することを特徴とする請求項1記載の索引サーバ。
  5. 前記端末情報管理手段は、さらに、前記情報端末における端末側索引が更新されたか否かの更新状況を管理し、
    前記索引更新情報作成手段は、さらに、
    新たな索引更新情報を作成した際、前記端末情報管理手段による前記情報端末における端末側索引の更新状況に基づいて、前記新たに作成した索引更新情報と、前記情報端末が現時点で保持する索引更新情報とを用いて、両方の索引更新情報を一つにまとめた索引更新情報を作成して、前記索引更新情報作成手段を介し前記情報端末へ送信する、
    ことを特徴とする請求項1記載の索引サーバ。
  6. 請求項1〜請求項5のいずれかの請求項に記載の索引サーバと接続される情報端末であって、
    前記索引サーバから前記索引更新情報を受信する索引更新情報受信手段と、
    前記索引更新情報の内容を解釈して、端末側索引と、前記索引更新情報とへアクセスして前記索引サーバ側の更新後のサーバ側索引と同一の索引内容で検索を行う検索手段を、
    有することを特徴とする情報端末。
  7. さらに、
    端末側索引における前記索引サーバからの前記索引更新情報の適用を管理し、前記索引更新情報適用の有無を前記索引サーバに伝える索引更新管理手段を、
    有することを特徴とする請求項6記載の情報端末。
  8. 請求項1〜請求項5のいずれかの請求項に記載の索引サーバと、
    請求項6または請求項7記載の情報端末と、
    からなることを特徴とする分散型データベースシステム。
JP2005037819A 2005-02-15 2005-02-15 索引サーバ、情報端末、および分散型データベースシステム Pending JP2006227715A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005037819A JP2006227715A (ja) 2005-02-15 2005-02-15 索引サーバ、情報端末、および分散型データベースシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005037819A JP2006227715A (ja) 2005-02-15 2005-02-15 索引サーバ、情報端末、および分散型データベースシステム

Publications (1)

Publication Number Publication Date
JP2006227715A true JP2006227715A (ja) 2006-08-31

Family

ID=36989074

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005037819A Pending JP2006227715A (ja) 2005-02-15 2005-02-15 索引サーバ、情報端末、および分散型データベースシステム

Country Status (1)

Country Link
JP (1) JP2006227715A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014141594A1 (ja) * 2013-03-15 2014-09-18 日本電気株式会社 計算機システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014141594A1 (ja) * 2013-03-15 2014-09-18 日本電気株式会社 計算機システム
JPWO2014141594A1 (ja) * 2013-03-15 2017-02-16 日本電気株式会社 計算機システム
US10146818B2 (en) 2013-03-15 2018-12-04 Nec Corporation Computing system

Similar Documents

Publication Publication Date Title
KR100999267B1 (ko) 관리 서버들에 의해 업데이트된 온-디바이스 애플리케이션 카탈로그
JP4406609B2 (ja) 単一のインターフェイスからのデータの多重階層を管理するための手法
US7472254B2 (en) Systems and methods for modifying a set of data objects
CN101512498B (zh) 向用户提供对分布在多个不同类型的用户设备中的数据文件的访问
US20150302111A1 (en) Method and Apparatus for Constructing File System in Key-Value Storage System, and Electronic Device
AU2013210018B2 (en) Location independent files
JP2016181306A (ja) 索引キーを使用して検索を絞込むシステムおよび方法
CN104778192B9 (zh) 表示可内容寻址存储系统的目录结构
JP2008102765A (ja) 検索処理方法及び検索システム
WO2008141583A1 (fr) Procédé d'entrée de caractères, système d'entrée et procédé pour mettre à jour un lexique de mots
JP2004038960A (ja) ファイルシステムフィルタドライバのためのファイルネームを管理するシステム及び方法
JP2009520283A (ja) 複数セグメント文字列の検索
US9183212B2 (en) Representing directory structure in content-addressable storage systems
JP4713257B2 (ja) データ記憶装置及びバージョン管理プログラム
JP2009064120A (ja) 検索システム
US8346869B2 (en) Granular data synchronization for editing multiple data objects
JP4971717B2 (ja) ディレクトリ分散型記憶装置及びデータ処理要求移譲プログラム
JP2006114033A (ja) データを編成することを円滑にするシステム
EP2420945A1 (en) Foldering by stable query
JP2006227715A (ja) 索引サーバ、情報端末、および分散型データベースシステム
CN114328031B (zh) 元数据组织方法、系统、存储介质及备份方法、检索方法
JP4343669B2 (ja) ファイル管理装置,動的名前空間生成方法および動的名前空間生成プログラム
JP4469818B2 (ja) データ管理装置、データプログラム及びデータ管理方法
US6625614B1 (en) Implementation for efficient access of extended attribute data
JP2006184979A (ja) ファイル情報の書き込み処理方法およびプログラム