説明

イベント処理負荷分散システム、イベント処理負荷分散制御装置、制御方法およびプログラム

【課題】イベント条件が完全に一致しない処理ルールに対しても、設定される振り分けルールの数を少なくするイベント処理負荷分散システム等を提供する。
【解決手段】イベント処理分散制御装置101が、処理ルール受信部200と、処理すべきイベントの条件を示すイベント条件を記録する処理ルール振り分け記録部205と、処理サーバに新規の処理ルールを割り当てる処理ルール振り分け部201とを有すると共に、既存の振り分けルールと新規に受信した処理ルールとの間の差分の許容範囲を記録する振り分けルール許容差記録部207と、この差分が許容範囲以内である場合に、この新規発生イベントが含まれるように既存の振り分けルールを更新する振り分けルール決定部203とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はイベント処理負荷分散システム、イベント処理負荷分散制御装置、制御方法およびプログラムに関し、特にイベントの振り分けの処理をより軽快に行うことを可能とするイベント処理負荷分散システム等に関する。
【背景技術】
【0002】
RFID(Radio Frequency IDentification)タグおよびリーダを利用した技術は、たとえば非接触ICカードなどのように、一部で既に普及が始まっているものがある。さらに、多数のセンサ付き端末を空間に配置したセンサネットワークについての研究も進められている。これらのネットワークでは、RFIDリーダや各種センサなどのデバイス(以後イベント発生源という)によって発生されるイベントをサーバが受信して、必要な処理を行う。
【0003】
より具体的には、たとえばイベント発生源が各地に配置された気温、気圧、風向などのセンサである場合、これらのセンサが定期的に送信する各々の測定値がイベントとなり、このイベントにはその測定値と共に、測定値の種類や測定場所などを示すデータがコンテキスト(内容)として含まれる。これらのイベントを処理するアプリケーションは、たとえば「全国の気温の変動」「特定地域の気温・気圧・風向の変動」などのように自らが必要とするイベントを受信し、受信したイベントに基づく処理、たとえば「気象情報の集計」や「気象予測」などを行うことができる。
【0004】
また、イベント発生源が自動車に搭載された情報端末である場合、これらの情報端末は各車の位置、移動速度、移動方向、エンジンやバッテリの状態などをイベントとして送信する。このイベントには各々の値と、それらの種類や自車のID(IDentifer、識別子)などを示すデータがコンテキストとして含まれる。これらのイベントを処理するアプリケーションは、たとえば「特定地点付近にいる車」「特定の状態にある車」などのように自らが必要とするイベントを受信し、受信したイベントに基づく処理、たとえば「特定地点付近の車に、その地点の店の紹介」「特定の状態にある車に、その状態に対応するサービスの紹介」などを行うことができる。
【0005】
そして、イベント発生源が物流システムでトラックやベルトコンベアなどに配置されたRFIDリーダである場合、これらのRFIDリーダは特定の荷物に装着されたRFIDタグのIDと、RFIDリーダ自らのIDをコンテキストとして含めたイベントを送信する。これらのイベントを処理するアプリケーションは、「特定のタグIDの荷物」などのように自らが必要とするイベントを受信し、受信したイベントに基づく処理、たとえば「特定のタグIDの荷物の追跡」などを行うことができる。
【0006】
このようなシステムは、今後の社会において新しいインフラになりうるものとして急速に研究が進められている。しかしながら、イベント発生源としては膨大な台数のデバイスが必要であり、それらのデバイスから受信するイベントも膨大なデータ量となる。
【0007】
図15は、第1の既存技術に係るイベント処理システム901の構成について示す説明図である。このイベント処理システム901では、複数台のイベント発生源902a〜fで発生されるイベントを、処理ルールを記憶した1台の処理サーバ903が受信して、この処理サーバ903で実行される複数のアプリケーション904a〜fがこれらのイベントに対して処理を行う。
【0008】
このイベント処理システム901では、明らかに処理サーバ903が処理のボトルネックとなるので、該システムの処理能力を増やすことが困難であり、従ってイベント発生源の個数、コンテキストの種類、イベントの測定頻度などのような該システムの規模を増大させることが困難である。
【0009】
図16は、第2の既存技術に係るイベント処理システム911の構成について示す説明図である。このイベント処理システム911では、ウェブサービスのようなサーバ−クライアント方式を前提として、各クライアント912a〜fからの処理要求を複数のサーバ913a〜bに転送する振り分け器914を配置している。
【0010】
振り分け器914は、TCPコネクションやクッキーなどを参照して、同一クライアント912a〜fからの処理要求は同一のサーバ913a〜bで処理されるように転送処理を行っている。しかしながら、この構造も、振り分け器914が処理においてネックになっているという問題を本質的に解決するものではない。
【0011】
図17は、特許文献1に記載された第3の既存技術に係るイベント処理システム921の構成について示す説明図である。このイベント処理システム921では、複数台のイベント発生源922a〜hで発生されるイベントを処理する複数台の処理サーバ923a〜fを配置し、この処理サーバ923a〜fの前段にコンテキスト依存振り分け器924を配置している。
【0012】
そして、イベント処理分散制御装置925が、処理サーバ923a〜fが設定された処理ルールを実行するために必要なイベントが適切に分配されるよう、コンテキスト依存振り分け器924に振り分けルールを設定している。これによって、処理サーバ923a〜fは各々のイベントを適切にアプリケーション926a〜hに転送して処理させることができる。
【先行技術文献】
【特許文献】
【0013】
【特許文献1】特許第4161998号公報
【発明の概要】
【発明が解決しようとする課題】
【0014】
特許文献1に記載の技術では、イベント処理分散制御装置925はアプリケーション926a〜hから設定されたイベント処理ルールのイベント条件の各々に対して、コンテキスト依存振り分け器924に振り分けルールを設定する。そのため、この技術では処理サーバ923a〜fの1台ごとに設定されるイベント処理ルールの数を減少させることはできる。
【0015】
しかしながら、コンテキスト依存振り分け器924に設定される振り分けルールはイベント条件の数に比例して増加してしまうという課題がある。例えば、「tagID=1」というイベント条件をコンテキストとして含むイベント処理ルールと「tagID=3」というイベント条件をコンテキストとして含むイベント処理ルールがあった場合、コンテキスト依存振り分け器924はそれら「tagID=1」と「tagID=3」の各々に対して別個の振り分けルールを設定する。
【0016】
前述したように、イベント処理システムは膨大な台数のイベント発生源から受信する膨大な量のイベントを処理しなければならない。そのためには、各処理サーバ923a〜fに設定されるイベント処理ルールが少ないことはもちろん、コンテキスト依存振り分け器924に設定される振り分けルールの数が少ない方が望ましい。しかしながら、この技術ではイベント条件が完全には一致しないイベント処理ルールに対して、設定される振り分けルールの数を少なくすることは困難である。
【0017】
本発明の目的は、イベント条件が完全に一致しない処理ルールに対しても、設定される振り分けルールの数を少なくして、イベントの振り分けの処理をより軽快に行うことを可能とするイベント処理負荷分散システム、イベント処理負荷分散制御装置、制御方法およびプログラムを提供することにある。
【課題を解決するための手段】
【0018】
上記目的を達成するため、本発明に係るイベント処理負荷分散システムは、複数の他のコンピュータで動作する各アプリケーションに対してイベント処理結果を通知する複数の処理サーバと、複数の処理サーバに対して予め設定された複数のイベント発生源において発生したイベントを振り分けるコンテキスト依存振り分け装置と、複数の処理サーバに対してイベントの内容を示すコンテキストに基づく処理ルールを設定し、複数の処理サーバが処理ルールを実行するために必要なイベントが適切に分配されるように振り分けルールをコンテキスト依存振り分け装置に記憶させるイベント処理分散制御装置と備えたイベント処理負荷分散システムであって、イベント処理分散制御装置は、各アプリケーションから処理ルールを受信する処理ルール受信部と、この受信された処理ルールに含まれる処理すべきイベントの条件を示すイベント条件を、処理サーバごとに少なくとも記録する処理ルール振り分け記録部と、処理ルール受信部が新規に処理ルールを受信した場合に、処理ルール振り分け記録部を参照して、処理サーバにこの処理ルールを割り当てる処理ルール振り分け部とを有すると共に、既存の振り分けルールに含まれるコンテキストと新規に受信した処理ルールに含まれるコンテキストとの間の差分の許容範囲を記録する振り分けルール許容差記録部と、新規に受信した処理ルールに含まれるコンテキストと既存の振り分けルールに含まれるコンテキストとの間の差分が許容範囲以内である場合に、この新規に受信した処理ルールが含まれるように既存の振り分けルールを更新する振り分けルール決定部とを有することを特徴とする。
【0019】
上記目的を達成するため、本発明に係るイベント処理負荷分散制御装置は、複数の他のコンピュータで動作する各アプリケーションに対してイベント処理結果を通知する複数の処理サーバと複数の処理サーバに対して予め設定された複数のイベント発生源において発生したイベントを振り分けるコンテキスト依存振り分け装置とにネットワークを介して接続され、複数の処理サーバにイベントの内容を示すコンテキストに基づく処理ルールを設定すると共に複数の処理サーバが処理ルールを実行するために必要なイベントが適切に分配されるように振り分けルールをコンテキスト依存振り分け装置に記憶させるイベント処理分散制御装置であって、各アプリケーションから処理ルールを受信する処理ルール受信部と、この受信された処理ルールに含まれる処理すべきイベントの条件を示すイベント条件を、処理サーバごとに少なくとも記録する処理ルール振り分け記録部と、処理ルール受信部が新規に処理ルールを受信した場合に、処理ルール振り分け記録部を参照して、処理サーバにこの処理ルールを割り当てる処理ルール振り分け部とを有すると共に、既存の振り分けルールに含まれるコンテキストと新規に受信した処理ルールに含まれるコンテキストとの間の差分の許容範囲を記録する振り分けルール許容差記録部と、新規に受信した処理ルールに含まれるコンテキストと既存の振り分けルールに含まれるコンテキストとの間の差分が許容範囲以内である場合に、この新規発生イベントが含まれるように既存の振り分けルールを更新する振り分けルール決定部とを有することを特徴とする。
【0020】
上記目的を達成するため、本発明に係るイベント処理負荷分散制御方法は、複数の他のコンピュータで動作する各アプリケーションに対してイベント処理結果を通知する複数の処理サーバと、複数の処理サーバに対して予め設定された複数のイベント発生源において発生したイベントを振り分けるコンテキスト依存振り分け装置と、複数の処理サーバに対してイベントの内容を示すコンテキストに基づく処理ルールを設定し、複数の処理サーバが処理ルールを実行するために必要なイベントが適切に分配されるように振り分けルールをコンテキスト依存振り分け装置に記憶させるイベント処理分散制御装置と備えたイベント処理負荷分散システムにあって、アプリケーションから新規の処理ルールをイベント処理分散制御装置の処理ルール受信部が受信し、この新規の処理ルールの受信に応じて、予め記録された処理すべきイベントの条件を示すイベント条件に基づいてイベント処理分散制御装置の処理ルール振り分け部が処理サーバにこの処理ルールを割り当て、既存の振り分けルールに含まれるコンテキストと新規に受信した処理ルールに含まれるコンテキストとの間の差分が予め記録された許容範囲以内である場合に、この新規に受信した処理ルールが含まれるようにイベント処理分散制御装置の振り分けルール決定部が既存の振り分けルールを更新することを特徴とする。
【0021】
上記目的を達成するため、本発明に係るイベント処理負荷分散制御プログラムは、複数の他のコンピュータで動作する各アプリケーションに対してイベント処理結果を通知する複数の処理サーバと、複数の処理サーバに対して予め設定された複数のイベント発生源において発生したイベントを振り分けるコンテキスト依存振り分け装置と、複数の処理サーバに対してイベントの内容を示すコンテキストに基づく処理ルールを設定し、複数の処理サーバが処理ルールを実行するために必要なイベントが適切に分配されるように振り分けルールをコンテキスト依存振り分け装置に記憶させるイベント処理分散制御装置と備えたイベント処理負荷分散システムにあって、イベント処理分散制御装置が備えるコンピュータに、アプリケーションから新規の処理ルールを受信する手順、この新規の処理ルールの受信に応じて、予め記録された処理すべきイベントの条件を示すイベント条件に基づいて処理サーバにこの処理ルールを割り当てる手順、および既存の振り分けルールに含まれるコンテキストと新規に受信した処理ルールに含まれるコンテキストとの間の差分が予め記録された許容範囲以内である場合に、この新規に受信した処理ルールが含まれるように既存の振り分けルールを更新する手順を実行させることを特徴とする。
【発明の効果】
【0022】
本発明は、上述したように、新規に受信した処理ルールと既存の振り分けルールとを比較して、それらに含まれるコンテキストの間の差分が許容範囲以内である場合にその新規の処理ルールを含めるよう既存の振り分けルールを更新するように構成したので、新規の処理ルールに該当するイベントを既存の振り分けルールに該当するイベントと同一の処理サーバにイベントを振り分けることができる。
【0023】
これによって、イベント条件が完全に一致しない処理ルールに対しても、設定される振り分けルールの数を少なくして、イベントの振り分けの処理をより軽快に行うことが可能であるという優れた特徴を持つイベント処理負荷分散システム、イベント処理負荷分散制御装置、制御方法およびプログラムを提供することができる。
【図面の簡単な説明】
【0024】
【図1】図2に示したイベント処理負荷分散システムの、各機能部の動作をより観念的に示したものである。
【図2】本発明の第1の実施形態に係るイベント処理負荷分散システムの構成について示す説明図である。
【図3】図2に示した各装置の、主にハードウェアとしての構成について示す説明図である。図3(a)はイベント発生源の、図3(b)はアプリケーション実行装置aの、図3(c)は処理サーバの、図3(d)はコンテキスト依存振り分け装置の、図3(e)はイベント処理分散制御装置の、各々の構成についてそれぞれ示す。
【図4】RFIDリーダであるイベント発生源が発生するイベントの一例について示す説明図である。
【図5】図1に示した処理サーバの各々に予め設定されている処理ルールについて示す説明図である。
【図6】図1に示したコンテキスト依存振り分け器に予め設定されている振り分けルールについて示す説明図である。
【図7】処理ルール振り分け部が新たな処理ルールを設定する処理サーバを選択する動作について示すフローチャートである。
【図8】図1に示した振り分けルール許容差データに予め設定されている内容について示す説明図である。
【図9】図9は、図5に示した処理ルール振り分けデータの記録に、新たに処理ルールrule9についての情報を追加した状態について示す説明図である。
【図10】図1に示した振り分けルール決定部が振り分けルールを決定し、コンテキスト依存振り分け器に設定する手順について示すフローチャートである。
【図11】図6に示した振り分けルールに、ステップS205の処理で、振り分けルール決定部が変更を加えた状態について示す説明図である。
【図12】本発明の第2の実施形態に係るイベント処理負荷分散システムの構成について示す説明図である。
【図13】図12で示したイベント処理負荷分散制御装置のより詳しい構成について示す説明図である。
【図14】図13で示した振り分けルール決定部の動作について示す説明図である。図14(a)は、設定された振り分けルールの一例を示し、図14(b)は、この振り分けルールが変更された状態の例を示す。
【図15】第1の既存技術に係るイベント処理システムの構成について示す説明図である。
【図16】第2の既存技術に係るイベント処理システムの構成について示す説明図である。
【図17】特許文献1に記載された第3の既存技術に係るイベント処理システムの構成について示す説明図である。
【発明を実施するための形態】
【0025】
(第1の実施形態)
以下、本発明の第1の実施形態の構成について添付図1〜3に基づいて説明する。
最初に、本実施形態の基本的な内容について説明し、その後でより具体的な内容について説明する。
本実施形態に係るイベント処理負荷分散システム1は、複数の他のコンピュータで動作する各アプリケーション106a,b,…に対してイベント処理結果を通知する複数の処理サーバ104a,b,…と、複数の処理サーバに対して予め設定された複数のイベント発生源において発生したイベントを振り分けるコンテキスト依存振り分け装置103と、複数の処理サーバに対してイベントの内容を示すコンテキストに基づく処理ルールを設定し、複数の処理サーバが処理ルールを実行するために必要なイベントが適切に分配されるように振り分けルールをコンテキスト依存振り分け装置に記憶させるイベント処理分散制御装置101と有するイベント処理負荷分散システムである。イベント処理分散制御装置101は、各アプリケーションから処理ルールを受信する処理ルール受信部200と、この受信された処理ルールに含まれる処理すべきイベントの条件を示すイベント条件を、処理サーバごとに少なくとも記録する処理ルール振り分け記録部(処理ルール振り分けデータ205)と、処理ルール受信部が新規に処理ルールを受信した場合に、処理ルール振り分け記録部を参照して、処理サーバにこの処理ルールを割り当てる処理ルール振り分け部201とを有すると共に、既存の振り分けルールに含まれるコンテキストと新規に受信した処理ルールに含まれるコンテキストとの間の差分の許容範囲を記録する振り分けルール許容差記録部(振り分けルール許容差データ207)と、新規に受信した処理ルールに含まれるコンテキストと既存の振り分けルールに含まれるコンテキストとの間の差分が許容範囲以内である場合に、この新規に受信した処理ルールが含まれるように既存の振り分けルールを更新する振り分けルール決定部203とを有する。
【0026】
また、イベント処理分散制御装置101の処理ルール振り分け部201は、振り分けルール決定部による既存の振り分けルールの更新に応じて、新規に受信した処理ルールをこの既存の振り分けルールにある処理サーバと同一の処理サーバに割り当てる機能を有する。そして、処理ルールに含まれるコンテキストの差分の許容範囲は、数値もしくはソート順の文字列で示される。
【0027】
以上の構成を備えることにより、イベント処理負荷分散システム1は、設定される振り分けルールの数を少なくして、イベントの振り分けの処理をより軽快に行うことが可能となる。
以下、これをより詳細に説明する。
【0028】
図2は、本発明の第1の実施形態に係るイベント処理負荷分散システム1の構成について示す説明図である。イベント処理負荷分散システム1は、RFIDリーダやセンサなどのようなデバイスである複数のイベント発生源105a,b,…、複数の処理サーバ104a,b,…、アプリケーション106a,b,…を各々動作させるアプリケーション実行装置116a,b,…、コンテキスト依存振り分け装置113、およびイベント処理分散制御装置101が、同一のネットワーク110に接続されて構成される。
【0029】
アプリケーション実行装置116a,b,…、処理サーバ104a,b,…、コンテキスト依存振り分け装置113、およびイベント処理分散制御装置101は全て、別個に動作するコンピュータであるが、物理的な装置としての区分はこの例にはこだわらず、この中で2台以上を1つのコンピュータで実現してもよいし、逆に1台を2台以上のコンピュータに分割して実現してもよい。
【0030】
図3は、図2に示した各装置の、主にハードウェアとしての構成について示す説明図である。図3(a)はイベント発生源105aの、図3(b)はアプリケーション実行装置116aの、図3(c)は処理サーバ104aの、図3(d)はコンテキスト依存振り分け装置113の、図3(e)はイベント処理分散制御装置101の、各々の構成についてそれぞれ示す。
【0031】
図3(a)に示すイベント発生源105aは、その各々がセンサ105a1とプロセッサ105a2、そして通信手段105a3を備え、各々のセンサで検知した内容を通信手段によって処理サーバ104a,b,…で処理可能な形式にして送出する。こうして送出されるデータを、ここでは発生情報(イベント)という。このイベントには、その内容の種類を示すコンテキストが含まれている。他のイベント発生源105b,…も、全てイベント発生源105aと同一の構成を有する。
【0032】
図3(b)に示すアプリケーション実行装置116aは、その各々がプロセッサ116a1を備え、各々アプリケーション106aを実行する。また通信手段116a2を備え、各々がネットワーク110を介して他のコンピュータとデータ通信を行う。他のアプリケーション実行装置116b,…も、全てアプリケーション実行装置116aと同一の構成を有する。
【0033】
図3(c)に示す処理サーバ104aは、その各々がプロセッサ104a1を備え、各々がコンピュータプログラムを実行することにより、イベント処理部104a2として機能する。また通信手段104a3を各々備え、各々がネットワーク110を介して他のコンピュータとデータ通信を行う。そして、イベント処理分散制御装置101から与えられた処理ルール108aを記憶する記憶手段104a4も備える。他の処理サーバ104b,…も、全て処理サーバ104aと同一の構成を有する。
【0034】
図3(d)に示すコンテキスト依存振り分け装置113は、プロセッサ113aを備え、このプロセッサ113aで振り分けプログラムが実行されることにより、コンテキスト依存振り分け器103として機能する。また通信手段113bを備え、ネットワーク110を介して他のコンピュータとデータ通信を行う。さらに、イベント処理分散制御装置101から与えられた振り分けルール107を記憶する記憶手段113cも備える。
【0035】
図3(e)に示すイベント処理分散制御装置101は、プロセッサ101aを備え、このプロセッサ101aでイベント処理分散制御プログラムが実行されることにより、後述する処理ルール受信部200、処理ルール振り分け部201、処理ルール送信部202、振り分けルール決定部203、振り分けルール送信部204の各々として機能する。
【0036】
また、イベント処理分散制御装置101は、通信手段101bおよび記憶手段101cも備える。通信手段101bは、ネットワーク110を介して他のコンピュータとデータ通信を行う。記憶手段101cには、処理ルール振り分けデータ205、振り分けルールデータ206、および振り分けルール許容差データ207が予め記憶されている。これらについても後述する。
【0037】
図1は、図2に示したイベント処理負荷分散システム1の、各機能部の動作をより観念的に示したものである。太い矢印はイベントの送受信を、細い矢印は処理ルールおよび振り分けルールの送受信を各々示している。
【0038】
このイベント処理負荷分散システム1では、各々動作しているアプリケーション106a,b,…がイベント処理分散制御装置101に対して、イベント発生源105a,b,…からの発生情報(イベント)の処理を行うための処理ルールを送信し、処理サーバ104a,b,…は要求された処理ルールに従って、イベントの内容(コンテキスト)に従って処理を行い、その処理結果をアプリケーションに通知するシステムである。処理ルールは、イベントの内容(コンテキスト)に基づいて処理を行うものとして構成されている。
【0039】
このイベント処理負荷分散システム1では、各イベントの処理に係る付加を分散するために、複数の処理サーバ104a,b,…を配置し、イベント処理分散制御装置101…が各々の処理サーバに別個のアプリケーションのためのイベント処理ルールを設定する。それに従って、イベント処理分散制御装置がコンテキスト依存振り分け器103に、各処理サーバ104a,b,…が処理すべきイベントがそのサーバに分配されるようにコンテキストに基づいた振り分けルールを設定する。これによって、処理サーバ104a,b,…の負荷分散を実現する。
【0040】
なお、処理サーバ104a,b,…、アプリケーション106a,b,…、およびイベント発生源105a,b,…の台数には特に制限はない。図1には、処理サーバとして104a〜fという6台を配置した例を示しており、各々の処理サーバ104a〜fをEP1〜6という番号でいう。
【0041】
イベント処理分散制御装置101で、処理ルール受信部200は、各アプリケーション106a,b,…から処理ルールを受信する。処理ルール振り分け部201は、処理ルール受信部200が受信した処理ルールをどの処理サーバ104a〜fに送信するかを決定する。処理ルール送信部205は、処理ルール振り分け部201が決定した処理サーバ104a〜fに、その処理ルール108a〜fを送信する。送信した処理ルール108a〜fは、各々の処理サーバ104a〜fに記憶される。
【0042】
これと同時に、処理ルール振り分け部201は、送信先を決定したイベント処理ルール108a〜fに含まれる情報のうち、少なくとも処理するイベントのイベント条件とそれに対応する処理サーバ104a〜fについて、処理ルール振り分けデータ205に記録する。
【0043】
振り分けルール決定部203は、処理ルール振り分け部201による振り分け結果に基づき、コンテキスト依存振り分け器103に設定する振り分けルール(以後単に振り分けルールという)107を決定する。振り分けルール送信部204は、決定されたその振り分けルール107をコンテキスト依存振り分け器103に送信する。送信した振り分けルール107は、コンテキスト依存振り分け器103に記憶される。
【0044】
これと同時に、振り分けルール決定部203は、決定した該振り分けルール107に含まれる情報のうち、少なくとも振り分けるイベントのイベント条件と振り分け先の処理サーバを、振り分けルールデータ206に記録する。
【0045】
そして上記の処理ルール振り分け部201および振り分けルール決定部203による処理で、振り分けルールが許容されるイベント条件の範囲が予め記憶されている振り分けルール許容差データ207が使用される。
【0046】
より具体的には、たとえばイベント発生源105a,b,…が各地に配置された気温、気圧、風向などのセンサである場合、これらのセンサが定期的に送信する各々の測定値がイベントとなり、このイベントにはその測定値と共に、測定値の種類や測定場所などを示すデータがコンテキストとして含まれる。コンテキスト依存振り分け器103は、発生した各イベントをたとえば「地域ごと」「測定値の種類ごと」などのような基準で各処理サーバ104a,b,…に振り分けて送信する。各処理サーバ104a,b,…では、受信したイベントの集計および記憶を行う。
【0047】
アプリケーション106a,b,…は、たとえば「全国の気温」「特定地域の気温・気圧・風向」などのように自らが必要とするイベントを処理ルールとしてイベント処理分散制御装置101に対して送信し、この処理ルールに該当するイベントを受信し、受信したイベントに基づく処理、たとえば気象情報の集計や気象予測などを行うことができる。
【0048】
また、イベント発生源105a,b,…が自動車に搭載された情報端末である場合、これらの情報端末は各車の位置、移動速度、移動方向、エンジンやバッテリの状態などをイベントとして送信する。このイベントには各々の値と、それらの種類などを示すデータがコンテキストとして含まれる。コンテキスト依存振り分け器103は、発生した各イベントを「値の種類ごと」などのような基準で各処理サーバ104a,b,…に振り分けて送信する。各処理サーバ104a,b,…では、受信したイベントの集計および記憶を行う。
【0049】
アプリケーション106a,b,…は、たとえば「特定地点付近にいる車」「特定の状態にある車」などのような処理ルールをイベント処理分散制御装置101に対して送信し、この処理ルールに該当するイベントを受信し、受信したイベントに基づく処理、たとえば「特定地点付近の車に、その地点の店の紹介」「特定の状態にある車に、その状態に対応するサービスの紹介」などを行うことができる。
【0050】
そして、イベント発生源105a,b,…が物流システムでトラックやベルトコンベアなどに配置されたRFIDリーダである場合、これらのRFIDリーダは特定の荷物に装着されたRFIDタグのIDと、RFIDリーダ自らのIDをコンテキストとして含めたイベントを送信する。コンテキスト依存振り分け器103は、発生した各イベントを「各RFIDタグのIDごと」などのような基準で各処理サーバ104a,b,…に振り分けて送信する。各処理サーバ104a,b,…では、受信したイベントの集計および記憶を行う。
【0051】
アプリケーション106a,b,…は、たとえば「特定のタグIDごと」などのような処理ルールをイベント処理分散制御装置101に対して送信し、この処理ルールに該当するイベントを受信し、受信したイベントに基づく処理、たとえば「特定のタグIDの荷物の追跡」などを行うことができる。以後、本実施形態ではこの例について説明する。
【0052】
図4は、RFIDリーダであるイベント発生源105a,b,…が発生するイベントの一例について示す説明図である。このイベントは、RFIDタグのIDである「tagID」と、RFIDリーダのIDである「readerID」とを、コンテキストとして含む。この図4は、イベント発生源の発生するイベントの一例について述べているに過ぎず、イベントの形式やそこに含まれるコンテキストなどは任意に定義することができる。
【0053】
図5は、図1に示した処理サーバ104a〜fの各々に予め設定されている処理ルール108a〜fについて示す説明図である。即ち、処理サーバEP1(104a)にはtagID=1であるイベントを処理する処理ルールrule1(108a)が、処理サーバEP2(104b)にはtagID=11であるイベントを処理する処理ルールrule2(108b)が、予め設定されている。
【0054】
また、処理サーバEP3(104c)にはtagID=21であるイベントを処理する処理ルールrule3(108c)が、処理サーバEP4(104d)にはtagID=31であるイベントを処理する処理ルールrule4(108d)が、処理サーバEP5(104e)にはtagID=41であるイベントを処理する処理ルールrule5(108e)が、予め設定されている。
【0055】
そして処理サーバEP6(104f)にはtagID=51であるイベントを処理する処理ルールrule6(108e)とtagID=52であるイベントを処理する処理ルールrule76(108e)とtagID=54であるイベントを処理する処理ルールrule8(108e)が、予め設定されている。図5に示した情報は、処理ルール振り分けデータ205に記録されている。
【0056】
図6は、図1に示したコンテキスト依存振り分け器103に予め設定されている振り分けルール107について示す説明図である。即ち、tagID=1のイベントは処理サーバEP1(104a)へ、tagID=11のイベントは処理サーバEP2(104b)へ、tagID=21のイベントは処理サーバEP3(104c)へ、tagID=31のイベントは処理サーバEP4(104d)へ、tagID=41のイベントは処理サーバEP5(104e)へ、tagID=51〜54のイベントは処理サーバEP6(104f)へ振り分けるという振り分けルール107が、予め設定されている。図6の情報は振り分けルールデータ206に記録されている。
【0057】
ここで、ここにアプリケーション106aから新たにtagID=3のイベントを処理する処理ルールrule9が設定された場合について説明する。図7は、処理ルール振り分け部201が新たな処理ルールを設定する処理サーバ104a〜fを選択する動作について示すフローチャートである。
【0058】
動作を開始した処理ルール振り分け部201は、各々の処理サーバ104a〜fに設定されている処理ルール数の最小値を求める(ステップS101)。本例の場合、図5に示された状態で処理ルール数の最小値は1である
処理ルール振り分け部201は、これに続いて、処理ルール数がこの最小値に対して一定値以下の差である処理サーバを選択する(ステップS102)。本例では処理ルール数の最小値は1であるので、この一定値も「1」とする。すると設定ルール数が3である処理サーバEP6(104f)が候補から外れる。
【0059】
処理ルール振り分け部201は、これに続いて、選択された処理サーバの数が1であるか2以上であるかについて判断する(ステップS103)。ここで処理サーバ数が1であればその処理サーバをルール設定先として処理を終了するが、本例では5なのでステップS104に進む。
【0060】
処理ルール振り分け部201は、これに続いて、今回設定する処理ルールのイベント条件と選択された処理サーバに設定済のイベント条件を比較し、一致する処理サーバの台数を確認する(ステップS104)。そして、その一致する処理サーバの台数が0か1か2以上かについて判断する(ステップS105)。一致する処理サーバの台数が1であれば、その処理サーバをルール設定先として処理を終了する。2以上であれば、ステップS106に進む。
【0061】
本例では、今回設定する処理ルールrule9のイベント条件はtagID=3なので、一致する処理サーバの台数は0となる。この場合、ステップS108に進んで、処理ルール振り分け部201は、今回設定する処理ルールのイベント条件と設定先候補の処理サーバに設定済のイベント条件を比較し、一定範囲内にあるイベント条件を持つ処理サーバを選択する(ステップS108)。
【0062】
図8は、図1に示した振り分けルール許容差データ207に予め設定されている内容について示す説明図である。イベント条件についての許容範囲は、振り分けルール許容差データ207にイベントの属性値種別ごとに記録されている。tagIDについての許容範囲は「3」である。本例では、今回設定する処理ルールrule9のイベント条件はtagID=3なので、ステップS108の処理では、tagID=1というイベント条件の処理ルールrule1を設定されている処理サーバEP1(104a)が候補に残る。
【0063】
そして処理ルール振り分け部201は、ステップS105と同様に、候補に残った処理サーバの台数が0か1か2以上かについて判断する(ステップS109)。候補に残った処理サーバの台数が1であれば、その処理サーバをルール設定先として処理を終了する。2以上であれば、ステップS106に進む。
【0064】
ステップS109の処理で、処理サーバ数が0の場合には、一手戻って、処理ルール振り分け部201は、選択された処理サーバの中で設定されている処理ルール数が最も少ない処理サーバを設定先として選択する。もしそのような処理サーバが複数ある場合、定められた規則(ランダムなど)でその中から1つ処理サーバを選択し、それをルール設定先とする。
【0065】
ステップS105またはS109で、選択可能な処理サーバが2台以上ある場合には、処理ルール振り分け部201は、それらの処理サーバの中で設定されている処理ルール数が最も少ない処理サーバを設定先として選択する(ステップS106)。これに該当する処理サーバが複数ある場合には、処理ルール振り分け部201は、定められた規則(ランダムなど)でその中から1つ処理サーバを選択し、それをルール設定先とする(ステップS107)。以上で、処理ルール振り分け部201による処理は終了する。
【0066】
本例では、ステップS109で処理サーバEP1(104a)が1つ候補に残っているため、このフローに該当し、処理サーバEP1(104a)がルール設定先となる。すると処理ルール振り分け部201は、処理ルール送信部202経由で処理ルールrule9を処理サーバEP1(104a)に設定する。
【0067】
そして、処理ルール振り分け部201は、処理ルール振り分けデータ205に記録されている情報に処理ルールrule9についての情報を追加する。図9は、図5に示した処理ルール振り分けデータ205の記録に、新たに処理ルールrule9についての情報を追加した状態について示す説明図である。
【0068】
図10は、図1に示した振り分けルール決定部203が振り分けルールを決定し、コンテキスト依存振り分け器103に設定する手順について示すフローチャートである。以後、図9に示した処理ルール振り分け部201が処理ルール振り分けデータ205に新たな処理ルールrule9を追加した状態の例で説明する。振り分けルール決定部203は、図6に示した振り分けルールデータ206の記録内容を参照しながら振り分けルール107を設定する。
【0069】
振り分けルール決定部203はまず、処理ルール振り分け部201から新たに設定した処理ルールの情報を受信する(ステップS201)。具体的には、少なくとも処理ルールのイベント条件と設定先の処理サーバIDを受信する。本例の場合、rule9のイベント条件のtagID=3と設定先の処理サーバEP1(104a)についての情報を受信する。
【0070】
振り分けルール決定部203は、これに応じて動作を開始し、振り分けルールデータ206を参照して、該受信した処理サーバと同じ振り分け先の振り分けルールを検索する(ステップS202)。本例では処理サーバEP1(104a)が相当するので振り分けルール名称「disp_rule1」がこれに該当する。
【0071】
振り分けルール決定部203は、これに続いて、検索された振り分けルールの中に該受信したイベント条件と一致するイベント条件を持つ振り分けルールがあるか否かを検索する(ステップS203)。該当する振り分けルールがあった場合(ステップS203がイエス)には、新たな振り分けルールを設定せずに処理を終了する。該当する振り分けルールが無い場合(ステップS203がノー)には、ステップS204に進む。
【0072】
本例では、受信したイベント条件がtagID=3であり、検索された振り分けルール名称「disp_rule1」のイベント条件がtagID=1であるので、ステップS203の判断はノーとなり、処理はS204に進む。
【0073】
振り分けルール決定部203は、検索された振り分けルールの中に該受信したイベント条件から、振り分けルール許容差データ207に指定されている一定範囲内にあるイベント条件を持つ振り分けルールがあるか否かを検索する(ステップS204)。ここで図8に示した振り分けルール許容差データ207には、tagIDについての「一定範囲」は「3」である。
【0074】
そのような振り分けルールが存在しない場合、ステップS204の判断はノーとなって、処理がステップS206に進む。この場合、振り分けルール決定部203は、該受信したイベント条件を該受信した処理サーバに振り分けるように新たな振り分けルールを生成し、振り分けルール送信部204を介してコンテキスト依存振り分け器103に設定して(ステップS206)処理を終了する。
【0075】
本例では、受信したイベント条件がtagID=3で検索された振り分けルールdisp_rule1のイベント条件がtagID=1で一定範囲にあるので、ステップS204の判断はイエスとなって、処理がステップS205に進む。この場合、振り分けルール決定部203は、検索された振り分けルール名称「disp_rule1」のイベント条件を拡幅し、受信したイベント条件も含むように変更して、振り分けルール送信部204を介してコンテキスト依存振り分け器103に再設定して(ステップS205)処理を終了する。
【0076】
より具体的には、振り分けルール決定部203はステップS205の処理で、振り分けルール名称「disp_rule1」のイベント条件「tagID=1」を「tagID=[1…3]」に変更して再設定する。また、振り分けルール記録部に記録されている情報も、この設定結果に合わせて変更する。図11は、図6に示した振り分けルール107に、ステップS205の処理で、振り分けルール決定部203がこの変更を加えた状態について示す説明図である。
【0077】
(第1の実施形態の全体的な動作)
次に、上記の実施形態の全体的な動作について説明する。本実施形態に係るイベント処理負荷分散制御方法は、複数の他のコンピュータで動作する各アプリケーション106a,b,…に対してイベント処理結果を通知する複数の処理サーバ104a,b,…と、複数の処理サーバに対して予め設定された複数のイベント発生源において発生したイベントを振り分けるコンテキスト依存振り分け装置103と、複数の処理サーバに対してイベントの内容を示すコンテキストに基づく処理ルールを設定し、複数の処理サーバが処理ルールを実行するために必要なイベントが適切に分配されるように振り分けルールをコンテキスト依存振り分け装置に記憶させるイベント処理分散制御装置と備えたイベント処理負荷分散システム101と有するイベント処理負荷分散システム1にあって、アプリケーションから新規の処理ルールをイベント処理分散制御装置の処理ルール受信部が受信し、この新規の処理ルールの受信に応じて、予め記録された処理すべきイベントの条件を示すイベント条件に基づいてイベント処理分散制御装置の処理ルール振り分け部が処理サーバにこの処理ルールを割り当て(図7・ステップS101〜110)、既存の振り分けルールに含まれるコンテキストと新規に受信した処理ルールに含まれるコンテキストとの間の差分が予め記録された許容範囲以内である場合に、この新規に受信した処理ルールが含まれるようにイベント処理分散制御装置の振り分けルール決定部が既存の振り分けルールを更新する(図10・ステップS204〜206)。
【0078】
ここで、上記各動作ステップについては、これをコンピュータで実行可能にプログラム化し、これらを前記各ステップを直接実行するコンピュータであるイベント処理分散制御装置101に実行させるようにしてもよい。本プログラムは、非一時的な記録媒体、例えば、DVD、CD、フラッシュメモリ等に記録されてもよい。その場合、本プログラムは、記録媒体からコンピュータによって読み出され、実行される。
この動作により、本実施形態は以下のような効果を奏する。
【0079】
特許文献1に記載の既存技術では別個の振り分けルールとして設定されていた類似する処理ルールが、本実施形態によれば、許容範囲以内であれば同一の振り分けルールとして設定される。多くの場合、tagIDなどのようなコンテキストの数値が近いイベントは、なるべく同一の処理サーバで処理された方が、効率的な処理が可能である。
【0080】
従って、本実施形態によれば、コンテキスト依存振り分け装置103に設定される振り分けルールの数を、既存技術に比べて削減することができ、同一の計算機リソースでより多くのイベント処理ルール、イベントを収容することができる。そして、イベント処理負荷分散システム1全体を軽快に動作させ、処理能力を向上させることができる。
【0081】
(第2の実施形態)
本発明の第2の実施形態は、前述した第1の実施形態の構成に加えて、イベント処理分散制御装置401の振り分けルール決定部503が、更新された振り分けルールに含まれるコンテキストが、記憶されているその他の振り分けルールに含まれるコンテキストとの間の差分が許容範囲以内である場合に、これらの振り分けルールを統一するよう更新する機能を有する構成とした。
【0082】
この構成によれば、前述した第1の実施形態の効果に加えて、振り分けルールを更新した結果、類似したコンテキストを持つようになった振り分けルールをさらに統合して、振り分けルールの総数をさらに削減することが可能となる。
以下、これをより詳しく説明する。
【0083】
図12は、本発明の第2の実施形態に係るイベント処理負荷分散システム301の構成について示す説明図である。イベント処理負荷分散システム301は、図1〜3で説明した第1の実施形態に係るイベント処理負荷分散システム1と比べて、イベント処理負荷分散制御装置101が別のイベント処理負荷分散制御装置401に置換されているだけで、これ以外の要素は全て同一である。
【0084】
図13は、図12で示したイベント処理負荷分散制御装置401のより詳しい構成について示す説明図である。イベント処理負荷分散制御装置401は、図3で示したイベント処理負荷分散制御装置101とハードウェア的には同一であり、ソフトウェア的にも振り分けルール決定部203が別の振り分けルール決定部503に置換されているだけである。
【0085】
振り分けルール決定部503は、振り分けルール決定部203の動作を行う機能に加えて、新たなイベント処理ルールを追加した結果、複数の振り分けルールが振り分けルール許容差記録部に指定されている範囲内に重なる場合、それらを結合して1つの振り分けルールとするという機能を有する。
【0086】
図14は、図13で示した振り分けルール決定部503の動作について示す説明図である。図14(a)および(b)は、振り分けルールデータ206の記録内容の変化を示している。図14(a)は、処理サーバEP1(104a)に「tagID=1」または「tagID=5」に該当するイベントを振り分けるという振り分けルールとして設定されているという例を示している。ちなみに振り分けルール許容差データ207に記録されているtagIDについての「許容範囲」は、図8に示したものと同様に「3」である。
【0087】
このとき、第1の実施形態で説明した動作が行われ、新たに「tagID=3」に該当するイベントを処理サーバEP1(104a)に振り分ける内容が振り分けルールデータ206に追加され、「tagID=1」のルールが「tagID=[1…3]」に変更された。
【0088】
これによって、「tagID=5」も、「tagID=[1…3]」の条件との差分が許容範囲(=3)以内となる。従って、振り分けルール決定部503は、この「tagID=5」も含めて「tagID=[1…5]」となるよう、振り分けルールデータ206を更新する。図14(b)は、このように更新された振り分けルールデータ206を示している。
【0089】
これとは逆に、振り分けルール決定部503は、「tagID=3」に該当するイベントを振り分ける内容が振り分けルールデータ206から削除された場合には、振り分けルールデータ206を図14(b)に示した状態から元の図14(a)に戻すようにすることもできる。
【0090】
(実施形態の拡張1)
以上で説明した第1および第2の実施形態は、必要に応じて適宜拡張することができる。
たとえば、イベントに含まれるコンテキストは、数値だけではなく文字列を含む場合がある。その場合、図8の「株銘柄」「人名」の項目として示したように、たとえば「頭文字が同一」(「株銘柄=AB×」などのように)「ソート順で頭文字が3文字以内」(「人名=A××」と「人名=C○○」などのように)というように許容範囲を指定することができる。
【0091】
これを正規表現で記述した場合、これまで「株銘柄=ABC」であるイベントのみを特定の処理サーバに振り分けるように振り分け条件を設定していたところに、「株銘柄=ABE」であるイベントもこれと同一の処理サーバに振り分けるようにする場合には、振り分け条件を「株銘柄=^AB[C−E]$」とするように振り分けルールデータ206を更新する。
【0092】
また、これまで「人名=ABC」であるイベントのみを特定の処理サーバに振り分けるように振り分け条件を設定していたところに、「人名=CEF」であるイベントもこれと同一の処理サーバに振り分けるようにする場合には、振り分け条件を「人名=^[A−C][B−E][C−F]$」とするように振り分けルールデータ206を更新する。
【0093】
(実施形態の拡張2)
また、本発明は特許文献1に記載の既存技術の改良であるので、この文献に記載された複数の実施形態の各々に対して適用することが可能である。たとえば、同文献の第2の実施形態と同様に、複数のコンテキスト依存振り分け装置を配置し、さらにコンテキスト非依存振り分け装置を追加することもできる。そして、同文献の第4の実施形態と同様に、コンテキスト非依存振り分け装置を二重化して、障害発生による影響を回避できるようにすることもできる。
【0094】
これまで本発明について図面に示した特定の実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができる。
【0095】
上述した実施形態について、その新規な技術内容の要点をまとめると、以下のようになる。なお、上記実施形態の一部または全部は、新規な技術として以下のようにまとめられるが、本発明は必ずしもこれに限定されるものではない。
【0096】
(付記1) 複数の他のコンピュータで動作する各アプリケーションに対してイベント処理結果を通知する複数の処理サーバと、
前記複数の処理サーバに対して予め設定された複数のイベント発生源において発生したイベントを振り分けるコンテキスト依存振り分け装置と、
前記複数の処理サーバに対して前記イベントの内容を示すコンテキストに基づく処理ルールを設定し、前記複数の処理サーバが前記処理ルールを実行するために必要な前記イベントが適切に分配されるように振り分けルールを前記コンテキスト依存振り分け装置に記憶させるイベント処理分散制御装置と備えたイベント処理負荷分散システムであって、
前記イベント処理分散制御装置は、
前記各アプリケーションから前記処理ルールを受信する処理ルール受信部と、
この受信された処理ルールに含まれる処理すべきイベントの条件を示すイベント条件を、前記処理サーバごとに少なくとも記録する処理ルール振り分け記録部と、
前記処理ルール受信部が新規に処理ルールを受信した場合に、前記処理ルール振り分け記録部を参照して、前記処理サーバにこの処理ルールを割り当てる処理ルール振り分け部とを有すると共に、
既存の前記振り分けルールに含まれるコンテキストと前記新規に受信した処理ルールに含まれるコンテキストとの間の差分の許容範囲を記録する振り分けルール許容差記録部と、
前記新規に受信した処理ルールに含まれるコンテキストと既存の前記振り分けルールに含まれるコンテキストとの間の差分が前記許容範囲以内である場合に、この新規に受信した処理ルールが含まれるように前記既存の振り分けルールを更新する振り分けルール決定部と
を有することを特徴とするイベント処理負荷分散システム。
【0097】
(付記2) 前記イベント処理分散制御装置の前記処理ルール振り分け部が、
前記振り分けルール決定部による前記既存の振り分けルールの更新に応じて、前記新規に受信した処理ルールをこの既存の振り分けルールにある前記処理サーバと同一の前記処理サーバに割り当てる機能を有することを特徴とする、付記1に記載のイベント処理負荷分散システム。
【0098】
(付記3) 前記イベント処理分散制御装置の前記振り分けルール決定部が、
更新された前記振り分けルールに含まれるコンテキストと、記憶されているその他の前記振り分けルールに含まれるコンテキストとの間の差分が前記許容範囲以内である場合に、これらの振り分けルールを統一するよう更新する機能を有することを特徴とする、付記2に記載のイベント処理負荷分散システム。
【0099】
(付記4) 前記処理ルールに含まれるコンテキストの差分の前記許容範囲が、数値もしくはソート順の文字列で示されることを特徴とする、付記1ないし3のうちいずれか1項に記載のイベント処理負荷分散システム。
【0100】
(付記5) 複数の他のコンピュータで動作する各アプリケーションに対してイベント処理結果を通知する複数の処理サーバと前記複数の処理サーバに対して予め設定された複数のイベント発生源において発生したイベントを振り分けるコンテキスト依存振り分け装置とにネットワークを介して接続され、前記複数の処理サーバに前記イベントの内容を示すコンテキストに基づく処理ルールを設定すると共に前記複数の処理サーバが前記処理ルールを実行するために必要な前記イベントが適切に分配されるように振り分けルールを前記コンテキスト依存振り分け装置に記憶させるイベント処理分散制御装置であって、
前記各アプリケーションから前記処理ルールを受信する処理ルール受信部と、
この受信された処理ルールに含まれる処理すべきイベントの条件を示すイベント条件を、前記処理サーバごとに少なくとも記録する処理ルール振り分け記録部と、
前記処理ルール受信部が新規に処理ルールを受信した場合に、前記処理ルール振り分け記録部を参照して、前記処理サーバにこの処理ルールを割り当てる処理ルール振り分け部とを有すると共に、
既存の前記振り分けルールに含まれるコンテキストと前記新規に受信した処理ルールに含まれるコンテキストとの間の差分の許容範囲を記録する振り分けルール許容差記録部と、
前記新規に受信した処理ルールに含まれるコンテキストと既存の前記振り分けルールに含まれるコンテキストとの間の差分が前記許容範囲以内である場合に、この新規発生イベントが含まれるように前記既存の振り分けルールを更新する振り分けルール決定部と
を有することを特徴とするイベント処理負荷分散制御装置。
【0101】
(付記6) 複数の他のコンピュータで動作する各アプリケーションに対してイベント処理結果を通知する複数の処理サーバと、
前記複数の処理サーバに対して予め設定された複数のイベント発生源において発生したイベントを振り分けるコンテキスト依存振り分け装置と、
前記複数の処理サーバに対して前記イベントの内容を示すコンテキストに基づく処理ルールを設定し、前記複数の処理サーバが前記処理ルールを実行するために必要な前記イベントが適切に分配されるように振り分けルールを前記コンテキスト依存振り分け装置に記憶させるイベント処理分散制御装置と備えたイベント処理負荷分散システムにあって、
前記アプリケーションから新規の前記処理ルールを前記イベント処理分散制御装置の処理ルール受信部が受信し、
この新規の処理ルールの受信に応じて、予め記録された処理すべきイベントの条件を示すイベント条件に基づいて前記イベント処理分散制御装置の処理ルール振り分け部が前記処理サーバにこの処理ルールを割り当て、
既存の前記振り分けルールに含まれるコンテキストと前記新規に受信した処理ルールに含まれるコンテキストとの間の差分が予め記録された許容範囲以内である場合に、この新規に受信した処理ルールが含まれるように前記イベント処理分散制御装置の振り分けルール決定部が前記既存の振り分けルールを更新する
ことを特徴とするイベント処理負荷分散制御方法。
【0102】
(付記7) 複数の他のコンピュータで動作する各アプリケーションに対してイベント処理結果を通知する複数の処理サーバと、
前記複数の処理サーバに対して予め設定された複数のイベント発生源において発生したイベントを振り分けるコンテキスト依存振り分け装置と、
前記複数の処理サーバに対して前記イベントの内容を示すコンテキストに基づく処理ルールを設定し、前記複数の処理サーバが前記処理ルールを実行するために必要な前記イベントが適切に分配されるように振り分けルールを前記コンテキスト依存振り分け装置に記憶させるイベント処理分散制御装置と備えたイベント処理負荷分散システムにあって、
前記イベント処理分散制御装置が備えるコンピュータに、
前記アプリケーションから新規の前記処理ルールを受信する手順、
この新規の処理ルールの受信に応じて、予め記録された処理すべきイベントの条件を示すイベント条件に基づいて前記処理サーバにこの処理ルールを割り当てる手順、
および既存の前記振り分けルールに含まれるコンテキストと前記新規に受信した処理ルールに含まれるコンテキストとの間の差分が予め記録された許容範囲以内である場合に、この新規に受信した処理ルールが含まれるように前記既存の振り分けルールを更新する手順
を実行させることを特徴とするイベント処理負荷分散制御プログラム
【産業上の利用可能性】
【0103】
本発明は、RFIDネットワークやセンサネットワークに適用することができる。
【符号の説明】
【0104】
1、301 イベント処理負荷分散システム
101、401 イベント処理分散制御装置
103 コンテキスト依存振り分け器
104a,104b,… 処理サーバ
105a,105b,… イベント発生源
106a,106b,… アプリケーション
107 振り分けルール
108a,108b,… 処理ルール
110 ネットワーク
113 コンテキスト依存振り分け装置
116a,116b アプリケーション実行装置
200 処理ルール受信部
201 処理ルール振り分け部
202 処理ルール送信部
203、503 振り分けルール決定部
204 振り分けルール送信部
205 処理ルール振り分けデータ
206 振り分けルールデータ
207 振り分けルール許容差データ

【特許請求の範囲】
【請求項1】
複数の他のコンピュータで動作する各アプリケーションに対してイベント処理結果を通知する複数の処理サーバと、
前記複数の処理サーバに対して予め設定された複数のイベント発生源において発生したイベントを振り分けるコンテキスト依存振り分け装置と、
前記複数の処理サーバに対して前記イベントの内容を示すコンテキストに基づく処理ルールを設定し、前記複数の処理サーバが前記処理ルールを実行するために必要な前記イベントが適切に分配されるように振り分けルールを前記コンテキスト依存振り分け装置に記憶させるイベント処理分散制御装置と備えたイベント処理負荷分散システムであって、
前記イベント処理分散制御装置は、
前記各アプリケーションから前記処理ルールを受信する処理ルール受信部と、
この受信された処理ルールに含まれる処理すべきイベントの条件を示すイベント条件を、前記処理サーバごとに少なくとも記録する処理ルール振り分け記録部と、
前記処理ルール受信部が新規に処理ルールを受信した場合に、前記処理ルール振り分け記録部を参照して、前記処理サーバにこの処理ルールを割り当てる処理ルール振り分け部とを有すると共に、
既存の前記振り分けルールに含まれるコンテキストと前記新規に受信した処理ルールに含まれるコンテキストとの間の差分の許容範囲を記録する振り分けルール許容差記録部と、
前記新規に受信した処理ルールに含まれるコンテキストと既存の前記振り分けルールに含まれるコンテキストとの間の差分が前記許容範囲以内である場合に、この新規に受信した処理ルールが含まれるように前記既存の振り分けルールを更新する振り分けルール決定部と
を有することを特徴とするイベント処理負荷分散システム。
【請求項2】
前記イベント処理分散制御装置の前記処理ルール振り分け部が、
前記振り分けルール決定部による前記既存の振り分けルールの更新に応じて、前記新規に受信した処理ルールをこの既存の振り分けルールにある前記処理サーバと同一の前記処理サーバに割り当てる機能を有することを特徴とする、請求項1に記載のイベント処理負荷分散システム。
【請求項3】
前記イベント処理分散制御装置の前記振り分けルール決定部が、
更新された前記振り分けルールに含まれるコンテキストと、記憶されているその他の前記振り分けルールに含まれるコンテキストとの間の差分が前記許容範囲以内である場合に、これらの振り分けルールを統一するよう更新する機能を有することを特徴とする、請求項2に記載のイベント処理負荷分散システム。
【請求項4】
前記処理ルールに含まれるコンテキストの差分の前記許容範囲が、数値もしくはソート順の文字列で示されることを特徴とする、請求項1ないし3のうちいずれか1項に記載のイベント処理負荷分散システム。
【請求項5】
複数の他のコンピュータで動作する各アプリケーションに対してイベント処理結果を通知する複数の処理サーバと前記複数の処理サーバに対して予め設定された複数のイベント発生源において発生したイベントを振り分けるコンテキスト依存振り分け装置とにネットワークを介して接続され、前記複数の処理サーバに前記イベントの内容を示すコンテキストに基づく処理ルールを設定すると共に前記複数の処理サーバが前記処理ルールを実行するために必要な前記イベントが適切に分配されるように振り分けルールを前記コンテキスト依存振り分け装置に記憶させるイベント処理分散制御装置であって、
前記各アプリケーションから前記処理ルールを受信する処理ルール受信部と、
この受信された処理ルールに含まれる処理すべきイベントの条件を示すイベント条件を、前記処理サーバごとに少なくとも記録する処理ルール振り分け記録部と、
前記処理ルール受信部が新規に処理ルールを受信した場合に、前記処理ルール振り分け記録部を参照して、前記処理サーバにこの処理ルールを割り当てる処理ルール振り分け部とを有すると共に、
既存の前記振り分けルールに含まれるコンテキストと前記新規に受信した処理ルールに含まれるコンテキストとの間の差分の許容範囲を記録する振り分けルール許容差記録部と、
前記新規に受信した処理ルールに含まれるコンテキストと既存の前記振り分けルールに含まれるコンテキストとの間の差分が前記許容範囲以内である場合に、この新規発生イベントが含まれるように前記既存の振り分けルールを更新する振り分けルール決定部と
を有することを特徴とするイベント処理負荷分散制御装置。
【請求項6】
複数の他のコンピュータで動作する各アプリケーションに対してイベント処理結果を通知する複数の処理サーバと、
前記複数の処理サーバに対して予め設定された複数のイベント発生源において発生したイベントを振り分けるコンテキスト依存振り分け装置と、
前記複数の処理サーバに対して前記イベントの内容を示すコンテキストに基づく処理ルールを設定し、前記複数の処理サーバが前記処理ルールを実行するために必要な前記イベントが適切に分配されるように振り分けルールを前記コンテキスト依存振り分け装置に記憶させるイベント処理分散制御装置と備えたイベント処理負荷分散システムにあって、
前記アプリケーションから新規の前記処理ルールを前記イベント処理分散制御装置の処理ルール受信部が受信し、
この新規の処理ルールの受信に応じて、予め記録された処理すべきイベントの条件を示すイベント条件に基づいて前記イベント処理分散制御装置の処理ルール振り分け部が前記処理サーバにこの処理ルールを割り当て、
既存の前記振り分けルールに含まれるコンテキストと前記新規に受信した処理ルールに含まれるコンテキストとの間の差分が予め記録された許容範囲以内である場合に、この新規に受信した処理ルールが含まれるように前記イベント処理分散制御装置の振り分けルール決定部が前記既存の振り分けルールを更新する
ことを特徴とするイベント処理負荷分散制御方法。
【請求項7】
複数の他のコンピュータで動作する各アプリケーションに対してイベント処理結果を通知する複数の処理サーバと、
前記複数の処理サーバに対して予め設定された複数のイベント発生源において発生したイベントを振り分けるコンテキスト依存振り分け装置と、
前記複数の処理サーバに対して前記イベントの内容を示すコンテキストに基づく処理ルールを設定し、前記複数の処理サーバが前記処理ルールを実行するために必要な前記イベントが適切に分配されるように振り分けルールを前記コンテキスト依存振り分け装置に記憶させるイベント処理分散制御装置と備えたイベント処理負荷分散システムにあって、
前記イベント処理分散制御装置が備えるコンピュータに、
前記アプリケーションから新規の前記処理ルールを受信する手順、
この新規の処理ルールの受信に応じて、予め記録された処理すべきイベントの条件を示すイベント条件に基づいて前記処理サーバにこの処理ルールを割り当てる手順、
および既存の前記振り分けルールに含まれるコンテキストと前記新規に受信した処理ルールに含まれるコンテキストとの間の差分が予め記録された許容範囲以内である場合に、この新規に受信した処理ルールが含まれるように前記既存の振り分けルールを更新する手順
を実行させることを特徴とするイベント処理負荷分散制御プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2012−185673(P2012−185673A)
【公開日】平成24年9月27日(2012.9.27)
【国際特許分類】
【出願番号】特願2011−48251(P2011−48251)
【出願日】平成23年3月4日(2011.3.4)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成22年度 総務省「ユビキタス・プラットフォーム技術の研究開発(ユビキタスサービスプラットフォーム技術)」委託研究、産業技術力強化法第19条の適用を受ける特許出願
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】