(57)【要約】【課題】  データ検索実行エレメント間に生じる処理負荷の偏りを低減し、検索処理時間を短縮するのに好適な分散検索システムを提供する。【解決手段】  データ検索制御エレメント１００は、検索条件を受信したときは、稼働データ検索実行エレメント１２０の数を算出し、算出したエレメント数および受信した検索条件に基づいて、各稼働データ検索実行エレメント１２０の処理負荷が均等となるように分散検索条件を生成し、生成した分散検索条件を対応の稼働データ検索実行エレメント１２０に送信する。データ検索実行エレメント１２０は、分散検索条件を受信したときは、データ検索に必要なトラフィックデータファイルをデータ蓄積エレメント１１０から取得し、受信した分散検索条件に基づいてトラフィックデータファイルのなかから該当のトラフィックデータを検索し、データ検索制御エレメント１００にその検索結果を送信する。【選択図】  図７
2006350839.tif 000002
【特許請求の範囲】
【請求項１】
データ検索制御エレメントと、少なくとも２つの処理装置により構成される複数のデータ検索実行エレメントとを備え、データ検索を分散して行う分散検索システムであって、
前記データ検索制御エレメントは、検索条件を入力する検索条件入力手段と、前記複数のデータ検索実行エレメントのうち現在検索が実行可能な稼働データ検索実行エレメントの数を算出する稼働数算出手段と、前記稼働数算出手段で算出したエレメント数および前記検索条件入力手段で入力した検索条件に基づいて、前記各処理装置の処理負荷が均等となるように、前記各稼働データ検索実行エレメントに与える分散検索条件を生成する分散検索条件生成手段と、前記分散検索条件生成手段で生成した分散検索条件を前記稼働データ検索実行エレメントに出力する分散検索条件出力手段と、前記分散検索条件に対応する検索結果を入力する検索結果入力手段とを有し、
前記データ検索実行エレメントは、前記分散検索条件を入力する分散検索条件入力手段と、前記分散検索条件入力手段で入力した分散検索条件に基づいて該当の検索対象データを検索するデータ検索手段と、前記データ検索手段の検索結果を前記データ検索制御エレメントに出力する検索結果出力手段とを有することを特徴とする分散検索システム。
【請求項２】
請求項１において、
さらに、データ蓄積エレメントを備え、
前記データ蓄積エレメントは、前記検索対象データを記憶するデータ記憶手段と、前記検索対象データの取得要求に応じて前記データ記憶手段の検索対象データを提供する検索対象データ提供手段とを有し、
前記データ検索実行エレメントは、さらに、前記分散検索条件入力手段で入力した分散検索条件に基づいてデータ検索に必要な前記検索対象データを前記データ蓄積エレメントから取得する検索対象データ取得手段を有し、
前記データ検索手段は、前記検索対象データ取得手段で取得した検索対象データのなかから該当の前記検索対象データを検索することを特徴とする分散検索システム。
【請求項３】
請求項２において、
前記データ検索制御エレメントは、さらに、データ検索に必要な前記検索対象データの量または範囲を示す蓄積データ情報を前記データ蓄積エレメントから取得する蓄積データ情報取得手段を有し、
前記データ蓄積エレメントは、前記蓄積データ情報の取得要求に応じて前記蓄積データ情報を提供する蓄積データ情報提供手段を有し、
前記分散検索条件生成手段は、前記エレメント数、前記検索条件および前記蓄積データ情報取得手段で取得した蓄積データ情報に基づいて前記分散検索条件を生成することを特徴とする分散検索システム。
【請求項４】
データ検索制御エレメントと、少なくとも２つの処理装置により構成される複数のデータ検索実行エレメントとを備える分散検索システムを利用してデータ検索を分散して行う分散検索方法であって、
前記データ検索制御エレメントに対しては、検索条件を入力する検索条件入力ステップと、前記複数のデータ検索実行エレメントのうち現在検索が実行可能な稼働データ検索実行エレメントの数を算出する稼働数算出ステップと、前記稼働数算出ステップで算出したエレメント数および前記検索条件入力ステップで入力した検索条件に基づいて、前記各処理装置の処理負荷が均等となるように、前記各稼働データ検索実行エレメントに与える分散検索条件を生成する分散検索条件生成ステップと、前記分散検索条件生成ステップで生成した分散検索条件を前記稼働データ検索実行エレメントに出力する分散検索条件出力ステップとを含み、
前記データ検索実行エレメントに対しては、前記分散検索条件を入力する分散検索条件入力ステップと、前記分散検索条件入力ステップで入力した分散検索条件に基づいて該当の検索対象データを検索するデータ検索ステップと、前記データ検索ステップの検索結果を前記データ検索制御エレメントに出力する検索結果出力ステップとを含み、
前記データ検索制御エレメントに対しては、さらに、前記検索結果を入力する検索結果入力ステップを含むことを特徴とする分散検索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ検索を分散して行うシステムおよび方法に係り、特に、通信ネットワークを構成するネットワークエレメント（以下、ＮＥと略記する。）のオペレーションサポートシステムにおいてトラフィックデータを検索する分散検索システムおよび分散検索方法に関する。
【背景技術】
【０００２】
通信網におけるオペレーションシステムでは、オペレーション対象となるＮＥからトラフィックデータを収集し、保存用データの作成・集約といった加工を自動的に実施、蓄積することにより、短時間でこれらのデータ分析作業を可能とし、この分析作業に費やす稼動削減を目的とするトラフィック管理システムが開発されてきた。
従来のトラフィック管理システムでは、トラフィック管理に必要となる機能の分離が不十分なため、新規トラフィック項目の追加等に対してシステム本体の開発が必要であるという問題があった。また、大量のトラフィックデータを一元管理するためおよび高速な検索を実現するため、大規模なデータベースを用いることから、多大な構築、維持管理、開発コストを要するという問題があった。
【０００３】
この問題に対して、分散データ駆動型アーキテクチャ（Distributed Data Driven Architecture（Ｄ３Ａ））を適用することにより構築、維持管理、開発コストの削減が可能なトラフィック管理システムが提案されている。
図８は、Ｄ３Ａを適用した従来のトラフィック管理システムの構成を示すブロック図である。
【０００４】
このトラフィック管理システムは、図８に示すように、トラフィックデータ収集エレメント１０、トラフィック補助データ収集エレメント１１、データ蓄積エレメント１２、データ管理エレメント１３、データ検索制御エレメント１４、複数のデータ検索実行エレメント１５およびＷｅｂ画面生成エレメント１６で構成され、各エレメント間でＤ３Ａシナリオを流通しそれらの機能を組み合わせることで、システム全体としてトラフィック管理を行っている。
これらエレメント１０〜１６は、個々の例えば小型のサーバマシンに配置され、ネットワークを介して接続される。また、１台のサーバマシンに複数のエレメントを配置することも可能である。
【０００５】
このトラフィック管理システムが行う検索処理を説明する。
図９は、Ｄ３Ａを適用した従来のトラフィック管理システムの動作シーケンスを示す図である。
オペレータは、トラフィックデータの分析作業を行うため、例えば、以下の検索条件を設定して検索を実行する。なお、以下の検索条件において「＊」は、ワイルドカードであり、ＮＥ＃１またはＮＥ＃２のすべての回線を意味する。
（１）検索対象期間：２００５／１／２６  １７：００〜１８：００
（２）検索対象トラフィックデータ：ＮＥ＃１回線＊
（３）検索対象トラフィックデータ：ＮＥ＃２回線＊
【０００６】
オペレータにより検索が実行されると、データ検索制御エレメント１４では、図９に示すように、検索条件が分析され、ＮＥ＃１に関する分散検索条件１（（１）＋（２））、およびＮＥ＃２に関する分散検索条件２（（１）＋（３））が生成される。そして、分散検索条件１は、データ検索実行エレメント＃１に、分散検索条件２は、データ検索実行エレメント＃２にそれぞれ送信される。
【０００７】
データ検索実行エレメント１５では、分散検索条件を受信すると、検索対象のトラフィックデータファイルがデータ蓄積エレメント１２から取得され、受信した分散検索条件に該当するトラフィックデータがトラフィックデータファイルのなかから検索される。このとき、トラフィックデータファイルは、データ検索実行エレメント１５と１対１の対応関係でデータ蓄積エレメント１２から取得される。
【０００８】
また、他の分散検索システムとしては、特許文献１記載の検索装置および特許文献２記載の分散型検索装置が知られている。
特許文献１記載の発明は、検索条件を含む検索要求を取得する通信部と、監視データを入力した入力部と検索装置との対応関係を示す分散構成情報を参照して、検索条件で指定された入力部に対応した検索装置を判別し、検索要求を分配する検索要求分配部と、分配された検索要求が含む検索条件に合致した監視データを検索する検索分担部とを有して構成されている。
【０００９】
特許文献２記載の発明では、利用者の目的情報が存在しそうな情報源を保有する検索実行装置を検索起点とし、検索要求を入力する。検索実行装置は、自身が保有する情報源を検索して検索結果を取得するとともに、リンク付けらた他の検索実行装置にも検索要求を送信し、その検索結果を取得するというように、次々にリンクを辿って他の検索実行装置の検索結果を取得する。検索実行装置は、自身の検索結果には優先度を付与し、他の検索実行装置からの検索結果には、接続先の検索実行装置の情報の質の高さを反映させたリンクの重みとしてあらかじめ設定された計数を掛けて優先度を再計算する。これら付与された優先度と再計算された優先度を用いて、取得した検索結果を並べ替えて出力する。
【特許文献１】特開２００３−１５７２５８号公報
【特許文献２】特開２００３−２４８６９１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
Ｄ３Ａを適用した従来のトラフィック管理システムでは、ＮＥが収容する回線数の違い等により、一定の期間において蓄積されるトラフィックデータは、ＮＥによってデータ量が異なる。そのため、複数のデータ検索実行エレメント１５間において検索処理に必要な計算量の偏りが生じる。図９の例では、処理負荷の小さいデータ検索実行エレメント＃２が先に検索処理を完了するが、データ検索制御エレメント１４では、検索条件を満たす結果を返すためには、データ検索実行エレメント＃１の検索処理が終了するまで待ち合わせなければならない。つまり、データ検索実行エレメント１５の処理負荷に偏りが生じた場合、検索処理時間は、処理負荷の大きいデータ検索実行エレメント１５の処理時間に依存することとなる。
【００１１】
また、特許文献１記載の発明にあっては、分散構成情報を参照して、検索条件で指定された入力部に対応した検索装置を判別し、検索要求を分配する構成となっているだけであり、これをトラフィック管理システムに適用しても、データ検索実行エレメント１５間に生じる処理負荷の偏りを低減することはできない。
また、特許文献２記載の発明にあっては、リンク付けられた複数の検索実行装置を辿って検索を行い、それらの検索結果に優先度を付与する構成となっているだけであり、これをトラフィック管理システムに適用しても、データ検索実行エレメント１５間に生じる処理負荷の偏りを低減することはできない。
そこで、本発明は、このような従来の技術の有する未解決の課題に着目してなされたものであって、データ検索実行エレメント間に生じる処理負荷の偏りを低減し、検索処理時間を短縮するのに好適な分散検索システムおよび分散検索方法を提供することを目的としている。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、本発明に係る請求項１記載の分散検索システムは、データ検索制御エレメントと、少なくとも２つの処理装置により構成される複数のデータ検索実行エレメントとを備え、データ検索を分散して行う分散検索システムであって、前記データ検索制御エレメントは、検索条件を入力する検索条件入力手段と、前記複数のデータ検索実行エレメントのうち現在検索が実行可能な稼働データ検索実行エレメントの数を算出する稼働数算出手段と、前記稼働数算出手段で算出したエレメント数および前記検索条件入力手段で入力した検索条件に基づいて、前記各処理装置の処理負荷が均等となるように、前記各稼働データ検索実行エレメントに与える分散検索条件を生成する分散検索条件生成手段と、前記分散検索条件生成手段で生成した分散検索条件を前記稼働データ検索実行エレメントに出力する分散検索条件出力手段と、前記分散検索条件に対応する検索結果を入力する検索結果入力手段とを有し、前記データ検索実行エレメントは、前記分散検索条件を入力する分散検索条件入力手段と、前記分散検索条件入力手段で入力した分散検索条件に基づいて該当の検索対象データを検索するデータ検索手段と、前記データ検索手段の検索結果を前記データ検索制御エレメントに出力する検索結果出力手段とを有する。
【００１３】
このような構成であれば、データ検索制御エレメントでは、検索条件入力手段により検索条件が入力されると、稼働数算出手段により、稼働データ検索実行エレメントの数が算出され、分散検索条件生成手段により、算出されたエレメント数および入力された検索条件に基づいて、各処理装置の処理負荷が均等となるように、各稼働データ検索実行エレメントに与える分散検索条件が生成される。そして、分散検索条件出力手段により、生成された分散検索条件が稼働データ検索実行エレメントに出力される。
【００１４】
データ検索実行エレメントでは、分散検索条件入力手段により分散検索条件が入力されると、データ検索手段により、入力された分散検索条件に基づいて該当の検索対象データが検索され、検索結果出力手段により、データ検索制御エレメントにその検索結果が出力される。
データ検索制御エレメントでは、検索結果入力手段により、分散検索条件に対応する検索結果が入力される。
【００１５】
ここで、データ検索制御エレメントおよびデータ検索実行エレメントは、複数のデータ検索実行エレメントが少なくとも２つの処理装置により構成されていればどのような構成であってもよく、データ検索制御エレメントおよびデータ検索実行エレメントを１つの処理装置により構成してもよいし、別々の処理装置により構成してもよい。さらに、データ検索実行エレメントが３つ以上の場合は、複数のデータ検索実行エレメントを１つの処理装置により構成してもよい。以下、請求項４記載の分散検索方法において同じである。
【００１６】
また、入力および出力としては、例えば、データ検索制御エレメントおよびデータ検索実行エレメントが別々の処理装置により構成される場合は、それら処理装置間の入力（受信）および出力（送信）を行うこと、データ検索制御エレメントおよびデータ検索実行エレメントが同一の処理装置により構成される場合は、その処理装置内の入力および出力を行うことが含まれる。以下、請求項４記載の分散検索方法において同じである。
【００１７】
さらに、本発明に係る請求項２記載の分散検索システムは、請求項１記載の分散検索システムにおいて、さらに、データ蓄積エレメントを備え、前記データ蓄積エレメントは、前記検索対象データを記憶するデータ記憶手段と、前記検索対象データの取得要求に応じて前記データ記憶手段の検索対象データを提供する検索対象データ提供手段とを有し、前記データ検索実行エレメントは、さらに、前記分散検索条件入力手段で入力した分散検索条件に基づいてデータ検索に必要な前記検索対象データを前記データ蓄積エレメントから取得する検索対象データ取得手段を有し、前記データ検索手段は、前記検索対象データ取得手段で取得した検索対象データのなかから該当の前記検索対象データを検索する。
【００１８】
このような構成であれば、データ検索実行エレメントでは、検索対象データ取得手段により、入力された分散検索条件に基づいてデータ検索に必要な検索対象データがデータ蓄積エレメントから取得される。
データ蓄積エレメントでは、検索対象データ提供手段により、検索対象データの取得要求に応じてデータ記憶手段の検索対象データが提供される。
【００１９】
データ検索実行エレメントでは、検索対象データが取得されると、データ検索手段により、取得された検索対象データのなかから該当の検索対象データが検索される。
ここで、データ記憶手段は、検索対象データをあらゆる手段でかつあらゆる時期に記憶するものであり、検索対象データをあらかじめ記憶してあるものであってもよいし、検索対象データをあらかじめ記憶することなく、本システムの動作時に外部からの入力等によって検索対象データを記憶するようになっていてもよい。
【００２０】
さらに、本発明に係る請求項３記載の分散検索システムは、請求項２記載の分散検索システムにおいて、前記データ検索制御エレメントは、さらに、データ検索に必要な前記検索対象データの量または範囲を示す蓄積データ情報を前記データ蓄積エレメントから取得する蓄積データ情報取得手段を有し、前記データ蓄積エレメントは、前記蓄積データ情報の取得要求に応じて前記蓄積データ情報を提供する蓄積データ情報提供手段を有し、前記分散検索条件生成手段は、前記エレメント数、前記検索条件および前記蓄積データ情報取得手段で取得した蓄積データ情報に基づいて前記分散検索条件を生成する。
【００２１】
このような構成であれば、データ検索制御エレメントでは、蓄積データ情報取得手段により、データ蓄積エレメントから蓄積データ情報が取得される。
データ蓄積エレメントでは、蓄積データ情報提供手段により、蓄積データ情報の取得要求に応じて蓄積データ情報が提供される。
データ検索制御エレメントでは、蓄積データ情報が取得されると、分散検索条件生成手段により、エレメント数、検索条件および取得された蓄積データ情報に基づいて分散検索条件が生成される。
【００２２】
一方、上記目的を達成するために、本発明に係る請求項４記載の分散検索方法は、データ検索制御エレメントと、少なくとも２つの処理装置により構成される複数のデータ検索実行エレメントとを備える分散検索システムを利用してデータ検索を分散して行う分散検索方法であって、前記データ検索制御エレメントに対しては、検索条件を入力する検索条件入力ステップと、前記複数のデータ検索実行エレメントのうち現在検索が実行可能な稼働データ検索実行エレメントの数を算出する稼働数算出ステップと、前記稼働数算出ステップで算出したエレメント数および前記検索条件入力ステップで入力した検索条件に基づいて、前記各処理装置の処理負荷が均等となるように、前記各稼働データ検索実行エレメントに与える分散検索条件を生成する分散検索条件生成ステップと、前記分散検索条件生成ステップで生成した分散検索条件を前記稼働データ検索実行エレメントに出力する分散検索条件出力ステップとを含み、前記データ検索実行エレメントに対しては、前記分散検索条件を入力する分散検索条件入力ステップと、前記分散検索条件入力ステップで入力した分散検索条件に基づいて該当の検索対象データを検索するデータ検索ステップと、前記データ検索ステップの検索結果を前記データ検索制御エレメントに出力する検索結果出力ステップとを含み、前記データ検索制御エレメントに対しては、さらに、前記検索結果を入力する検索結果入力ステップを含む。
【発明の効果】
【００２３】
以上説明したように、本発明に係る請求項１記載の分散検索システム、または請求項４記載の分散検索方法によれば、各処理装置の処理負荷が均等となるように、各データ検索実行エレメントに与える分散検索条件が生成されるので、データ検索実行エレメント間で生じる処理負荷の偏りを低減することができる。さらに、現在検索が実行可能なデータ検索実行エレメントの数が動的に算出されるので、データ検索実行エレメント間で生じる処理負荷の偏りをさらに低減することができる。したがって、従来に比して、検索処理時間を短縮することができるという効果が得られる。
さらに、本発明に係る請求項３記載の分散検索システムによれば、蓄積データ情報により各データ検索実行エレメントが実行する検索処理の規模を把握することができるので、各処理装置の処理負荷がさらに均等となるように分散検索条件を生成することができるという効果が得られる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の実施の形態を図面を参照しながら説明する。図１ないし図７は、本発明に係る分散検索システムおよび分散検索方法の実施の形態を示す図である。
本実施の形態は、本発明に係る分散検索システムおよび分散検索方法を、ＮＥのトラフィックデータを検索する場合について適用したものである。
まず、本発明を適用するトラフィック管理システムの機能概要を図１を参照しながら説明する。
【００２５】
図１は、トラフィック管理システムの機能概要を示す機能ブロック図である。
通信網１９９には、図１に示すように、データの検索を制御するデータ検索制御エレメント１００と、トラフィックデータを蓄積する複数のデータ蓄積エレメント１１０と、データの検索を実行する複数のデータ検索実行エレメント１２０と、ＤＮＳ（Domain Name System）サーバ２００とが接続されている。また、図示しないが、複数のＮＥが接続されている。これらエレメント１００〜１２０は、それぞれ個別のサーバマシンとして構成され、各エレメント１００〜１２０間でＤ３Ａシナリオを流通しこれらの機能の組み合わせによりトラヒック管理システムにおけるデータ検索処理を行っている。
【００２６】
データ蓄積エレメント１１０は、オペレーション対象となるＮＥからトラフィックデータを収集し、収集したトラフィックデータを一定期間ごとに１つのファイルにまとめ、トラフィックデータファイルとして蓄積する。
データ検索制御エレメント１００は、検索条件を受信したときは、受信した検索条件に基づいて、各データ検索実行エレメント１２０の処理負荷が均等となるように、各データ検索実行エレメント１２０に与える分散検索条件を生成し、生成した分散検索条件をデータ検索実行エレメント１２０に送信する。そして、各データ検索実行エレメント１２０から検索結果を受信し、受信した検索結果を集計して要求元に返却する。
【００２７】
データ検索実行エレメント１２０は、分散検索条件を受信したときは、受信した分散検索条件に基づいて、データ検索に必要なトラフィックデータファイルをデータ蓄積エレメント１１０から取得し、受信した分散検索条件に基づいて、トラフィックデータファイルのなかから該当のトラフィックデータを検索し、データ検索制御エレメント１００にその検索結果を送信する。
【００２８】
次に、データ検索制御エレメント１００の構成を詳細に説明する。
データ検索制御エレメント１００は、一般的なコンピュータと同一機能を有して構成されている。
データ検索制御エレメント１００の記憶装置には、オペレーション対象となるＮＥのトラフィックデータファイルを蓄積したデータ蓄積エレメント１１０を登録した取得先テーブル４００が格納されている。
【００２９】
図２は、取得先テーブル４００のデータ構造を示す図である。
取得先テーブル４００には、図２に示すように、オペレーション対象となる各ＮＥごとに１つのレコードが登録されている。各レコードは、ＮＥを一意に特定するフィールド４０２と、データ蓄積エレメント１１０のＤＮＳ名を登録するフィールド４０４とを含んで構成されている。
図２の例では、第１段目のレコードには、ＮＥ名として「NE001」が、データ蓄積エレメント１１０のＤＮＳ名として「DSEL001」がそれぞれ登録されている。これは、ＮＥのトラフィックデータファイルの取得先となるデータ蓄積エレメント１１０をＤＮＳ解決することを示している。
データ検索制御エレメント１００の記憶装置には、さらに、データ検索実行エレメント１２０ＤＮＳ名が登録されている。
【００３０】
データ検索制御エレメント１００のＣＰＵは、マイクロプロセッシングユニット等からなり、ＲＯＭの所定領域に格納されている所定のプログラムを起動させ、そのプログラムに従って、図３のフローチャートに示すデータ検索制御処理を実行する。
図３は、データ検索制御処理を示すフローチャートである。
データ検索制御処理は、データ検索制御エレメント１００のＣＰＵにおいて実行されると、図３に示すように、まず、ステップＳ１００に移行する。
【００３１】
ステップＳ１００では、検索要求を受信したか否かを判定し、検索要求を受信したと判定したとき(Yes)は、ステップＳ１０２に移行するが、そうでないと判定したとき(No)は、検索要求を受信するまでステップＳ１００で待機する。
ステップＳ１０２では、検索条件を受信し、ステップＳ１０４に移行して、検索条件を分析してオペレーション対象となるＮＥを判定し、ステップＳ１０６に移行する。
【００３２】
ステップＳ１０６では、判定したオペレーション対象ＮＥに対応するデータ蓄積エレメント１１０のＤＮＳ名を取得先テーブル４００から読み出し、ステップＳ１０８に移行して、読み出したＤＮＳ名をもとにＤＮＳサーバ２００に対して問い合わせを行い、データ蓄積エレメント１１０のＩＰアドレスをＤＮＳサーバ２００から取得し、ステップＳ１１０に移行する。
【００３３】
ステップＳ１１０では、取得したＩＰアドレスに基づいて、蓄積データ情報の取得要求をデータ蓄積エレメント１１０に送信し、ステップＳ１１２に移行して、トラフィックデータファイルのファイル名、レコード数および最終更新日時等を含む蓄積データ情報を受信し、ステップＳ１１４に移行する。
ステップＳ１１４では、データ検索実行エレメント１２０のＤＮＳ名をもとに稼動中のデータ検索実行エレメント１２０のＩＰアドレスをＤＮＳサーバ２００から取得し、ステップＳ１１８に移行する。
【００３４】
ステップＳ１１８では、取得したデータ検索実行エレメント１２０の情報に基づいて、複数のデータ検索実行エレメント１２０のうち現在検索が実行可能なもの（以下、稼働データ検索実行エレメント１２０という。）の数を算出し、ステップＳ１２０に移行する。
ステップＳ１２０では、各稼働データ検索実行エレメント１２０に与える分散検索条件を生成する分散検索条件生成処理を実行する。分散検索条件生成処理では、蓄積データ情報に含まれるレコード数の合計である総レコード数をｓ、ステップＳ１１８で算出したエレメント数をｎとし、稼働データ検索実行エレメント＃ｉ（ｉ＝１〜ｎ）には、（（ｉ−１）×ｍ＋１）〜ｉ×ｍ番目のレコードに対する検索処理を割り当てる。ただし、ｍ＝ｓ／ｎとする。
【００３５】
このとき、総レコード数ｓが少ない場合に多くの稼働データ検索実行エレメント１２０で検索処理を実行すると、並行処理によるオーバーヘッドの影響やデータ転送量の肥大化が考えられ非効率的である。そのため、１台の稼働データ検索実行エレメント１２０に割り当てるレコード数の下限を規定する閾値Ｌを導入し、データ検索に利用する稼働データ検索実行エレメント１２０の数ｆ（ｓ）を下式（１）により算出する。そして、ｍ＝ｓ／ｆ（ｓ）として、稼働データ検索実行エレメント１２０に検索処理を割り当てる。
【００３６】
【数１】
2006350839.tif 000003
【００３７】
稼働データ検索実行エレメント＃ｉに与える分散検索条件は、このような割当に基づいて生成することができる。分散検索条件には、検索対象となるトラフィックデータファイルのファイル名、レコード区間および最終更新日時等を含める。
次いで、ステップＳ１２２に移行して、ステップＳ１１６で取得したＩＰアドレスに基づいて検索実行要求を送信し、生成した各分散検索条件を対応の稼働データ検索実行エレメント１２０に送信し、ステップＳ１２６に移行する。なお、送信先の稼働データ検索実行エレメント１２０が複数の場合は、検索実行要求および分散検索条件をパラレルに送信する。
【００３８】
ステップＳ１２６では、稼働データ検索実行エレメント１２０から検索結果を受信したか否かを判定し、検索結果を受信したと判定したとき(Yes)は、ステップＳ１２８に移行するが、そうでないと判定したとき(No)は、検索結果を受信するまでステップＳ１２６で待機する。
ステップＳ１２８では、受信した検索結果を記憶装置に保存し、ステップＳ１３０に移行して、すべての稼働データ検索実行エレメント１２０から検索結果を受信したか否かを判定し、すべての稼働データ検索実行エレメント１２０から検索結果を受信したと判定したとき(Yes)は、ステップＳ１３２に移行する。
【００３９】
ステップＳ１３２では、すべての検索結果を記憶装置から読み出し、読み出した検索結果をオペレータが認識しやすいよう年月日時分によるソートや検索情報の番号から日本語への変換等を行う検索結果集計処理を実行し、一連の処理を終了して元の処理に復帰させる。
一方、ステップＳ１３０で、いずれかの稼働データ検索実行エレメント１２０から検索結果を受信していないと判定したとき(No)は、ステップＳ１２６に移行する。
【００４０】
次に、データ蓄積エレメント１１０の構成を詳細に説明する。
データ蓄積エレメント１１０は、一般的なコンピュータと同一機能を有して構成されている。
データ蓄積エレメント１１０のＣＰＵは、マイクロプロセッシングユニット等からなり、ＲＯＭの所定領域に格納されている所定のプログラムを起動させ、そのプログラムに従って、図４および図５のフローチャートに示す蓄積データ情報提供処理およびトラフィックデータファイル提供処理をそれぞれ時分割で実行する。
【００４１】
初めに、蓄積データ情報提供処理を説明する。
図４は、蓄積データ情報提供処理を示すフローチャートである。
蓄積データ情報提供処理は、データ蓄積エレメント１１０のＣＰＵにおいて実行されると、図４に示すように、まず、ステップＳ２００に移行する。
ステップＳ２００では、蓄積データ情報の取得要求を受信したか否かを判定し、取得要求を受信したと判定したとき(Yes)は、ステップＳ２０２に移行するが、そうでないと判定したとき(No)は、取得要求を受信するまでステップＳ２００で待機する。
ステップＳ２０２では、自己が蓄積するトラフィックデータファイルのファイル名、レコード数および最終更新日時等を含む蓄積データ情報を記憶装置から読み出し、ステップＳ２０４に移行して、読み出した蓄積データ情報を要求元に送信し、一連の処理を終了して元の処理に復帰させる。
【００４２】
次に、トラフィックデータファイル提供処理を説明する。
図５は、トラフィックデータファイル提供処理を示すフローチャートである。
トラフィックデータファイル提供処理は、データ蓄積エレメント１１０のＣＰＵにおいて実行されると、図５に示すように、まず、ステップＳ３００に移行する。
ステップＳ３００では、トラフィックデータファイルの取得要求を受信したか否かを判定し、取得要求を受信したと判定したとき(Yes)は、ステップＳ３０２に移行するが、そうでないと判定したとき(No)は、取得要求を受信するまでステップＳ３００で待機する。
ステップＳ３０２では、受信した取得要求に係るトラフィックデータファイルを記憶装置から読み出し、ステップＳ３０４に移行して、読み出したトラフィックデータファイルを要求元に送信し、一連の処理を終了して元の処理に復帰させる。
【００４３】
次に、データ検索実行エレメント１２０の構成を詳細に説明する。
データ検索実行エレメント１２０は、一般的なコンピュータと同一機能を有して構成されている。
データ検索実行エレメント１２０のＣＰＵは、マイクロプロセッシングユニット等からなり、ＲＯＭの所定領域に格納されている所定のプログラムを起動させ、そのプログラムに従って、図６のフローチャートに示すデータ検索実行処理を実行する。
図６は、データ検索実行処理を示すフローチャートである。
データ検索実行処理は、データ検索実行エレメント１２０のＣＰＵにおいて実行されると、図６に示すように、まず、ステップＳ４００に移行する。
【００４４】
ステップＳ４００では、検索実行要求を受信したか否かを判定し、検索実行要求を受信したと判定したとき(Yes)は、ステップＳ４０２に移行するが、そうでないと判定したとき(No)は、検索実行要求を受信するまでステップＳ４００で待機する。
ステップＳ４０２では、分散検索条件を受信し、ステップＳ４０４に移行して、受信した分散検索条件に基づいて、検索対象となるトラフィックデータファイルが記憶装置のキャッシュに存在するか否かを判定し、検索対象となるトラフィックデータファイルがキャッシュに存在しないと判定したとき(No)は、ステップＳ４０６に移行する。
【００４５】
ステップＳ４０６では、受信した分散検索条件に基づいて、データ検索に必要なトラフィックデータファイルの取得要求を対応のデータ蓄積エレメント１１０に送信し、ステップＳ４０８に移行して、トラフィックデータファイルを受信し、ステップＳ４１０に移行して、受信したトラフィックデータファイルを記憶装置のキャッシュに保存し、ステップＳ４１２に移行する。
ステップＳ４１２では、受信した分散検索条件に該当するトラフィックデータをトラフィックデータファイルのなかから検索する検索処理を実行し、ステップＳ４１４に移行して、検索処理の検索結果をデータ検索制御エレメント１００に送信し、一連の処理を終了して元の処理に復帰させる。
【００４６】
一方、ステップＳ４０４で、検索対象となるトラフィックデータファイルが記憶装置のキャッシュに存在すると判定したとき(Yes)は、ステップＳ４１６に移行して、受信した分散検索条件に基づいて、キャッシュに存在するトラフィックデータファイルが最新であるか否かを判定し、トラフィックデータファイルが最新であると判定したとき(Yes)は、ステップＳ４１８に移行する。
ステップＳ４１８では、検索対象となるトラフィックデータファイルを記憶装置のキャッシュから読み出し、ステップＳ４１２に移行する。
一方、ステップＳ４１６で、キャッシュに存在するトラフィックデータファイルが最新でないと判定したとき(No)は、ステップＳ４０６に移行する。
【００４７】
次に、本実施の形態の動作を説明する。
図７は、本発明に係るトラフィック管理システムの動作シーケンスを示す図である。
オペレータは、トラフィックデータの分析作業を行うため、例えば、以下の検索条件を設定して検索を実行する。
（１）検索対象期間：２００５／１／２６  １７：００〜１８：００
（２）検索対象トラフィックデータ：ＮＥ＃１回線＊
（３）検索対象トラフィックデータ：ＮＥ＃２回線＊
【００４８】
データ検索制御エレメント１００では、オペレータにより設定された検索条件を受信すると、図７に示すように、ステップＳ１０４を経て、検索条件が分析されてオペレーション対象となるＮＥが判定される。検索条件には、ＮＥ＃１、ＮＥ＃２がオペレーション対象として設定されているので、ＮＥ＃１、＃２が判定される。次いで、ステップＳ１０６、Ｓ１０８を経て、オペレーション対象ＮＥ＃１、＃２のそれぞれに対応するデータ蓄積エレメント１１０のＤＮＳ名が読み出され、読み出されたＤＮＳ名をもとに、データ蓄積エレメント１１０のＩＰアドレスがＤＮＳサーバ２００から取得される。そして、ステップＳ１１０を経て、取得されたＩＰアドレスに基づいて、蓄積データ情報の取得要求がデータ蓄積エレメント１１０に送信される。
データ蓄積エレメント１１０では、蓄積データ情報の取得要求を受信すると、ステップＳ２０２、Ｓ２０４を経て、トラフィックデータファイルのファイル名、レコード数および最終更新日時等を含む蓄積データ情報が読み出され、読み出された蓄積データ情報がデータ検索制御エレメント１００に送信される。
【００４９】
データ検索制御エレメント１００では、蓄積データ情報を受信すると、ステップＳ１１４、Ｓ１１６を経て、データ検索実行エレメント１２０のＤＮＳ名が読み出され、読み出されたＤＮＳ名をもとに、データ検索実行エレメント１２０のＩＰアドレスがＤＮＳサーバ２００から取得される。また、ステップＳ１１８を経て、稼働データ検索実行エレメント１２０の数が算出される。そして、ステップＳ１２０を経て、算出されたエレメント数および受信した検索条件に基づいて、各稼働データ検索実行エレメント１２０の処理負荷が均等となるように分散検索条件が生成される。例えば、ＮＥ＃１の対象レコード数が１０００件、ＮＥ＃２の対象レコード数が５００件であり、データ検索に利用する稼働データ検索実行エレメント１２０が３台である場合は、データ検索実行エレメント＃１〜＃３にはそれぞれ５００件の検索処理が割り当てられる。その内訳は、データ検索実行エレメント＃１にはＮＥ＃１のレコード１〜５００番の検索処理、データ検索実行エレメント＃２にはＮＥ＃１のレコード５０１〜１０００番の検索処理、データ検索実行エレメント＃３にはＮＥ＃２のレコード１〜５００番の検索処理となる。分散検索条件が生成されると、ステップＳ１２２、Ｓ１２４を経て、取得されたＩＰアドレスに基づいて、生成した各分散検索条件が検索実行要求とともに対応の稼働データ検索実行エレメント１２０に送信される。
【００５０】
データ検索実行エレメント１２０では、検索実行要求とともに分散検索条件を受信すると、検索対象となるトラフィックデータファイルがキャッシュに存在しない場合は、ステップＳ４０６を経て、データ検索に必要なトラフィックデータファイルの取得要求が対応のデータ蓄積エレメント１１０に送信される。
データ蓄積エレメント１１０では、トラフィックデータファイルの取得要求を受信すると、ステップＳ３０２、Ｓ３０４を経て、受信した取得要求に係るトラフィックデータファイルが読み出され、読み出されたトラフィックデータファイルがデータ検索実行エレメント１２０に送信される。ＮＥ＃１に対応するデータ検索実行エレメント＃１、＃２に対しては、１０００件のレコードを登録したトラフィックデータファイルが、ＮＥ＃２に対応するデータ検索実行エレメント＃３に対しては、５００件のレコードを登録したトラフィックデータファイルが送信される。
【００５１】
データ検索実行エレメント１２０では、トラフィックデータファイルを受信すると、ステップＳ４１２、Ｓ４１４を経て、受信したトラフィックデータファイルのなかから分散検索条件に該当するトラフィックデータが検索され、データ検索制御エレメント１００にその検索結果が送信される。
データ検索制御エレメント１００では、分散検索条件を送信したすべての稼働データ検索実行エレメント１２０から検索結果を受信すると、ステップＳ１３２を経て、すべての検索結果に基づいて検索結果集計処理が行われ、その集計結果がオペレータに返却される。
【００５２】
図７の例では、データ検索実行エレメント＃１〜＃３がそれぞれ５００件の検索処理を担当しているため、検索処理時間は、５００レコード分に相当する時間となる。これに対し、Ｄ３Ａを適用した従来のトラフィック管理システムでは、データ検索実行エレメント＃１がＮＥ＃１に対応する１０００件の検索処理を、データ検索実行エレメント＃２がＮＥ＃２に対応する５００件の検索処理を担当することになるので、検索処理時間は、データ検索実行エレメント＃１の処理時間に依存し、１０００レコード分に相当する時間となる。
【００５３】
一方、データ検索実行エレメント１２０では、検索対象となるトラフィックデータファイルが存在し、かつ、それが最新のものである場合は、ステップＳ４１８、Ｓ４１２を経て、検索対象となるトラフィックデータファイルが読み出され、読み出された受信したトラフィックデータファイルのなかから分散検索条件に該当するトラフィックデータが検索される。これに対し、トラフィックデータファイルが最新でない場合は、上記同様に、データ蓄積エレメント１１０から最新のトラフィックデータファイルが取得される。
【００５４】
このようにして、本実施の形態では、データ検索制御エレメント１００は、検索条件を受信したときは、稼働データ検索実行エレメント１２０の数を算出し、算出したエレメント数および受信した検索条件に基づいて、各稼働データ検索実行エレメント１２０の処理負荷が均等となるように分散検索条件を生成し、生成した分散検索条件を対応の稼働データ検索実行エレメント１２０に送信し、データ検索実行エレメント１２０は、分散検索条件を受信したときは、データ検索に必要なトラフィックデータファイルをデータ蓄積エレメント１１０から取得し、受信した分散検索条件に基づいてトラフィックデータファイルのなかから該当のトラフィックデータを検索し、データ検索制御エレメント１００にその検索結果を送信する。
【００５５】
これにより、各データ検索実行エレメント１２０の処理負荷が均等となるように分散検索条件が生成されるので、データ検索実行エレメント１２０間で生じる処理負荷の偏りを低減することができる。さらに、稼働データ検索実行エレメント１２０の数が動的に算出されるので、データ検索実行エレメント１２０間で生じる処理負荷の偏りをさらに低減することができる。したがって、従来に比して、検索処理時間を短縮することができる。
【００５６】
さらに、本実施の形態では、データ検索制御エレメント１００は、トラフィックデータファイルのファイル名、レコード数および最終更新日時等を含む蓄積データ情報をデータ蓄積エレメント１１０から取得し、エレメント数、検索条件および取得した蓄積データ情報に基づいて分散検索条件を生成する。
これにより、蓄積データ情報により各データ検索実行エレメント１２０が実行する検索処理の規模を把握することができるので、各データ検索実行エレメント１２０の処理負荷がさらに均等となるように分散検索条件を生成することができる。
【００５７】
さらに、本実施の形態では、データ検索制御エレメント１００は、１台の稼働データ検索実行エレメント１２０に割り当てるレコード数の下限を規定する閾値Ｌ、エレメント数および検索対象となる総レコード数に基づいて、データ検索に利用する稼働データ検索実行エレメント１２０の数を算出する。
これにより、総レコード数が少ない場合に、並行処理によるオーバーヘッドやデータ転送量の肥大化を抑制することができる。
【００５８】
上記実施の形態において、ステップＳ１０２は、請求項１記載の検索条件入力手段、または請求項４記載の検索条件入力ステップに対応し、ステップＳ１１０、Ｓ１１２は、請求項３記載の蓄積データ情報取得手段に対応し、ステップＳ１１８は、請求項１記載の稼働数算出手段、または請求項４記載の稼働数算出ステップに対応している。また、ステップＳ１２０は、請求項１若しくは３記載の分散検索条件生成手段、または請求項４記載の分散検索条件生成ステップに対応し、ステップＳ１２４は、請求項１記載の分散検索条件出力手段、または請求項４記載の分散検索条件出力ステップに対応している。
【００５９】
また、上記実施の形態において、ステップＳ１２６は、請求項１記載の検索結果入力手段、または請求項４記載の検索結果入力ステップに対応し、ステップＳ２００〜Ｓ２０４は、請求項３記載の蓄積データ情報提供手段に対応し、ステップＳ３００〜Ｓ３０４は、請求項２記載の検索対象データ提供手段に対応している。また、ステップＳ４０２は、請求項１若しくは２記載の分散検索条件入力手段、または請求項４記載の分散検索条件入力ステップに対応し、ステップＳ４０６、Ｓ４０８は、請求項２記載の検索対象データ取得手段に対応し、ステップＳ４１２は、請求項１若しくは２記載のデータ検索手段、または請求項４記載のデータ検索ステップに対応している。
【００６０】
また、上記実施の形態において、ステップＳ４１４は、請求項１記載の検索結果出力手段、または請求項４記載の検索結果出力ステップに対応し、トラフィックデータは、請求項１ないし４記載の検索対象データに対応している。
なお、上記実施の形態においては、データ検索制御エレメント１００、データ蓄積エレメント１１０およびデータ検索実行エレメント１２０をそれぞれ個別のサーバマシンとして構成したが、これに限らず、複数のデータ検索実行エレメント１２０が少なくとも２つのサーバマシンにより構成されていれば、１台のサーバマシンに複数のエレメント１００〜１２０を配置することも可能である。
【００６１】
また、上記実施の形態において、図３〜図６のフローチャートに示す処理を実行するにあたってはいずれも、ＲＯＭにあらかじめ格納されている制御プログラムを実行する場合について説明したが、これに限らず、これらの手順を示したプログラムが記憶された記憶媒体から、そのプログラムをＲＡＭに読み込んで実行するようにしてもよい。
【００６２】
ここで、記憶媒体とは、ＲＡＭ、ＲＯＭ等の半導体記憶媒体、ＦＤ、ＨＤ等の磁気記憶型記憶媒体、ＣＤ、ＣＤＶ、ＬＤ、ＤＶＤ等の光学的読取方式記憶媒体、ＭＯ等の磁気記憶型／光学的読取方式記憶媒体であって、電子的、磁気的、光学的等の読み取り方法のいかんにかかわらず、コンピュータで読み取り可能な記憶媒体であれば、あらゆる記憶媒体を含むものである。
また、上記実施の形態において、本発明に係る分散検索システムおよび分散検索方法を、ＮＥのトラフィックデータを検索する場合について適用したが、これに限らず、本発明の主旨を逸脱しない範囲で他の場合にも適用可能である。
【図面の簡単な説明】
【００６３】
【図１】トラフィック管理システムの機能概要を示す機能ブロック図である。
【図２】取得先テーブル４００のデータ構造を示す図である。
【図３】データ検索制御処理を示すフローチャートである。
【図４】蓄積データ情報提供処理を示すフローチャートである。
【図５】トラフィックデータファイル提供処理を示すフローチャートである。
【図６】データ検索実行処理を示すフローチャートである。
【図７】本発明に係るトラフィック管理システムの動作シーケンスを示す図である。
【図８】Ｄ３Ａを適用した従来のトラフィック管理システムの構成を示すブロック図である。
【図９】Ｄ３Ａを適用した従来のトラフィック管理システムの動作シーケンスを示す図である。
【符号の説明】
【００６４】
１００  データ検索制御エレメント
１１０  データ蓄積エレメント
１２０  データ検索実行エレメント
２００  ＤＮＳサーバ
１９９  通信網
４００  取得先テーブル
４２０  稼働状態テーブル
【図１】
2006350839.tif 000004
【図２】
2006350839.tif 000005
【図３】
2006350839.tif 000006
【図４】
2006350839.tif 000007
【図５】
2006350839.tif 000008
【図６】
2006350839.tif 000009
【図７】
2006350839.tif 000010
【図８】
2006350839.tif 000011
【図９】
2006350839.tif 000012