ノードに配置されると共にノード間の移動が可能とされ、設定された条件にデータが合致した場合に処理を実行するためのクエリが処理対象とするデータが配信される周期を特定する特定部と、前記特定部により特定した周期に基づき、移動対象のクエリが処理対象とするデータが配信されない期間に、移動元のノードに当該クエリの移動を指示する指示部14、43cと、を有することを特徴とするサーバ装置。前記特定部は、複数のクエリをグループ分けしたグループ毎に、当該グループに属するクエリが処理対象とするデータが配信される周期を特定し、前記指示部は、前記特定部によりグループ毎に特定した周期に基づき、移動対象のグループの各クエリが処理対象とするデータが配信されない期間に移動元のノードに当該移動対象のグループの各クエリの移動を指示することを特徴とする請求項1に記載のサーバ装置。前記特定部は、定期的に前記周期を特定し直すことを特徴とする請求項2に記載のサーバ装置。移動候補のクエリが複数ある場合、前記特定部により特定した周期に基づき、次に処理対象とするデータが配信されるまでの期間が長いクエリを移動対象として選択する選択部をさらに有することを特徴とする請求項1に記載のサーバ装置。前記特定部は、複数のクエリについてそれぞれ処理対象とするデータが配信される周期を特定し、前記特定部により特定した周期に基づき、周期が同一かつ位相が近いクエリを同じグループとして前記複数のクエリを複数のグループに分類する分類部をさらに有することを特徴とする請求項1~3の何れか1つに記載のサーバ装置。前記特定部は、定期的に、前記周期を特定し直し、前記分類部は、前記特定部により特定し直された周期に基づき、前記複数のクエリを複数のグループに分類し直すことを特徴とする請求項5に記載のサーバ装置。ノード間の移動が可能とされ、設定された条件にデータが合致した場合に処理を実行すると共にノード間の移動が可能とされたクエリが処理対象とするデータが配信された場合、当該クエリの処理を実行する実行部と、前記クエリが処理対象とするデータが配信される周期を特定する特定部と、クエリの移動の指示を受け付ける受付部と、前記受付部に前記クエリの移動指示を受け付けた場合、前記特定部により特定した周期に基づき、当該クエリが処理対象とするデータが配信されない期間に当該クエリを移動先のノードへ移動する移動部と、を有することを特徴とするサーバ装置。コンピュータに、ノードに配置されると共にノード間の移動が可能とされ、設定された条件にデータが合致した場合に処理を実行するためのクエリが処理対象とするデータが配信される周期を特定し、特定した周期に基づき、移動対象のクエリが処理対象とするデータが配信されない期間に、移動元のノードに当該クエリの移動を指示する処理を実行させることを特徴とする移動制御プログラム。コンピュータが、ノードに配置されると共にノード間の移動が可能とされ、設定された条件にデータが合致した場合に処理を実行するためのクエリが処理対象とするデータが配信される周期を特定し、特定した周期に基づき、移動対象のクエリが処理対象とするデータが配信されない期間に、移動元のノードに当該クエリの移動を指示する処理を実行することを特徴とする移動制御方法。ノードに配置されると共にノード間の移動が可能な処理要求文について、当該処理要求文が処理対象とするデータが配信される周期を特定する特定部と、前記特定部により特定した周期に基づき、移動対象の処理要求文が処理対象とするデータが配信されない期間に、当該処理要求文の移動を指示する指示部と、を有することを特徴とするサーバ装置。しかし、CEPシステムでは、処理要素を移動させる場合、移動する処理要素のクエリの処理が停止し、データ処理に遅延が発生する。1つの側面では、データ処理の遅延を抑制できるサーバ装置、移動制御プログラム、および移動制御方法を提供することを目的とする。第1の案では、サーバ装置は、特定部と、指示部とを有する。特定部は、ノードに配置されると共にノード間の移動が可能とされ、設定された条件にデータが合致した場合に処理を実行するためのクエリが処理対象とするデータが配信される周期を特定する。指示部は、前記特定部により特定した周期に基づき、移動対象のクエリが処理対象とするデータが配信されない期間に、移動元のノードに当該クエリの移動を指示する。データ処理の遅延を抑制できる。以下に、本発明にかかるサーバ装置、移動制御プログラム、および移動制御方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。実施例1に係るサーバ装置について説明する。図1は、実施例1に係るサーバ装置を含むCEPシステムの全体構成を示す図である。サーバ装置10は、CEPシステムを管理する物理サーバであり、例えば、データセンサや各企業に設けられた管理用のサーバコンピュータである。サーバ装置10は、複数のノード11と通信可能とする。ノード11は、サーバ装置またはサーバ装置上で動作する仮想マシンである。各ノード11には、それぞれ設定された条件にデータが合致した場合に処理を実行するための複数のクエリ12が分散配置される。各ノード11には、様々な対象から収集されたデータが配信される。ノード11は、受信したデータがクエリ12に設定された条件に合致した場合にクエリ12に設定された処理を実行する。各ノード11に配置されたクエリ12は、ノード11間の移動が可能とされている。図1に示すように、サーバ装置10は、特定部13と、指示部14とを有する。特定部13は、各種の特定を行う。例えば、特定部13は、クエリが処理対象とするデータが配信される周期を特定する。例えば、クエリ12が処理対象とするデータが配信される時間間隔および所定の基準からの位相を各ノード11が検出してサーバ装置10へ送信する場合、特定部13は、各ノード11から送信された検出結果に基づいて周期を特定してもよい。一例として、処理対象のデータが0時0分10秒、0時1分10秒、0時2分10秒と配信され、所定の基準を0時0分0秒とした場合、時間間隔は1分、基準からの位相は10秒と検出される。所定の基準は、何れの時刻であってもよい。また、例えば、クエリに対して同じ周期で複数のデータが配信される場合、いずれかのデータの配信される周期を基準として位相を求めてもよい。また、例えば、クエリが処理対象とするデータがサーバ装置10にも配信される場合、特定部13は、データが配信される時間間隔および所定の基準からの位相を検出して周期を特定してもよい。この場合、クエリが処理対象とするデータをノード11およびサーバ装置10へ配信してもよい。また、クエリが処理対象とするデータをノード11がサーバ装置10へ転送してもよい。また、例えば、クエリが処理対象とするデータが配信される時間間隔および位相が決まっており、時間間隔および位相を示す周期情報がサーバ装置10の不図示の記憶部に記憶されている場合、特定部13は、記憶された周期情報に基づいて周期を特定してもよい。指示部14は、各種の指示を行う。例えば、特定部13により特定した周期に基づき、移動対象のクエリ12が処理対象とするデータが配信されない期間に、移動元のノード11に当該クエリ12の移動の指示を送信する。各ノード11は、移動の指示を受信した場合、移動が指示されたクエリ12を他のノード11へ移動を移動する。なお、図1の例では、機能的な構成を示したため、特定部13と、指示部14とを別に分けているが、例えば、1つのデバイスで構成してもよい。デバイスの一例としては、CPUCentralProcessingUnitやMPUMicroProcessingUnitなどの電子回路が挙げられる。なお、デバイスとして、ASICApplicationSpecificIntegratedCircuitやFPGAFieldProgrammableGateArrayなどの集積回路を採用することもできる。ところで、クエリ12が処理対象とするデータは、配信されるタイミングに周期性がある場合がある。例えば、処理対象とするデータを特定の証券コードの株価のデータとし、株価のデータが証券コードの順に繰り返し配信される場合、特定の証券コードの株価のデータは、所定の時間間隔で繰り返し配信される。また、例えば、処理対象とするデータをセンサから送信されるデータとし、当該センサのデータの送信周期が定まっている場合、センサのデータは、センサの送信周期で繰り返し配信される。そこで、サーバ装置10は、データが配信されない期間に、ノード11に対してクエリ12の移動の指示を送信する。ノード11は、クエリ12の移動の指示を受信すると、クエリ12を移動する。このように、サーバ装置10は、ノード11に配置されると共にノード11間の移動が可能とされ、設定された条件にデータが合致した場合に処理を実行するためのクエリ12が処理対象とするデータが配信される周期を特定する。そして、サーバ装置10は、特定した周期に基づき、移動対象のクエリ12が処理対象とするデータが配信されない期間に、移動元のノード11に当該クエリ12の移動を指示する。これにより、サーバ装置10によれば、クエリ12による処理対象とするデータの処理と、クエリ12の移動のタイミングが重なることを抑制できるため、データ処理の遅延を抑制できる。実施例2について説明する。図2は、実施例2に係るサーバ装置を含むCEPシステムの全体構成を示す図である。なお、上述の実施例1と同一の部分については、同一の符号を付してその説明を省略する。図2に示すように、サーバ装置10は、選択部15をさらに有する。選択部15は、各種の選択を行う。例えば、選択部15は、移動候補のクエリ12が複数ある場合、特定部13により特定された周期に基づき、次に処理対象とするデータが配信されるまでの期間が長いクエリを移動対象として選択する。移動候補のクエリ12は、例えば、管理者が指定してもよい。また、配信されるデータ数が多い、あるいはデータ数が少ないなど所定の条件を満たすクエリ12を移動候補のクエリ12としてもよい。指示部14は、特定部13により特定された周期に基づき、選択部15により選択されたクエリ12が処理対象とするデータが配信されない期間に、移動元のノード11に当該クエリ12の移動の指示を送信する。このように、サーバ装置10は、移動候補のクエリ12が複数ある場合、次に処理対象とするデータが配信されるまでの期間が長いクエリを移動対象として選択する。そして、サーバ装置10は、選択されたクエリ12が処理対象とするデータが配信されない期間に、当該クエリ12の移動の指示を送信する。これにより、サーバ装置10によれば、データが配信されるまでの期間をより長く確保できるため、クエリ12による処理対象とするデータの処理と、クエリ12の移動のタイミングが重なることを抑制できる。実施例3について説明する。実施例3では、複数のサーバ装置30上でそれぞれVMVirtualMachine:仮想マシン31が動作し、VM31に複数のクエリ33が分散配置されたCEPシステム20について説明する。図3は、実施例3に係るCEPシステムの構成の一例を示す図である。CEPシステム20は、サーバ装置21と、複数のサーバ装置30と、管理サーバ40とを有する。サーバ装置21と各サーバ装置30と管理サーバ40との間は、ネットワーク22を介して通信可能に接続される。かかるネットワーク22の一態様としては、有線または無線を問わず、LANLocalAreaNetworkやVPNVirtualPrivateNetworkなどの任意の通信網が挙げられる。サーバ装置30では、VM31が動作する。各VM31には、複数のクエリ33が分散配置される。サーバ装置21は、外部ネットワーク23を介して様々な対象からデータを受信し、受信したデータを当該データを処理対象とするクエリ33が配置されたVM31に配信する。管理サーバ40は、サーバ装置21および各サーバ装置30を管理しており、各VM31に配置されたクエリ33の移動を制御する。なお、図3の例では、サーバ装置30を3つ図示したが、サーバ装置30の数は何れであってもよい。図4は、実施例3に係るCEPシステムの構成を模式的に示した図である。サーバ装置21、VM31および管理サーバ40は、各クエリ33が処理対象とするデータ毎に、クエリ33の配置先を格納したルーティングテーブル50を記憶する。サーバ装置21は、外部ネットワーク23を介して様々な対象から多数のデータを受信する。サーバ装置21は、受信したデータを所定のデータ構成に整える前処理を行う。そして、サーバ装置21は、ルーティングテーブル50に基づき、受信したデータを処理対象とするクエリ33の配置先を特定し、特定した配置先のVM31へ前処理後のデータを送信する。なお、本実施例では、サーバ装置21を1つ図示したが、サーバ装置21を複数設け、複数のサーバ装置21により受信したデータを振り分けてもよい。VM31は、それぞれデータストリーム処理エンジン32を動作させる。データストリーム処理エンジン32は、複合イベント処理を実現するソフトウェアである。データストリーム処理エンジン32は、受信したデータと、クエリ33の条件式とを突合させてイベントを検出し、検出したイベントの処理を実行する制御を行う。また、CEPシステム20では、複数のクエリ33により一連の処理を実行させることもできる。例えば、上位のクエリ33による実行結果のデータを下位のクエリ33へ送信し、下位のクエリ33の入力のデータとすることもできる。データストリーム処理エンジン32は、複数のクエリ33により一連の処理を実行する場合、クエリ33の実行結果のデータを下位のクエリ33が動作するVM31へ送信する。また、データストリーム処理エンジン32は、管理サーバ40からのクエリ33の移動の指示に応じて、他のVM31上で動作するデータストリーム処理エンジン32との間でクエリ33を移動させる制御を行う。ここで、クエリ33の移動について説明する。クエリ33は、付随するデータを有する場合がある。例えば、クエリ33が処理対象とするデータの一定期間の平均を求める処理を行う場合、平均を算出するために一定期間に受信したデータを保持する。また、クエリ33は、処理にテーブルなどの所定のデータを用いる場合もある。データストリーム処理エンジン32は、クエリ33を移動させる場合、クエリ33およびクエリ33に付随するデータを処理要素として移動させる。また、クエリ33の移動には、以下のようなケースが考えられる。図5Aは、クエリの移動の一例を示す図である。図5Aに示すように、クエリ33毎に処理対象とするデータが異なる場合、クエリ33を移動させ、移動先で処理対象とするデータを処理させる。例えば、処理を分散させる場合、各クエリ33をそれぞれ別なVM31に移動させて、各VM31によりデータを処理させる。一方、例えば、処理負荷が低い場合、クエリ33を1つのVM31に移動させ、1つのVM31によりデータを処理させる。一方、クエリ33は、処理対象とするデータが複数である場合がある。例えば、データとして証券コードおよび株価がVM31に配信され、証券コード毎に株価の一定期間の移動平均を求める処理を1つのクエリ33により行う場合がある。図5Bは、クエリの移動の他の一例を示す図である。図5Bの左側に示すように、クエリ33は、データ1~nを処理対象とする。この場合、処理対象のデータ1~n毎に、クエリ33を移動させる。例えば、処理の分散を行う場合、クエリ33を複製して別なVM31に移動させ、処理対象のデータ1~nをそれぞれ別なVM31により処理させる。一方、例えば、処理負荷が低い場合、クエリ33を1つのVM31にまとめ、処理対象のデータ1~nを1つのVM31により処理させる。ところで、各クエリ33に対して個別に移動を指示して移動させた場合、移動対象のクエリ33の数が多くなるほど移動の指示回数が多くなる。また、クエリ33が処理対象とするデータ毎に、ルーティングテーブル50に配置先を格納する場合、ルーティングテーブル50は、クエリ33が処理対象とするデータが多くなるほどデータ量が大きくなる。そこで、本実施例では、複数のクエリ33を複数のグループに分け、グループ毎に移動する。また、ルーティングテーブル50は、グループ毎に格納先を管理する。図6は、クエリ33のグループ分けの一例を示す図である。例えば、処理対象とする各データに、32ビットの整数データにより、各データを識別するキーが含まれ、それぞれのクエリ33の処理の条件に異なるキーが設定されているものとする。この場合、例えば、処理の条件に設定されたキーを所定の整数値で割った余りが同じクエリ33を同一のグループとしてグループ分けする。一例としては、処理の条件に設定されたキーを8191で割った余りが同じクエリ33を同一のグループとして静的にグループを分ける。これにより、各クエリ33は、8191個のグループに分かれる。図6の例では、クエリ33をグループ分けした各グループをV-Nodeと示している。そして、本実施例では、V-Node毎に、クエリ33をVM31に配置する。ルーティングテーブル50には、V-Node毎に配置先を格納する。図7は、ルーティングテーブルのデータ構成の一例を示す図である。図7に示すように、ルーティングテーブル50は、ID、格納先の各項目を有する。IDの項目は、V-Nodeを識別するIDを記憶する領域である。格納先の項目は、格納先のVM31を示すIDを記憶する領域である。図7の例では、IDが12のV-Nodeは、格納先のVM31のIDが1であることを示す。サーバ装置21および各VM31のデータストリーム処理エンジン32は、キーに基づいてクエリ33の格納先を判別する。例えば、サーバ装置21は、受信したデータに含まれるキーが8203であった場合、8203を8191で割った余り、12を求める。そして、サーバ装置21は、ルーティングテーブル50からV-NodeのIDが12の格納先を求める。図7の例では、V-NodeのIDが12の格納先のVM31のIDが1であると求まる。各VM31は、それぞれ通信を行うIPアドレスおよびポート番号が定められ、各VM31のIPアドレスおよびポート番号に対応してファイルディスクリプタが割り当てられる。サーバ装置21、各VM31および管理サーバ40は、それぞれファイルディスクリプタの番号と各VM31を示すIDを格納先テーブルに記憶する。図8は、格納先テーブルのデータ構成の一例を示す図である。図8に示すように、格納先テーブルは、ID、ファイルディスクリプタの各項目を有する。IDの項目は、VM31のIDを記憶する領域である。ファイルディスクリプタの項目は、IDが示すVM31への通信路に割り当てられファイルディスクリプタの番号を記憶する領域である。図8の例では、IDが0のVM31への通信路に割り当てられファイルディスクリプタの番号が6であることを示す。VM31と通信を行う場合、格納先テーブルから通信対象のVM31のIDに対応するファイルディスクリプタの番号を求める。例えば、通信対象のVM31のIDが1である場合、格納先テーブルからVM31のIDが1のファイルディスクリプタの番号を7と求まる。そして、求めたファイルディスクリプタの番号を用いてTCP/IPのソケットにより通信対象のVM31と通信を行う。各VM31は、それぞれ配置されたクエリ33が処理対象とするデータが配信される時間間隔、および所定の基準からの位相を検出し、検出した期間および位相を周期を示す周期情報として管理サーバ40へ送信する。管理サーバ40は、受信した周期情報に基づいて各クエリ33が処理対象とするデータが配信される周期を特定する。また、各VM31は、それぞれサーバ装置30から割り当てられたCPUやメモリの使用率などのリソースの負荷状態を検出し、検出した負荷状態を示す負荷情報を管理サーバ40へ送信する。管理サーバ40は、各VM31から送信された負荷情報に基づき、移動対象のクエリ33を特定する。そして、管理サーバ40は、移動対象のクエリ33にデータが配信されない期間に移動指示を送信する。なお、本実施例では、V-Node単位でクエリ33の移動を行う。管理サーバ40は、移動先のVM31のIDおよび移動対象のV-NodeのIDを含んだ移動指示を移動元のVM31に送信する。移動指示を受信したVM31のデータストリーム処理エンジン32は、移動対象のV-Nodeに属するクエリ33や当該クエリ33に付随するデータなどの処理要素をシリアライズして移動先のVM31へ送信する。移動先のVM31のデータストリーム処理エンジン32は、送信されたデータをデシリアライズして復元し、復元されたクエリ33の駆動を開始する。また、データストリーム処理エンジン32は、ルーティングテーブル50に格納された移動対象のV-Nodeに属するクエリ33の格納先を自身が動作するVM31のIDに更新する。そして、データストリーム処理エンジン32は、各VM31、サーバ装置21および管理サーバ40に対して移動対象のV-NodeのIDおよび移動先のVM31のIDを通知する。各VM31、サーバ装置21および管理サーバ40は、移動が通知された場合、ルーティングテーブル50に格納された移動対象のV-Nodeに属するクエリ33の格納先を通知された移動先のVM31のIDに更新する。図9は、実施例3に係る管理サーバおよびVMの機能的な構成の一例を示す図である。図9に示すように、VM31は、データストリーム処理エンジン32と、検出部34と、送信部35と、受付部36と、移動部37とを有する。データストリーム処理エンジン32は、VM31に配信されたデータと、クエリ33の条件式とを突合させてイベントを検出し、検出したイベントの処理を実行する。検出部34は、各種の検出を行う。例えば、検出部34は、配置された各クエリ33毎に、当該クエリ33が処理対象とするデータが配信される時間間隔、および所定の基準からの位相を定期的に検出する。また、検出部34は、VM31のリソースの負荷状態を定期的に検出する。送信部35は、各種の送信を行う。例えば、送信部35は、検出部34により検出された各クエリ33が処理対象とするデータが配信の時間間隔および位相を周期を示す周期情報として管理サーバ40へ定期的に送信する。また、送信部35は、検出部34により定期的に検出された負荷状態を示す負荷情報を管理サーバ40へ移動する。受付部36は、各種の指示を受け付ける。例えば、受付部36は、V-Nodeの移動の指示を受け付ける。移動部37は、各種の移動を行う。例えば、移動部37は、V-Nodeの移動指示を受け付けた場合、移動対象のV-Nodeの各クエリ33を移動先のVM31へ移動する。なお、検出部34、送信部35、受付部36、移動部37の各処理は、データストリーム処理エンジン32が行ってもよい。一方、管理サーバ40は、通信制御I/F部41と、記憶部42と、制御部43とを有する。通信制御I/F部41は、少なくとも1つのポートを有し、各VM31、サーバ装置21との間の通信を制御するインタフェースである。通信制御I/F部41は、各VM31およびサーバ装置21と各種情報を送受信する。例えば、通信制御I/F部41は、VM31から周期情報や負荷情報を受信する。また、通信制御I/F部41は、VM31へ各種指示を送信する。記憶部42は、各種情報を記憶する。例えば、記憶部42は、上述したルーティングテーブル50と、周期情報51とを記憶する。記憶部42のデバイスの一例としては、フラッシュメモリやNVSRAMなどのデータを書き換え可能な半導体メモリや、ハードディスク、光ディスクなどの記憶装置が挙げられる。制御部43は、例えば、内部メモリ等を有するCPUなどの電子回路であり、判定部43aと、特定部43bと、指示部43cとを有する。判定部43aは、各種の判定を行う。例えば、判定部43aは、各VM31から送信された負荷情報により示される各VM31の負荷状態に許容される負荷以上のものがあるか否か判定する。特定部43bは、各種の特定を行う。例えば、特定部43bは、記憶部42に記憶された周期情報51に基づき、V-Node毎に、各V-Nodeに属するクエリが処理対象とするデータが配信される周期を特定する。また、特定部43bは、各VM31から周期情報51を受信する毎に、周期の特定をし直す。また、特定部43bは、判定部43aにより許容される負荷以上と判定されたVM31がある場合、許容される負荷以上のVM31を移動元と特定する。また、特定部43bは、負荷状態の低い何れかのVM31を移動先と特定する。また、特定部43bは、許容される負荷以上のVM31に配置された何れかのV-Nodeを移動対象と特定する。そして、特定部43bは、V-Node毎のデータが配信される周期に基づき、移動対象のV-Nodeの各クエリ33が処理対象とするデータが配信されない期間を特定する。例えば、特定部43bは、現在の時刻からV-Node単位でのクエリ33の移動が可能な所定期間毎に、当該所定期間に移動対象のV-Nodeに属する何れかのクエリ33の処理対象のデータが受信されるかを判定し、データが受信されない期間を特定する。また、例えば、特定部43bは、V-Node毎のデータが配信される周期に基づき、移動対象のV-Nodeの各クエリ33が処理対象とするデータが配信されない期間を特定する。そして、特定部43bは、特定した期間がV-Node単位でのクエリ33の移動が可能な所定期間以上である場合、特定した期間をデータが受信されない期間と特定する。指示部43cは、特定部43bにより特定されたデータが受信されない期間にV-Nodeの移動を指示する。例えば、指示部43cは、データが受信されない期間に、許容される負荷以上と判定されたVM31を移動元とし、負荷状態の低いVM31を移動先として、移動対象のV-Nodeの移動の指示を送信する。次に、本実施例に係る管理サーバ40がクエリ33の移動を指示する処理の流れを説明する。図10は、移動制御処理の手順を示すフローチャートである。この移動制御処理は、例えば、許容される負荷以上の負荷状態のVM32がある場合に実行される。図10に示すように、特定部43bは、記憶部42に記憶された周期情報51に基づき、V-Node毎に、データが配信される周期を特定するステップS10。また、特定部43bは、許容される負荷以上のVM31を移動元、負荷状態の低いVM31を移動先、許容される負荷以上のVM31に配置された何れかのV-Nodeを移動対象のV-Nodeと特定するステップS11。そして、特定部43bは、V-Node毎に特定した周期に基づき、データが配信されない期間を特定するステップS12。指示部43cは、特定された期間にV-Nodeの移動を指示しステップS13、処理を終了する。このように、管理サーバ40は、V-Node毎に、V-Nodeに属するクエリが処理対象とするデータが配信される周期を特定する。そして、管理サーバ40は、特定した周期に基づき、移動対象のV-Nodeの各クエリ33が処理対象とするデータが配信されない期間に移動元のVM32に移動対象のV-Nodeの各クエリ33の移動を指示する。これにより、管理サーバ40によれば、移動対象のV-Nodeの各クエリ33によるデータの処理と、移動対象のV-Nodeの各クエリ33の移動のタイミングが重なることを抑制できるため、データ処理の遅延を抑制できる。また、管理サーバ40によれば、定期的に周期を特定し直すため、クエリ33が処理対象とするデータが配信される周期に変動があっても、クエリ33によるデータの処理と、クエリ33の移動のタイミングが重なることを抑制できる。実施例4について説明する。実施例4に係るCEPシステムの構成は、上述の実施例3とほぼ同様であるため、異なる部分について説明する。本実施例も、上述の実施例3と同様に、複数のクエリ33を複数のグループに分け、グループ毎に移動する。また、本実施例は、クエリ33が所属するグループを動的に変更可能としている。図11は、クエリのグループ分けの一例を示す図である。図11に示すように、クエリ33は、所属するV-Nodeを動的に変更可能とされている。そして、本実施例も、V-Node毎に、クエリ33をVM31に配置する。図12は、実施例4に係るCEPシステムの構成を模式的に示した図である。なお、上述の実施例3と同一の部分については、同一の符号を付してその説明を省略する。図12に示すように、サーバ装置21、VM31および管理サーバ40は、各クエリ33が所属するV-Nodeを格納したノードテーブル52をさらに記憶する。ノードテーブル52は、各クエリ33の所属するV-Nodeを記憶するテーブルである。図13は、ノードテーブルのデータ構成の一例を示す図である。図13に示すようにノードテーブル52は、キー、ノードIDの各項目を有する。キーの項目は、各クエリ33が処理対象とするデータを識別するキーを記憶する領域である。IDの項目は、V-NodeのIDを記憶する領域である。図13の例では、処理の条件のキーが1234であるクエリ33は、IDが12のV-Nodeに所属することを示す。本実施例では、クエリ33が処理対象とするデータに含まれるキーに基づき、データの配信先を求める。また、クエリ33に処理条件として設定されたキーに基づき、クエリ33の配置先を求める。例えば、サーバ装置21は、データを受信した場合、ノードテーブル52に基づき、受信したデータに含まれるキーに対応するV-NodeのIDを求める。そして、サーバ装置21は、ルーティングテーブル50に基づき、V-NodeのIDに対応する格納先のVM31のIDを求め、受信したデータを格納先のVM31に送信する。図14は、実施例4に係る管理サーバおよびVMの機能的な構成の一例を示す図である。なお、上述の実施例3と同一の部分については、同一の符号を付してその説明を省略する。図14に示すように、管理サーバ40の制御部43は、分類部43dをさらに有する。特定部43bは、記憶部42に記憶された周期情報51に基づき、複数のクエリ33についてそれぞれ処理対象とするデータが配信される周期を特定する。なお、周期情報51は、各VM31から定期的に送信される。特定部43bは、新しい周期情報51が受信される毎に、周期の特定をし直す。分類部43dは、各種の分類を行う。例えば、分類部43dは、特定部43bにより特定した周期に基づき、周期が同一かつ位相が近いクエリ33を同じグループとして各クエリ33を複数のグループに分類する。一例として、分類部43dは、周期が同一のクエリ33を位相の順にソートし、所定個ずつのグループに分ける。他の一例として、分類部43dは、周期が同一のクエリ33について、当該周期を複数の期間に分け、位相が同じ期間に属するクエリ33を同じグループとしてグループに分ける。そして、分類部43dは、グループ毎にV-NodeのIDを定める。指示部43cは、分類部43dによる分類の結果、所属するV-Nodeが変化したクエリ33がある場合、当該クエリ33を新しいV-Nodeの配置先へ移動させる移動の指示を送信する。また、指示部43cは、記憶部42に記憶されたノードテーブル52の所属するV-Nodeが変化したクエリ33のV-NodeのIDを新しいV-NodeのIDに更新する。さらに、指示部43cは、所属するV-Nodeが変化したクエリ33のキーと新しいV-NodeのIDを含んだノードテーブル52の更新の指示を各VM31およびサーバ装置21へ送信する。各VM31およびサーバ装置21は、ノードテーブル52の更新の指示を受信した場合、当該指示に基づき、ノードテーブル52の所属するV-Nodeが変化したクエリ33のV-NodeのIDを新しいV-NodeのIDに更新する。次に、本実施例に係る管理サーバ40がクエリ33を分類する処理の流れを説明する。図15は、分類処理の手順を示すフローチャートである。この分類処理は、例えば、管理者から指示されたタイミング、あるいは、特定部43bによりデータが配信される周期が特定されたタイミングなど定期的に実行される。図15に示すように、分類部43dは、特定部43bにより特定された周期に基づき、周期が同一かつ位相が近いクエリ33を同じグループとして各クエリ33を複数のグループに分類するステップS20。指示部43cは、分類の結果、所属するV-Nodeが変化したクエリ33があるか否か判定するステップS21。所属するV-Nodeが変化したクエリ33がない場合ステップS21否定、処理を終了する。一方、所属するV-Nodeが変化したクエリ33がある場合ステップS21肯定、指示部43cは、ノードテーブル52の所属するV-Nodeが変化したクエリ33のV-NodeのIDを新しいV-NodeのIDに更新するステップS22。そして、指示部43cは、ノードテーブル52の更新の指示を各VM31およびサーバ装置21へ送信しステップS23、処理を終了する。このように、管理サーバ40は、周期が同一かつ位相が近いクエリ33を同じグループとして複数のクエリ33を複数のV-Nodeに分類する。よって、V-Nodeに属する各クエリが処理対象とするデータが配信される時期が特定の時期に偏る。これにより、管理サーバ40によれば、V-Node単位でクエリ33を移動させる場合に、特定の時期以外の期間にクエリ33を移動させることより、クエリ33による処理対象とするデータの処理と、クエリ33の移動のタイミングが重なることを抑制できる。また、管理サーバ40は、定期的にデータが配信される周期を特定し直し、特定し直された周期に基づいてグループの分類をし直す。これにより、管理サーバ40によれば、クエリ33が処理対象とするデータが配信される周期に変動があっても、クエリ33によるデータの処理と、クエリ33の移動のタイミングが重なることを抑制できる。実施例5について説明する。実施例5に係るCEPシステムの構成は、上述の実施例3とほぼ同様であるため、異なる部分について説明する。図16は、実施例5に係る管理サーバおよびVMの機能的な構成の一例を示す図である。なお、上述の実施例3と同一の部分については、同一の符号を付してその説明を省略する。図16に示すように、VM31は、特定部38をさらに有する。特定部38は、検出部34により検出された各クエリ33が処理対象とするデータが配信される時間間隔および位相に基づき、V-Node毎に、各V-Nodeに属するクエリ33が処理対象とするデータが配信される周期を特定する。そして、特定部38は、V-Node毎のデータが配信される周期に基づき、V-Nodeの各クエリ33が処理対象とするデータが配信されない期間を特定する。管理サーバ40の指示部43cは、許容される負荷以上と判定されたVM31がある場合、V-Nodeの移動を指示する。例えば、指示部43cは、許容される負荷以上と判定されたVM31を移動元とし、負荷状態の低いVM31を移動先として、許容される負荷以上のVM31の何れかのV-Nodeを移動対象として移動の指示を送信する。移動部37は、V-Nodeの移動指示を受け付けた場合、特定部43bにより特定されたデータが配信されない期間に、移動対象のV-Nodeの各クエリ33を移動先のVM31へ移動する。このように、VM31は、配置されたクエリ33が処理対象とするデータが配信された場合、当該クエリ33の処理を実行する。また、VM31は、クエリ33が処理対象とするデータが配信される周期を特定する。また、VM31は、クエリ33の移動の指示を受け付ける。そして、VM31は、クエリ33の移動指示を受け付けた場合、特定した周期に基づき、当該クエリ33が処理対象とするデータが配信されない期間に当該クエリ33を移動先のVM31へ移動する。これにより、VM31によれば、移動対象のクエリ33によるデータの処理と、移動対象のクエリ33の移動のタイミングが重なることを抑制できるため、データ処理の遅延を抑制できる。さて、これまで開示の装置に関する実施例について説明したが、開示の技術は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。例えば、上記の実施例3では、特定部43bは、現在の時刻から所定期間毎に、データが受信されるかを判定してデータが受信されない期間を特定する場合について説明したが、開示の装置はこれに限定されない。例えば、特定部43bは、現在の時刻から移動の遅延が許容される所定の許容期間以内にデータが受信されない所定期間が無い場合、受信されるデータの数が最も少ない所定期間を移動対象のV-Nodeを移動させる期間と特定してもよい。また、特定部43bは、受信されるデータの数が最も少ない所定期間に代えて、受信されるデータの数が所定数以下の最も早い所定期間を移動対象のV-Nodeを移動させる期間と特定してもよい。これにより、データが受信されない所定期間が無い場合や、所定期間までの時間が許容期間以上の場合も、V-Nodeを移動させる期間を特定できる。また、上記の実施例3~5では、複数のクエリ33を複数のグループに分けたV-Node単位でクエリ33を移動させる場合について説明したが、開示の装置はこれに限定されない。例えば、クエリ33単位で移動させてもよい。この場合、ルーティングテーブル50は、クエリ33単位で格納先を記憶できるように構成すればよい。また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散統合の具体的状態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散統合して構成することができる。例えば、図1、図2に示す特定部13、指示部14、選択部15の各処理部が適宜統合されてもよい。また、例えば、図9、図14、図16に示す判定部43a、特定部43b、指示部43c、分類部43dの各処理部が適宜統合されてもよい。また、例えば、図9、図14、図16に示すデータストリーム処理エンジン32と、検出部34と、送信部35と、受付部36と、移動部37、特定部38の各処理部が適宜統合されてもよい。さらに、各処理部にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。[移動制御プログラム]また、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。図17は、移動制御プログラムを実行するコンピュータを示す図である。図17に示すように、コンピュータ300は、CPUCentralProcessingUnit310、ROMReadOnlyMemory320、HDDHardDiskDrive330、RAMRandomAccessMemory340を有する。これら310~340の各部は、バス400を介して接続される。ROM320には上記実施例1~5の各処理部と同様の機能を発揮する移動制御プログラム320aが予め記憶される。例えば、上記実施例1および実施例2の特定部13と、指示部14、選択部15と同様の機能を発揮する移動制御プログラム320aを記憶させる。あるいは、例えば、上記実施例3および実施例4の判定部43aと、特定部43bと、指示部43c、分類部43dと同様の機能を発揮する移動制御プログラム320aを記憶させる。あるいは、上記実施例3~5の検出部34と、送信部35と、受付部36と、移動部37、特定部38と同様の機能を発揮する移動制御プログラム320aを記憶させる。なお、移動制御プログラム320aについては、適宜分離しても良い。そして、CPU310が、移動制御プログラム320aをROM320から読み出して実行することで、実施例1~5の各制御部と同様の動作を実行する。すなわち、移動制御プログラム320aは、実施例1および実施例2の特定部13と、指示部14、選択部15と同様の動作を実行する。あるいは、移動制御プログラム320aは、実施例3および実施例4の判定部43aと、特定部43bと、指示部43c、分類部43dと同様の動作を実行する。あるいは、移動制御プログラム320aは、実施例3~5の検出部34と、送信部35と、受付部36と、移動部37、特定部38と同様の動作を実行する。なお、上記した移動制御プログラム320aについては、必ずしも最初からROM320に記憶させることを要しない。移動制御プログラム320aはHDD330に記憶させてもよい。例えば、コンピュータ300に挿入されるフレキシブルディスクFD、CD-ROM、DVDディスク、光磁気ディスク、ICカードなどの可搬用の物理媒体にプログラムを記憶させておく。そして、コンピュータ300がこれらからプログラムを読み出して実行するようにしてもよい。さらには、公衆回線、インターネット、LAN、WANなどを介してコンピュータ300に接続される他のコンピュータまたはサーバなどにプログラムを記憶させておく。そして、コンピュータ300がこれらからプログラムを読み出して実行するようにしてもよい。