(57)【要約】【課題】  各コンピュータの処理性能に応じた適切なサイズのデータを分配し、そのデータを処理する際に各コンピュータの処理性能を最大限に活用できる様にすることが可能な技術を提供する。【解決手段】  複数のコンピュータで処理されるデータを各コンピュータへ分配するデータ分配方法において、データの分配される各コンピュータの処理性能を取得して記憶装置に格納するステップと、複数のコンピュータに分配される各データのサイズを取得して記憶装置に格納するステップと、前記格納した処理性能及びデータサイズを記憶装置から読み出し、各コンピュータでの当該データの処理に必要な予想所要時間を、前記記憶装置から読み出した処理性能とデータサイズから算出し、算出した結果に基づきデータの分配先を決定するステップとを有するものである。【選択図】図１
2006113868.tif 000002
【特許請求の範囲】
【請求項１】
複数のコンピュータで処理されるデータを各コンピュータへ分配するデータ分配方法において、
データの分配される各コンピュータの処理性能を取得して記憶装置に格納するステップと、複数のコンピュータに分配される各データのサイズを取得して記憶装置に格納するステップと、前記格納した処理性能及びデータサイズを記憶装置から読み出し、各コンピュータでの当該データの処理に必要な予想所要時間を、前記記憶装置から読み出した処理性能とデータサイズから算出し、算出した結果に基づきデータの分配先を決定するステップとを有することを特徴とするデータ分配方法。
【請求項２】
複数のコンピュータで処理されるデータを各コンピュータへ分配するデータ分配方法において、
データの分配される各コンピュータの処理性能を取得して記憶装置に格納するステップと、検索対象としてシステムに登録するデータについて予め定められた監視インデクスサイズを算出して記憶装置に格納するステップと、前記格納した処理性能、インデクスサイズ及び監視インデクスの処理頻度を記憶装置から読み出し、各コンピュータでの当該データのインデクス処理に必要な予想所要時間を、前記記憶装置から読み出した処理性能、インデクスサイズ及び処理頻度から算出し、算出した結果に基づきデータの分配先を決定するステップとを有することを特徴とするデータ分配方法。
【請求項３】
各コンピュータでの予想所要時間がほぼ均等又は均等となる様にデータの分配先を決定することを特徴とする請求項１または請求項２のいずれかに記載されたデータ分配方法。
【請求項４】
当該コンピュータの全処理能力を用いるものとして前記処理性能を取得して記憶装置に格納することを特徴とする請求項１乃至請求項３のいずれか１項に記載されたデータ分配方法。
【請求項５】
当該コンピュータの全処理能力の所定割合を用いるものとして前記処理性能を取得して記憶装置に格納することを特徴とする請求項１乃至請求項３のいずれか１項に記載されたデータ分配方法。
【請求項６】
テストデータに対する処理時間を測定して記憶装置に格納し、その処理時間の値から前記処理性能を算出することを特徴とする請求項１乃至請求項５のいずれか１項に記載されたデータ分配方法。
【請求項７】
前記格納したデータサイズを記憶装置から読み出し、そのデータサイズの降順にデータの分配先を決定することを特徴とする請求項１乃至請求項６のいずれか１項に記載されたデータ分配方法。
【請求項８】
データの分配されるコンピュータを追加する場合に、前記格納した既存コンピュータの処理性能を記憶装置から読み出して既存コンピュータと追加コンピュータとの処理性能の比率を算出し、既存コンピュータに残すサイズと追加コンピュータに移動するサイズとの比率が前記算出した処理性能の比率とできるだけ等しくなる様に移動するデータを決定することを特徴とする請求項１乃至請求項７のいずれか１項に記載されたデータ分配方法。
【請求項９】
複数のコンピュータで処理されるデータを各コンピュータへ分配するデータ分配システムにおいて、
データの分配される各コンピュータの処理性能を取得して記憶装置に格納する性能取得処理部と、複数のコンピュータに分配される各データのサイズを取得して記憶装置に格納するデータサイズ取得処理部と、前記格納した処理性能及びデータサイズを記憶装置から読み出し、各コンピュータでの当該データの処理に必要な予想所要時間を、前記記憶装置から読み出した処理性能とデータサイズから算出し、算出した結果に基づきデータの分配先を決定する登録先決定処理部とを備えることを特徴とするデータ分配システム。
【請求項１０】
複数のコンピュータで処理されるデータを各コンピュータへ分配するデータ分配システムにおいて、
データの分配される各コンピュータの処理性能を取得して記憶装置に格納する性能取得処理部と、検索対象としてシステムに登録するデータについて予め定められた監視インデクスサイズを算出して記憶装置に格納するインデクスサイズ算出処理部と、前記格納した処理性能、インデクスサイズ及び監視インデクスの処理頻度を記憶装置から読み出し、各コンピュータでの当該データのインデクス処理に必要な予想所要時間を、前記記憶装置から読み出した処理性能、インデクスサイズ及び処理頻度から算出し、算出した結果に基づきデータの分配先を決定する登録先決定処理部とを備えることを特徴とするデータ分配システム。
【請求項１１】
複数のコンピュータで処理されるデータを各コンピュータへ分配するデータ分配方法をコンピュータに実行させる為のプログラムにおいて、
データの分配される各コンピュータの処理性能を取得して記憶装置に格納するステップと、複数のコンピュータに分配される各データのサイズを取得して記憶装置に格納するステップと、前記格納した処理性能及びデータサイズを記憶装置から読み出し、各コンピュータでの当該データの処理に必要な予想所要時間を、前記記憶装置から読み出した処理性能とデータサイズから算出し、算出した結果に基づきデータの分配先を決定するステップとをコンピュータに実行させることを特徴とするプログラム。
【請求項１２】
複数のコンピュータで処理されるデータを各コンピュータへ分配するデータ分配方法をコンピュータに実行させる為のプログラムにおいて、
データの分配される各コンピュータの処理性能を取得して記憶装置に格納するステップと、検索対象としてシステムに登録するデータについて予め定められた監視インデクスサイズを算出して記憶装置に格納するステップと、前記格納した処理性能、インデクスサイズ及び監視インデクスの処理頻度を記憶装置から読み出し、各コンピュータでの当該データのインデクス処理に必要な予想所要時間を、前記記憶装置から読み出した処理性能、インデクスサイズ及び処理頻度から算出し、算出した結果に基づきデータの分配先を決定するステップとをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は複数のコンピュータで処理されるデータを各コンピュータへ分配するデータ分配技術に関し、特に大規模な文書データベース中の文書データを複数のコンピュータに分配し、指定した文字列の存在する文書データを高速に検索できる様にするデータ分配技術に適用して有効な技術に関するものである。
【背景技術】
【０００２】
電子化された文書データの増大に伴い、大規模な文書データベースが構築される様になっている。これらの大規模な文書データベースから、指定された検索文字列（以下、検索タームと呼ぶ）が含まれる文書データを高速に探し出す文書検索技術が考案されており、この様な技術の一つとして、複数台の文書検索エンジンを用いた並列文書検索技術がある（例えば特許文献参照。以下、この技術を従来技術１と呼ぶ）。この従来技術１は複数の文書検索エンジンに文書データを分配し、検索することにより、高速な文書検索を実現する技術である。
【０００３】
また近年、新規のシステムを構築する際に、従来のシステムで利用していたコンピュータを有効に活用したいと言う要望があがる様になってきた。この様な要望に応え、並列文書検索技術を用いたシステム（以下、並列文書検索システムと呼ぶ）を構築する場合、従来のシステムで利用していた種々のコンピュータを用いてシステムを構築することが考えられる様になって来た。
【０００４】
しかし、コンピュータの性能は年々進歩するため、導入年次によってコンピュータの処理能力が異なっている。このため、従来のシステムで利用していたコンピュータを用いてシステムを構成する場合、システムを構成するコンピュータの性能が均一ではなくなっている。また、複数のコンピュータから構成された並列文書検索システムにおいて、検索タームを含む全ての文書データの集合（以下、検索結果と呼ぶ）を得る為には、全てのコンピュータの検索結果を収集・統合し、一つの検索結果にまとめる必要がある。
【０００５】
しかし、構成するコンピュータの性能が不均一な環境で、同一の長さのデータを同件数だけ、それぞれのコンピュータが処理している場合、高性能なものと低性能なものでは、高性能なものの方が早く検索処理を終える。このため、最終的な検索結果を得る為には、低性能なコンピュータの処理が終わるまで待つ必要がある。この結果、高性能なコンピュータは処理をしない時間ができ、コンピュータの持つ処理能力を最大限には活用できない。
【０００６】
なお、全コンピュータの処理能力を有効に活用する為に、高性能なコンピュータが、より多数のデータを処理する様にデータを分配する技術がある（例えば非特許文献１参照。以下、この技術を従来技術２と呼ぶ）。
【０００７】
以上説明した様に、従来技術１と従来技術２を組み合わせることにより、構成するコンピュータの性能が不均一な並列文書検索システムにおいて、高性能なコンピュータの処理をしない時間を減らすことができ、高性能なコンピュータの処理能力を活用することができる。
【０００８】
【特許文献１】特開平８−１３７７３４号公報
【非特許文献１】P2Pにおける効率的な負荷分散方式の提案、1K-1、情報処理学会第66回全国大会、2004
【発明の開示】
【発明が解決しようとする課題】
【０００９】
並列文書検索システムでは文書単位でコンピュータに文書データを分配しており、１件の文書データを途中で切断して分配することはできないが、その処理対象である文書データのサイズ（以下、文書データサイズと呼ぶ）は１件毎、それぞれ異なるため、コンピュータが処理する文書データサイズの合計は、文書データの件数に必ずしも比例するとは限らない。
【００１０】
上記の性質のため、従来技術１と従来技術２を組み合わせることにより文書データの件数に基づいて文書データを分配した場合、文書データ量を各コンピュータの処理能力に応じた適切なサイズにすることはできず、また文書データを途中で切断して各コンピュータの文書データ量を調整することもできない。このため、各コンピュータはその処理能力を最大限に発揮することが困難という問題があった。
【００１１】
本発明の目的は上記問題を解決し、各コンピュータの処理性能に応じた適切なサイズのデータを分配し、そのデータを処理する際に各コンピュータの処理性能を最大限に活用できる様にすることが可能な技術を提供することにある。
【００１２】
本発明の他の目的は各コンピュータの処理性能に応じた適切なサイズのデータを分配し、そのデータをインデクス処理する際に各コンピュータの処理性能を最大限に活用できる様にすることが可能な技術を提供することにある。
【００１３】
本発明の他の目的は各コンピュータの全処理能力に対する所定の処理性能に応じた適切なサイズのデータを分配し、そのデータを処理する際に各コンピュータの所定の処理性能を最大限に活用できる様にすることが可能な技術を提供することにある。
【００１４】
本発明の他の目的は並列文書検索システムに追加したコンピュータ（以下、追加コンピュータと呼ぶ）の処理性能に応じた適切なサイズのデータを追加コンピュータに移動して、追加コンピュータを含む複数のコンピュータへのデータの再分配を効率的に行うことが可能な技術を提供することにある。
【課題を解決するための手段】
【００１５】
本発明は、複数のコンピュータで処理されるデータを各コンピュータへ分配するデータ分配システムにおいて、分配データのデータサイズに応じた予想所要時間が各コンピュータでできるだけ均等となる様に分配先を決定するものである。
【００１６】
本発明では、複数のコンピュータで並列検索処理により検索される文書データ等のデータを各コンピュータへ分配する際に、そのデータが分配される各コンピュータへサンプルデータを送信してそのサンプルデータ検索時の処理性能を取得して記憶装置に格納し、また複数のコンピュータに分配される各データのサイズを取得して記憶装置に格納する。
【００１７】
そして、前記格納した各コンピュータの処理性能と、分配されるデータのデータサイズとを記憶装置から読み出して、あるデータをコンピュータに分配した場合の当該データの処理に必要な予想所要時間を、前記記憶装置から読み出した処理性能とデータサイズから算出し、その予想所要時間の最も小さいコンピュータを当該データの分配先とする。次のデータの分配先を決定する際には、そのデータの処理に必要な予想所要時間を分配先決定済みデータの予想所要時間に加算して前記と同様に分配先を決定し、算出した結果に基づきデータの分配先を決定する処理を行う。
【発明の効果】
【００１８】
本発明によれば、各コンピュータの処理性能に応じた適切なサイズのデータを分配し、そのデータを処理する際に各コンピュータの処理性能を最大限に活用できる様にすることが可能である。
【発明を実施するための最良の形態】
【００１９】
（実施形態１）
以下に複数のコンピュータでの並列検索処理により全文検索される文書データを各コンピュータへ分配する実施形態１のデータ分配システムについて説明する。
【００２０】
図１は本実施形態の文書検索システムの概略構成を示す図である。図１に示す様に本実施形態の登録制御サーバ１０１は、登録サーバ制御処理部１２０と、サーチサーバ検索性能取得処理部１２１と、登録制御処理部１２２と、文書データサイズ取得処理部１２３と、登録サーチサーバ決定処理部１２４と、文書データ分配処理部１２５とを有している。
【００２１】
登録サーバ制御処理部１２０は、サーチサーバ検索性能取得処理部１２１或いは登録制御処理部１２２を呼び出して、登録制御サーバ１０１の処理全体を制御する処理部である。サーチサーバ検索性能取得処理部１２１は、データが分配されるサーチサーバ１０５の検索性能１４３を取得してディスク１１３内のサーチサーバ管理テーブル１３３に格納する処理部である。
【００２２】
登録制御処理部１２２は、文書データサイズ取得処理部１２３、登録サーチサーバ決定処理部１２４及び文書データ分配処理部１２５を呼び出し、文書データ１３７のサーチサーバ１０５への登録処理を制御する処理部である。
【００２３】
文書データサイズ取得処理部１２３は、複数のサーチサーバ１０５に分配される文書データ１３７の文書データサイズ１４１を取得してディスク１１３内の文書データ管理テーブル１３２に格納する処理部である。
【００２４】
登録サーチサーバ決定処理部１２４は、前記格納した検索性能１４３及び文書データサイズ１４１をディスク１１３から読み出し、ある文書データを分配されたサーチサーバでの当該文書データの処理に必要な予想所要時間をディスク１１３から読み出した検索性能１４３と文書データサイズ１４１から算出し、各サーチサーバでの予想所要時間ができるだけ均等となる様に文書データ１３７の分配先を決定する登録先決定処理部である。文書データ分配処理部１２５は、各サーチサーバに対するサーチサーバ別登録文書リスト１３６を作成し、文書登録コマンドと共に各サーチサーバに送信する処理部である。
【００２５】
登録制御サーバ１０１を登録サーバ制御処理部１２０、サーチサーバ検索性能取得処理部１２１、登録制御処理部１２２、文書データサイズ取得処理部１２３、登録サーチサーバ決定処理部１２４及び文書データ分配処理部１２５として機能させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体から情報処理装置にインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【００２６】
図１に示した、本実施形態の文書検索システムは、登録制御サーバ１０１、記憶装置１０２、文書検索クライアント１０３、後述する検索制御サーバ１０４、後述するサーチサーバ１０５及びこれらを接続するネットワーク１０６によって構成される。
【００２７】
登録制御サーバ１０１は、ＣＰＵ１１１、主メモリ１１２、ディスク１１３、ディスプレイ１１４、キーボード１１５、ネットワークボード１１６及びこれらを接続するシステムバス１１７から構成される。ディスプレイ１１４はシステムの実行状態等を表示する為に使用され、ネットワークボード１１６はネットワーク１０６を介して他のサーバと通信する為に使用される。
【００２８】
主メモリ１１２上には、登録サーバ制御処理部１２０、サーチサーバ検索性能取得処理部１２１、登録制御処理部１２２、文書データサイズ取得処理部１２３、登録サーチサーバ決定処理部１２４、文書データ分配処理部１２５を備え、またワークエリア１２６が確保される。
【００２９】
ワークエリア１２６には、登録対象である文書データの実体に関する位置情報（ｕｒｌ:uniform resource locatorやファイルパス）を格納する登録対象文書データ位置リスト１３４、各サーチサーバ１０５毎の検索処理を実行した際の予想検索所要時間を格納する予想検索所要時間管理テーブル１３５及び各サーチサーバ１０５毎の登録対象となる文書データの実体の位置情報を格納したサーチサーバ別登録文書リスト１３６が格納される。
【００３０】
ディスク１１３上には、性能取得用サンプルデータ１３１、文書データ管理テーブル１３２及びサーチサーバ管理テーブル１３３が格納される。文書データ管理テーブル１３２には、各文書データの文書データサイズ１４１及び登録先サーチサーバ１４２が保持され、サーチサーバ管理テーブル１３３には、各サーチサーバの検索性能１４３及び割り当て済みサイズ１４４が保持される。
【００３１】
登録サーバ制御処理部１２０は、サーチサーバ検索性能取得処理部１２１或いは登録制御処理部１２２を呼び出す構成をとり、登録制御処理部１２２は、文書データサイズ取得処理部１２３、登録サーチサーバ決定処理部１２４及び文書データ分配処理部１２５を呼び出す構成をとる。また記憶装置１０２は、文書データ１３７を格納する。
【００３２】
以上が、実施形態１における文書検索システムを実現する基本的な構成である。なお、図１では、文書検索クライアント１０３が１台の構成を示したが、文書検索クライアントは２台以上の構成をとることもできる。また、サーチサーバ１０５が２台の構成を示したが、サーチサーバは１台或いは３台以上の構成をとることもできる。
【００３３】
各サーチサーバ１０５のネットワーク１０６上の位置は、文書検索システムの管理者が予め作成したシステム定義に格納される（図１には示していない）。システム定義は記憶装置１０２に格納されるものとしても良いし、登録制御サーバ１０１及び検索制御サーバ１０４にそれぞれ格納されるものとしても良い。
【００３４】
更に、入力装置としてキーボード１１５を用いる構成を示したが、マウスや音声入力機器等、その他の入力装置であっても良いし、ネットワーク１０６に接続された、他のコンピュータ（図１には示していない）の入力装置から入力される構成をとることもできる。また、ディスク１１３は磁気ディスクであっても良いし、不揮発性メモリであっても良い。
【００３５】
更に、記憶装置１０２はネットワークに直結するネットワークアタッチトストレージ（Network Attached Storage）の構成で示したが、他のコンピュータ（図１には示していない）のディスクでも良いし、ストレージエリアネットワーク（Storage Area Network）を用いる構成をとることもできる。
【００３６】
次に、本実施形態の登録制御サーバ１０１における文書登録処理の手順について説明する。
【００３７】
図２は本実施形態の登録サーバ制御処理部１２０の処理内容を示す図である。図２では、登録サーバ制御処理部１２０の処理内容をＰＡＤ（Problem Analysis Diagram）図で表している。
【００３８】
登録サーバ制御処理部１２０は、図１に示すキーボード１１５からのコマンドを受け付けると、まず、コマンドがサーチサーバ管理情報取得コマンドであるか文書データ登録の命令であるかを判定する。そして、コマンドがサーチサーバ管理情報取得コマンドである場合はステップ２０２を、コマンドが文書データ登録コマンドである場合はステップ２０３からステップ２０４を実行する（ステップ２０１）。
【００３９】
サーチサーバ管理情報取得コマンドを受け付けた場合に実行されるサーチサーバ管理情報の取得処理では、図１に示すサーチサーバ検索性能取得処理部１２１を起動し、図１に示す各サーチサーバ１０５の検索所要時間を取得し、検索性能１４３としてサーチサーバ管理テーブル１３３に格納する（ステップ２０２）。
【００４０】
また、文書データ登録コマンドを受け付けた場合に実行される文書データの登録処理では、まず、登録対象となる文書の位置情報をキーボード１１５から受け付け、登録対象文書データ位置リスト１３４としてワークエリア１２６に格納する（ステップ２０３）。そして、図１に示す登録制御処理部１２２を起動し、文書の登録処理を行う（ステップ２０４）。
以上が、登録サーバ制御処理部１２０の処理手順である。
【００４１】
図３は本実施形態のサーチサーバ検索性能取得処理部１２１の処理内容を示す図である。次に、図２のステップ２０２で登録サーバ制御処理部１２０により起動されるサーチサーバ検索性能取得処理部１２１の処理手順について、図３を用いて説明する。
【００４２】
サーチサーバ検索性能取得処理部１２１は、まず、システム定義に位置が格納されたサーチサーバ１０５を図１に示すサーチサーバ管理テーブル１３３に登録する（ステップ３１０）。
【００４３】
次に、サーチサーバ管理テーブル１３３に登録されている全てのサーチサーバ１０５について、ステップ３０２からステップ３０７までに示す一連の処理を繰り返し実行する（ステップ３０１）。
【００４４】
まず、性能取得コマンドをサーチサーバ１０５に送信し（ステップ３０２）、サーチサーバ１０５から送信される性能取得用サンプルデータ１３１の送信要求を待つ（ステップ３０３）。そして、サーチサーバ１０５からの性能取得用サンプルデータ１３１の送信要求を受け付け、サーチサーバ１０５に図１に示す性能取得用サンプルデータ１３１を送信し（ステップ３０４）、サーチサーバ１０５からの検索所要時間の返信を待つ（ステップ３０５）。
【００４５】
その後、サーチサーバ１０５から検索所要時間を取得し、これと性能取得用サンプルデータ１３１のサイズに基づき、検索性能１４３を算出する（ステップ３０６）。最後に、上記ステップ３０６で算出された検索性能１４３をサーチサーバ管理テーブル１３３に格納する（ステップ３０７）。
【００４６】
以上が、サーチサーバ検索性能取得処理部１２１の処理手順である。なお、図３では、サーチサーバ１０５の一台一台について送受信を繰り返す処理を示したが、複数台のサーチサーバ１０５に対して一度にブロードキャストする処理方法をとることもできる。
【００４７】
また、図３では、性能取得用サンプルデータ１３１を用いたベンチマークにより検索性能１４３を算出するものとしたが、既に算出された値を検索性能１４３として取得しても良いし、検索システムの管理者がカタログに基づき、或いは意図を持って入力した値を検索性能１４３として取得しても良いし、各サーチサーバ１０５に定義されている検索性能１４３を取得しても良いし、或いは、サーチサーバ１０５のＣＰＵの演算速度、ディスクの読み込み速度及びバスの転送速度等に基づき検索性能１４３を算出するものとしても良い。
【００４８】
図４は本実施形態の登録制御処理部１２２の処理内容を示す図である。次に、図２のステップ２０４で登録サーバ制御処理部１２０により起動される登録制御処理部１２２の処理手順について、図４を用いて説明する。
【００４９】
登録制御処理部１２２は、まず、文書データサイズ取得処理部１２３を起動し、図２で説明した登録対象文書データ位置リスト１３４に基づき、図１に示す各文書データ１３７のサイズを取得し、文書データサイズ１４１として文書データ管理テーブル１３２に格納する（ステップ４０１）。
【００５０】
次に、図１に示す登録サーチサーバ決定処理部１２４を起動し、各文書データ１３７の登録先となるサーチサーバ１０５を決定し、登録先サーチサーバ１４２として文書データ管理テーブル１３２に格納する（ステップ４０２）。
【００５１】
そして、図１に示す文書データ分配処理部１２５を起動し、各サーチサーバ１０５に対するサーチサーバ別登録文書リスト１３６を作成し、文書登録コマンドと共に各サーチサーバ１０５に送信する（ステップ４０３）。
以上が、登録制御処理部１２２の処理手順である。
【００５２】
図５は本実施形態の文書データサイズ取得処理部１２３の処理内容を示す図である。次に、図４のステップ４０１で登録制御処理部１２２により起動される文書データサイズ取得処理部１２３の処理手順について、図５を用いて説明する。
【００５３】
文書データサイズ取得処理部１２３は、図１に示すワークエリア１２６に格納された登録対象文書データ位置リスト１３４が指定する全ての文書データ１３７について、ステップ５０２及びステップ５０３を繰り返し実行する（ステップ５０１）。
【００５４】
登録対象文書データ位置リスト１３４で指定された登録対象となる文書データ１３７のデータサイズを取得する（ステップ５０２）。そして、上記ステップ５０２で取得したデータサイズを文書データサイズ１４１として文書データ管理テーブル１３２に格納する（ステップ５０３）。
【００５５】
以上が、文書データサイズ取得処理部１２３の処理手順である。なお、図５では、記憶装置１０２上の文書データ１３７のデータサイズを取得するものとしたが、文書データ１３７のデータサイズが既に取得され、文書データサイズ１４１として格納されている場合には、その値を用いるものとしても良い。
【００５６】
図６は本実施形態の登録サーチサーバ決定処理部１２４の処理内容を示す図である。次に、図４のステップ４０２で登録制御処理部１２２により起動される登録サーチサーバ決定処理部１２４の処理手順について、図６を用いて説明する。
【００５７】
登録サーチサーバ決定処理部１２４は、図１に示す文書データ管理テーブル１３２に登録されている全ての文書データ１３７について、ステップ６０２からステップ６０６までに示す一連の処理を繰り返し実行する（ステップ６０１）。
【００５８】
まず、文書データ管理テーブル１３２から文書データサイズ１４１を取得する（ステップ６０２）。
【００５９】
次に、図１に示すワークエリア１２６に格納した予想検索所要時間管理テーブル１３５を初期化し、図１に示すサーチサーバ管理テーブル１３３に登録されている全てのサーチサーバ１０５について、ステップ６０４の処理を繰り返し実行する（ステップ６０３）。
【００６０】
すなわち、取得した文書データサイズ１４１、割り当て済みサイズ１４４（各サーチサーバ１０５に既に割り当てられた文書データのサイズの合計の値）及び検索性能１４３から予想検索所要時間を算出し、予想検索所要時間管理テーブル１３５に格納する（ステップ６０４）。
【００６１】
そして、予想検索所要時間が最小であるサーチサーバ１０５を該文書データに対する登録先サーチサーバ１４２として決定し、文書データ管理テーブル１３２に格納する（ステップ６０５）。
【００６２】
最後に、サーチサーバ管理テーブル１３３から取得した割り当て済みサイズ１４４に、文書データサイズ１４１を加算し、新たな割り当て済みサイズ１４４としてサーチサーバ管理テーブル１３３に格納する（ステップ６０６）。
【００６３】
以上が、登録サーチサーバ決定処理部１２４の処理手順である。なお、図６に示したステップ６０１では、処理対象とする文書データの順番には言及していないが、任意の順番で文書データを処理した場合、データサイズが、既に処理された文書データのデータサイズに対して大きい文書データを最後に登録すると、該文書データを登録したサーチサーバの割り当て済みサイズ１４４が他のサーチサーバと比べて大きくなる場合があり得る。
【００６４】
この様な分配を防ぐ為に、ステップ６０１の前に、文書データ管理テーブル１３２内の各データを文書データサイズ１４１に基づく降順に並び替えるステップ（ステップ６００）を加え、ステップ６０２からステップ６０６までの処理を文書データサイズ１４１の降順に実行するものとしても良い。
【００６５】
図７は本実施形態の文書データ分配処理部１２５の処理内容を示す図である。次に、図４のステップ４０２で登録制御処理部１２２により起動される文書データ分配処理部１２５の処理手順について、図７を用いて説明する。
【００６６】
文書データ分配処理部１２５は、図１に示す文書データ管理テーブル１３２に登録されている全ての文書データ１３７について、ステップ７０２からステップ７０４までに示す一連の処理を繰り返し実行する（ステップ７０１）。
【００６７】
まず、文書データ管理テーブル１３２から登録先サーチサーバ１４２を取得する（ステップ７０２）。次に、登録対象文書データ位置リスト１３４から、文書データの位置情報を取得する（ステップ７０３）。そして、登録先サーチサーバ１４２に対応するサーチサーバ別登録文書リスト１３６に、該文書データの位置情報を追加する（ステップ７０４）。
【００６８】
最後に、全てのサーチサーバ１０５に、文書登録コマンドと対応するサーチサーバ別登録文書リスト１３６を送信する（ステップ７０６）。
【００６９】
以上、図７を用いて説明したのが文書データ分配処理部１２５の処理手順であり、図２〜図７を用いて説明したのが登録制御サーバ１０１における文書登録処理の手順である。
【００７０】
次に、本実施形態の文書検索システムによる検索処理について説明する。
【００７１】
図８は本実施形態のサーチサーバ１０５の概略構成を示す図である。まず、図１に示したサーチサーバ１０５の構成について、図８を用いて説明する。
【００７２】
サーチサーバ１０５は、ＣＰＵ８０１、主メモリ８０２、ディスク８０３、ネットワークボード８０４及びこれらを接続するシステムバス８０５から構成される。
【００７３】
主メモリ８０２上には、サーチサーバ制御処理部８１０、データ登録制御処理部８１１、データ検索制御処理部８１２、性能取得処理部８１３、登録制御情報取得処理部８１４、データ読込処理部８１５、データ登録処理部８１６、検索条件取得処理部８１７、データ検索処理部８１８及び検索結果送信処理部８１９を備えると共に、ワークエリア８２０が確保される。
【００７４】
ワークエリア８２０には、検索開始時刻８３１及び検索終了時刻８３２が格納され、ディスク８０３上には、サーチサーバ１０５が検索する範囲のデータとして検索対象データ８３０が格納される。
【００７５】
サーチサーバ制御処理部８１０は、データ登録制御処理部８１１、データ検索制御処理部８１２及び性能取得処理部８１３を呼び出す構成をとる。またデータ登録制御処理部８１１は、登録制御情報取得処理部８１４、データ読込処理部８１５及びデータ登録処理部８１６を呼び出す構成をとり、データ検索制御処理部８１２は、検索条件取得処理部８１７、データ検索処理部８１８及び検索結果送信処理部８１９を呼び出す構成をとる。
【００７６】
以上がサーチサーバ１０５の構成である。なお、ディスク８０３は磁気ディスクであっても良いし、不揮発性メモリであっても良い。また、検索対象データ８３０はディスク８０３上に格納するものとしたが、主メモリ８０２上に格納しても良い。主メモリ８０２は一般にディスク８０３よりも高速であり、主メモリ８０２上に検索対象データ８３０を格納することで、読み込み速度が向上し、検索速度が向上する効果が得られる。
【００７７】
次に、検索処理の手順について説明する。
【００７８】
図９は本実施形態のサーチサーバ制御処理部８１０の処理内容を示す図である。まず、サーチサーバ制御処理部８１０の処理手順について、図９を用いて説明する。
【００７９】
サーチサーバ制御処理部８１０は、図８に示すネットワークボード８０４を介してコマンドを受け付けると、まず、コマンドが性能取得コマンドであるか、文書登録コマンドであるか、或いは文書検索コマンドであるかを判定する。
【００８０】
そして、コマンドが性能取得コマンドである場合はステップ９０２を、コマンドが文書登録コマンドである場合はステップ９０３を、コマンドが文書検索コマンドである場合はステップ９０４を実行する（ステップ９０１）。
【００８１】
以下のステップは、ステップ９０１におけるコマンドの判定結果に応じて実行する。
すなわち、性能取得コマンドの場合には、図８に示す性能取得処理部８１３を起動し、検索所要時間を取得し、それに基づき検索性能を算出し、図８に示す登録制御サーバ１０１に送信する（ステップ９０２）。
また、文書登録コマンドの場合には、図８に示すデータ登録制御処理部８１１を起動し、受信したサーチサーバ別登録文書リスト１３６で指定された文書データ１３７を、図８に示す検索対象データ８３０として登録する（ステップ９０３）。
また、文書検索コマンドの場合には、図８に示すデータ検索制御処理部８１２を起動し、検索処理を実行し、検索結果を図８に示す文書検索クライアント１０３に送信する（ステップ９０４）。
以上が、サーチサーバ制御処理部８１０の処理手順である。
【００８２】
図１０は本実施形態の性能取得処理部８１３の処理内容を示す図である。次に、図９のステップ９０２でサーチサーバ制御処理部８１０により起動される性能取得処理部８１３の処理手順について、図１０を用いて説明する。
【００８３】
性能取得処理部８１３は、まず、図８に示す登録制御サーバ１０１に、図１に示す性能取得用サンプルデータ１３１を要求し（ステップ１００１）、登録制御サーバ１０１からの性能取得用サンプルデータ１３１を受信する（ステップ１００２）。
【００８４】
そして、図８に示すデータ登録制御処理部８１１を起動し、性能取得用サンプルデータ１３１を登録する（ステップ１００３）。ここで、検索開始時刻８３１を図８に示すワークエリア８２０に格納する（ステップ１００４）。
【００８５】
その後、図８に示すデータ検索制御処理部８１２を起動し、検索処理を実行する（ステップ１００５）。そして、検索を終了した時点で、検索終了時刻８３２をワークエリア８２０に格納する（ステップ１００６）。
【００８６】
最後に、検索開始時刻８３１と検索終了時刻８３２から検索所要時間を算出し、登録制御サーバ１０１に送信する（ステップ１００７）。
以上が、性能取得処理部８１３の処理手順である。
【００８７】
図１１は本実施形態のデータ登録制御処理部８１１の処理内容を示す図である。次に、図９のステップ９０３でサーチサーバ制御処理部８１０により起動されるデータ登録制御処理部８１１の処理手順について、図１１を用いて説明する。
【００８８】
データ登録制御処理部８１１は、まず、図８に示す登録制御情報取得処理部８１４を起動し、図８に示すネットワークボード８０４を介して取得したサーチサーバ別登録文書リスト１３６より、登録する文書データ１３７の位置情報を取得する（ステップ１１０１）。
【００８９】
次に、図８に示すデータ読込処理部８１５を起動し、図８に示す文書データ１３７を読み込み、図８に示すワークエリア８２０に格納する（ステップ１１０２）。最後に、図８に示すデータ登録処理部８１６を起動し、ワークエリア８２０に格納された文書データ１３７を図８に示す検索対象データ８３０として格納する（ステップ１１０３）。
以上が、データ登録制御処理部８１１の処理手順である。
【００９０】
図１２は本実施形態のデータ検索制御処理部８１２の処理内容を示す図である。次に、図９のステップ９０４でサーチサーバ制御処理部８１０により起動されるデータ検索制御処理部８１２の処理手順について、図１２を用いて説明する。
【００９１】
データ検索制御処理部８１２は、まず、図８に示す検索条件取得処理部８１７を起動し、図８に示す文書検索クライアント１０３或いは図８に示す性能取得処理部８１３から送信された検索条件を取得する（ステップ１２０１）。次に、図８に示すデータ検索処理部８１８を起動し、図８に示す検索対象データ８３０に対する検索処理を実行する（ステップ１２０２）。
【００９２】
以上が、データ検索制御処理部８１２の処理手順である。なお、検索処理の結果は、データ検索制御処理部８１２を呼び出した処理部に受け渡す。更に、具体的なスキャン方法は、与えられた検索タームでテキストデータ全体を文字列探索することによって、検索タームが記述されている文書のみを検索結果として出力する基本的なスキャン方法を利用しても良いし、他のスキャン方法を利用しても良い。
【００９３】
以上、図１２を用いて説明したのが検索処理の手順についての説明であり、図８〜図１２を用いて説明したのが本実施形態の文書検索システムによる検索処理についての説明である。
【００９４】
図１３は本実施形態のシステム管理画面の例を示す図である。ここで、本実施形態の文書検索システムにおいて、図１で説明した登録制御サーバ１０１のディスプレイ１１４に表示されるシステム管理画面について、図１３を用いて具体的に説明する。
【００９５】
本図に示した例は、初期状態画面１３１１、性能取得状態画面１３１２、文書登録準備状態画面１３１４及び文書登録終了状態画面１３１３である。
【００９６】
まず、システム管理画面に共通する構成要素について説明する。
システム管理画面であるの初期状態画面１３１１〜文書登録準備状態画面１３１４は、性能取得コマンド実行ボタン１３０１、文書登録コマンド実行ボタン１３０２、登録文書位置情報入力部１３０３、登録ファイル決定ボタン１３０４、登録ファイル一覧表示部１３０６及びサーチサーバ管理テーブル表示部１３０７から構成される。
【００９７】
性能取得コマンド実行ボタン１３０１が押下された場合には、サーチサーバ管理テーブル表示部１３０７に各サーチサーバの検索性能が出力され、文書登録コマンド実行ボタン１３０２が押下された場合には、登録ファイル一覧表示部１３０６に表示された文書データが登録され、サーチサーバ管理テーブル表示部１３０７に各サーチサーバの割り当て済みサイズが出力される。
【００９８】
なお、サーチサーバ管理テーブル表示部１３０７に各サーチサーバの検索性能が表示されていない場合、或いは登録ファイル一覧表示部１３０６に一件の文書データも表示されていない場合は、文書登録コマンド実行ボタン１３０２が押下されても何も起こらない。
【００９９】
登録文書位置情報入力部１３０３には、図１に示すキーボード１１５から受け付けた文書データの位置情報が表示され、登録ファイル決定ボタン１３０４が押下された場合には、登録文書位置情報入力部１３０３上に表示されている文書データの位置情報が登録ファイル一覧表示部１３０６に移動される。なお、登録文書位置情報入力部１３０３に何も入力されていない場合は、登録ファイル決定ボタン１３０４が押下されても何も起こらない。
【０１００】
登録ファイル一覧表示部１３０６には、登録する文書データの位置情報が表示される。サーチサーバ管理テーブル表示部１３０７には、サーチサーバ管理テーブル１３３に格納されている情報が表示される。
以上が、システム管理画面の初期状態画面１３１１〜文書登録準備状態画面１３１４に共通する構成要素についての説明である。
【０１０１】
次に各画面の遷移について、まず、初期状態画面１３１１から性能取得状態画面１３１２への遷移について説明する。
初期状態画面１３１１において、性能取得コマンド実行ボタン１３０１が押下されると、サーチサーバ検索性能取得処理部１２１が実行され、性能取得状態画面１３１２が表示される。
【０１０２】
性能取得状態画面１３１２においては、サーチサーバ検索性能取得処理部１２１の実行結果により、各サーチサーバの検索性能が取得され、サーチサーバ管理テーブル表示部１３０７ａとして表示される。
【０１０３】
サーチサーバ管理テーブル表示部１３０７ａでは、サーチサーバ１の検索性能は４５ＭＢ／ｓ、サーチサーバ２の検索性能は１５ＭＢ／ｓ、サーチサーバ３の検索性能は３０ＭＢ／ｓであることが表されている。
以上が、初期状態画面１３１１から性能取得状態画面１３１２への遷移についての説明である。
【０１０４】
次に、性能取得状態画面１３１２から文書登録準備状態画面１３１４への遷移について説明する。
性能取得状態画面１３１２において、登録ファイル一覧表示部１３０６には、システム管理者によって登録文書位置情報入力部１３０３から入力される。入力された情報は、登録ファイル決定ボタン１３０４により受け付けられた登録ファイル一覧表示フォームに表示される（登録ファイル指定操作１３２１）。
【０１０５】
文書登録準備状態画面１３１４における登録ファイル一覧表示部１３０６ａは、文書Ａから文書Ｅまでの文書が既に受け付けられた状態を表している。また、文書登録準備状態画面１３１４においては、登録文書位置情報入力部１３０３ａに、システム管理者によって位置情報である“http://docs/文書Ｆ”が入力されている状態を表している。
【０１０６】
ここで、登録ファイル決定ボタン１３０４が押下された場合には、登録文書位置情報入力部１３０３ａに、登録文書位置情報入力部１３０３ａに入力されている“http://docs/文書Ｆ”が登録対象文書の位置情報として受け付けられる。
以上が、性能取得状態画面１３１２から文書登録準備状態画面１３１４への遷移についての説明である。
【０１０７】
次に、文書登録準備状態画面１３１４から文書登録終了状態画面１３１３への遷移について説明する。
文書登録準備状態画面１３１４において、文書登録コマンド実行ボタン１３０２が押下されると、登録制御処理部１２２が実行され、文書登録終了状態画面１３１３が表示される。
【０１０８】
文書登録終了状態画面１３１３では、サーチサーバ管理テーブル表示部１３０７ｂには、各サーチサーバの割り当て済みサイズが表示されており、サーチサーバ１の割り当て済みサイズは５０ＫＢ、サーチサーバ２の割り当て済みサイズは１６ＫＢ、サーチサーバ３の割り当て済みサイズは３０ＫＢであることを表している。
【０１０９】
文書登録終了状態画面１３１３の登録文書位置情報入力部１３０３及び登録ファイル一覧表示部１３０６は、内容がクリアされ、初期状態に戻されている。
以上が、文書登録準備状態画面１３１４から文書登録終了状態画面１３１３への遷移についての説明であり、システム管理画面についての説明である。
【０１１０】
図１４は本実施形態のサーチサーバ検索性能取得処理部１２１の処理例を示す図である。次に、サーチサーバ検索性能取得処理部１２１の具体的な処理の例を、図１４を用いて説明する。
【０１１１】
本図に示した例は、３つのサーチサーバ１０５の検索性能を取得する場合における、図３で説明したサーチサーバ検索性能取得処理部１２１の処理の流れ（登録制御サーバ１０１側の処理）と、各サーチサーバの、性能取得コマンドの受信から検索所要時間送信までの処理である、図９で説明したサーチサーバ制御処理部８１０と図１０で説明した性能取得処理部８１３の処理の流れ（各サーチサーバ１０５側の処理）である。
【０１１２】
まず、登録制御サーバ１０１側の処理として、性能取得コマンドを各サーチサーバ１０５に送信すると（ステップ３０２）、各サーチサーバ１０５側の処理として、性能取得コマンドを受信する（ステップ９０１）ことにより性能取得処理部８１３を起動し、登録制御サーバ１０１に対して、性能取得用サンプルデータ１３１の送信要求を送信する（ステップ１００１）。
【０１１３】
そして、登録制御サーバ１０１側の処理として、性能取得用サンプルデータ１３１の送信要求を受信すると、サーチサーバ１０５に、性能取得用サンプルデータ１３１を送信し（ステップ３０４）、各サーチサーバ１０５側の処理として、性能取得用サンプルデータ１３１を受信すると（ステップ１００２）、それぞれ性能取得処理を実行して、取得した検索所要時間を登録制御サーバ１０１に送信する（ステップ１００７）。
【０１１４】
図１４の例においては、サイズが９０ＭＢである性能取得用サンプルデータ１３１を用いて性能取得を行ったことを表しており、この結果、得られた各サーチサーバの検索所要時間１４０１は、サーチサーバ１の検索所要時間は２秒、サーチサーバ２の検索所要時間は６秒、サーチサーバ３の検索所要時間は３秒であることを表している（本図ではサーチサーバ１０５側のフローは１つのみ示しているが、各サーチサーバ毎に１つのフローがある）。
【０１１５】
登録制御サーバ１０１は、受信（ステップ３０５）した各サーチサーバの検索所要時間１４０１を基に、各サーチサーバの検索性能を算出する（ステップ３０６）。本図に示した例では、性能取得用サンプルデータ１３１のサイズである９０ＭＢを各サーチサーバ１０５の検索所要時間で割ることにより検索性能を算出しており、サーチサーバ１の検索性能は４５ＭＢ／ｓ、サーチサーバ２の検索性能は１５ＭＢ／ｓ、サーチサーバ３の検索性能は３０ＭＢ／ｓと算出されていることを表している。
【０１１６】
そして、ステップ３０６で算出された各サーチサーバの検索性能１４０２をサーチサーバ管理テーブル１３３に格納する（ステップ３０７）。
以上が、サーチサーバ検索性能取得処理部１２１の具体的な処理の例の説明である。
【０１１７】
図１５は本実施形態の文書データサイズ取得処理部１２３の処理例を示す図である。次に、文書データサイズ取得処理部１２３の具体的な処理の例を、図１５を用いて説明する。
【０１１８】
文書データサイズ取得処理部１２３は、主メモリ１１２上に格納されている登録対象文書データ位置リスト１３４で示された記憶装置１０２上の文書のサイズを取得し、文書データ管理テーブル１３２に格納する。
【０１１９】
図１５の例においては、登録対象文書データ位置リスト１３４の一行目の情報である“http://doc/文書Ａ”は、記憶装置１０２上の文書Ａを指しており、そのデータサイズは１１ＫＢであるため、文書データ管理テーブル１３２に、登録文書である「文書Ａ」と、その文書データサイズ「１１ＫＢ」が格納される。同様に、文書Ｂから文書Ｊまでのデータサイズを取得し、文書データ管理テーブル１３２に格納する。
以上が、文書データサイズ取得処理部１２３の具体的な処理の例の説明である。
【０１２０】
次に、登録サーチサーバ決定処理部１２４の具体的な処理の例を説明する。
【０１２１】
図１６は本実施形態の一つ目の文書の登録先サーチサーバを決定する場合の具体例を示す図である。最初に、一つ目の文書の登録先サーチサーバを決定する場合の具体例を、図１６を用いて説明する。
【０１２２】
まず、文書データ管理テーブル１３２から、文書データサイズを取得する（ステップ６０２）。図１６の例においては、文書Ｄのデータサイズ１５ＫＢを取得している。
【０１２３】
次に、サーチサーバ管理テーブル１３３から取得された各サーチサーバの検索性能及び割り当て済みサイズと文書データサイズ１６０１に基づき、各サーチサーバにおける予想検索所要時間を算出する（ステップ６０４）。
【０１２４】
図１６の例においては、各サーチサーバは、割り当てサイズを持っていないため、文書Ｄの１５ＫＢをそのまま対象として予想検索所要時間を算出しており、サーチサーバ１の予想検索所要時間は０．３ミリ秒、サーチサーバ２の予想検索所要時間は１．０ミリ秒、サーチサーバ３の予想検索所要時間は０．５ミリ秒と算出されることを表している。
【０１２５】
ステップ６０４で算出した各サーチサーバの予想検索所要時間の中で、予想検索所要時間が最小であるサーチサーバを選択し、該サーチサーバを文書Ｄの登録先サーチサーバとして、文書データ管理テーブル１３２に格納する（ステップ６０５）。
【０１２６】
図１６の例においては、文書Ｄの登録先サーチサーバを予想検索所要時間が０．３ミリ秒であり、最小であるサーチサーバ１とし、文書データ管理テーブル１３２に格納している。
【０１２７】
ステップ６０５で選択されたサーチサーバに対応する割り当て済みサイズに対し、文書Ｄのデータサイズを加え、サーチサーバ管理テーブル１３３に格納する（ステップ６０６）。
図１６の例においては、サーチサーバ１の割り当て済みサイズに対し、文書Ｄのデータサイズ１５ＫＢだけ増加した例を表している。
以上が、一つ目の文書の登録先サーチサーバを決定する場合の具体例の説明である。
【０１２８】
図１７は本実施形態の二つ目の文書の登録先サーチサーバを決定する場合の具体例を示す図である。続いて、二つ目の文書の登録先サーチサーバを決定する場合の具体例を、図１７を用いて説明する。
【０１２９】
まず、文書Ｅの文書データサイズ１７０１を取得する（ステップ６０２）。図１７の例では、文書Ｅのデータサイズとして１３ＫＢを取得している。
【０１３０】
次に、ステップ６０４において、サーチサーバ管理テーブル１３３に格納されている各サーチサーバの検索性能及び割り当て済みサイズと、文書データサイズ１７０１に基づき、各サーチサーバの予想検索所要時間を算出する。
【０１３１】
図１７の例においては、サーチサーバ１が、既に割り当てサイズ１５ＫＢを持っているため、文書Ｅの１３ＫＢと合わせ、合計２８ＫＢを対象とした場合の予想検索所要時間０．６ミリ秒が算出され、サーチサーバ２及びサーチサーバ３は、割り当てサイズを持っていないため、文書Ｅの１３ＫＢを対象とした場合の予想検索所要時間として、それぞれ１．０ミリ秒、０．５ミリ秒が算出されることを表している。
【０１３２】
この結果、予想検索所要時間が最小となるサーチサーバ３が、文書データ管理テーブル１３２の文書Ｅの登録先サーチサーバとして格納される（ステップ６０５）。そして、サーチサーバ３の割り当て済みサイズは、文書Ｅのデータサイズである１３ＫＢが加えられ、サーチサーバ管理テーブル１３３に格納される（ステップ６０６）。
【０１３３】
以上、図１７を用いて説明したのが二つ目の文書の登録先サーチサーバを決定する場合の具体例である。なお、三つ目以降の文書の登録先サーチサーバを決定する場合も、二つ目の文書の登録先サーチサーバを決定する場合の処理と同様である。
【０１３４】
また、文書データの追加登録の場合も、図１７で説明した二つ目の文書の登録先サーチサーバを決定する場合の処理と同様であり、本実施形態において、新たな文書データを追加登録する場合、図１に示す登録制御サーバ１０１が文書登録コマンドを受け付け、図２で説明した登録サーバ制御処理部１２０において文書データ登録を実行し、登録サーバ制御処理部１２０の処理において、文書データ管理テーブル１３２は新たに追加する文書データのみで作成する。
【０１３５】
図１では文書データ管理テーブル１３２をディスク１１３に格納するとしたが、ワークエリア１２６に保持しても良いし、ディスク１１３上に格納している場合、処理が終了した後、追加する文書データのみで作成した文書データ管理テーブルを、既存の文書データ管理テーブルとマージしても良い。
以上が、新たな文書データを追加登録する為の処理手順についての説明である。
【０１３６】
次に、本実施形態の文書検索システムの文書検索を実現する構成及び処理手順について説明する。
【０１３７】
図１８は本実施形態の検索制御サーバ１０４の概略構成を示す図である。まず、検索制御サーバ１０４の構成について図１８を用いて説明する。
【０１３８】
検索制御サーバ１０４は、ＣＰＵ１８０１、主メモリ１８０２、ネットワークボード１８０３及びこれらを接続するシステムバス１８０４から構成される。
【０１３９】
主メモリ１８０２上には検索制御処理部１８１０、検索要求取得処理部１８１１、検索要求配信処理部１８１２、検索結果収集処理部１８１３、検索結果統合処理部１８１４及び検索結果送信処理部１８１５を備えると共に、ワークエリア１８２０が確保され、ワークエリア１８２０には、各サーチサーバ１０５から取得する検索結果である中間検索結果１８３０及び、それらをマージしたものである検索結果１８３１が格納される。
【０１４０】
また、検索制御処理部１８１０は、検索要求取得処理部１８１１、検索要求配信処理部１８１２、検索結果収集処理部１８１３、検索結果統合処理部１８１４及び検索結果送信処理部１８１５を呼び出す構成をとる。
以上が、検索制御サーバ１０４の構成の説明である。
【０１４１】
図１９は本実施形態の検索制御処理部１８１０の処理概要を示す図である。次に、検索制御処理部１８１０の処理手順について図１９を用いて説明する。
【０１４２】
検索制御処理部１８１０は、まず、検索要求取得処理部１８１１を起動し、検索条件を検索制御処理部１８１０の要求元である文書検索クライアント１０３から受信した検索条件を取得する（ステップ１９０１）。
【０１４３】
次に、検索要求配信処理部１８１２を起動し、文書検索システムに属する全てのサーチサーバ１０５について、ステップ１９０３に示す処理を繰り返し実行し（ステップ１９０２）、サーチサーバ１０５に検索条件を送信する（ステップ１９０３）。
【０１４４】
次に、検索結果収集処理部１８１３を起動し、サーチサーバ１０５からの検索結果を受け付け、それを中間検索結果１８３０としてワークエリア１８２０に格納する（ステップ１９０４）。
【０１４５】
そして、検索結果統合処理部１８１４を起動し、中間検索結果１８３０をマージし、検索結果１８３１としてワークエリア１８２０に格納する（ステップ１９０５）。
最後に、検索結果送信処理部１８１５を起動し、ワークエリア１８２０に格納された検索結果１８３１を文書検索クライアント１０３に送信する（ステップ１９０６）。
【０１４６】
以上、図１９を用いて説明したのが検索制御処理部１８１０の処理手順であり、図１８及び図１９を用いて説明したのが実施形態１における文書検索システムの文書検索を実現する構成及び処理手順である。
【０１４７】
本実施形態に示した登録制御サーバ１０１では、文書データ管理テーブル１３２とサーチサーバ管理テーブル１３３は、ディスク１１３上に格納するものとしたが、登録制御サーバ１０１における文書登録処理の終了時にそれらを破棄するものとし、ディスク１１３ではなくワークエリア１２６に保持しても良い。文書データ管理テーブル１３２とサーチサーバ管理テーブル１３３をワークエリア１２６に保持することにより、ディスク１１３が必要とするサイズを減らす効果が得られる。
【０１４８】
以上説明した様に、本実施形態に示した文書検索システムによれば、図６で説明した登録サーチサーバ決定処理部１２４において各サーチサーバの処理性能と各文書データのサイズに応じて各コンピュータに割り当てる文書データを決定することにより、各サーチサーバはそれぞれの性能を最大限に発揮することができる様になる。それによって、文書検索システム全体としての検索速度を向上する効果が得られる。
この結果、文書検索システム全体として検索速度が向上し、検索者は、ストレスなく検索結果を得ることができる様になる。
【０１４９】
以上説明した実施形態においては、文書データの初期登録を例に、本実施形態の文書検索システムについて説明したが、新たな文書データを追加登録する為の処理手順で説明した様に、本実施形態で示した構成において、既に文書データが登録された状態に対し、新たな文書データを追加登録することも可能である。
【０１５０】
また、以上説明した実施形態においては、文書データ１件ずつについて登録先サーチサーバを決定する処理について説明したが、予め構成する文書データのサイズの合計の比率が、各サーチサーバの性能の比率と等しくなるグループを作成し、それら文書データのグループを各サーチサーバに割り当てる構成をとることとしても良い。
【０１５１】
以上説明した様に本実施形態のデータ分配システムによれば、分配データのデータサイズに応じた予想所要時間が各コンピュータでできるだけ均等となる様に分配先を決定するので、各コンピュータの処理性能に応じた適切なサイズのデータを分配し、そのデータを処理する際に各コンピュータの処理性能を最大限に活用できる様にすることが可能である。
【０１５２】
（実施形態２）
以下に複数のコンピュータでの並列検索処理によりインデクス検索される文書データを各コンピュータへ分配する実施形態２のデータ分配システムについて説明する。
【０１５３】
前記の様に実施形態１においては、全文検索を用いた文書検索システムの例により説明したが、本発明の適用対象は、検索方法を全文検索に限定されるものではなく、例えば特開昭６４−３５６２７号公報に開示される様なインデクス検索であっても良い。
【０１５４】
インデクス検索を用いた文書検索システムにおいては、検索条件で指定された検索タームに関するインデクスだけを読み出すため、検索所要時間は検索タームに関するインデクスのサイズに比例する。
【０１５５】
従って、割り当て済みサイズ１４４ではなく、検索タームに関するインデクスのサイズを各サーチサーバ間で均一にすることにより、本発明をインデクス検索を用いた文書検索システムに適用することができる。
【０１５６】
以下、各サーチサーバ間において、読み出すインデクスのサイズを均一にする手段を有する第２の実施形態について説明する。
【０１５７】
図２０は本実施形態の登録制御サーバ１０１の概略構成を示す図である。図２０に示す様に本実施形態の登録制御サーバ１０１は、インデクスサイズ算出処理部２００２と、登録サーチサーバ決定処理部２００３とを有している。
【０１５８】
インデクスサイズ算出処理部２００２は、検索対象としてシステムに登録するデータについて予め定められた監視インデクスサイズを算出してディスク１１３内の文書データ管理テーブル１３２ａに格納する処理部である。
【０１５９】
登録サーチサーバ決定処理部２００３は、ディスク１１３に格納した検索性能１４３、監視インデクスサイズ２０１０及び検索頻度２０１３を記憶装置から読み出し、あるデータを分配されたサーチサーバ１０５での当該データのインデクス処理に必要な予想所要時間をディスクから読み出した検索性能１４３、監視インデクスサイズ２０１０及び検索頻度２０１３から算出し、算出した結果に基づきデータの分配先を決定する登録先決定処理部である。
【０１６０】
登録制御サーバ１０１をインデクスサイズ算出処理部２００２及び登録サーチサーバ決定処理部２００３として機能させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体から情報処理装置にインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【０１６１】
本実施形態では、各サーチサーバ１０５が読み出すインデクスのサイズを均一にする為に、各文書データの予め定められたタームに関するインデクスのサイズを算出し、それらのインデクスサイズを各サーチサーバ１０５毎に管理することとする。
【０１６２】
なお本実施形態において、該タームに関するインデクスのサイズが管理される対象となるタームを監視インデクスと呼び、そのタームが文書検索システムに対して検索タームとして入力された実績に基づく値を検索頻度２０１３と呼ぶ。検索頻度２０１３は該タームが入力された実績が多ければ多いほど大きな値となり、この値の大きいタームを監視インデクスとして用いる。
【０１６３】
本実施形態と実施形態１は、登録制御サーバ１０１の主メモリ１１２上の登録制御処理部１２２ａとディスク１１３上に格納するデータが異なり、図２０に示す様に、登録制御処理部１２２ａには、文書データサイズ取得処理部１２３の代わりにインデクスサイズ算出処理部２００２が、登録サーチサーバ決定処理部１２４の代わりにインデクスサイズを利用することとした登録サーチサーバ決定処理部１２４ａが加わると共に、ディスク１１３上には監視インデクス管理テーブル２０１２が加わり、更に、ディスク１１３上の文書データ管理テーブル１３２ａには文書データサイズ１４１の代わりに監視インデクスサイズ２０１０が、サーチサーバ管理テーブル１３３ａには割り当て済みサイズ１４４の代わりに監視インデクスサイズ２０１１が格納される。
【０１６４】
監視インデクス管理テーブル２０１２には各監視インデクスに対応する検索頻度２０１３が格納される。なお、検索頻度２０１３は検索システムの管理者が用意した検索ログ等から算出するものとしても良いし、検索制御サーバ１０４が記憶装置１０２に検索ログを出力し、その検索ログから算出するものとしても良いし、検索システムの管理者が任意の値を検索頻度２０１３として入力するものとしても良い。
【０１６５】
また、本実施形態のサーチサーバ検索性能取得処理部１２１は、文書データが分配されるサーチサーバ１０５の性能取得用サンプルデータ１３１でインデクス検索を行った場合の検索性能１４３を取得してディスク１１３内のサーチサーバ管理テーブル１３３に格納するものとする。
【０１６６】
図２１は本実施形態の登録制御処理部１２２ａの処理内容を示す図である。次に、本実施形態における登録制御処理部１２２ａの処理手順について、図２１を用いて説明する。
【０１６７】
登録制御処理部１２２ａは、まず、図２０に示すインデクスサイズ算出処理部２００２を起動し、図２０に示す登録対象文書データ位置リスト１３４と図２０に示す監視インデクス管理テーブル２０１２に基づき、該文書データから各監視インデクスを作成した場合のサイズを算出し、監視インデクスサイズ２０１１として図２０に示す文書データ管理テーブル１３２ａに格納する（ステップ２１０１）。
【０１６８】
次に、図２０に示すインデクスサイズを利用することとした登録サーチサーバ決定処理部１２４ａを起動し、該文書データ１３７の登録先となるサーチサーバ１０５を決定し、登録先サーチサーバ１４２として図２０に示す文書データ管理テーブル１３２ａに格納する（ステップ２１０２）。
そして、図４で説明したステップ４０３を実行する。
以上が、登録制御処理部１２２ａの処理手順である。
【０１６９】
図２２は本実施形態のインデクスサイズ算出処理部２００２の処理内容を示す図である。次に、図２１のステップ２１０１で登録制御処理部１２２ａにより起動されるインデクスサイズ算出処理部２００２の処理手順について、図２２を用いて説明する。
【０１７０】
インデクスサイズ算出処理部２００２は、まず、全ての文書データ１３７について、ステップ２２０２からステップ２２０４までに示す一連の処理を繰り返し実行する（ステップ２２０１）。
【０１７１】
すなわち、図２０に示すディスク１１３に格納された監視インデクス管理テーブル２０１２に登録されている全ての監視インデクスであると定められたタームについて、ステップ２２０３の処理を繰り返し（ステップ２２０２）、該文書データから監視インデクスを作成した場合のインデクスのサイズを算出する（ステップ２２０３）。そして、算出した各監視インデクスに対するインデクスのサイズを監視インデクスサイズ２０１０として図２０に示す文書データ管理テーブル１３２ａに格納する（ステップ２２０４）。
以上が、インデクスサイズ算出処理部２００２の処理手順である。
【０１７２】
図２３は本実施形態の登録サーチサーバ決定処理部１２４ａの処理内容を示す図である。次に、図２１のステップ２１０１で登録制御処理部１２２ａにより起動されるインデクスサイズを利用することとした登録サーチサーバ決定処理部１２４ａの処理手順について、図２３を用いて説明する。
【０１７３】
まず、図２０に示す監視インデクス管理テーブル２０１２から、全ての監視インデクスの検索頻度２０１３を取得する（ステップ２３０１）。
【０１７４】
次に、全ての文書データ１３７について、ステップ２３０３からステップ２３０７までに示す一連の処理を繰り返し実行する（ステップ２３０２）。
【０１７５】
すなわち、図２０に示す文書データ管理テーブル１３２から各監視インデクスの監視インデクスサイズ２０１０を取得し（ステップ２３０３）、全てのサーチサーバについて、ステップ２３０５の処理を繰り返し実行して（ステップ２３０４）、取得した該文書の監視インデクスサイズ２０１０と各サーチサーバ１０５の監視インデクスサイズ２０１１の和、検索性能１４３及び検索頻度２０１３に基づいて予想検索所要時間を算出し、図２０に示す予想検索所要時間管理テーブル１３５に格納する（ステップ２３０５）。
【０１７６】
そして、予想検索所要時間が最小であるサーチサーバ１０５を該文書データに対する登録先サーチサーバ１４２として決定し、文書データ管理テーブル１３２に格納する（ステップ２３０６）。
【０１７７】
最後に、サーチサーバ管理テーブル１３３から取得した監視インデクスサイズ２０１１と該文書の監視インデクスサイズ２０１０の和を、新たな監視インデクスサイズ２０１１としてサーチサーバ管理テーブル１３３に格納する（ステップ２３０７）。
以上が、インデクスサイズを利用することとした登録サーチサーバ決定処理部１２４ａの処理手順である。
【０１７８】
図２４は本実施形態のインデクスサイズ算出処理部２００２及び登録サーチサーバ決定処理部１２４ａの具体的な処理の流れを示す図である。ここで、インデクス検索の文書検索システムにおける、インデクスサイズ算出処理部２００２及び登録サーチサーバ決定処理部１２４ａの具体的な処理の流れについて、図２４を用いて説明する。
【０１７９】
まず、インデクスサイズ算出処理部２００２の処理において、登録対象文書のデータ位置１３４、監視インデクス管理テーブル２０１２及びデータ位置で指定される文書データ１３７を取得し、該文書データに対するインデクスを作成した場合の、監視インデクスサイズを算出する（ステップ２２０３）。
【０１８０】
図２４の例においては、監視インデクス管理テーブル２０１２から取得したインデクスサイズを監視するタームである監視インデクスは「水溶」「溶液」「溶性」の３つであることを表している。
【０１８１】
また、文書データ位置情報“http://docs/文書Ｋ”で指定された、記憶装置１０２上の文書Ｋの内容は、「水溶液の性質について説明する。水溶液は水溶性の物体を水に溶かした液体であり、例えば水溶性の物体である食塩の水溶液は一般に塩水と呼ばれる。水溶液は水を足すことにより希釈され、また、水の蒸発により、水溶液は…」であることを表している。
【０１８２】
文書Ｋの中には「水溶」は７回、「溶液」は５回、「溶性」は２回現れており、インデクスは対象となる文字が１回出現する毎にサイズが増加するため、文書Ｋの監視インデクスサイズ２４０１は「水溶」では５６Ｂｙｔｅｓ、「溶液」では４０Ｂｙｔｅｓ、「溶性」では１６Ｂｙｔｅｓとなることを表している（文書Kの監視インデクスサイズ２４０１）。なお、図２４の検索頻度２０１３は、説明の便宜上整数で表現しているが、実際には所定検索回数あたりの監視インデクスの検索回数の割合で表されるものとする。
【０１８３】
次に、ステップ２３０５を実行し、各監視インデクスの検索頻度、各監視インデクスサイズ及び検索性能から、各サーチサーバの予想検索所要時間を数１により算出する。
【０１８４】
【数１】
2006113868.tif 000003
以下、数１を説明する。
Ｔは該サーチサーバの予想検索所要時間を、ｎは監視インデクスの総数を、Ｆｉはi番目の監視インデクスの検索頻度を、Ｐは該サーチサーバの検索性能を、Ｖｉは該文書データからi番目の監視インデクスを作成した場合の監視インデクスサイズを、ＳＶiは該サーチサーバに格納されているi番目の監視インデクスの監視インデクスサイズを表している。
【０１８５】
全ての監視インデクスに関して、該文書データから作成される監視インデクスサイズと該サーチサーバに格納されている監視インデクスサイズの和に、該監視インデクスの検索頻度を掛け合わせ、得られた結果を全てのiに渡って合計し、該サーチサーバの検索性能で割った値を予想検索所要時間とする。
以上が、数１の説明である。
【０１８６】
図２４の例においては、サーチサーバ１の予想検索所要時間は７マイクロ秒、サーチサーバ２の予想検索所要時間は２０マイクロ秒、サーチサーバ３の予想検索所要時間は１０マイクロ秒であることを表している。
【０１８７】
このため、最小の予想検索所要時間をもつサーチサーバ１が、文書Ｋの登録先サーチサーバ１４２として文書データ管理テーブル１３２ａに格納される（ステップ２３０６）と共に、サーチサーバ１の監視インデクスサイズには文書Ｋの監視インデクスサイズが加算され、サーチサーバ１の監視インデクスサイズは「水溶」は５６Ｂｙｔｅｓ、「溶液」は４０Ｂｙｔｅｓ、「溶性」は１６Ｂｙｔｅｓとして、サーチサーバ管理テーブル１３３ａに格納される（ステップ２３０７）。
【０１８８】
以上が、インデクスサイズ算出処理部２００２及び登録サーチサーバ決定処理部１２４ａの具体的な処理の流れの説明である。なお、２つ目以降のタームの登録先サーチサーバの決定処理も上記説明と同じ流れである。
【０１８９】
以上説明した様に、本実施形態に示した構成によれば、インデクス検索の文書検索システムにおいて、図２２で説明したインデクスサイズ算出処理部２００２において各文書データのインデクスを作成した場合のインデクスサイズを算出し、図２３で説明したインデクスサイズを利用することとした登録サーチサーバ決定処理部１２４ａにおいて各サーチサーバの処理性能と各文書データのインデクスサイズに応じて各コンピュータに割り当てる文書データを決定することにより、各サーチサーバがそれぞれの性能を最大限に発揮できる様になる。それによって、文書検索システム全体としての検索速度を向上する効果が得られる。
この結果、文書検索システム全体として検索速度が向上し、検索者は、ストレスなく検索結果を得ることができる様になる。
【０１９０】
以上説明した様に本実施形態のデータ分配システムによれば、分配データのインデクスサイズに応じた予想所要時間が各コンピュータでできるだけ均等となる様に分配先を決定するので、各コンピュータの処理性能に応じた適切なサイズのデータを分配し、そのデータをインデクス処理する際に各コンピュータの処理性能を最大限に活用できる様にすることが可能である。
【０１９１】
（実施形態３）
以下に分配対象のコンピュータを追加して文書データの再分配を行う実施形態３のデータ分配システムについて説明する。
【０１９２】
前記説明した実施形態１及び実施形態２は、いずれもサーチサーバ数を固定した文書検索システムである。しかし、例えば、図１に示す文書検索システムにおいて、検索性能を向上させる為にサーチサーバ１０５の数を増やす場合等がある。
【０１９３】
この様な場合において、単に新規のサーチサーバ１０５を追加しただけでは、そのサーチサーバ１０５には担当する文書データが割り振られていないので、その処理性能を活用できず、文書検索システム全体として検索速度を向上する効果が得られないため、文書データ１３７を各サーチサーバ１０５への割り当て直す必要がある。
【０１９４】
ここで、実施形態１に示した構成を用いて改めて文書データ１３７を全てのサーチサーバ１０５へ再度割り振ることにすれば、新規に追加したサーチサーバ１０５の処理性能を活用することができ、従って文書検索システム全体として検索速度を向上する効果が得られるが、その場合、処理対象となる文書のサイズが膨大であると、登録処理に時間がかかるという問題がある。
【０１９５】
例えば、１日５００件の記事が１０年分登録された文書検索システムを想定すると、該文書検索システムには１８０万件の記事が格納されており、該文書検索システムの検索性能を向上する為にサーチサーバを追加する際には、記事１件の登録処理を平均０．５秒で終了したと仮定しても、９０万秒、すなわち１０日かかることになり、この期間を短縮する為には、サーチサーバ追加時に処理対象とされる文書データ１３７の数を削減することが必要になる。
【０１９６】
以下、サーチサーバ追加時に処理対象とされる文書データ１３７の数を削減する本実施形態について説明する。
まず、本実施形態の概要を説明する。
本実施形態では、文書の元データは図１に示す記憶装置１０２等の様な外部の記憶装置に格納されている事を前提とし、まず、既にサーチサーバ１０５に登録されている文書データの中から、新規に追加されたサーチサーバ２５１０に移される文書データ１３７を決定し、既存のサーチサーバ１０５から削除する。
次に、新規に追加されたサーチサーバ２５１０の分担とされる文書データ１３７を外部の記憶装置から読み込む。
これにより、サーチサーバ追加時に処理対象とされる読み込む文書データ１３７の数を削減することが可能となり、サーチサーバを追加する際にかかる時間を短縮することができる。
以上が本実施形態の概要である。
【０１９７】
本実施形態と実施形態１（図１）の構成では、登録制御サーバ１０１の構成及び新規追加サーチサーバ２５１０がネットワーク１０６上に接続されている点が異なり、他の構成要素は実施形態１と同様である。新規追加サーチサーバ２５１０は、サーチサーバ１０５と同一の構成をとるが、本実施形態では両者を区別して説明する。
【０１９８】
図２５は本実施形態の登録制御サーバ１０１ａの概略構成を示す図である。まず、実施形態１に示した登録制御サーバ１０１と異なる登録制御サーバ１０１ａの構成について、図２５を用いて説明する。
【０１９９】
図２５に示した登録制御サーバ１０１ａは、図１で説明した登録制御サーバ１０１と、主メモリ１１２上に格納されるプログラムの構成、ワークエリア１２６上に格納される値とディスク１１３上に格納されるテーブルの構成が異なっており、主メモリ１１２上には、登録サーバ制御処理部１２０の代わりに登録サーバ制御処理部１２０ａを有すると共に、ワークエリア１２６には、サーチサーバ別登録文書リスト１３６、サーチサーバ別削除文書リスト２５２３、追加検索性能比率リスト２８０５が格納され、また、ディスク１１３の文書データ管理テーブル１３２ｂには元登録先サーチサーバ２５２２が、サーチサーバ管理テーブル１３３ｂには移動データ量２５２１が格納される。
【０２００】
また、本図には記載していないが、図１に示すディスプレイ１１４に表示するシステム管理画面１３１１（図１３）に、サーチサーバ登録コマンド実行ボタンを追加する。サーチサーバ追加コマンド実行ボタンを押下することにより、サーチサーバ管理テーブル表示部１３０７に、新規追加サーチサーバ２５１０の情報が追加され、割り当て済みサイズが変化する。
以上が、登録制御サーバ１０１ａの構成の説明である。
【０２０１】
次に、本実施形態におけるサーチサーバ追加処理の手順について説明する。
【０２０２】
図２６は本実施形態の登録サーバ制御処理部１２０ａの処理内容を示す図である。図２６は登録サーバ制御処理部１２０ａの処理手順を表している。
【０２０３】
登録サーバ制御処理部１２０ａは、図２で説明した登録サーバ制御処理部１２０が受け付けるサーチサーバ管理情報取得コマンド及び文書データ追加コマンドに加え、サーチサーバ追加コマンドを受け付け、サーチサーバ追加処理としてステップ２６０１及びステップ２６０２の処理を行う。
【０２０４】
登録サーバ制御処理部１２０ａがサーチサーバ追加コマンドを受け取ると、まず、図２５に示すサーチサーバ検索性能取得処理部１２１を起動し、全ての新規追加サーチサーバ２５１０の性能をサーチサーバ管理テーブル１３３に格納する（ステップ２６０１）。
【０２０５】
そして、図２５に示すデータ移動制御処理部２５０２を起動し、新規追加サーチサーバ２５１０に対する文書追加処理と、既存のサーチサーバ１０５の中で新規追加サーチサーバ２５１０に移動することとした文書データ１３７に対する文書削除処理を実行する。（ステップ２６０２）。
以上が、登録サーバ制御処理部１２０ａの処理手順である。
【０２０６】
図２７は本実施形態のデータ移動制御処理部２５０２の処理内容を示す図である。次に、図２６のステップ２６０２で登録サーバ制御処理部１２０ａに起動されるデータ移動制御処理部２５０２の処理手順について、図２７を用いて説明する。
【０２０７】
データ移動制御処理部２５０２は、まず、図２５に示す移動データ量決定処理部２５０３を起動し、新規追加サーチサーバ２５１０の性能に応じた量の移動データ量を算出し、サーチサーバ管理テーブル１３３に格納する（ステップ２７０１）。
【０２０８】
次に、図２５に示すデータ移動先決定処理部２５０４を起動し、移動データ量に応じて、既存のサーチサーバ１０５から移動する文書データを決定し、文書データ管理テーブル１３２に格納する（ステップ２７０２）。
【０２０９】
最後に、図２５に示すデータ移動実行処理部２５０５を起動し、新規追加サーチサーバ２５１０には文書登録コマンドと対応するサーチサーバ別登録文書リスト１３６を、既存のサーチサーバ１０５には文書削除コマンドと対応するサーチサーバ別削除文書リスト２５２３を送信する（ステップ２７０３）。
以上が、データ移動制御処理部２５０２の処理手順である。なお、サーチサーバ１０５はサーチサーバ別削除文書リスト２５２３を受け付けると、図８に示す検索対象データ８３０の中から、サーチサーバ別削除文書リスト２５２３で指定された文書データを削除する手段を有しているものとする。
【０２１０】
図２８は本実施形態の移動データ量決定処理部２５０３の処理内容を示す図である。次に、図２７のステップ２７０１でデータ移動制御処理部２５０２に起動される移動データ量決定処理部２５０３の処理手順について、図２８を用いて説明する。
【０２１１】
移動データ量決定処理部２５０３は、まず、新規追加サーチサーバ２５１０の検索性能１４３の合計を、全てのサーチサーバの検索性能の合計で割った値を、追加検索性能比率リスト２８０５としてワークエリア１２６に格納する（ステップ２８０１）。
【０２１２】
次に、図２５に示すサーチサーバ管理テーブル１３３ｂにおいて割り当て済みサイズ１４４が設定されている全ての既存のサーチサーバ１０５についてステップ２８０４を繰り返し実行し（ステップ２８０３）、図２５に示す該サーチサーバの割り当て済みサイズ１４４とステップ２８０１で算出した追加検索性能比率リスト２８０５を掛け合わせた値を、該サーチサーバの移動データ量２５２１として図２５に示すサーチサーバ管理テーブル１３３ｂに格納する（ステップ２８０４）。
以上が、移動データ量決定処理部２５０３の処理手順である。
【０２１３】
図２９は本実施形態のデータ移動先決定処理部２５０４の処理内容を示す図である。次に、図２７のステップ２７０２でデータ移動制御処理部２５０２に起動されるデータ移動先決定処理部２５０４の処理手順について、図２９を用いて説明する。
【０２１４】
データ移動先決定処理部２５０４は、まず、図２５に示す文書データ管理テーブル１３２ｂに登録されている全ての文書データ１３７についてステップ２９０２の処理を繰り返し実行する（ステップ２９０１）。
【０２１５】
次に、該文書データの文書データサイズ１４１が、登録先サーチサーバ１４２の移動データ量２５２１より小さい場合は、ステップ２９０３からステップ２９０５までに示す一連の処理を実行する（ステップ２９０２）。
【０２１６】
まず、該文書データを図２５に示すサーチサーバ別削除文書リスト２５２３に追加し（ステップ２９０３）、該文書データに対する登録先サーチサーバ１４２を、元登録先サーチサーバ２５２２とする（ステップ２９０４）。そして、元登録先サーチサーバ２５２２で指定されたサーチサーバの割り当て済みサイズ１４４と移動データ量２５２１を、文書データサイズ１４１に基づき更新する（ステップ２９０５）。
【０２１７】
次に、サーチサーバ別削除文書リスト２５２３に登録され文書データについてステップ２９０７からステップ２９１０までに示す一連の処理を繰り返し実行する（ステップ２９０６）。
【０２１８】
まず、文書データサイズ１４１と新規追加サーチサーバ２５１０の割り当て済みサイズ１４４から全ての新規追加サーチサーバ２５１０の予想検索所要時間を算出し、図１に示す予想検索所要時間管理テーブル１３５に格納する（ステップ２９０７）。そして、予想検索所要時間が最小である新規追加サーチサーバ２５１０を該文書データに対する登録先サーチサーバ１４２として決定し、文書データ管理テーブル１３２ｂに格納する（ステップ２９０８）。
【０２１９】
また、該文書データをサーチサーバ別登録文書リスト１３６に追加して（ステップ２９０９）、図２５に示すサーチサーバ管理テーブル１３３ｂから取得した割り当て済みサイズ１４４に、文書データサイズ１４１を加算し、新たな割り当て済みサイズ１４４としてサーチサーバ管理テーブル１３３ｂに格納する（ステップ２９１０）。
【０２２０】
以上、図２９を用いて説明したのがデータ移動先決定処理部２５０４の処理手順であり、図２５〜図２９を用いて説明したのが本実施形態におけるサーチサーバ追加処理の手順について説明である。
【０２２１】
図３０は本実施形態の移動データ量決定処理部２５０３の具体的な処理の例を示す図である。次に、移動データ量決定処理部２５０３の具体的な処理の例を、図３０を用いて説明する。
【０２２２】
まず、新規追加サーチサーバ２５１０の検索性能３１０２を取得し、サーチサーバ管理テーブル１３３に格納する（ステップ２６０２）。
図３０の例では、新規追加サーチサーバであるサーチサーバ４の検索性能が３０ＭＢ／ｓとしてサーチサーバ管理テーブル１３３Ｋに格納されていることを表している。
【０２２３】
次に、新規追加サーチサーバの検索性能１４３の合計を、全てのサーチサーバの検索性能の合計で割った値を、追加検索性能比率リスト２８０５とする（ステップ２８０２）。
図３０の例では、サーチサーバ管理テーブル１３３Ｋから各サーチサーバの検索性能を取得し、新規追加サーチサーバの検索性能１４３の合計が３０ＭＢ／ｓ、全てのサーチサーバの検索性能の合計が１２０ＭＢ／ｓとなり、３０ＭＢ／ｓを１２０ＭＢ／ｓで割った値を追加検索性能比率３１０１として、０．２５を算出することを表している。
【０２２４】
次に、各サーチサーバの割り当て済みサイズ１４４及び追加検索性能比率リスト２８０５に基づき、既存の各サーチサーバの移動データ量２５２１を算出し、サーチサーバ管理テーブル１３３に格納する（ステップ２８０４）。
図３０の例では、０．２５と算出した追加検索性能比率３１０１と各サーチサーバの割り当て済みサイズ１４４を掛け合わせることによって、移動データ量２５２１を算出し、この結果として、サーチサーバ管理テーブル１３３Ｌに、サーチサーバ１の移動データ量２２．５ＧＢ、サーチサーバ２の移動データ量７．５ＧＢ及びサーチサーバ３の移動データ量１５ＧＢが格納されることを表している。
以上が、移動データ量決定処理部２５０３の具体的な処理の例の説明である。
【０２２５】
図３１は本実施形態のデータ移動先決定処理部２５０４の具体的な処理の例を示す図である。次に、データ移動先決定処理部２５０４の具体的な処理の例を、図３１を用いて説明する。
【０２２６】
まず、登録された文書データの中から、新規追加サーチサーバに登録する文書データを決定し、サーチサーバ別削除文書リスト２５２３を作成する（ステップ２９０３）。
図３１の例では、文書データ管理テーブル１３２Ｋ及びサーチサーバ管理テーブル１３３Ｌを入力として読み込み、サーチサーバ１０５毎に、移動する文書データを決定し、サーチサーバ１に登録された文書の中で移動する文書データをサーチサーバ別削除文書リスト２５２３Ａに、サーチサーバ２に登録された文書の中で移動する文書データをサーチサーバ別削除文書リスト２５２３Ｂに加えることを表している。
【０２２７】
次に、文書データ管理テーブル１３２ｂをサーチサーバ別削除文書リスト２５２３に合わせて更新する（ステップ２９０４）。
図３１の例では、サーチサーバ別削除文書リスト２５２３Ａ及びサーチサーバ別削除文書リスト２５２３Ｂを入力として読み込み、新規追加サーチサーバに登録する文書データに関する元登録先サーチサーバを文書データ管理テーブル１３２Ｌに格納しており、文書Ａはサーチサーバ１から新規追加サーチサーバに、文書Ｂはサーチサーバ２から新規追加サーチサーバに移動することを表している。
【０２２８】
次に、サーチサーバ管理テーブル１３３ｂをサーチサーバ別削除文書リスト２５２３に合わせて更新する（ステップ２９０５）。
図３１の例では、サーチサーバ別削除文書リスト２５２３Ａ及びサーチサーバ別削除文書リスト２５２３Ｂを入力として読み込み、新規追加サーチサーバに登録する文書データのデータサイズの分だけ割り当て済みサイズ及び移動データ量を減らし、サーチサーバ管理テーブル１３３Ｍに格納しており、サーチサーバ１は割り当て済みサイズが６７．５ＧＢになり、サーチサーバ２は割り当て済みサイズが２２．５ＧＢになり、サーチサーバ３は割り当て済みサイズが４５ＧＢになったことを表している。
【０２２９】
そして、サーチサーバ別削除文書リスト２５２３で指定された文書データの登録先となるサーチサーバを決定し、サーチサーバ別登録文書リスト１３６を作成する（ステップ３１１２）。なお、ステップ３１１２は図２９で説明したステップ２９０６〜ステップ２９１０と同一の処理を表している。
図３１の例では、サーチサーバ別削除文書リスト２５２３Ａ及びサーチサーバ別削除文書リスト２５２３Ｂを入力として読み込み、新規追加サーチサーバ２５１０から登録先サーチサーバ１４２を決定する。
【０２３０】
そして、これに基づいて、サーチサーバ別登録文書リスト１３６を作成する。また、登録先サーチサーバ１４２に指定されたサーチサーバの割り当て済みサイズ１４４と該文書データのデータサイズの和を、新たな割り当て済みサイズ１４４としてサーチサーバ管理テーブル１３３Ｎに格納すると共に、該文書データの登録先サーチサーバ１４２を文書データ管理テーブル１３２Ｍに格納する。
以上が、データ移動先決定処理部２５０４の具体的な処理の例の説明である。
【０２３１】
以上説明した、本実施形態に示した構成によれば、本実施形態の文書検索システムにおいて、図２８で説明した移動データ量決定処理部２５０３により既存のサーチサーバに登録されている文書データの中から新規追加サーチサーバに移動する文書データを決定し、図２９で説明したデータ移動先決定処理部２５０４により新規追加サーチサーバに移動データ量決定処理部２５０３で決定した文書データのみを読み込む様にすることにより、サーチサーバ追加時に処理対象とされる文書データ１３７の数を削減することが可能となり、その結果としてサーチサーバを追加する際にかかる時間を短縮する効果を得ることができる。
【０２３２】
すなわち、サーチサーバを追加する際にかかる時間を、本実施形態を用いることにより、実施形態１を用いる場合の２５％に削減することができ、例えば、先に説明した１０年分の新聞記事を蓄積した文書検索システムにおいては、１０日要していた登録時間を約３日にすることができる。
【０２３３】
以上説明した様に本実施形態のデータ分配システムによれば、既存コンピュータに残すサイズと追加コンピュータに移動するサイズとの比率が、既存コンピュータと追加コンピュータとの処理性能の比率とできるだけ等しくなる様に移動するデータを決定するので、追加コンピュータの処理性能に応じた適切なサイズのデータを追加コンピュータに移動して、追加コンピュータを含む複数のコンピュータへのデータの再分配を効率的に行うことが可能である。
【０２３４】
なお、本実施形態において、文書データサイズとコンピュータの処理性能に応じて文書データを追加コンピュータに分配する方法について説明したが、実施形態２に説明したインデクスサイズとコンピュータの処理性能に応じて文書データを分配する方法と組合わせることにより、本実施形態をインデクス検索を用いた文書検索システムに適用しても良い。
【０２３５】
（実施形態４）
以下に全処理能力の所定の割合に相当する処理性能に応じて文書データを分配する実施形態４のデータ分配システムについて説明する。
【０２３６】
前記説明した実施形態では、いずれも各コンピュータの全ての処理能力を検索処理に割り振ることを前提として説明したが、検索システム以外の処理のアプリケーションを処理しているコンピュータを、サーチサーバとしても利用したい場合があり得る。
【０２３７】
この場合、実施形態１に示した構成を用いて、該コンピュータをサーチサーバとしてシステム定義に書き加えることで、アプリケーションを処理しているコンピュータをサーチサーバとしても利用することができるが、該コンピュータ本来の処理能力に対して、全文検索システムに利用できる処理能力が半分以下である場合等は、検索所要時間が予想した時間の倍以上かかることになる。
【０２３８】
例えば、給与計算アプリケーションを処理するコンピュータが、サーチサーバをも兼ねている場合において、全処理能力の８割を給与計算アプリケーションに、残りの２割を全文検索システムに割り振っているとし、このとき、該サーチサーバにコンピュータ本来の処理能力に基づいた文書データを担当させたとすれば、該サーチサーバは２割の力で１０割分の処理をする事になるため、該コンピュータの検索レスポンスが低下し、文書検索システム全体の検索速度が低下することになる。
【０２３９】
この文書検索システム全体の検索速度が低下を防ぐ為には、各コンピュータに、それぞれが全文検索システムに対して優先的に割り振ることのできる処理能力の割合（以下、検索処理利用割合と呼ぶ）に応じてデータを分配する必要がある。
【０２４０】
以下、検索処理利用割合を利用したデータサイズ分配手段を有する本実施形態について説明する。
まず、本実施形態の概要を説明する。
本実施形態では、各コンピュータが検索処理にのみ処理能力を割り振るのではなく、他のアプリケーションにも割り振っていることを想定し、各コンピュータの処理能力を取得する際に、該コンピュータの全性能を特定の処理に注ぎ込んだ際の処理能力ではなく、予め定めた割合の能力だけを注ぎ込んだ状態における処理性能を取得することとしている。
以上が、本実施形態の概要についての説明である。
【０２４１】
図３２は本実施形態の登録制御サーバ１０１の概略構成を示す図である。図３２に示す本実施形態の構成と実施形態１の構成（図１）では、主メモリ１１２上に格納されるプログラムの構成とディスク１１３上に格納されるテーブルの構成が異なっており、主メモリ上のサーチサーバ検索性能取得処理部１２１の代わりに検索処理利用割合を利用する様にしたサーチサーバ検索性能取得処理部１２１ｃを有すると共に、ディスク１１３上のサーチサーバ管理テーブル１３３ｃに対して新たに検索処理利用割合３２０２を格納する。
【０２４２】
なお、検索処理利用割合３２０２には、予め文書検索システムの管理者が入力した任意の値を検索処理利用割合３２０２として取得するものとしても良いし、該コンピュータにおける他のアプリケーションのＣＰＵ利用率から、全文検索システムに利用できる処理能力の割合を算出した値を検索処理利用割合３２０２として取得するものとしても良い。
【０２４３】
次に、本実施形態における登録制御サーバ１０１におけるサーチサーバ管理情報取得処理の手順について説明する。
【０２４４】
図３３は本実施形態の登録サーバ制御処理部１２０ｃの処理内容を示す図である。まず、登録サーバ制御処理部１２０ｃの処理手順を、図３３を用いて説明する。
【０２４５】
登録サーバ制御処理部１２０ｃの処理手順は、図２で説明した登録サーバ制御処理部１２０の処理手順と、ステップ３３０１のみが異なる。
【０２４６】
図３２に示す様に本実施形態では、検索処理利用割合を利用する様にしたサーチサーバ検索性能取得処理部１２１ｃを起動し、各サーチサーバ１０５に対して設定された検索処理利用割合３２０２と各サーチサーバ１０５の検索所要時間を取得し、検索性能１４３としてサーチサーバ管理テーブル１３３に格納する（ステップ３３０１）。
以上が、ステップ３３０１の説明であり、登録サーバ制御処理部１２０の処理手順についての説明である。
【０２４７】
図３４は本実施形態のサーチサーバ検索性能取得処理部１２１ｃの処理内容を示す図である。次に、図３３のステップ３３０１で登録サーバ制御処理部１２０ｃにより起動される、検索処理利用割合を利用する様にしたサーチサーバ検索性能取得処理部１２１ｃの処理手順について、図３４を用いて説明する。
【０２４８】
検索処理利用割合を利用する様にしたサーチサーバ検索性能取得処理部１２１ｃの処理手順は、ステップ３４０１のみが、図３で説明したサーチサーバ検索性能取得処理部１２１の処理手順と異なるため、ステップ３４０１のみを説明する。
【０２４９】
図１に示すサーチサーバ１０５から取得した検索所要時間により、性能取得用サンプルデータ１３１のサイズを割った値に、図３２に示すサーチサーバ１０５の検索処理利用割合３２０２を掛け合わせた値を検索性能１４３として算出する（ステップ３４０１）。
【０２５０】
以上がステップ３４０１の説明であり、サーチサーバ検索性能取得処理部１２１ｃの処理手順についての説明である。そして図３３及び図３４を用いて説明したのが、本実施形態における登録制御サーバ１０１におけるサーチサーバ管理情報取得処理の手順である。
【０２５１】
図３５は本実施形態のサーチサーバ検索性能取得処理部１２１ｃの具体的な処理例を示す図である。次に、検索処理利用割合を利用する様にしたサーチサーバ検索性能取得処理部１２１ｃのステップ３４０１に関する具体的な処理の例を、図３５を用いて説明する。
【０２５２】
検索処理利用割合を利用する様にしたサーチサーバ検索性能取得処理部１２１ｃでは、性能取得用サンプルデータ１３１のサイズ、各サーチサーバの検索所要時間１４０１及び検索処理利用割合３２０２に基づき、検索性能１４３を算出する（ステップ３４０１）。
【０２５３】
本図に示した例では、性能取得用サンプルデータ１３１のサイズである９０ＭＢを各サーチサーバ１０５の検索所要時間１４０１で割り、この値に検索処理利用割合３２０２を掛け合わせることにより、検索性能１４３を算出している。サーチサーバ１の検索所要時間１４０１は２秒、検索処理利用割合３２０２は０．２であり、９０ＭＢを２秒で割り、０．２を掛けあわせることにより、検索性能９ＭＢ／ｓが算出されている事を表している。
【０２５４】
また、サーチサーバ２及び３の検索処理利用割合３２０２は１．０であり、検索所要時間１４０１はそれぞれ６秒と３秒であるため、サーチサーバ２の検索性能１４３は１５ＭＢ／ｓ、サーチサーバ３の検索性能１４３は３０ＭＢ／ｓと算出されていることを表している。
【０２５５】
以上が、検索処理利用割合を利用する様にしたサーチサーバ検索性能取得処理部１２１ｃのステップ３４０１に関する具体的な処理の例についての説明である。
【０２５６】
図３６は本実施形態のシステム管理画面の例を示す図である。ここで、本実施形態の文書検索システムにおいて、図１で説明した登録制御サーバ１０１のディスプレイ１１４に表示されるシステム管理画面について、図３６を用いて具体的に説明する。
【０２５７】
該システム管理画面は、図１３で説明したシステム管理画面に、優先度設定用スライドバー３６０１が加わったものである。優先度設定用スライドバー３６０１は、各サーチサーバに対する検索処理利用割合３２０２を設定する為の入力インタフェースであり、図３６の例では、各サーチサーバ毎に一つのスライドバーを表示することを表している。
【０２５８】
また、サーチサーバが追加され、サーチサーバ管理テーブル表示部１３０７に新たなサーチサーバが表示された場合、サーチサーバ毎に一つのスライドバーを追加し、サーチサーバが削減され、サーチサーバ管理テーブル表示部１３０７からサーチサーバが削除された場合、削除されたサーチサーバ毎に一つのスライドバーを削除する。
【０２５９】
優先度設定用スライドバー３６０１、マウス等で左右に動かすことで検索処理利用割合３２０２を設定でき、スライドバーを左端に設定すれば検索処理利用割合３２０２は１．０に、スライドバーを右端に設定すれば検索処理利用割合３２０２は０に設定される。
以上が、検索処理利用割合３２０２の設定の説明であり、システム管理画面の具体的な説明である。
【０２６０】
以上説明した本実施形態に示した構成によれば、本実施形態の文書検索システムにおいて、図３４で説明した検索処理利用割合を利用する様にしたサーチサーバ検索性能取得処理部１２１ｃにより、各サーチサーバの処理性能を取得する際に、各サーチサーバの全性能を特定の処理に注ぎ込んだ際の処理性能ではなく、予め定めた割合の能力だけを注ぎ込んだ状態における処理性能を取得することにより、検索以外のアプリケーションの処理を並行して実行するコンピュータに対しても適切なデータサイズを分配することができる様になる。それによって、文書検索システム全体としての検索速度を向上する効果が得られる。
【０２６１】
この結果、文書検索システム全体として検索速度が向上し、検索者は、ストレスなく検索結果を得ることができる様になる。
【０２６２】
図３５に示した具体例と同じ条件において、実施形態１を用いた場合、サーチサーバ１の検索性能は４５ＭＢ／ｓ、サーチサーバ２の検索性能１４３は１５ＭＢ／ｓ、サーチサーバ３の検索性能１４３は３０ＭＢ／ｓとして算出され、例えば、１８０ＭＢの文書データならば、サーチサーバ１には９０ＭＢ、サーチサーバ２には３０ＭＢ、サーチサーバ３には６０ＭＢを割り振られる。
この場合、サーチサーバ２及びサーチサーバ３は２秒で検索処理を終えるが、サーチサーバ１は検索処理に１０秒かかり、文書検索システム全体としての検索処理は１０秒となる。
【０２６３】
これに対し、本実施形態を用いることにより、サーチサーバ１の検索性能は９ＭＢ／ｓ、サーチサーバ２の検索性能１４３は１５ＭＢ／ｓ、サーチサーバ３の検索性能１４３は３０ＭＢ／ｓとして算出され、サーチサーバ１には３０ＭＢ、サーチサーバ２には５０ＭＢ、サーチサーバ３には１００ＭＢを割り振られる。
この場合、サーチサーバ１からサーチサーバ３は３．３秒で検索処理を終え、文書検索システム全体としての検索処理も３．３秒となる。
【０２６４】
すなわち、文書検索システム全体としての検索処理時間を、本実施形態を用いることにより、実施形態１を用いる場合の３３％に削減することができると共に、同じコンピュータシステムを使って、単位時間当たりに３倍の量の検索要求に応えられる様になる。
【０２６５】
以上説明した様に本実施形態のデータ分配システムによれば、分配データのデータサイズ及び所定の処理性能に応じた予想所要時間が各コンピュータでできるだけ均等となる様に分配先を決定するので、各コンピュータの全処理能力に対する所定の処理性能に応じた適切なサイズのデータを分配し、そのデータを処理する際に各コンピュータの所定の処理性能を最大限に活用できる様にすることが可能である。
【０２６６】
以上説明した本発明の実施形態１〜４では、いずれも文書検索システムを例に説明したが、検索対象が文書データである必要はなく、例えば、繰り返し構造を含むＸＭＬを格納したＤＢの様に、同じ構造でも、１件毎にデータサイズの異なる場合、本発明を適用することにより、各コンピュータの性能を最大限に発揮し、システム全体のスループットを向上させることができる。
【０２６７】
また、以上説明した実施形態１〜４では、いずれも各種プログラムを各サーバの主メモリ上に格納する構成で説明したが、各種プログラムの格納先は、光磁気ディスク装置等他の二次記憶装置に格納する構成であっても構わない。また、ＣＤ−ＲＯＭ等の可搬型の媒体に格納し、これらを必要に応じてＣＤ−ＲＯＭドライブ（図示せず）から読み出す構成であっても構わない。
【０２６８】
また、以上説明した実施形態１〜４は、いずれも登録制御サーバ１０１、記憶装置１０２、検索制御サーバ１０４、サーチサーバ１０５を別々のコンピュータシステムとして説明したが、これらの内の複数を一つのコンピュータシステムに格納することも可能である。
【図面の簡単な説明】
【０２６９】
【図１】実施形態１の文書検索システムの概略構成を示す図である。
【図２】実施形態１の登録サーバ制御処理部１２０の処理内容を示す図である。
【図３】実施形態１のサーチサーバ検索性能取得処理部１２１の処理内容を示す図である。
【図４】実施形態１の登録制御処理部１２２の処理内容を示す図である。
【図５】実施形態１の文書データサイズ取得処理部１２３の処理内容を示す図である。
【図６】実施形態１の登録サーチサーバ決定処理部１２４の処理内容を示す図である。
【図７】実施形態１の文書データ分配処理部１２５の処理内容を示す図である。
【図８】実施形態１のサーチサーバ１０５の概略構成を示す図である。
【図９】実施形態１のサーチサーバ制御処理部８１０の処理内容を示す図である。
【図１０】実施形態１の性能取得処理部８１３の処理内容を示す図である。
【図１１】実施形態１のデータ登録制御処理部８１１の処理内容を示す図である。
【図１２】実施形態１のデータ検索制御処理部８１２の処理内容を示す図である。
【図１３】実施形態１のシステム管理画面の例を示す図である。
【図１４】実施形態１のサーチサーバ検索性能取得処理部１２１の処理例を示す図である。
【図１５】実施形態１の文書データサイズ取得処理部１２３の処理例を示す図である。
【図１６】実施形態１の一つ目の文書の登録先サーチサーバを決定する場合の具体例を示す図である。
【図１７】実施形態１の二つ目の文書の登録先サーチサーバを決定する場合の具体例を示す図である。
【図１８】実施形態１の検索制御サーバ１０４の概略構成を示す図である。
【図１９】実施形態１の検索制御処理部１８１０の処理概要を示す図である。
【図２０】実施形態２の登録制御サーバ１０１の概略構成を示す図である。
【図２１】実施形態２の登録制御処理部１２２ａの処理内容を示す図である。
【図２２】実施形態２のインデクスサイズ算出処理部２００２の処理内容を示す図である。
【図２３】実施形態２の登録サーチサーバ決定処理部１２４ａの処理内容を示す図である。
【図２４】実施形態２のインデクスサイズ算出処理部２００２及び登録サーチサーバ決定処理部１２４ａの具体的な処理の流れを示す図である。
【図２５】実施形態３の登録制御サーバ１０１ａの概略構成を示す図である。
【図２６】実施形態３の登録サーバ制御処理部１２０ａの処理内容を示す図である。
【図２７】実施形態３のデータ移動制御処理部２５０２の処理内容を示す図である。
【図２８】実施形態３の移動データ量決定処理部２５０３の処理内容を示す図である。
【図２９】実施形態３のデータ移動先決定処理部２５０４の処理内容を示す図である。
【図３０】実施形態３の移動データ量決定処理部２５０３の具体的な処理の例を示す図である。
【図３１】実施形態３のデータ移動先決定処理部２５０４の具体的な処理の例を示す図である。
【図３２】実施形態４の登録制御サーバ１０１の概略構成を示す図である。
【図３３】実施形態４の登録サーバ制御処理部１２０ｃの処理内容を示す図である。
【図３４】実施形態４のサーチサーバ検索性能取得処理部１２１ｃの処理内容を示す図である。
【図３５】実施形態４のサーチサーバ検索性能取得処理部１２１ｃの具体的な処理例を示す図である。
【図３６】実施形態４のシステム管理画面の例を示す図である。
【符号の説明】
【０２７０】
１０１…登録制御サーバ、１０２…記憶装置、１０３…文書検索クライアント、１０４…検索制御サーバ、１０５…サーチサーバ、１０６…ネットワーク、１１１…ＣＰＵ、１１２…主メモリ、１１３…ディスク、１１４…ディスプレイ、１１５…キーボード、１１６…ネットワークボード、１１７…システムバス、１２６…ワークエリア、１３１…性能取得用サンプルデータ、１３２…文書データ管理テーブル、１３３…サーチサーバ管理テーブル、１３４…登録対象文書データ位置リスト、１３５…予想検索所要時間管理テーブル、１３６…サーチサーバ別登録文書リスト、１３７…文書データ、１４１…文書データサイズ、１４２…登録先サーチサーバ、１４３…検索性能、１４４…割り当て済みサイズ、１２０…登録サーバ制御処理部、１２１…サーチサーバ検索性能取得処理部、１２２…登録制御処理部、１２３…文書データサイズ取得処理部、１２４…登録サーチサーバ決定処理部、１２５…文書データ分配処理部、８０１…ＣＰＵ、８０２…主メモリ、８０３…ディスク、８０４…ネットワークボード、８０５…システムバス、８１０…サーチサーバ制御処理部、８１１…データ登録制御処理部、８１２…データ検索制御処理部、８１３…性能取得処理部、８１４…登録制御情報取得処理部、８１５…データ読込処理部、８１６…データ登録処理部、８１７…検索条件取得処理部、８１８…データ検索処理部、８１９…検索結果送信処理部、８２０…ワークエリア、８３０…検索対象データ、８３１…検索開始時刻、８３２…検索終了時刻、１３０１…性能取得コマンド実行ボタン、１３０２…文書登録コマンド実行ボタン、１３０３…登録文書位置情報入力部、１３０４…登録ファイル決定ボタン、１３０６…登録ファイル一覧表示部、１３０７…サーチサーバ管理テーブル表示部、１３１１…初期状態画面、１３１２…性能取得状態画面、１３１３…文書登録終了状態画面、１３１４…文書登録準備状態画面、１３２１…登録ファイル指定操作、１４０１…検索所要時間、１４０２…検索性能、１６０１…文書データサイズ、１７０１…文書データサイズ、１８０１…ＣＰＵ、１８０２…主メモリ、１８０３…ネットワークボード、１８０４…システムバス、１８１０…検索制御処理部、１８１１…検索要求取得処理部、１８１２…検索要求配信処理部、１８１３…検索結果収集処理部、１８１４…検索結果統合処理部、１８１５…検索結果送信処理部、１８２０…ワークエリア、１８３０…中間検索結果、１８３１…検索結果、２０１０…監視インデクスサイズ、２０１１…監視インデクスサイズ、２０１２…監視インデクス管理テーブル、２０１３…検索頻度、２００２…インデクスサイズ算出処理部、２００３…登録サーチサーバ決定処理部、２４０１…監視インデクスサイズ、２５０２…データ移動制御処理部、２５０３…移動データ量決定処理部、２５０４…データ移動先決定処理部、２５０５…データ移動実行処理部、２５１０…新規追加サーチサーバ、２５２１…移動データ量、２５２２…元登録先サーチサーバ、２５２３…サーチサーバ別削除文書リスト、２８０５…追加検索性能比率リスト、３１０１…追加検索性能比率、３１０２…検索性能、３２０２…検索処理利用割合、３６０１…優先度設定用スライドバー。
【図１】
2006113868.tif 000004
【図２】
2006113868.tif 000005
【図３】
2006113868.tif 000006
【図４】
2006113868.tif 000007
【図５】
2006113868.tif 000008
【図６】
2006113868.tif 000009
【図７】
2006113868.tif 000010
【図８】
2006113868.tif 000011
【図９】
2006113868.tif 000012
【図１０】
2006113868.tif 000013
【図１１】
2006113868.tif 000014
【図１２】
2006113868.tif 000015
【図１３】
2006113868.tif 000016
【図１４】
2006113868.tif 000017
【図１５】
2006113868.tif 000018
【図１６】
2006113868.tif 000019
【図１７】
2006113868.tif 000020
【図１８】
2006113868.tif 000021
【図１９】
2006113868.tif 000022
【図２０】
2006113868.tif 000023
【図２１】
2006113868.tif 000024
【図２２】
2006113868.tif 000025
【図２３】
2006113868.tif 000026
【図２４】
2006113868.tif 000027
【図２５】
2006113868.tif 000028
【図２６】
2006113868.tif 000029
【図２７】
2006113868.tif 000030
【図２８】
2006113868.tif 000031
【図２９】
2006113868.tif 000032
【図３０】
2006113868.tif 000033
【図３１】
2006113868.tif 000034
【図３２】
2006113868.tif 000035
【図３３】
2006113868.tif 000036
【図３４】
2006113868.tif 000037
【図３５】
2006113868.tif 000038
【図３６】
2006113868.tif 000039