JP2006185019A - 検索システム、および情報配置構成決定方法、並びにコンピュータ・プログラム - Google Patents

検索システム、および情報配置構成決定方法、並びにコンピュータ・プログラム Download PDF

Info

Publication number
JP2006185019A
JP2006185019A JP2004375741A JP2004375741A JP2006185019A JP 2006185019 A JP2006185019 A JP 2006185019A JP 2004375741 A JP2004375741 A JP 2004375741A JP 2004375741 A JP2004375741 A JP 2004375741A JP 2006185019 A JP2006185019 A JP 2006185019A
Authority
JP
Japan
Prior art keywords
index
search
server
arrangement pattern
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
JP2004375741A
Other languages
English (en)
Inventor
Ayumi Seki
歩 瀬木
Takashi Osawa
隆 大澤
Yoshihide Kadani
嘉英 甲谷
Kyoko Yokoe
恭子 横江
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox 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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2004375741A priority Critical patent/JP2006185019A/ja
Publication of JP2006185019A publication Critical patent/JP2006185019A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】 分散インデックスサーバにおけるインデックスの最適配置を実現する構成を提供する。
【解決手段】 複数のインデックスサーバを適用してインデックス情報を分散格納するシステムにおいて、登録インデックスのスナップシッョトとして設定される検索インデックスの配置先を、各インデックスサーバのデータ記憶容量や、アクセス数、あるいはデータ移動量を考慮して決定する。本構成により、複数のインデックスサーバの全体の記憶領域を有効活用が可能となり、各インデックスサーバのアクセス数に対応する処理負荷の分散が可能となり、さらに、検索インデックスの再配置によるデータ移動量も最小限としたインデックス配置処理が可能となる。
【選択図】 図9

Description

本発明は、検索システム、および情報配置構成決定方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、検索システムに適用されるインデックス情報の最適な配置構成を、様々な評価処理によって求め、最適なインデックス配置を実現する検索システム、および情報配置構成決定方法、並びにコンピュータ・プログラムに関する。
昨今、インターネットあるいはイントラネットなどのネットワーク通信が盛んになり、様々なデータ通信、データ処理がネットワークを介して行なわれている。ネットワークを介したサービスの1つとして検索サービスがある。検索サービスは、例えばネットワーク接続されたパーソナルコンピュータ、携帯端末などのユーザ端末からの検索要求を検索サーバが受信し、検索サーバにおいて、検索要求に応じた処理を実行して処理結果をユーザ端末に送信するサービスである。
例えば、インターネットを介した検索処理を実行する場合、検索サービスを提供しているWebサイトにアクセスし、Webサイトの提示メニューに従って、キーワード、カテゴリなどの検索条件を入力しサーバに送信する。サーバは、これらの検索条件に従って、処理を実行し、処理結果をユーザ端末に表示する。
データ検索処理の実行機能を持つ検索エンジンは、例えば検索条件を設定した検索式に基づいてデータベースを検索し、それぞれの検索式に合致するデータをデータベースから抽出し、これを検索結果としてユーザ端末に出力する。
一般的なデータ検索システムでは、文書データから抽出したインデックス情報、例えば、文献名、著者、更新日、キーワードなどのインデックス情報を抽出して格納したインデックスサーバを利用した検索処理を行なっている。すなわち、検索サーバは、ユーザからの検索依頼に応じてインデックスサーバの格納情報に基づく検索処理を実行して、インデックスサーバからの抽出情報を検索結果としてユーザに提供する構成を採用している。この構成によって、膨大なデータを格納した文書データベースの検索を行なうことなく、必要な情報を効率的に取得しユーザに提供することができ、データ処理効率が向上する。
さらに、インデックスサーバを複数設定し、複数のインデックスサーバに、インデックス情報を分散して格納することにより負荷の分散を図ることが行なわれている。1つのインデックスサーバのみとすると、検索処理要求が同時に多数発生した場合など、過大な負荷が発生し、処理の遅延が生じてしまうが、複数のインデックスサーバを持つ構成とすることで、負荷分散が可能となり、処理効率を高めることができる。
インデックスサーバを利用したシステムでは、例えば文書データの本体を格納した文書データベースの更新に応じて、インデックスサーバを更新することが必要となる。すなわち、文書データベースに新規文書が格納された場合や、文書データベースに格納された文書が更新された場合など、文書データベースの格納データの変更があった場合に、その変更情報を反映させるための更新処理が必要となる。
インデックス情報の更新処理の実行中は検索要求に応じることができなくなるという事態を避けるため、一般的に、インデックスサーバは2つのインデックス格納部を持つ構成とされている。図1を参照して、インデックスサーバにおける2つのインデックス格納部の構成について説明する。
図1には、ネットワーク10に接続されたインデックスサーバ11,21、文書管理サーバ31、クライアント41−1〜nを示している。クライアント41−1〜nは、検索要求を行うユーザの端末であり、文書管理サーバ31は、文書の本体を格納したサーバである。インデックスサーバ11,21は、文書管理サーバ31に格納された文書本体データに基づくインデックス情報、すなわちキーワード、文献名、更新日情報などを含むインデックス情報を格納し、検索処理は、インデックスサーバの持つインデックス情報に基づいて実行される。
図には、2つのインデックスサーバ11,21のみを示してあるが、A〜Nまで、複数のインデックスサーバがネットワーク10に接続され、それぞれのインデックスサーバに、文書管理サーバ31に格納された文書本体データに基づくインデックス情報が分散して格納されている。
上述したように、インデックス情報の更新処理の実行中、検索要求に応じることができなくなるという事態を避けるため、インデックスサーバは2つのインデックス格納部を持つ。1つは、文書管理サーバの更新に応じて随時、更新処理を行なうための登録インデックス格納部であり、もう1つは、検索処理のために適用される検索インデックス格納部である。検索インデックス格納部は、登録インデックス格納部のスナップショットとして構成される。すなわち、登録インデックス格納部は、文書管理サーバの更新毎に随時更新処理がなされるが、検索インデックス格納部は、一定タイミング毎に登録インデックス格納部に格納された更新情報に基づいて、まとめてデータ更新を行なう。このように更新処理用の登録インデックス格納部と、検索用の検索インデックス格納部を設けることで、データ更新および検索を滞りなく実行できる。
図に示す例では、インデックスサーバA11は、登録インデックス格納部12と検索インデックス格納部13を有し、インデックスサーバN21は、登録インデックス格納部22と検索インデックス格納部23を有している。インデックスサーバA11の検索インデックス格納部13は、登録インデックス格納部12の格納データのスナップショット、すなわちある時点の登録インデックス格納部12のコピーデータが格納され、インデックスサーバN21の検索インデックス格納部23は、登録インデックス格納部22の格納データのスナップショット、すなわちある時点の登録インデックス格納部22のコピーデータが格納されている。
このように、2つのインデックス格納部を設定した構成では、各サーバは、インデックス情報の格納領域として、登録インデックスのほぼ2倍のデータ格納領域が必要となる。すなわち、検索インデックス格納部の格納データ量は、登録インデックス格納部の格納データ量とほぼ等しくなるためである。
個々のインデックスサーバの持つデータ記憶領域には上限があり、格納可能なインデックス情報には制限がある。インデックスサーバを分散配置した構成では、あるインデックスサーバAの登録インデックス情報はP(GByte)、インデックスサーバBの登録インデックス情報はQ(GByte)など、ばらつきが発生するのが一般的である。この場合、インデックスサーバAは、登録用、検索用のインデックス情報格納領域として2P(GByte)が必要となり、インデックスサーバBは、登録用、検索用のインデックス情報格納領域として2Q(GByte)が必要となる。
このように、各インデックスサーバに要求されるインデックス情報格納領域は、様々にばらついた状態となる。このばらつきの結果、分散配置したインデックスサーバ全体に登録可能なインデックス情報量は、本来のインデックスサーバ全体の持つデータ格納量に比較して小さな値となる。すなわち分散配置された複数のインデックスサーバ全体の記憶領域を有効活用した構成とならないという問題が発生する。
なお、分散データベースのデータ再配置構成を開示した従来技術として、特許文献1に記載の構成がある。特許文献1には、各分散データベースの処理能力、例えばCPU性能などに応じて各分散データベースに格納するデータを再配置する構成を開示している。しかし、本文献は、上述した登録インデックスと検索インデックスなどの組み合わせデータについての再配置構成を開示するものではない。
特開平6−259478号公報
本発明は、上述の問題点に鑑みてなされたものであり、分散配置される複数のインデックスサーバを有し、各インデックスサーバにデータ更新処理に対応した登録インデックス格納部と、検索処理に対応した検索インデックス格納部とを有する構成において、インデックス情報の最適な配置構成を、様々な評価処理によって求め、最適なインデックス配置を実現する検索システム、および情報配置構成決定方法、並びにコンピュータ・プログラムを提供することを目的とする。
本発明の第1の側面は、
インデックス情報を適用した検索処理を行なう検索システムであり、
インデックス情報の更新処理用データとしての登録インデックスと、検索処理に適用するインデックスデータであり登録インデックスに対応するスナップショットとして設定される検索インデックスとを保持する複数のインデックスサーバと、
前記複数のインデックスサーバにおける検索インデックスの配置決定処理を実行するインデックスサーバ管理部とを有し、
前記インデックスサーバ管理部は、
前記複数のインデックスサーバのインデックス情報の記憶領域としてのインデックス格納領域サイズと、登録インデックスサイズとに基づいて、各インデックスサーバに配置可能な検索インデックスの配置パターンを選択し、選択された配置可能パターン各々に対する評価処理に基づいて最適な配置パターンを決定する処理を実行する構成であり、
前記複数のインデックスサーバは、前記最適配置パターンに従って、検索インデックスの再配置を実行する構成であることを特徴とする検索システムにある。
さらに、本発明の検索システムの一実施態様において、前記複数のインデックスサーバの各々は、自己のインデックス格納領域に配置した検索インデックスに対するアクセス数をカウントする構成であり、前記インデックスサーバ管理部は、前記配置可能パターン各々に対する評価処理として、各配置パターンとした場合の各インデックスサーバの最大アクセス数と最小アクセス数との差を評価関数Pとして算出し、該評価関数Pが最小となる配置パターンを最適配置パターンとして選択する処理を実行する構成であることを特徴とする。
さらに、本発明の検索システムの一実施態様において、前記インデックスサーバ管理部は、前記配置可能パターン各々に対する評価処理として、各配置パターンとした場合のインデックスサーバ間のインデックス情報移動量を評価関数Pとして算出し、該評価関数Pが最小となる配置パターンを最適配置パターンとして選択する処理を実行する構成であることを特徴とする。
さらに、本発明の検索システムの一実施態様において、前記複数のインデックスサーバの各々は、自己のインデックス格納領域に配置した検索インデックスに対するアクセス数をカウントする構成であり、前記インデックスサーバ管理部は、前記配置可能パターン各々に対する評価処理として、各配置パターンとした場合の各インデックスサーバの最大アクセス数と最小アクセス数との差を評価関数Pとして算出し、さらに、各配置パターンとした場合のインデックスサーバ間のインデックス情報移動量を評価関数Pとして算出し、評価関数Pと評価関数Pとを適用した総合的な評価処理に基づいて、最適配置パターンの決定処理を実行する構成であることを特徴とする。
さらに、本発明の第2の側面は、
インデックス情報の更新処理用データとしての登録インデックスと、検索処理に適用するインデックスデータであり登録インデックスに対応するスナップショットとして設定される検索インデックスとを保持する複数のインデックスサーバを有する検索システムにおける検索インデックスの配置構成の決定処理をコンピュータ上で実行させるコンピュータ・プログラムであり、
前記複数のインデックスサーバのインデックス情報の記憶領域としてのインデックス格納領域サイズと、登録インデックスサイズとに基づいて、各インデックスサーバに配置可能な検索インデックスの配置パターンを選択する配置可能パターン選択ステップと、
前記配置可能パターン各々に対する評価処理に基づいて最適な配置パターンを決定する最適配置パターン決定ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
さらに、本発明のコンピュータ・プログラムの一実施態様において、前記最適配置パターン決定ステップは、前記配置可能パターン各々に対する評価処理として、各配置パターンとした場合の各インデックスサーバに配置した検索インデックスに対する最大アクセス数と最小アクセス数との差を評価関数Pとして算出するステップと、前記評価関数Pが最小となる配置パターンを最適配置パターンとして選択するステップと、を有することを特徴とする。
さらに、本発明のコンピュータ・プログラムの一実施態様において、前記最適配置パターン決定ステップは、前記配置可能パターン各々に対する評価処理として、各配置パターンとした場合のインデックスサーバ間のインデックス情報移動量を評価関数Pとして算出するステップと、前記評価関数Pが最小となる配置パターンを最適配置パターンとして選択するステップと、を有することを特徴とする。
さらに、本発明のコンピュータ・プログラムの一実施態様において、前記最適配置パターン決定ステップは、前記配置可能パターン各々に対する評価処理として、各配置パターンとした場合の各インデックスサーバに配置した検索インデックスに対する最大アクセス数と最小アクセス数との差を評価関数Pとして算出するステップと、前記配置可能パターン各々に対する評価処理として、各配置パターンとした場合のインデックスサーバ間のインデックス情報移動量を評価関数Pとして算出するステップと、評価関数Pと評価関数Pとを適用した総合的な評価処理に基づいて、最適配置パターンの決定処理を実行するステップと、を有することを特徴とする。
さらに、本発明の第3の側面は、
インデックス情報の更新処理用データとしての登録インデックスと、検索処理に適用するインデックスデータであり登録インデックスに対応するスナップショットとして設定される検索インデックスとを保持する複数のインデックスサーバを有する検索システムにおける検索インデックスの配置構成を決定する情報配置構成決定方法であり、
前記複数のインデックスサーバのインデックス情報の記憶領域としてのインデックス格納領域サイズと、登録インデックスサイズとに基づいて、各インデックスサーバに配置可能な検索インデックスの配置パターンを選択する配置可能パターン選択ステップと、
前記配置可能パターン各々に対する評価処理に基づいて最適な配置パターンを決定する最適配置パターン決定ステップと、
を有することを特徴とする情報配置構成決定方法にある。
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータシステムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、CDやFD、MOなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータシステム上でプログラムに応じた処理が実現される。
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
本発明の構成によれば、分散配置される複数のインデックスサーバにデータ更新処理に対応した登録インデックス格納部と、検索処理に対応した検索インデックス格納部とを設定した検索システム構成において、各インデックスサーバのインデックス情報の記憶領域としてのインデックス格納領域サイズと、登録インデックスサイズとに基づいて、各インデックスサーバに配置可能な検索インデックスの配置パターンを選択し、さらに、配置可能パターン各々に対する様々な評価処理に基づいて最適な配置パターンを決定する構成としたので、インデックスサーバの全体の記憶領域および各々の記憶領域を考慮した最適配置パターンの決定が可能となり、記憶領域の有効利用を実現したインデックス配置が実現される。
さらに、本発明の構成によれば、登録インデックスのスナップシッョトとして設定される検索インデックスを固定的に保持するのではなく、各インデックスサーバのデータ記憶容量や、アクセス数、あるいはデータ移動量を考慮して、設定するサーバを決定して配置する構成としたので、複数のインデックスサーバの全体の記憶領域を有効活用することが可能となるのみならず、各インデックスサーバのアクセス数に基づく処理負荷の分散が可能となり、さらに、検索インデックスの再配置によるデータ移動量についても、最小限としたインデックス配置処理が可能となる。
以下、図面を参照しながら本発明の検索システム、および情報配置構成決定方法、並びにコンピュータ・プログラムの詳細について説明する。
図2は本発明の検索システムを構成したネットワーク構成を示す図である。図2に示すネットワーク100は、インターネット、イントラネットなどのネットワークであり、ネットワーク100には、複数のインデックスサーバ110〜120、文書管理サーバ160、クライアント171−1〜n、インデックスサーバ管理部150が接続されている。これらの各要素は、ネットワーク100を介したデータ通信が可能な構成を持つ。
クライアント171−1〜nは、検索要求を行うユーザの端末であり、文書管理サーバ160は、検索対象としての文書の本体を格納したサーバである。インデックスサーバ110〜120は、文書管理サーバ160に格納された文書本体データに基づくインデックス情報、すなわちキーワード、文献名、更新日情報などを含むインデックス情報を格納しており、クライアント171−1〜nからの検索要求に応じてインデックス情報に基づく検索処理を実行して、検索結果をクライアント171−1〜nに提供する。
図には、2つのインデックスサーバA110,インデックスサーバN120のみを示してあるが、インデックスサーバは、2つに限らず、複数のインデックスサーバがネットワーク100に接続され、それぞれのインデックスサーバに、文書管理サーバ160に格納された文書本体データに基づくインデックス情報が分散して格納されている。
先に説明したように、インデックス情報の更新処理の実行中、検索要求に応じることができなくなるという事態を避けるため、インデックスサーバは2つのインデックス格納部を持つ。1つは、文書管理サーバの更新に応じて随時、更新処理を行なうための登録インデックス格納部であり、もう1つは、検索処理のために適用される検索インデックス格納部である。検索インデックス格納部は、登録インデックス格納部のある時点のコピーデータを格納したスナップショット格納部として構成される。
すなわち、登録インデックス格納部は、文書管理サーバの更新毎などに随時、更新処理がなされるが、検索インデックス格納部は、検索処理を阻害しないタイミングで登録インデックス格納部に格納された更新情報に基づいてまとめてデータ更新がなされる。このように更新処理用の登録インデックス格納部と、検索用の検索インデックス格納部を設けることで、データ更新および検索を滞りなく実行することができる。
先に、図1を参照して説明した従来構成では、各インデックスサーバは、自己の登録インデックス格納部のコピーデータとしてのスナップショットを検索インデックス格納部に保持する構成であったが、図2に示す本発明のシステムでは、各インデックスサーバは、自己の登録インデックス格納部のコピーデータを検索インデックス格納部に保持するとは限らず、他のインデックスサーバの登録インデックス格納部のコピーデータを検索インデックス格納部に保持する場合がある。
すなわち、例えば3つのインデックスサーバA〜Cが存在する場合、
インデックスサーバA〜Cにおいて保持すべき登録インデックス、検索インデックスは、登録インデックスA〜C、検索インデックスA〜Cの各インデックス情報となる。従来構成では、各インデックスサーバA〜Cは、
インデックスサーバA:登録インデックスA、検索インデックスA
インデックスサーバB:登録インデックスB、検索インデックスB
インデックスサーバC:登録インデックスC、検索インデックスC
の組み合わせで、各インデックス情報を格納していた。
本発明のシステムでは、各インデックスサーバA〜Cは、例えば、
インデックスサーバA:登録インデックスA、検索インデックスC
インデックスサーバB:登録インデックスB、検索インデックスA
インデックスサーバC:登録インデックスC、検索インデックスB
のように、各インデックス情報を保持する場合がある。
すなわち、各インデックスサーバは、データ更新処理用の登録インデックス格納部のコピーデータとして、検索インデックス格納部の格納データを設定するのではなく、自己の登録インデックス格納部のコピーデータとしての検索インデックスを他のインデックスサーバに提供し、他のインデックスサーバの登録インデックスのコピーデータとしての検索インデックスを他のインデックスサーバから受領して、自己の検索インデックス格納部に格納する場合がある。
これらのインデックス配置構成の決定処理は、図2に示すインデックスサーバ管理部150が実行する。インデックスサーバ管理部150は、各インデックスサーバの持つインデックス格納領域の容量、登録インデックスの情報量、さらに、各種の評価処理に基づいて各インデックスサーバにおける格納データの配置を決定する。
図2に示す例では、インデックスサーバA110は、インデックス格納領域111を有し、ここに、登録インデックス格納部A112と、図示しないインデックスサーバCの登録インデックスのコピーデータ(スナップショット)を格納した検索インデックス格納部A(c)113を有する。なお、以下の説明において、インデックスX(y)またはインデックス格納部X(y)は、XがインデックスX(y)を保有するインデックスサーバの記号に対応し、yが、インデックスX(y)に格納されたインデックス情報に対応する登録インデックス情報を保持するインデックスサーバの識別子に対応する。
すなわち、インデックスサーバA110のインデックス格納領域111に設定された検索インデックス格納部A(c)113は、図示しないインデックスサーバCの登録インデックスのコピーデータ(スナップショット)を検索インデックス情報として格納している。同様に、インデックスサーバN120は、インデックス格納領域121を有し、ここに、登録インデックス格納部N122と、図示しないインデックスサーバBの登録インデックスのコピーデータ(スナップショット)を格納した検索インデックス格納部N(b)123を有する。すなわち、インデックスサーバN120のインデックス格納領域121に設定された検索インデックス格納部N(b)123は、図示しないインデックスサーバBの登録インデックスのコピーデータ(スナップショット)を検索インデックス情報として格納している。
図3に、登録インデックス格納部および検索インデックス格納部に格納されるインデックス情報の例を示す。インデックス情報は、例えば図3に示すように、
(A)キーワードに基づいて、文書ID、日付データ、出現頻度の情報を取得可能としたインデックス1
(B)文書IDに基づいて、文書名、フォルダ名、更新日付、要約などの書誌情報を取得可能としたインデックス2
これら2つのインデックス情報によって構成される。
これらのインデックスは、文書の実体データを格納した文書管理サーバ160から収集する。インデックス収集処理は、定期的に、あるいは文書管理サーバ160に対する新規文書の格納時などに実行され、各インデックスサーバの登録インデックス格納部に格納される。登録インデックス格納部に格納された更新データは、検索処理を阻害しないタイミングで、検索インデックス格納部に格納される。ただし、本発明のシステム構成では、上述したように、各インデックスサーバの保持する検索インデックス格納部は、自己の保持する登録インデックス格納部のスナップショットではなく、他のインデックスサーバの保持する登録インデックス格納部のスナップショットとして設定されるので、検索インデックス格納部に対するデータ更新処理は、従来とは異なり、各インデックスサーバの総合的な処理として実行される。この処理の詳細については、後述する。
インデックス情報を利用した文書インデックスの検索処理は、各インデックスサーバにおいて、検索インデックス格納部に格納されたインデックス情報に基づいて実行される。例えば、クライアント171−1〜nを介して入力した検索式に含まれるキーワードに基づいて、まず、図3に示すインデックス1を参照して、各キーワードからヒットする文書IDを探す処理を実行し、さらに、日付データ、出現頻度などからスコアを算出する。さらに、ヒットした文書IDから表示用の書誌情報をインデックス2から取得し、取得した情報をクライアントに提供する。
インデックスサーバの検索部の算出するヒットコンテンツのスコアは、例えば、ヒットコンテンツの表示順を設定するために使用される。例えば、ヒットコンテンツにおける出現頻度と、キーワードを含むコンテンツの、全コンテンツ数に対する存在割合の逆数に基づく値として算出するインバース・ドキュメント頻度とをパラメータとして含む算出式を適用したコンテンツスコア算出処理や、インバース・ドキュメント頻度と、コンテンツ更新日付の新しいものを大きな値として算出する日付に基づく関数算出値をパラメータとして含む算出式を適用したコンテンツスコア算出処理などが適用される。
インデックスサーバ管理部150は、各インデックスサーバの持つインデックス格納領域の容量、登録インデックスの情報量などに応じて、検索インデックス格納部に格納すべきインデックス情報を設定して、各インデックスサーバにおける格納データの配置を決定する。以下、このデータ配置処理の詳細について説明する。
まず、以下の説明において使用する記号を以下のように定義する。
インデックスサーバX:IS
インデックスサーバXのインデックス格納領域サイズ(格納可能なデータ容量):IDS
登録インデックスi(i=1,2,・・・):RIDX−i
登録インデックスiのサイズ(データ容量):RIDSX−i
検索インデックスi(i=1,2,・・・):SIDX−i
検索インデックスiのサイズ(データ容量):SIDSX−i
所定期間の検索インデックスiに対するインデックスアクセス数:IDAX−i
なお、インデックスアクセス数は、所定期間のアクセス数であり、具体的には、検索インデックスの配置の変更処理を行なった更新時からのアクセス数のカウント値である。
また、インデックスサーバXの検索インデックスiのインデックス情報がインデックスサーバYの登録インデックスj(j=1,2,・・・)RIDY−jのスナップショットである場合、インデックスサーバXの検索インデックスiは、
検索インデックスi(i=1,2,・・・):SIDX−i(Y−j)
として示す。
例えば、インデックスサーバAが存在し、インデックスサーバAのインデックス格納領域サイズは100Gbyteであり、インデックスサーバAには、登録インデックスが2つ(登録インデックスA−1、登録インデックスA−2)が存在し、登録インデックスA−1のサイズ(データ容量)が20Gbyte、登録インデックスA−2のサイズ(データ容量)が30Gbyteであり、さらに、サイズ(データ容量)が10Gbyteの検索インデックスが1つ存在し、所定期間のインデックスに対するアクセス数は50回である場合、インデックスサーバAに対応する情報は、以下のように示される。
インデックスサーバA:IS
インデックスサーバAのインデックス格納領域サイズ(格納可能なデータ容量):IDS=100Gbyte
登録インデックスi(i=1,2):RIDA−1,RIDA−2
登録インデックスiのサイズ(データ容量):RIDSA−1=20Gbyte,RIDSA−2=30Gbyte,
検索インデックスi(i=1):SIDA−1
検索インデックスiのサイズ(データ容量):SIDSA−1=10Gbyte
所定期間の検索インデックスSIDSA−1に対するインデックスアクセス数:IDAA−1=50
また、インデックスサーバAの検索インデックスSIDA−1がインデックスサーバBの登録インデックスRIDB−1のスナップショットである場合、インデックスサーバAの検索インデックスは、
SIDA−1(B−1)
として示される。
インデックスサーバ管理部150の構成および処理について、図4以下を参照して説明する。図4は、インデックスサーバ管理部150の機能構成を示すブロック図である。
インデックスサーバ管理部150は、インデックスサーバ情報取得部201、インデックスサーバ情報整理部202、検索インデックス配置決定部203、検索インデックス配置指示部204を有する。これらの各処理部の実行する処理について、以下、順次説明する。
図5は、右側のフローがインデックスサーバ管理部150の実行する検索インデックスの配置更新処理であり、左側のフローがインデックスサーバ管理部150の指示に従ってインデックスサーバ情報の提供処理、および検索インデックス情報の転送処理を実行するインデックスサーバの処理を示すフローである。
まず、ステップS101において、インデックスサーバ管理部150のインデックスサーバ情報取得部201は、管理対象の各インデックスサーバに対して、インデックスサーバ情報を要求して取得する。各インデックスサーバは、ステップS121において、インデックスサーバ情報をインデックスサーバ管理部150に提供する。
インデックスサーバがインデックスサーバ管理部150に対して提供するインデックスサーバ情報には、図4に示すインデックス格納領域情報211、登録インデックス情報212、アクセス数情報213があり、インデックスサーバ管理部150のインデックスサーバ情報取得部201は、これらの各情報を各インデックスサーバから受領する。
各情報の構成データについて説明する。なお、以下の説明では、インデックス情報の管理処理対象のインデックスサーバをA,B,C、すなわちIS,IS,ISの3つとして、各インデックスサーバは、図6に示す登録インデックス、検索インデックスを持つ構成であることを想定して説明する。なお、この例は、一例であり、本発明は、本例に限らず、様々な設定の場合に対応可能である。
図6に示すように、インデックスサーバA310は、50Gbyteのインデックス格納領域311を有し、30Gbyteの登録インデックスA−1,312と、検索インデックスA−1(C−1)313を有する。ここで、検索インデックスA−1(C−1)313の識別子[A−1(C−1)]は、[位置識別子(データ識別子)]の構成であり、先に記述されたA−1が位置識別子であり、検索インデックスの配置位置およびシーケンス番号を示している。すなわち、インデックスサーバAに配置された第1の検索インデックスであることを示している。登録インデックスA−1,312のA−1も同様の位置識別子としての意味をもつ。
また、検索インデックスA−1(C−1)313の後に記述された(C−1)は、データ識別子であり、検索インデックスA−1(C−1)313のデータが、どの登録インデックスのスナップショットであるかを識別するデータである。すなわち、この例では、検索インデックスA−1(C−1)313のデータ識別子は(C−1)であり、検索インデックスA−1(C−1)313のデータは、インデックスサーバC330の登録インデックスC−1,332のスナップショット(コピーデータ)であることを意味している。
なお、検索インデックスのデータ容量は記述されていないが、基本的に、検索インデックスのデータ量は、対応する登録インデックスのデータ容量に相当する。すなわち、この例では、検索インデックスA−1(C−1)313のデータは、30Gbyteの登録インデックスC−1,332のスナップショット(コピーデータ)であるので、ほぼ30Gbyteとなる。
インデックスサーバA310は、さらに、アクセス数登録テーブル318を有する。アクセス数登録テーブルは、検索インデックスA−1(C−1)313に対するアクセス数、すなわち検索処理に際してアクセスされた回数のカウント値を格納している。このカウント値は、インデックスサーバ管理部による検索インデックスの配置処理が実行された時点でリセットされる。すなわち、前回の配置処理からのアクセス数が、アクセス数登録テーブルに格納される。なお、アクセス数登録テーブルに登録されるインデックス名は、そのアクセス数登録テーブルを持つインデックスサーバの保有する検索インデックスの位置識別子が設定される。この場合は、検索インデックスA−1(C−1)313の位置識別子[A−1]が設定され、検索インデックスA−1(C−1)313に対する前回の配置処理以後のアクセス数が50回であることを示している。
インデックスサーバB320は、80Gbyteのインデックス格納領域321を有し、20Gbyteの登録インデックスB−1,322と、20Gbyteの登録インデックスB−2,323と、検索インデックスB−1(B−1)324、検索インデックスB−2(B−2)325を有する。検索インデックスB−1(B−1)324は登録インデックスB−1,322のスナップショットであり、検索インデックスB−2(B−2)325は登録インデックスB−2,323のスナップショットである。
インデックスサーバB320は、さらに、アクセス数登録テーブル328を有する。本例では、アクセス数登録テーブル328のデータは、検索インデックスB−1(B−1)324に対するアクセス数、すなわち前回の配置処理以後のアクセス数が30回であり、検索インデックスB−2(B−2)325に対するアクセス数が50回であることを示している。
インデックスサーバC330は、100Gbyteのインデックス格納領域331を有し、30Gbyteの登録インデックスC−1,332と、検索インデックスC−1(A−1)333を有する。検索インデックスC−1(A−1)333はインデックスサーバA310の登録インデックスA−1,312のスナップショットである。
インデックスサーバC330は、さらに、アクセス数登録テーブル338を有する。本例では、アクセス数登録テーブル338のデータは、検索インデックスC−1(C−1)333に対するアクセス数、すなわち前回の配置処理以後のアクセス数が20回であることを示している。
インデックスサーバがインデックスサーバ管理部150に対して提供するインデックスサーバ情報について、図7を参照して説明する。インデックスサーバがインデックスサーバ管理部150に対して提供するインデックスサーバ情報には、先に図4を参照して説明したインデックス格納領域情報211、登録インデックス情報212、アクセス数情報213があり、インデックスサーバ管理部150のインデックスサーバ情報取得部201は、これらの各情報を各インデックスサーバから受領する。
各情報の構成データについて図7を参照して説明する。図7(a)は、インデックス格納領域情報211、図7(b)は、登録インデックス情報212、図7(c)は、アクセス数情報213を示している。
本例では、管理対象のインデックスサーバはA,B,C、すなわちIS,IS,ISの3つのインデックスサーバであり、これらの各サーバから取得したインデックスサーバ情報に基づいて図7に示す各情報が構成される。
図7(a)はインデックス格納領域情報であり、管理対象のインデックスサーバIS,IS,ISのインデックス格納領域サイズ(Gbyte)情報を持つ。図7(a)のインデックス格納領域情報は、図6に示す構成例に対応するものであり、
インデックスサーバISのインデックス格納領域サイズIDS=50Gbyte
インデックスサーバISのインデックス格納領域サイズIDS=80Gbyte
インデックスサーバISのインデックス格納領域サイズIDS=100Gbyte
である。
図7(b)は登録インデックス情報であり、管理対象のインデックスサーバIS,IS,ISの登録インデックスの識別子としての名称と、サイズに関する情報を持つ。図7(b)のインデックス格納領域情報は、図6に示す構成例に対応するものであり、
インデックスサーバISについては、
登録インデックスRIDA−1がサイズRIDSA−1=30Gbyte
インデックスサーバISについては、
登録インデックスRIDB−1がサイズRIDSB−1=20Gbyte
登録インデックスRIDB−2がサイズRIDSB−2=20Gbyte
インデックスサーバISについては、
登録インデックスRIDC−1がサイズRIDSC−1=30Gbyte
であるとの情報を持つ。
図7(c)はアクセス数情報であり、管理対象のインデックスサーバIS,IS,ISの検索インデックスの識別子と、アクセス数の対応情報を持つ。図7(c)のアクセス数情報は、図6に示す構成例に対応するものであり、
インデックスサーバISについては、
検索インデックスSIDA−1(C−1)がアクセス数=50回
インデックスサーバISについては、
検索インデックスRIDB−1(B−1)がアクセス数=30回
検索インデックスRIDB−2(B−2)がアクセス数=50回
インデックスサーバISについては、
検索インデックスRIDC−1(A−1)がアクセス数=20回
であることを示している。
インデックスサーバ管理部150のインデックスサーバ情報取得部201は、これらの各情報を各インデックスサーバから受領し、受領した情報をインデックスサーバ情報整理部202(図4参照)に提供する。インデックスサーバ情報整理部202は、これらの受領情報に基づいて、インデックス情報管理テーブル214を生成する。この処理が、図5に示すフローのステップS102の処理である。
インデックスサーバ情報整理部202の生成するインデックス情報管理テーブル214の具体例について、図8を参照して説明する。インデックスサーバ情報整理部202は、インデックスサーバ情報取得部201が各インデックスサーバから取得したインデックス格納領域情報、登録インデックス情報、アクセス数を適用して、新たにインデックスサーバ情報管理テーブル214を生成する。
図8(e)に示すテーブルが、インデックスサーバ情報整理部202が生成するインデックスサーバ情報管理テーブル214である。
インデックスサーバ情報整理部202は、インデックスサーバ情報取得部201が各インデックスサーバから取得したインデックス格納領域情報、登録インデックス情報に基づいて、図8(e)に示すインデックスサーバ情報管理テーブルのインデックスサーバ名、インデックス格納領域サイズ、登録インデックス名、登録インデックスサイズを設定し、さらに、アクセス数については、先に説明したアクセス数情報とに基づいて、各登録インデックスに対応するアクセス数を求め、図8(e)に示すインデックスサーバ情報管理テーブルに登録する。
例えば、図8(e)に示すインデックスサーバ情報管理テーブルの最上段のエントリは、インデックスサーバISの登録インデックスRIDA−1に関する登録情報である。インデックスサーバISの登録インデックスRIDA−1に対応するコピーデータとしてのスナップショットデータは、インデックスサーバISの検索インデックスSIDC−1(A−1)に対応し、この検索インデックスSIDC−1(A−1)のアクセス数を、(c)アクセス数情報から求めて、図8(e)に示すインデックスサーバ情報管理テーブルのアクセス数として設定される。
すなわち、検索インデックスSIDX(Y)のアクセス数を取得し、データ識別子[Y]に対応する登録インデックスYのアクセス数を、図8(e)に示すインデックスサーバ情報管理テーブルの登録インデックスYのアクセス数として設定する。これは、実際のデータの対応を考慮したものである。
この図8(e)に示すインデックスサーバ情報管理テーブルの生成処理が、図5のフローに示すステップS102の処理として、図4に示すインデックス情報整理部202において実行される。
次に、図4に示す検索インデックス配置決定部203において、図5のフローに示すステップS103の処理、すなわち、検索インデックス配置決定が実行される。図4に示す検索インデックス配置決定部203は、インデックス情報整理部202の生成したインデックスサーバ情報管理テーブル(図8(e)参照)に基づいて、新たな検索インデックス配置構成を決定し決定した配置情報を持つ更新後検索インデックス配置登録テーブル215を生成する。
図5のフローに示すステップS104の処理、すなわち、図4に示す検索インデックス配置決定部203における検索インデックス配置決定処理の詳細シーケンスについて、図9に示すフローチャートを参照して説明する。検索インデックス配置決定部203における検索インデックス配置決定処理では、最適な検索インデックスの配置構成を求めるために、評価関数を適用した処理を実行する。
図9に示すフローチャートの各ステップの処理について説明する。ステッブS201において、検索インデックス配置決定部203は、処理対象となるインデックスサーバ数=nと、登録インデックスの総数=mを入力する。図6に示す構成例では、
インデックスサーバ数=n=3
登録インデックスの総数=m=4
となる。
次に、ステップS202において、インデックスサーバ数=nと、登録インデックスの総数=mとに基づいて、検索インデックスの全配置パターンをリストアップする。このリスト例を図10に示す。図10に示す例は、図6に示す構成例、すなわち、
インデックスサーバ数=n=3
登録インデックスの総数=m=4
とした場合の配置パターンを示している。
図10に示すリストは、本例における4つの登録インデックスRIDA−1、RIDB−1、RIDB−2、RIDC−1のコピーデータとしてのスナップショットからなる検索インデックスを3つのサーバIS,IS,ISのいずれに配置するかを設定したリストである。配置パターンの総数は、n通りとなり、本例では3=81通りとなる。例えば配置パターンNo.=1は、登録インデックスRIDA−1、RIDB−1、RIDB−2、RIDC−1のコピーデータとしてのスナップショットからなる4つの検索インデックスをサーバISに配置するパターンを示している。
次に、ステップS203において、これらの全配置パターンから、実現可能な配置パターンを選択する。各インデックスサーバのインデックスデータ格納領域のデータ容量は、インデックス格納領域サイズであり、このインデックス格納領域サイズを超えるデータの格納はできない。ステップS203では、各インデックスサーバのインデックス格納領域サイズ情報と、移動しない登録インデックスのサイズ情報とを用いて、ステップS202においてリスト化された各パターンの実現性の可否を判定する。なお、登録インデックスRIDA−1、RIDB−1、RIDB−2、RIDC−1のコピーデータとしてのスナップショットからなる4つの検索インデックスは、それぞれ対応する登録インデックスのサイズと同一であると仮定して判定する。
この判定処理について、図11のテーブルを参照して説明する。図11のテーブルは、図10のリストの各パターン(No.1〜81)を実行した場合、各インデックスサーバには位置される検索インデックスの総容量を算出したテーブルである。
登録インデックスRIDA−1(30Gbyte)、RIDB−1(20Gbyte)、RIDB−2(20Gbyte)、RIDC−1(30Gbyte)のコピーデータとしてのスナップショットからなる4つの検索インデックスもそれぞれ同一サイズを持つものと想定している。
例えばNo.1のパターンでは、全ての登録インデックスRIDA−1(30Gbyte)、RIDB−1(20Gbyte)、RIDB−2(20Gbyte)、RIDC−1(30Gbyte)のコピーデータとしてのスナップショットからなる4つの検索インデックスをインデックスサーバISに配置する想定であり、この想定では、インデックスサーバISに配置する検索インデックスのデータの総容量は30+20+20+30=100Gbyteとなる。
インデックスサーバISのインデックス格納領域は50Gbyteであり、また、インデックスサーバISのインデックス格納領域に固定的に配置される登録インデックスRIDA−1のサイズRIDSA−1=30Gbyteである。従って、インデックスサーバISのインデックス格納領域(50Gbyte)に配置可能な検索インデックスのサイズは、50−30=20Gbyte以下であり、配置パターンNo.1は実現可能な配置パターンではないとの結論が得られる。
同様に、インデックスサーバISのインデックス格納領域は80Gbyteであり、また、インデックスサーバISのインデックス格納領域に固定的に配置される登録インデックスRIDB−1のサイズRIDSB−1=20Gbyte、登録インデックスRIDB−2のサイズRIDSB−2=20Gbyteである。従って、インデックスサーバISのインデックス格納領域(80Gbyte)に配置可能な検索インデックスのサイズは、80−20−20=40Gbyte以下となる。
同様に、インデックスサーバISのインデックス格納領域は100Gbyteであり、また、インデックスサーバISのインデックス格納領域に固定的に配置される登録インデックスRIDC−1のサイズRIDSB−1=30Gbyteである。従って、インデックスサーバISのインデックス格納領域(100Gbyte)に配置可能な検索インデックスのサイズは、100−30=70Gbyte以下となる。
これらの条件に基づいて全配置パターン(No.1〜81)について実現可否を判定する。例えば配置パターン74は、登録インデックスRIDA−1(30Gbyte)、RIDB−1(20Gbyte)のコピーデータとしてのスナップショットからなる2つの検索インデックスをインデックスサーバISに配置し、登録インデックスRIDB−2(20Gbyte)のコピーデータとしてのスナップショットからなる検索インデックスをインデックスサーバISに配置し、登録インデックスRIDC−1(30Gbyte)のコピーデータとしてのスナップショットからなる検索インデックスをインデックスサーバISに配置する設定である。
この配置パターン74は、
登録インデックスRIDA−1(30Gbyt)を持つインデックスサーバIS(インデックス格納領域(50Gbyte)に配置予定の検索インデックスの容量は、20GByteであり、30+20≦50となり、インデックスサーバISにおいて許容可能なデータ配置であり、
登録インデックスRIDB−1(20Gbyt)と、登録インデックスRIDB−2(20Gbyt)を持つインデックスサーバIS(インデックス格納領域(80Gbyte)に配置予定の検索インデックスの容量は、30GByteであり、20+20+30≦80となり、インデックスサーバISにおいても許容可能なデータ配置であり、
登録インデックスRIDC−1(30Gbyt)を持つインデックスサーバIS(インデックス格納領域(100Gbyte)に配置予定の検索インデックスの容量は、50GByteであり、30+50≦100となり、インデックスサーバISにおいても許容可能なデータ配置となり、
結果として、配置パターン74は実現可能な配置パターンと判定される。
次にこれらの実現可能な配置パターンのみについて、ステップS204において、インデックスに対するアクセス数に基づく評価関数Pを算出する。
インデックスに対するアクセス数に基づく評価関数Pは、各実現可能パターンにおける各サーバの保持する検索インデックスに対する総アクセス数[S]、すなわち、
[S]=ΣIDAX−i
の最大値[MAX(S)]と最小値[MIN(S)]の差分値、すなわち、
=MAX(S)−MIN(S
として算出する。
この算出評価関数Pが最も小さい値となる配置パターンを最適配置パターンとして選択する。
図12を参照して、アクセス数に基づく評価関数Pの算出処理、評価関数Pに基づく最適配置パターンの選択処理例について説明する。図12のリストは、各インデックスサーバのインデックス格納領域サイズ、登録インデックスサイズに基づいて配置可能なパターンのみを抽出したリストである。
これらの実現可能な選択パターンの各々について、アクセス数に基づく評価関数Pの算出を実行する。例えば、配置パターンNo.36は、登録インデックスRIDA−1のコピーデータとしてのスナップショットとして構成される検索インデックスをインデックスサーバISに配置し、登録インデックスRIDB−1のスナップショットとしての検索インデックスをインデックスサーバISに配置し、登録インデックスRIDB−2のスナップショットとしての検索インデックスをインデックスサーバISに配置し、登録インデックスRIDC−1のスナップショットとしての検索インデックスをインデックスサーバISに配置する設定である。
この設定において、各インデックスサーバIS,IS,IS各々の設定予定の検索インデックスのアクセス数の総計を算出する。すなわち、
[S]=ΣIDAX−i
を算出する。
例えば、配置パターンNo.36では、インデックスサーバISには、登録インデックスRIDB−1のスナップショットとしての検索インデックスが配置される。登録インデックスRIDB−1のアクセス数は、先にインデックスサーバ情報整理部202が設定したインデックスサーバ情報管理テーブル(図8参照)から求めることができる。図8(e)に示すインデックスサーバ情報管理テーブルには、登録インデックスRIDB−1のアクセス数=50回が登録されている。図12の配置パターンNo.36は、インデックスサーバISには、登録インデックスRIDB−1のスナップショットとしての検索インデックスのみが配置されるので、インデックスサーバISの総アクセス数[S]は、S=30となる。
また、配置パターンNo.36では、インデックスサーバISには、登録インデックスRIDA−1のスナップショットとしての検索インデックスが配置される。登録インデックスRIDA−1のアクセス数は、図8(e)に示すインデックスサーバ情報管理テーブルに、アクセス数=20回が登録されている。図12の配置パターンNo.36は、インデックスサーバISには、登録インデックスRIDA−1のスナップショットとしての検索インデックスのみが配置されるので、インデックスサーバISの総アクセス数[S]は、S=20となる。
また、配置パターンNo.36では、インデックスサーバISには、登録インデックスRIDB−2と、登録インデックスRIDC−1のスナップショットとしての2つの検索インデックスが配置される。登録インデックスRIDB−2と、登録インデックスRIDC−1個々のアクセス数は、図8(e)に示すインデックスサーバ情報管理テーブルから、それぞれ、登録インデックスRIDB−2のアクセス数=50回、登録インデックスRIDC−1のアクセス数=50回が求められる。従って、インデックスサーバISの総アクセス数[S]は、S=50+50=100となる。
結果として、配置パターンNo.36では、
インデックスサーバISの総アクセス数:S=30、
インデックスサーバISの総アクセス数:S=20、
インデックスサーバISの総アクセス数:S=100、
となる。
さらに、これらの各インデックスサーバの総アクセス数の最大値[MAX(S)]と最小値[MIN(S)]の差分値として評価関数Pを算出する。すなわち、
=MAX(S)−MIN(S
として評価関数Pを算出する。
配置パターンNo.36では、
インデックスサーバの総アクセス数の最大値[MAX(S)]=S=100、
インデックスサーバの総アクセス数の最小値[MIN(S)]=S=20、
であるので、
=MAX(S)−MIN(S
=100−20=80となる。
このような算出処理に従って、すべての実現も可能な配置パターンに対応する評価関数Pを算出する。この結果が、図12に示すデータエントリ[P]に示すデータとなる。これらの各パターンに対応する評価関数Pから最小値を持つパターンを最適配置パターンとして選択する。図12の例では、配置パターン74が、最小の評価関数P=0を有する唯一のパターンとして選択される。
配置パターンNo.74は、登録インデックスRIDA−1のコピーデータとしてのスナップショットとして構成される検索インデックスをインデックスサーバISに配置し、登録インデックスRIDB−1のスナップショットとしての検索インデックスをインデックスサーバISに配置し、登録インデックスRIDB−2のスナップショットとしての検索インデックスをインデックスサーバISに配置し、登録インデックスRIDC−1のスナップショットとしての検索インデックスをインデックスサーバISに配置する設定である。
この配置パターンが最適配置パターンとして選択されることになる。図9に示すフローチャートのステップS204において、上述した手順で、アクセス数に基づく評価関数Pの算出が行なわれ、ステップS205において、最小の評価関数Pを持つ唯一の配置パターンの選択が実現されたか否かを判定する。図12に示した上述の例のように最小の評価関数Pを持つ唯一の配置パターンの選択に成功した場合は、ステップS209に進み、この配置パターンを更新配置パターンとして選択して、配置パターン決定処理(図5のステップS103の処理)を終了する。
しかし、上述のアクセス数に基づく評価関数Pのみでは、唯一の最適配置パターンが決定できない場合がある。すなわち、図12に示した上述の例のように最小の評価関数Pを持つ唯一の配置パターンの選択に成功せず、最小の評価関数Pを持つ配置パターンが複数ある場合がある。このような場合には、もう1つの評価関数Pを算出し、評価関数Pに基づいて最適な配置パターンを選択する処理を実行する。
この処理が、図9のフローに示すステップS206の処理である。ステップS206では、ステップS203において求められた実現可能な配置パターンの各々について評価関数Pを算出する。評価関数Pは、各実現可能なインデックス配置を行なう場合に必要となるインデックス情報の移動量に相当する評価関数Pである。現在のインデックス配置から、更新後の配置とした場合に必要となる各インデックスサーバ間で必要となるインデックス情報の情報量を評価関数Pとして算出し、移動量としての評価関数Pが最小値を持つ配置パターンを最適配置パターンとして選択するものである。評価関数Pは、
登録インデックス:RIDR−i
配置先インデックスササーバ:IS
としたとき、
=Σ((R!=S)?RIDSR−i:0)
として示される。
すなわち、移動量としての評価関数Pの算出は、それぞれの登録インデックス(RIDR−i)について、登録インデックス(RIDR−i)が属するインデックスサーバと異なるインデックスサーバに対して対応する検索インデックスをスナップショットとして設定する場合に、登録インデックス(RIDR−i)のサイズ(RIDSR−i)を、順次加算して算出する。なお、同一サーバ内のデータ移動は0を加算(データ移動なし)する。
この処理について、図13を参照して説明する。図13のリストは、図12に示すリストと同様、各インデックスサーバのインデックス格納領域サイズ、登録インデックスサイズに基づいて配置可能なパターンのみを抽出したリストである。
これらの実現可能な選択パターンの各々について、各配置パターンとした場合に必要となる各インデックスサーバ間で必要となるインデックス情報の移動情報量を評価関数Pとして算出する。
例えば、配置パターンNo.36は、登録インデックスRIDA−1のコピーデータとしてのスナップショットとして構成される検索インデックスをインデックスサーバISに配置し、登録インデックスRIDB−1のスナップショットとしての検索インデックスをインデックスサーバISに配置し、登録インデックスRIDB−2のスナップショットとしての検索インデックスをインデックスサーバISに配置し、登録インデックスRIDC−1のスナップショットとしての検索インデックスをインデックスサーバISに配置する設定である。
この設定におけるインデックスデータの移動量について、図14を参照して説明する。図14には、先に図6を参照して説明した更新前の各インデックスサーバの登録インデックスおよび検索インデックスの格納状況を示し、さらに、図13の配置パターンNo.=36とした場合に必要となるデータ移動を矢印で示してある。
配置パターンNo.36において、
(1)登録インデックスRIDA−1のコピーデータとしてのスナップショットとして構成される検索インデックスをインデックスサーバISに配置するために、30Gbyteの登録インデックスRIDA−1のデータ移動が必要となる。
(2)登録インデックスRIDB−1のスナップショットとしての検索インデックスをインデックスサーバISに配置するために、20Gbyteの登録インデックスRIDB−1のデータ移動が必要となる。
(3)登録インデックスRIDB−2のスナップショットとしての検索インデックスをインデックスサーバISに配置するために、20Gbyteの登録インデックスRIDB−2のデータ移動が必要となる。
(4)登録インデックスRIDC−1のスナップショットとしての検索インデックスをインデックスサーバISに配置するためのデータ移動は同一サーバ内であるので、移動データ量=0Gbyteとなる。
この結果、配置パターンNo.36に対応するインデックス配置とした場合に必要となる各インデックスサーバ間で必要となるインデックス情報の情報量、すなわち評価関数Pは、
=30+20+20+0=70
となる。
この評価関数Pの算出を、図13に示す実現可能な配置パターンのすべてにおいて実行すると、図13に示す配置パターン69が最もデータ移動の少ないパターン、すなわち、最小の評価関数Pを持つ配置パターンとして選択される。
配置パターンNo.69は、登録インデックスRIDA−1のコピーデータとしてのスナップショットとして構成される検索インデックスをインデックスサーバISに配置し、登録インデックスRIDB−1のスナップショットとしての検索インデックスをインデックスサーバISに配置し、登録インデックスRIDB−2のスナップショットとしての検索インデックスをインデックスサーバISに配置し、登録インデックスRIDC−1のスナップショットとしての検索インデックスをインデックスサーバISに配置する設定である。
この設定におけるインデックスデータの移動量について、図15を参照して説明する。図14には、先に図6を参照して説明した更新前の各インデックスサーバの登録インデックスおよび検索インデックスの格納状況を示し、さらに、図13の配置パターンNo.=69とした場合に必要となるデータ移動を矢印で示してある。
配置パターンNo.69において、
(1)登録インデックスRIDA−1のコピーデータとしてのスナップショットとして構成される検索インデックスをインデックスサーバISに配置するためには、30Gbyteの登録インデックスRIDA−1のデータ移動が必要となる。
(2)登録インデックスRIDB−1のスナップショットとしての検索インデックスをインデックスサーバISに配置するためのデータ移動は同一サーバ内であるので、移動データ量=0Gbyteとなる。
(3)登録インデックスRIDB−2のスナップショットとしての検索インデックスをインデックスサーバISに配置するためのデータ移動は同一サーバ内であるので、移動データ量=0Gbyteとなる。
(4)登録インデックスRIDC−1のスナップショットとしての検索インデックスをインデックスサーバISに配置するためのデータ移動は同一サーバ内であるので、移動データ量=0Gbyteとなる。
この結果、配置パターンNo.69に対応するインデックス配置とした場合に必要となる各インデックスサーバ間で必要となるインデックス情報の情報量、すなわち評価関数Pは、
=30+0+0+0=30
となる。
図13に示すリスト、すなわち、各インデックスサーバのインデックス格納領域サイズ、登録インデックスサイズに基づいて配置可能なパターンのみを抽出したリストの中で、最小の評価関数Pとなるのは、この配置パターンNo.69となる。配置パターンNo.69の検索インデックス配置は、この配置パターンに移行する場合に必要となるインデックスサーバ間のインデックス情報の移動量が最も少ないパターンであり、最小の評価関数Pが得られる。
図9のステップS206において、各実現可能な配置パターンの各々について、インデックスの移動量に基づく評価関数Pを算出し、ステップS207において、評価関数Pに基づいて唯一の配置パターンの選択が可能か否か、すなわち、実現可能な配置パターンから最小の評価関数Pを有する1つの配置パターンが選択可能かいなかを判定する。
唯一の配置パターンが選択できた場合は、ステップS209において、その選択配置パターンを更新配置パターンとして決定し、配置パターン決定処理(図5のステップS103の処理)を終了する。
しかし、上述のインデックス移動量に基づく評価関数Pを適用しても、唯一の最適配置パターンが決定できない場合がある。すなわち、図13に示した上述の例のように最小の評価関数Pを持つ唯一の配置パターンの選択に成功せず、最小の評価関数Pを持つ配置パターンが複数ある場合がある。このような場合には、ステップS208に進み、算出済みのアクセス数に基づく評価関数Pと情報移動量に基づく評価関数Pを適用して1つの配置パターンを決定する。決定処理の態様は、例えば、アクセス数に基づく評価関数Pと情報移動量に基づく評価関数Pの双方の値がともに小さいパターンを優先選択する処理、あるいは、例えば、両者の評価関数に重みを設定するパラメータα、βを適用し、
=αP+βP
に基づいて、トータル評価関数Pを算出し、このトータル評価関数の最も小さい配置パターンを選択するなどの処理が可能である。
ステップS208において、上述の処理を実行し、ステップS209において、その選択配置パターンを更新配置パターンとして決定し、配置パターン決定処理(図5のステップS103の処理)を終了する。
なお、図9に示す配置パターン決定処理シーケンスは、アクセス数に基づく評価関数Pの算出、評価関数Pに基づく配置パターンの選択、情報移動量に基づく評価関数Pの算出、評価関数Pに基づく配置パターンの選択、これらの選択処理において唯一の配置パターンが求められなかった場合に、評価関数P、評価関数Pに基づく配置パターンの選択というシーケンスとした例であるが、配置パターンの決定シーケンスはこの順番に行なうことは必須ではない。
例えば、情報移動量に基づく評価関数Pの算出と、評価関数Pに基づく最適配置パターンの決定処理を先に実行してもよい。あるいは、前述したトータルの評価関数Pを最初から算出して、この評価関数Pに基づいて最適配置パターンを決定する処理を行なうようにしてもよい。
また、上述した評価関数以外の評価関数の適用も可能である。例えば、インデックスサーバのインデックス格納領域に複数のHDDが存在する場合など、HDDの数、すなわち並列アクセスの可能なHDD数などを考慮した評価関数を設定し、これらの評価関数を適用した配置パターン決定処理を行なう構成としてもよい。
図4に示すインデックスサーバ管理部150の検索インデックス配置決定部203は、上述した処理に従って更新後の検索インデックスの配置パターンを決定し、決定した結果に基づいて更新後検索インデックス配置登録テーブル215を生成し、記憶部に格納する。
検索インデックス配置決定部203の生成する更新後検索インデックス配置登録テーブル215のデータ構成例を図16に示す。図16のテーブルは、図12に示すリストの配置パターンNo.74に対応する設定例である。
すなわち、先に説明したアクセス数に基づく評価関数Pが最小値を持つ配置パターンであり、登録インデックスRIDA−1のコピーデータとしてのスナップショットとして構成される検索インデックスをインデックスサーバISに配置し、登録インデックスRIDB−1のスナップショットとしての検索インデックスをインデックスサーバISに配置し、登録インデックスRIDB−2のスナップショットとしての検索インデックスをインデックスサーバISに配置し、登録インデックスRIDC−1のスナップショットとしての検索インデックスをインデックスサーバISに配置する設定である。
この配置パターンに対応して設定される更新後検索インデックス配置登録テーブル215のデータ構成が図16に示すテーブルとして設定される。図16のテーブルでは、
(1)インデックスサーバIS
登録インデックス:RIDA−1
検索インデックスSIDA−1(B−2)
(2)インデックスサーバIS
登録インデックス:RIDB−1、RIDB−2
検索インデックスSIDB−1(C−1)
(3)インデックスサーバIS
登録インデックス:RIDC−1
検索インデックスSIDC−1(A−1)、SIDC−2(B−1)
の各インデックスが配置されることを示している。
これは、配置パターンNo.74に対応する検索インデックスの配置構成を持つ。
図4に示す検索インデックス配置指示部204は、図16に示す更新後検索インデックス配置登録テーブルに従って、各インデックスサーバに対して、検索インデックスの転送、配置指示を送信する。この処理が、図5の処理フローにおけるステップS104の処理である。
図5の処理フローにおけるステップS122では、各インデックスサーバが、インデックスサーバ管理部からの検索インデックス配置情報を受領し、必要に応じて、自己の登録インデックスのスナップショットを生成し、他のインデックスサーバに送信する。また、必要に応じて、他のインデックスサーバの保持する登録インデックスのスナップショットを受信して、自己のインデックス格納領域に検索インデックスとして格納する処理を実行する。これらの処理の結果として、例えば図16に示す更新後検索インデックス配置登録テーブルに従った検索インデックスの配置が行なわれることになる。
さらに、各インデックスサーバは、検索インデックスの配置更新の後、ステップS123において、各インデックスサーバにおいて管理するアクセス数登録テーブルをリセットしてアクセス数=0に設定する処理を行なう。この処理の後、次回の更新まで、継続してアクセス数のカウントが行なわれ、次回更新時にインデックスサーバ管理部からのインデックスサーバ情報の取得要求に応じてこのカウントデータをインデックスサーバ管理部に提供することになる。
図16に示す更新後検索インデックス配置登録テーブルに従って検索インデックスの配置の更新がなされた結果を図17に示す。なお、更新前の構成は、図6の構成である。
インデックスサーバIS310は、登録インデックス:RIDA−1312の他に、検索インデックスSIDA−1(B−2)411を有する。この検索インデックスSIDA−1(B−2)411は、インデックスサーバISの登録インデックス:RIDB−2323のスナップショットである。
インデックスサーバIS320は、登録インデックス:RIDB−1322、登録インデックス:RIDB−2323の他に、検索インデックスSIDB−1(C−1)421を有する。この検索インデックスSIDB−1(C−1)421は、インデックスサーバISの登録インデックス:RIDC−1332のスナップショットである。
インデックスサーバIS330は、登録インデックス:RIDC−1332の他に、検索インデックスSIDC−1(A−1)431と、検索インデックスSIDC−2(B−1)432を有する。検索インデックスSIDC−1(A−1)431は、インデックスサーバISの登録インデックス:RIDA−1312のスナップショットであり、検索インデックスSIDC−2(B−1)432は、インデックスサーバISの登録インデックス:RIDB−1322のスナップショットである。
これは、図12のリスト中の配置パターンNo.74に対応する検索インデックスの配置構成である。
また、各インデックスサーバのアクセス数登録テーブルは、図に示すように、すべてリセット、すなわちアクセス数=0に設定される。この更新後に、改めてアクセス数がカウントされることになる。なお、アクセス数登録テーブルは、インデックスサーバに設置される検索インデックスごとにカウント値を登録する構成を持つ。
以上、説明したように、本発明のインデックス配置、更新処理構成では、複数のインデックスサーバを適用して、インデックス情報を分散格納するシステムにおいて、登録インデックスのスナップシッョトとして設定される検索インデックスを登録インデックスを保持するインデックスサーバに固定的に保持するのではなく、各インデックスサーバのデータ記憶容量や、アクセス数、あるいはデータ移動量を考慮して、設定するサーバを決定して配置する構成とした。本構成により、複数のインデックスサーバの全体の記憶領域を有効活用することが可能となる。また、各インデックスサーバのアクセス数に基づく処理負荷を均等に分散することが可能となる。さらに、検索インデックスの再配置によるデータ移動量を最小とすることを考慮した処理を行なう構成であるので、データ移動に伴う処理負荷を過大に増大させることもない。
最後に、上述した処理を実行するインデックスサーバ管理部、およびインデックスサーバを構成する情報処理装置のハードウェア構成例について、図18を参照して説明する。
インデックスサーバ管理部、およびインデックスサーバの各々は、データ処理機能、データ通信機能を備えた情報処理装置として構成される。図18は、1つの情報処理装置構成例を示すハードウェア例である。なお、上述の説明では、インデックスサーバと、インデックスサーバ管理部を全く独立した構成として説明したが、1つのインデックスサーバがインデックスサーバ管理部としての機能を併せ持つ構成としてもよい。
図18に示す情報処理装置の構成について説明する。CPU(Central Processing Unit)501は、OS(Operating System)に対応する処理や、インデックス管理サーバにおいては、上述の実施例において説明した検索インデックスの配置パターン決定処理、各評価関数の算出処理などを実行し、インデックスサーバにおいては、クライアントからの要求に応じた検索処理などを実行する。これらの処理は、各情報処理装置のROM、ハードディスクなどのデータ記憶部に格納されたコンピュータ・プログラムに従って実行される。
ROM(Read Only Memory)502は、CPU501が使用するプログラムや演算パラメータ等を格納する。RAM(Random Access Memory)503は、CPU501の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはCPUバスなどから構成されるホストバス504により相互に接続されている。
ホストバス504は、ブリッジ505を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス506に接続されている。
キーボード508、ポインティングデバイス509は、ユーザにより操作される入力デバイスである。ディスプレイ510は、液晶表示装置またはCRT(Cathode Ray Tube)などから成り、各種情報をテキストやイメージで表示する。
HDD(Hard Disk Drive)511は、ハードディスクを内蔵し、ハードディスクを駆動し、CPU501によって実行するプログラムや情報を記録または再生させる。ハードディスクは、例えば、インデックスサーバであれば、インデックス情報の格納領域、アクセス数登録テーブルの格納領域として利用され、また、インデックスサーバ管理部であれば、各種隔離データの格納領域として利用される。さらに、データ処理プログラム等、各種コンピュータ・プログラムが格納される。
ドライブ512は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記録媒体521に記録されているデータまたはプログラムを読み出して、そのデータまたはプログラムを、インタフェース507、外部バス506、ブリッジ505、およびホストバス504を介して接続されているRAM503に供給する。
接続ポート514は、外部接続機器522を接続するポートであり、USB,IEEE1394等の接続部を持つ。接続ポート514は、インタフェース507、および外部バス506、ブリッジ505、ホストバス504等を介してCPU501等に接続されている。通信部515は、ネットワークに接続され、CPU501、またはHDD511等からの供給データの送信、データ受信を実行する。
なお、図18に示す情報処理装置のハードウェア構成例は、PCを適用して構成した装置の一例であり、本発明の情報処理装置は、図18に示す構成に限らず、上述した実施例において説明した処理を実行可能な構成であればよい。
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
以上、説明したように、本発明の構成によれば、分散配置される複数のインデックスサーバにデータ更新処理に対応した登録インデックス格納部と、検索処理に対応した検索インデックス格納部とを設定した検索システム構成において、各インデックスサーバのインデックス情報の記憶領域としてのインデックス格納領域サイズと、登録インデックスサイズとに基づいて、各インデックスサーバに配置可能な検索インデックスの配置パターンを選択し、さらに、配置可能パターン各々に対する様々な評価処理に基づいて最適な配置パターンを決定する構成としたので、インデックスサーバの全体の記憶領域および各々の記憶領域を考慮した最適配置パターンの決定が可能となり、記憶領域の有効利用を実現したインデックス配置が実現される。
さらに、本発明の構成によれば、登録インデックスのスナップシッョトとして設定される検索インデックスを固定的に保持するのではなく、各インデックスサーバのデータ記憶容量や、アクセス数、あるいはデータ移動量を考慮して、設定するサーバを決定して配置する構成としたので、複数のインデックスサーバの全体の記憶領域を有効活用することが可能となるのみならず、各インデックスサーバのアクセス数に基づく処理負荷の分散が可能となり、さらに、検索インデックスの再配置によるデータ移動量についても、最小限としたインデックス配置処理が可能となる。
登録インデックスと検索インデックスを有する検索システムの構成について説明する図である。 本発明の検索システムの構成について説明する図である。 インデックス格納部に格納されるインデックス情報のデータ構成について説明する図である。 インデックスサーバ管理部の機能構成について説明する図である。 検索インデックスの配置決定、更新処理シーケンスについて説明するフローチャートを示す図である。 インデックスサーバにおける登録インデックスと検索インデックスの配置例について説明する図である。 インデックスサーバ情報について説明する図である。 インデックスサーバ情報管理テーブルの構成、および生成処理について説明する図である。 検索インデックスの配置決定処理シーケンスについて説明するフローチャートを示す図である。 検索インデックスの配置パターンのリストを示す図である。 検索インデックスの配置パターンから実現可能な配置パターンを選択する処理について説明する図である。 アクセス数に基づく評価関数を適用して最適な検索インデックスの配置パターンを選択する処理について説明する図である。 インデックス情報の移動量に基づく評価関数を適用して最適な検索インデックスの配置パターンを選択する処理について説明する図である。 インデックス情報の移動量について説明する図である。 インデックス情報の移動量が最小になる配置パターンにおけるインデックス情報移動について説明する図である。 更新後検索インデックス配置登録テーブルのデータ構成について説明する図である。 更新後検索インデックス配置登録テーブルに基づいて検索インデックスの配置を更新した後のインデックス配置構成について説明する図である。 インデックスサーバ、およびインデックスサーバ管理部を構成する情報処理装置のハードウェア構成例について説明する図である。
符号の説明
10 ネットワーク
11,21 インデックスサーバ
12,22 登録インデックス格納部
13,23 検索インデックス格納部
31 文書管理サーバ
41 クライアント
100 ネットワーク
110,120 インデックスサーバ
111,121 インデックス格納領域
112,122 登録インデックス格納部
113,123 検索インデックス格納部
150 インデックスサーバ管理部
160 文書管理サーバ
171 クライアント
201 インデックスサーバ情報取得部
202 インデックスサーバ情報整理部
203 検索インデックス配置決定部
204 検索インデックス配置指示部
211 インデックス格納領域情報
212 登録インデックス情報
213 アクセス数情報
214 インデックスサーバ情報管理テーブル
215 更新後検索インデックス配置登録テーブル
310,320,330 インデックスサーバ
311,321,331 インデックス格納領域
312,322,323,332 登録インデックス格納部
313,324,325,333 検索インデックス格納部
318,328,338 アクセス数登録テーブル
411,421,431,432 検索インデックス格納部
501 CPU(Central Processing Unit)
502 ROM(Read-Only-Memory)
503 RAM(Random Access Memory)
504 ホストバス
505 ブリッジ
506 外部バス
507 インタフェース
508 キーボード
509 ポインティングデバイス
510 ディスプレイ
511 HDD(Hard Disk Drive)
512 ドライブ
514 接続ポート
515 通信部
521 リムーバブル記録媒体
522 外部接続機器

Claims (9)

  1. インデックス情報を適用した検索処理を行なう検索システムであり、
    インデックス情報の更新処理用データとしての登録インデックスと、検索処理に適用するインデックスデータであり登録インデックスに対応するスナップショットとして設定される検索インデックスとを保持する複数のインデックスサーバと、
    前記複数のインデックスサーバにおける検索インデックスの配置決定処理を実行するインデックスサーバ管理部とを有し、
    前記インデックスサーバ管理部は、
    前記複数のインデックスサーバのインデックス情報の記憶領域としてのインデックス格納領域サイズと、登録インデックスサイズとに基づいて、各インデックスサーバに配置可能な検索インデックスの配置パターンを選択し、選択された配置可能パターン各々に対する評価処理に基づいて最適な配置パターンを決定する処理を実行する構成であり、
    前記複数のインデックスサーバは、前記最適配置パターンに従って、検索インデックスの再配置を実行する構成であることを特徴とする検索システム。
  2. 前記複数のインデックスサーバの各々は、
    自己のインデックス格納領域に配置した検索インデックスに対するアクセス数をカウントする構成であり、
    前記インデックスサーバ管理部は、
    前記配置可能パターン各々に対する評価処理として、各配置パターンとした場合の各インデックスサーバの最大アクセス数と最小アクセス数との差を評価関数Pとして算出し、該評価関数Pが最小となる配置パターンを最適配置パターンとして選択する処理を実行する構成であることを特徴とする請求項1に記載の検索システム。
  3. 前記インデックスサーバ管理部は、
    前記配置可能パターン各々に対する評価処理として、各配置パターンとした場合のインデックスサーバ間のインデックス情報移動量を評価関数Pとして算出し、該評価関数Pが最小となる配置パターンを最適配置パターンとして選択する処理を実行する構成であることを特徴とする請求項1に記載の検索システム。
  4. 前記複数のインデックスサーバの各々は、
    自己のインデックス格納領域に配置した検索インデックスに対するアクセス数をカウントする構成であり、
    前記インデックスサーバ管理部は、
    前記配置可能パターン各々に対する評価処理として、各配置パターンとした場合の各インデックスサーバの最大アクセス数と最小アクセス数との差を評価関数Pとして算出し、
    さらに、各配置パターンとした場合のインデックスサーバ間のインデックス情報移動量を評価関数Pとして算出し、
    評価関数Pと評価関数Pとを適用した総合的な評価処理に基づいて、最適配置パターンの決定処理を実行する構成であることを特徴とする請求項1に記載の検索システム。
  5. インデックス情報の更新処理用データとしての登録インデックスと、検索処理に適用するインデックスデータであり登録インデックスに対応するスナップショットとして設定される検索インデックスとを保持する複数のインデックスサーバを有する検索システムにおける検索インデックスの配置構成の決定処理をコンピュータ上で実行させるコンピュータ・プログラムであり、
    前記複数のインデックスサーバのインデックス情報の記憶領域としてのインデックス格納領域サイズと、登録インデックスサイズとに基づいて、各インデックスサーバに配置可能な検索インデックスの配置パターンを選択する配置可能パターン選択ステップと、
    前記配置可能パターン各々に対する評価処理に基づいて最適な配置パターンを決定する最適配置パターン決定ステップと、
    を有することを特徴とするコンピュータ・プログラム。
  6. 前記最適配置パターン決定ステップは、
    前記配置可能パターン各々に対する評価処理として、各配置パターンとした場合の各インデックスサーバに配置した検索インデックスに対する最大アクセス数と最小アクセス数との差を評価関数Pとして算出するステップと、
    前記評価関数Pが最小となる配置パターンを最適配置パターンとして選択するステップと、
    を有することを特徴とする請求項5に記載のコンピュータ・プログラム。
  7. 前記最適配置パターン決定ステップは、
    前記配置可能パターン各々に対する評価処理として、各配置パターンとした場合のインデックスサーバ間のインデックス情報移動量を評価関数Pとして算出するステップと、
    前記評価関数Pが最小となる配置パターンを最適配置パターンとして選択するステップと、
    を有することを特徴とする請求項5に記載のコンピュータ・プログラム。
  8. 前記最適配置パターン決定ステップは、
    前記配置可能パターン各々に対する評価処理として、各配置パターンとした場合の各インデックスサーバに配置した検索インデックスに対する最大アクセス数と最小アクセス数との差を評価関数Pとして算出するステップと、
    前記配置可能パターン各々に対する評価処理として、各配置パターンとした場合のインデックスサーバ間のインデックス情報移動量を評価関数Pとして算出するステップと、
    評価関数Pと評価関数Pとを適用した総合的な評価処理に基づいて、最適配置パターンの決定処理を実行するステップと、
    を有することを特徴とする請求項5に記載のコンピュータ・プログラム。
  9. インデックス情報の更新処理用データとしての登録インデックスと、検索処理に適用するインデックスデータであり登録インデックスに対応するスナップショットとして設定される検索インデックスとを保持する複数のインデックスサーバを有する検索システムにおける検索インデックスの配置構成を決定する情報配置構成決定方法であり、
    前記複数のインデックスサーバのインデックス情報の記憶領域としてのインデックス格納領域サイズと、登録インデックスサイズとに基づいて、各インデックスサーバに配置可能な検索インデックスの配置パターンを選択する配置可能パターン選択ステップと、
    前記配置可能パターン各々に対する評価処理に基づいて最適な配置パターンを決定する最適配置パターン決定ステップと、
    を有することを特徴とする情報配置構成決定方法。
JP2004375741A 2004-12-27 2004-12-27 検索システム、および情報配置構成決定方法、並びにコンピュータ・プログラム Pending JP2006185019A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004375741A JP2006185019A (ja) 2004-12-27 2004-12-27 検索システム、および情報配置構成決定方法、並びにコンピュータ・プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004375741A JP2006185019A (ja) 2004-12-27 2004-12-27 検索システム、および情報配置構成決定方法、並びにコンピュータ・プログラム

Publications (1)

Publication Number Publication Date
JP2006185019A true JP2006185019A (ja) 2006-07-13

Family

ID=36738107

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004375741A Pending JP2006185019A (ja) 2004-12-27 2004-12-27 検索システム、および情報配置構成決定方法、並びにコンピュータ・プログラム

Country Status (1)

Country Link
JP (1) JP2006185019A (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008102765A (ja) * 2006-10-19 2008-05-01 Fujitsu Ltd 検索処理方法及び検索システム
JP2011053868A (ja) * 2009-09-01 2011-03-17 Fujitsu Ltd 索引管理装置の処理方法および索引管理装置
JP2012073944A (ja) * 2010-09-29 2012-04-12 Brother Ind Ltd ノード装置、情報通信システム、情報処理方法及び情報処理プログラム
JP2013073557A (ja) * 2011-09-29 2013-04-22 Hitachi Solutions Ltd 情報検索システム、検索サーバ及びプログラム
US8463793B2 (en) 2009-09-14 2013-06-11 Fujitsu Limited Method executed by management server, system, and computer-readable recording medium
JP2015087953A (ja) * 2013-10-30 2015-05-07 富士通株式会社 情報処理システム、管理プログラム、及びインデックス管理方法
JP2015518223A (ja) * 2012-06-06 2015-06-25 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 メモリ検索、リアルタイム検索システム及び方法、コンピュータ記憶媒体
US9356992B2 (en) 2012-03-16 2016-05-31 Fujitsu Limited Transfer control device, non-transitory computer-readable storage medium storing program, and storage apparatus
CN110119427A (zh) * 2019-04-15 2019-08-13 平安普惠企业管理有限公司 数据管理方法及相关产品

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008102765A (ja) * 2006-10-19 2008-05-01 Fujitsu Ltd 検索処理方法及び検索システム
JP2011053868A (ja) * 2009-09-01 2011-03-17 Fujitsu Ltd 索引管理装置の処理方法および索引管理装置
US8463793B2 (en) 2009-09-14 2013-06-11 Fujitsu Limited Method executed by management server, system, and computer-readable recording medium
JP2012073944A (ja) * 2010-09-29 2012-04-12 Brother Ind Ltd ノード装置、情報通信システム、情報処理方法及び情報処理プログラム
JP2013073557A (ja) * 2011-09-29 2013-04-22 Hitachi Solutions Ltd 情報検索システム、検索サーバ及びプログラム
US9356992B2 (en) 2012-03-16 2016-05-31 Fujitsu Limited Transfer control device, non-transitory computer-readable storage medium storing program, and storage apparatus
JP2015518223A (ja) * 2012-06-06 2015-06-25 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 メモリ検索、リアルタイム検索システム及び方法、コンピュータ記憶媒体
US9619512B2 (en) 2012-06-06 2017-04-11 Tencent Technology (Shenzhen) Company Limited Memory searching system and method, real-time searching system and method, and computer storage medium
JP2015087953A (ja) * 2013-10-30 2015-05-07 富士通株式会社 情報処理システム、管理プログラム、及びインデックス管理方法
CN110119427A (zh) * 2019-04-15 2019-08-13 平安普惠企业管理有限公司 数据管理方法及相关产品
CN110119427B (zh) * 2019-04-15 2024-05-28 北京神州数码云科信息技术有限公司 数据管理方法及相关产品

Similar Documents

Publication Publication Date Title
US11645183B1 (en) User interface for correlation of virtual machine information and storage information
JP3861087B2 (ja) 仮想マシン管理装置及びプログラム
JP4411929B2 (ja) バックアップ方法、システム、及びプログラム
US8700573B2 (en) File storage service system, file management device, file management method, ID denotative NAS server and file reading method
US8555018B1 (en) Techniques for storing data
JP4786945B2 (ja) インデックス付与強制クエリ
US8126997B2 (en) Hot data management method based on hit counter
JP5375972B2 (ja) 分散ファイルシステム、そのデータ選択方法およびプログラム
JP2008146412A (ja) ネットワーク管理システム、ネットワーク管理プログラムおよびネットワーク管理方法
US8521768B2 (en) Data storage and management system
Turk et al. Temporal workload-aware replicated partitioning for social networks
JP2009181546A (ja) コーディネータサーバ、データ割当方法及びプログラム
JP2009064120A (ja) 検索システム
US10242102B2 (en) Network crawling prioritization
JP2006185019A (ja) 検索システム、および情報配置構成決定方法、並びにコンピュータ・プログラム
JP2020197873A (ja) 情報処理システム、及び情報処理システムの制御方法
JP2011081579A (ja) Itシステム仮想化における仮想リソースのシステム運用管理方法およびシステム
JP2010238138A (ja) ストレージシステムおよびファイル階層管理方法
JP2007193408A (ja) 文書管理システムにおけるディスク運用制御方法
Strickland Cassandra 3. x High Availability
JP2007140847A (ja) 電子コンテンツ配信方法及び配信システム
JP6197666B2 (ja) 記憶装置、複製方法及び複製プログラム
WO2018051429A1 (ja) ファイルサーバ及び情報システム
Xiao et al. Co-located Compute and Binary File Storage in Data-Intensive Computing
JP4368247B2 (ja) ファイル配置方法、ノード、システム及びプログラム