(57)【要約】【課題】検索期間が短い場合にはセンサデータの検索範囲を縮小することができ、検索処理の高速化を図る。【解決手段】センサデータを検索するセンサデータ検索システムは、複数のセンサデバイスに接続されたゲートウェイが、センサデバイスから測定値とタイムスタンプと識別子を含むセンサデータを収集して一時蓄積部に格納し、管理計算機はゲートウェイ毎にセンサデータを収集して第１の蓄積部に格納し、当該収集した時刻を第１の時刻としてゲートウェイ毎に更新し、登録周期で第１の蓄積部のセンサデータを第２の蓄積部に登録し、登録したセンサデータのタイムスタンプのうち最新のタイムスタンプを第２の時刻としてゲートウェイ毎に更新し、検索期間を受け付け、当該検索期間に含まれるタイムスタンプのセンサデータを検索する検索部は、現在時刻と検索期間から検索上限時刻を算出し、第２の時刻と当該検索上限時刻を比較する。【選択図】図１３Ｂ
2018036991.tif 000002
【特許請求の範囲】
【請求項１】
センサデータを検索するセンサデータ検索システムであって、
複数のセンサデバイスに接続されたゲートウェイと、
プロセッサとメモリを含んで、複数の前記ゲートウェイに接続された管理計算機と、を有し、
前記ゲートウェイは、
前記センサデバイスから測定値とタイムスタンプと識別子を含むセンサデータを収集して一時蓄積部に格納し、
前記管理計算機は、
前記ゲートウェイ毎に前記センサデータを収集して第１の蓄積部に格納し、当該収集した時刻を第１の時刻として前記ゲートウェイ毎に更新する受信部と、
所定の登録周期で前記第１の蓄積部の前記センサデータを第２の蓄積部に登録し、当該登録したセンサデータのタイムスタンプをゲートウェイ毎に比較して最新のタイムスタンプの値を第２の時刻として前記ゲートウェイ毎に更新するデータコミット部と、
検索期間を受け付けて、当該検索期間に含まれるタイムスタンプのセンサデータを検索する検索部と、を有し、
前記検索部は、
現在時刻と前記検索期間から検索上限時刻を算出し、前記第２の時刻と当該検索上限時刻を比較することを特徴とするセンサデータ検索システム。
【請求項２】
請求項１に記載のセンサデータ検索システムであって、
前記検索部は、
前記第１の時刻または第２の時刻と、当該検索上限時刻とを比較することで、前記一時蓄積部と第１の蓄積部と第２の蓄積部のデータ格納部のうち検索対象の前記データ格納部を絞り込むことを特徴とするセンサデータ検索システム。
【請求項３】
請求項１に記載のセンサデータ検索システムであって、
前記ゲートウェイは、
所定の送信周期となる度に、前記一時蓄積部に格納されたセンサデータに送信時刻を付加して前記管理計算機へ送信し、
前記受信部は、
前記送信時刻を前記第１の時刻として前記ゲートウェイ毎に更新することを特徴とするセンサデータ検索システム。
【請求項４】
請求項１に記載のセンサデータ検索システムであって、
前記第１の蓄積部は、
前記ゲートウェイ毎にセンサデータを格納する記憶領域を有し、
前記データコミット部は、
前記登録周期ごとに前記第１の蓄積部の各記憶領域からセンサデータを取得して、前記タイムスタンプの時系列で前記第２の蓄積部へ一括して登録することを特徴とするセンサデータ検索システム。
【請求項５】
請求項２に記載のセンサデータ検索システムであって、
前記センサデバイスは、
異常状態を通知するアラートを当該センサデバイスの識別子を含んで出力し、
前記管理計算機は、
前記アラートが発生したセンサデバイスの識別子毎に、当該識別子に関連する検索対象のセンサデバイスの識別子と、検索期間と、を予め設定したアラート関連情報を有し、
前記検索部は、
前記アラートを受け付けると、前記センサデバイスの識別子に対応する検索対象のセンサデバイスの識別子と検索期間とを前記アラート関連情報から取得し、前記検索対象のセンサデバイスのセンサデータを前記検索期間で検索することを特徴とするセンサデータ検索システム。
【請求項６】
請求項１に記載のセンサデータ検索システムであって、
前記管理計算機は、
前記センサデバイスとゲートウェイの接続関係を予め設定したアセット情報を有し、
前記検索部は、
前記センサデバイスの識別子で前記アセット情報を参照し、当該センサデバイスが接続されたゲートウェイを特定することを特徴とするセンサデータ検索システム。
【請求項７】
センサデータを検索するセンサデータ検索方法であって、
複数のセンサデバイスに接続されたゲートウェイが、前記センサデバイスから測定値とタイムスタンプと識別子を含むセンサデータを収集して一時蓄積部に格納する第１のステップと、
プロセッサとメモリを含んで、複数の前記ゲートウェイに接続された管理計算機が、前記ゲートウェイ毎に前記センサデータを収集して第１の蓄積部に格納し、当該収集した時刻を第１の時刻として前記ゲートウェイ毎に更新する第２のステップと、
前記管理計算機が、所定の登録周期で前記第１の蓄積部の前記センサデータを第２の蓄積部に登録し、当該登録したセンサデータのタイムスタンプをゲートウェイ毎に比較して最新のタイムスタンプの値を第２の時刻として前記ゲートウェイ毎に更新する第３のステップと、
前記管理計算機が、検索期間を受け付けて、当該検索期間に含まれるタイムスタンプのセンサデータを検索する第４のステップと、を含み、
前記第４のステップは、
現在時刻と前記検索期間から検索上限時刻を算出し、前記第２の時刻と当該検索上限時刻を比較することを特徴とするセンサデータ検索方法。
【請求項８】
請求項７に記載のセンサデータ検索方法であって、
前記第４のステップは、
前記第１の時刻または第２の時刻と、当該検索上限時刻とを比較することで、前記一時蓄積部と第１の蓄積部と第２の蓄積部のデータ格納部のうち検索対象の前記データ格納部を絞り込むことを特徴とするセンサデータ検索方法。
【請求項９】
請求項７に記載のセンサデータ検索方法であって、
前記第１のステップは、
前記ゲートウェイが、所定の送信周期となる度に、前記一時蓄積部に格納されたセンサデータに送信時刻を付加して前記管理計算機へ送信し、
前記第２のステップは、
前記管理計算機が、前記送信時刻を前記第１の時刻として前記ゲートウェイ毎に更新することを特徴とするセンサデータ検索方法。
【請求項１０】
請求項７に記載のセンサデータ検索方法であって、
前記第１の蓄積部は、
前記ゲートウェイ毎にセンサデータを格納する記憶領域を有し、
前記第３のステップは、
前記登録周期ごとに前記第１の蓄積部の各記憶領域からセンサデータを取得して、前記タイムスタンプの時系列で前記第２の蓄積部へ一括して登録することを特徴とするセンサデータ検索方法。
【請求項１１】
請求項８に記載のセンサデータ検索方法であって、
前記センサデバイスが、異常状態を通知するアラートを当該センサデバイスの識別子を含んで出力するステップをさらに含み、
前記第４のステップは、
前記管理計算機が、前記アラートを受け付けると、前記アラートが発生したセンサデバイスの識別子毎に、当該識別子に関連する検索対象のセンサデバイスの識別子と、検索期間と、を予め設定したアラート関連情報を参照し、前記センサデバイスの識別子に対応する検索対象のセンサデバイスの識別子と検索期間とを前記アラート関連情報から取得し、前記検索対象のセンサデバイスのセンサデータを前記検索期間で検索することを特徴とするセンサデータ検索方法。
【請求項１２】
請求項７に記載のセンサデータ検索方法であって、
前記第４のステップは、
前記管理計算機が、前記センサデバイスとゲートウェイの接続関係を予め設定したアセット情報を参照して、前記センサデバイスの識別子に対応する前記ゲートウェイを特定することを特徴とするセンサデータ検索方法。
【請求項１３】
プロセッサとメモリを含んで、複数のゲートウェイに接続されて測定値とタイムスタンプとセンサデバイスの識別子を含むセンサデータを検索する管理計算機であって、
前記ゲートウェイ毎に前記センサデータを収集して第１の蓄積部に格納し、当該収集した時刻を第１の時刻として前記ゲートウェイ毎に更新する受信部と、
所定の登録周期で前記第１の蓄積部の前記センサデータを第２の蓄積部に登録し、当該登録したセンサデータのタイムスタンプをゲートウェイ毎に比較して最新のタイムスタンプの値を第２の時刻として前記ゲートウェイ毎に更新するデータコミット部と、
検索期間を受け付けて、当該検索期間に含まれるタイムスタンプのセンサデータを検索する検索部と、を有し、
前記検索部は、
現在時刻と前記検索期間から検索上限時刻を算出し、前記第２の時刻と当該検索上限時刻を比較することを特徴とする管理計算機。
【請求項１４】
請求項１３に記載の管理計算機であって、
前記検索部は、
前記第１の時刻または第２の時刻と、当該検索上限時刻とを比較することで、前記第１の蓄積部と第２の蓄積部のデータ格納部のうち検索対象の前記データ格納部を絞り込むことを特徴とする管理計算機。
【請求項１５】
請求項１３に記載の管理計算機であって、
前記受信部は、
所定の送信周期となる度に、送信時刻を含むセンサデータを受信し、当該送信時刻を前記第１の時刻として前記ゲートウェイ毎に更新することを特徴とする管理計算機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、センサデータを収集および検索する計算機システムに関する。
【背景技術】
【０００２】
従来のセンサデータ検索システムでは、１日単位、１ヶ月単位で蓄積した長期データから必要データを検索し、業務処理、分析処理を行うことが主な用途となっている。しかしながら、ＩｏＴ（Ｉｎｔｅｒｎｅｔ  ｏｆ Ｔｈｉｎｇｓ）の発展に伴い、直近（数十秒から数分単位）に収集した短期データを分析し、短いサイクルでフィードバック処理を行うことで付加価値を提供するサービスにビジネス機会があると考えられ、迅速に短期データを検索、処理できる技術が求められる。
【０００３】
従来のセンサデータ検索システムでは、センサデバイスからセンサデータを収集するゲートウェイがセンサデバイスから送信したデータを一時的に蓄積し、一定時間毎に蓄積したセンサデータを、センサデータを蓄積するセンサデータ管理装置に送信することで、ヘッダ付加によるオーバヘッド増大を抑制する。
【０００４】
また、センサデータ管理装置は、ゲートウェイから受信したデータをバッファに一定量蓄積し、一括してデータベースに登録（コミット）することで、データベースへの登録処理時間を短縮することができる。
【０００５】
したがって、直近に収集したセンサデータは、センサデータ管理装置のデータベースではなく、センサデータ管理装置のバッファやゲートウェイの中に存在するため、データベースだけではなく、センサデータ管理装置のバッファやゲートウェイを含めた複数の記憶装置を対象に検索する必要がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平５−２８９９２１号公報
【特許文献２】特許第５１１１７１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明が解決しようとする課題は、直近に収集したセンサデータの検索時間を短縮することである。
【０００８】
特許文献１では、データベースだけではなく、データベースに登録(コミット)される前のデータを検索対象とする公知例が開示されている。
【０００９】
また、特許文献２では、複数のデータベースから検索を行い、それぞれの検索結果を結合したデータを出力する手段が公知例として開示されている。
【００１０】
これらの公知例を適用した場合、長期データ、短期データに関わらず、全ての記憶装置を検索する必要がある。したがって、短期データを数百ミリ秒や数秒単位でリアルタイムに分析したい場合、短期データの検索時間がボトルネックになり、所望の分析時間を満たせないという問題点があった。
【課題を解決するための手段】
【００１１】
本発明は、センサデータを検索するセンサデータ検索システムであって、複数のセンサデバイスに接続されたゲートウェイと、プロセッサとメモリを含んで、複数の前記ゲートウェイに接続された管理計算機と、を有し、前記ゲートウェイは、前記センサデバイスから測定値とタイムスタンプと識別子を含むセンサデータを収集して一時蓄積部に格納し、前記管理計算機は、前記ゲートウェイ毎に前記センサデータを収集して第１の蓄積部に格納し、当該収集した時刻を第１の時刻として前記ゲートウェイ毎に更新する受信部と、所定の登録周期で前記第１の蓄積部の前記センサデータを第２の蓄積部に登録し、当該登録したセンサデータのタイムスタンプをゲートウェイ毎に比較して最新のタイムスタンプの値を第２の時刻として前記ゲートウェイ毎に更新するデータコミット部と、検索期間を受け付けて、当該検索期間に含まれるタイムスタンプのセンサデータを検索する検索部と、を有し、前記検索部は、現在時刻と前記検索期間から検索上限時刻を算出し、前記第２の時刻と当該検索上限時刻を比較する。
【発明の効果】
【００１２】
本発明によれば、センサデータ管理装置のデータベースに登録されたセンサデータの最新のタイムスタンプ時刻と、検索期間から、検索する蓄積部を限定することにより、検索期間が短い場合にはセンサデータの検索範囲を縮小することができ、検索処理の高速化を図ることができる。
【００１３】
前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施例を示し、センサデータ検索システムの構成の一例を示すブロック図である。
【図２】本発明の実施例を示し、センサデータ検索システムの具体例を示すブロック図である。
【図３Ａ】本発明の実施例を示し、センサデータ管理装置の構成の一例を示すブロック図である。
【図３Ｂ】本発明の実施例を示し、ゲートウェイの一例を示すブロック図である。
【図３Ｃ】本発明の実施例を示し、現在時刻記憶部の現在時刻テーブルの一例を示す図である。
【図３Ｄ】本発明の実施例を示し、アラート関連デバイス情報記憶部のアラート関連デバイス情報テーブルの一例を示す図である。
【図３Ｅ】本発明の実施例を示し、アセット情報記憶部のアセット情報テーブルの一例を示す図である。
【図３Ｆ】本発明の実施例を示し、ゲートウェイにおけるパケット送信時刻記録部のゲートウェイにおけるパケット送信時刻テーブルの一例を示す図である。
【図３Ｇ】本発明の実施例を示し、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻記憶部のＭｏｓｔ  Ｒｅｃｅｎｔ時刻テーブルの一例を示す図である。
【図３Ｈ】本発明の実施例を示し、第２の蓄積部のセンサデータ情報テーブルの一例を示す図である。
【図４】本発明の実施例を示し、センサデータ管理装置のハードウェア構成の一例を示すブロック図である。
【図５】本発明の実施例を示し、ゲートウェイのハードウェア構成の一例を示すブロック図である。
【図６】本発明の実施例を示し、センサデータ検索システムにおけるセンサデータ収集の一例を示すタイムチャートである。
【図７】本発明の実施例を示し、ゲートウェイがセンサデータ管理装置にセンサデータを送信する処理の一例を示すフローチャートである。
【図８】本発明の実施例を示し、センサデータ管理装置が、ゲートウェイが送信したセンサデータを受信する処理の一例を示すフローチャートである。
【図９】本発明の実施例を示し、センサデータ管理装置が、ゲートウェイ用バッファ内に格納されたセンサデータをデータベースに一括登録する処理の一例を示すフローチャートである。
【図１０】本発明の実施例を示し、データコミット部におけるデータ一括登録処理の一例を示すフローチャートである。
【図１１】本発明の実施例を示し、センサデータ管理装置が、アラート検知時にアラートに関連するセンサデータを検索する例を示す説明図である。
【図１２Ａ】本発明の実施例を示し、センサデータ管理装置の検索部が、アラート検知時に関連センサデータを検索する処理の一例を示すフローチャートの前半部である。
【図１２Ｂ】本発明の実施例を示し、センサデータ管理装置の検索部が、アラート検知時に関連センサデータを検索する処理の一例を示すフローチャートの後半部である。
【図１３Ａ】本発明の実施例を示し、検索場所のパターンの一例を示す説明図である。
【図１３Ｂ】本発明の実施例を示し、検索場所のパターンの他の例を示す説明図である。
【図１３Ｃ】本発明の実施例を示し、検索場所のパターンの他の例を示す説明図である。
【図１４Ａ】本発明の実施例を示し、本発明の効果の一例を示す説明図である。
【図１４Ｂ】本発明の実施例を示し、本発明の効果の一例を示すグラフである。
【発明を実施するための形態】
【００１５】
以下、添付図面を用いて、本発明にかかるセンサデータ検索システムの実施例について説明する。
【００１６】
＜システム構成図＞
図１は、本発明にかかるセンサデータ検索システムの構成の一例を示すブロック図である。センサデータ検索システム１は、センサデータ管理装置１０と、複数のゲートウェイ２０−１〜２０−Ｎと、システム管理サーバ４０とを有し、複数のセンサデバイス３０−１〜３０−ｍからセンサデータ３００１を収集する。なお、以下では構成要素の全体については「−」以降を省略した符号を使用し、個々の構成要素を特定する場合には「−」以降を加えた符号を用いる。
【００１７】
センサデバイス３０とは、例えば、温度センサや、湿度センサや、振動センサといったセンシングデバイスであり、一定時間毎に測定値をセンサデータ３００１としてネットワークに送信する。センサデバイス３０は、現在時刻を示す時計機能を有し、センサデータ３００１に測定時刻を付加する。また、センサデバイス３０は、異常状態（あるいは異常の予兆）を通知するアラートを送信する機能を有する。なお、異常状態は、センサデバイス３０の測定値等が予め設定した条件となった状態を示す。また、アラートは、センサデータ３００１に所定のメッセージを含めることで、センサデータ管理装置１０へ通知することができる。
【００１８】
ゲートウェイ２０は、センサデバイス３０からセンサデータ３００１を受信し、センサデータ一時蓄積部２０２に一定時間格納し、一定時間を経過する度にセンサデータ一時蓄積部２０２に格納された複数のセンサデータ３００１をパケット２００１にまとめて、センサデータ管理装置１０へ送信する。
【００１９】
センサデータ管理装置１０は、ゲートウェイ２０からパケット２００１を受信し、パケット２００１のペイロードから複数のセンサデータ３００１を取得する。センサデータ管理装置１０は、センサデータ３００１をバッファとしての第１の蓄積部１０２に一定時間格納し、一定時間が経過する度に第１の蓄積部１０２に格納された複数のセンサデータ３００１を、データベースである第２の蓄積部１０４に一括登録する。
【００２０】
システム管理サーバ４０は、センサデータ検索システム１の管理者に対して、センサデータ検索システム１が収集したセンサデータ３００１を検索するための画面インタフェースや、センサデータ検索システム１の設定を行うための画面インタフェース等を提供するサーバである。
【００２１】
センサデバイス３０が送信したセンサデータ３００１は、ゲートウェイ２０のセンサデータ一時蓄積部２０２、センサデータ管理装置１０の第１の蓄積部１０２、センサデータ管理装置１０の第２の蓄積部１０４のいずれかに蓄積されており、時間経過と共に蓄積場所が変化する。
【００２２】
図２は、本発明にかかるセンサデータ検索システム１の具体例を示すブロック図である。図２は、具体例として、工場などの施設の配管管理を行うセンサデータ検索システム１の例を示している。
【００２３】
配管５０上に温度センサ３０−１〜３０−３、湿度センサ３０−４〜３０−６、振動センサ３０−７〜３０−９を設置し、管理者は温度、湿度、振動（加速度）の測定値から配管に異常があるか否かを判定する。
【００２４】
センサ３０毎に接続先のゲートウェイ装置２０−１〜２０−Ｎが異なり、図２の例では、温度センサ３０−１〜３０−３は第１のゲートウェイ２０−１に接続し、湿度センサ３０−４〜３０−６は第２のゲートウェイ２０−２に接続し、振動センサ３０−７〜３０−９は第Ｎのゲートウェイ２０−Ｎに接続する。
【００２５】
センサデータ管理装置１０と各ゲートウェイ２０はネットワーク４を介して接続され、各ゲートウェイ２０とセンサデバイス３０は、ネットワーク５−１〜５−３を介して接続される。なお、システム管理サーバ４０もネットワーク４に接続される構成であっても良い。
【００２６】
図３Ａは、本発明にかかるセンサデータ管理装置１０の構成の一例を示すブロック図である。センサデータ管理装置１０は、パケット受信部１０１と、バッファである第１の蓄積部１０２と、データコミット部１０３と、データベースである第２の蓄積部１０４と、ゲートウェイにおけるパケット送信時刻記録部１０５と、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻記録部１０６と、検索部１０７と、現在時刻記憶部１０８と、アラート関連センサデバイス情報記憶部１０９と、アセット情報記憶部１１０と、を含む。
【００２７】
パケット受信部１０１は、ゲートウェイ２０が送信したパケット２００１を受信する機能を有し、受信したパケット２００１のヘッダ情報を読み取るヘッダ情報取得部１０１１と、ヘッダ情報からゲートウェイ２０がパケット２００１を送信した時刻を取得し、ゲートウェイ２０におけるパケット送信時刻記録部１０５に記録するゲートウェイにおけるパケット送信時刻取得部１０１２と、受信したパケット２００１のペイロードに格納された複数のセンサデータ３００１を第１の蓄積部１０２に格納するバッファ振分部１０１３と、を有する。
【００２８】
第１の蓄積部１０２は、受信したパケット２００１のペイロードに格納された複数のセンサデータ３００１を一時的に蓄積するためのバッファである。第１の蓄積部１０２は、接続するゲートウェイ２０の台数Ｎ分のバッファ１０２１−１〜１０２−Ｎを有する。例えば、第１のゲートウェイ２０−１から受信したパケット２００１のペイロードに含まれるセンサデータ３００１は、第１のゲートウェイ用バッファ１０２１−１に蓄積する。
【００２９】
データコミット部１０３は、第１の蓄積部１０２に蓄積された複数のセンサデータ３００１を一括してデータベースである第２の蓄積部１０４に登録する機能を含み、第１の蓄積部１０２からセンサデータ３００１を取得するバッファデータ取得部１０３１と、センサデータ３００１をデータベースに登録するためのデータ形式に変換するデータ形式変換部１０３２と、複数のセンサデータ３００１を一括してデータベースである第２の蓄積部１０４に登録するデータ一括登録部１０３３と、センサデータ３００１のタイムスタンプ時刻を取得するタイムスタンプ取得部管理計算機と、第２の蓄積部１０４に登録されたセンサデータ３００１の中で最も新しいタイムスタンプ時刻を示すＭｏｓｔ  Ｒｅｃｅｎｔ時刻を算出するＭｏｓｔ  Ｒｅｃｅｎｔ時刻算出部管理計算機と、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻記録部１０６から記録されているＭｏｓｔ  Ｒｅｃｅｎｔ時刻を読み出すＭｏｓｔ  Ｒｅｃｅｎｔ時刻取得部１０３６と、データ一括登録を実施する時刻を決定するデータ一括登録タイマ１０３７と、を有する。
【００３０】
第２の蓄積部１０４は、センサデータ３００１を蓄積するデータベースであり、センサデータ情報テーブル１０４１（図３Ｈ参照）を有する。図３Ｈにおいて、センサデータ情報テーブル１０４１は、例えばフィールドとして、センサデータ３００１の測定時刻を示すタイムスタンプＦ１１と、センサデバイス３０の識別子を格納するセンサデバイスＩＤ（Ｆ１２）と、温度、湿度などの測定項目を示す項目Ｆ１３と、測定値Ｆ１４と、を有する。
【００３１】
ゲートウェイにおけるパケット送信時刻記録部１０５は、ゲートウェイ２０が最後に送信したパケットの送信時刻Ｔ＿ｔｒａｎｓｍｉｔを保持する機能部であり、ゲートウェイにおけるパケット送信時刻テーブル１０５１（図３Ｆ参照）を有する。図３Ｆにおいて、ゲートウェイにおけるパケット送信時刻テーブル１０５１は、フィールドとして、ゲートウェイＩＤ（Ｆ２１）と、パケット送信時刻Ｔ＿ｔｒａｎｓｍｉｔ（Ｆ２２）を有し、ゲートウェイ２０毎にパケット送信時刻の情報を記憶する。
【００３２】
Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻記録部１０６は、第２の蓄積部１０４に登録されたセンサデータ３００１の中で最も新しいタイムスタンプ時刻を示すＭｏｓｔ  Ｒｅｃｅｎｔ時刻を保持する機能部であり、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻テーブル１０６１（図３Ｇ参照）を有する。図３Ｇにおいて、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻テーブル１０６１は、フィールドとして、ゲートウェイＩＤ（Ｆ３１）、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔ（Ｆ３２）を有し、ゲートウェイ２０毎にＭｏｓｔ  Ｒｅｃｅｎｔ時刻の情報を記憶する。
【００３３】
検索部１０７は、センサデータ３００１を検索する機能を含む。センサデータ検索システム１の管理者が、システム管理サーバ４０の入力機能によって、センサデータ３００１の検索条件を入力し、検索部１０７にセンサデータ３００１を検索させる。
【００３４】
現在時刻記憶部１０８は、現在時刻Ｔ＿ｃｕｒｒｅｎｔ（１０８１）を保持する時計機能を有する。
【００３５】
アラート関連センサデバイス情報記憶部１０９は、センサデバイス３０がアラートを送信した際に、アラートが示す状況を分析するために参照する必要のあるセンサデータ３００１の情報を保持し、アラート関連センサデバイス情報テーブル（アラート関連情報）１０９１（図３Ｄ参照）を有する。
【００３６】
図３Ｄにおいて、アラート関連センサデバイス情報テーブル１０９１は、アラートを送信したセンサデバイス３０に関連するセンサデバイスのＩＤと、アラートの分析に必要となるセンサデータ３００１の検索対象期間を示すテーブルである。
【００３７】
図３Ｄにおいて、アラート関連センサデバイス情報テーブル１０９１は、フィールドとして、アラートを送信したセンサデバイスＩＤを示すアラート発生デバイスＩＤ（Ｆ４１）と、アラートを送信したセンサデバイス３０のアラートに関連するセンサデータを送信するセンサデバイスのＩＤを示す関連センサデバイスＩＤリストＦ４２と、センサデバイスＡのアラートの分析に必要となる検索対象のセンサデータ３００１の対象期間を示す関連時間範囲Ｆ４３と、を有する。
【００３８】
センサデータ検索システム１の管理者が、アラート関連センサデバイス情報テーブル１０９１に格納する情報を予め設定しておき、システム管理サーバ４０の入力機能によって、アラート関連センサデバイス情報テーブル１０９１に決定した情報を入力する。
【００３９】
アセット情報記憶部１１０は、各センサデバイス３０が接続するゲートウェイ２０の情報を保持する機能部であり、アセット情報テーブル１１０１（図３Ｅ参照）を有する。図３Ｅにおいて、アセット情報テーブル１１０１は、フィールドとして、デバイスＩＤ（Ｆ５１）、センサデバイス３０が接続するゲートウェイＩＤを示す接続ゲートウェイＩＤ（Ｆ５２）と、を有する。
【００４０】
図３Ｂはゲートウェイ２０の一例を示すブロック図である。ゲートウェイ２０−１〜２０−３は図３Ｂと同様に構成される。ゲートウェイ２０は、センサデータ受信部２０１と、センサデータ一時蓄積部２０２と、センサデータ取得部２０３と、送信ヘッダ作成部２０４と、現在時刻記憶部２０５と、センサデータ送信部２０６と、を有する。
【００４１】
センサデータ受信部２０１は、センサデバイス３０が送信したセンサデータ３００１をネットワーク５から受信し、センサデータ一時蓄積部２０２に格納する機能を含む。
【００４２】
センサデータ一時蓄積部２０２は、センサデータ３００１を一時的に蓄積するバッファである。センサデータ取得部２０３は、蓄積した複数のセンサデータ３００１をパケット２００１のペイロードとして格納する。
【００４３】
送信ヘッダ作成部２０４は、パケット２００１の送信ヘッダを生成する。送信ヘッダには、ゲートウェイＩＤとパケット送信時刻を格納する。現在時刻記憶部２０５は、現在時刻を保持する時計機能を有し、送信ヘッダ作成部２０４は、現在時刻記憶部２０５の示す時刻をパケット送信時刻として送信ヘッダに格納する。
【００４４】
センサデータ送信部２０６は、ネットワーク４を介して生成したパケット２００１をセンサデータ管理装置１０に送信する。
【００４５】
＜センサデータ管理装置が管理する時刻の説明＞
センサデータ管理装置１０は、検索する蓄積部の範囲（ゲートウェイ２０のセンサデータ一時蓄積部２０２、第１の蓄積部１０２、第２の蓄積部１０４）を絞り込むために、現在時刻Ｔ＿ｃｕｒｒｅｎｔと、ゲートウェイ２０が最後に送信したパケットの送信時刻を示すパケット送信時刻Ｔ＿ｔｒａｎｓｍｉｔと、第２の蓄積部１０４に登録されたセンサデータ３００１の中で最も新しいタイムスタンプ時刻を示すＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔの３種類の時刻を保持する。パケット送信時刻Ｔ＿ｔｒａｎｓｍｉｔ、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔは、ゲートウェイ２０毎に保持する。
【００４６】
＜ハードウェア構成図＞
図４は、本発明にかかるセンサデータ管理装置１０のハードウェア構成の一例を示すブロック図である。センサデータ管理装置１０は、プロセッサ５０１と、メモリ５０２と、記憶装置５０６と、ゲートウェイ側インタフェース５０３と、サーバ側インタフェース５０４とバス５０５とを有する。プロセッサ５０１とメモリ５０２と記憶装置５０６とゲートウェイ側インタフェース５０３とサーバ側インタフェース５０４とは、バス５０５を介して接続される。
【００４７】
プロセッサ５０１は、メモリ５０２にロードした機能プログラム６０１に応じた処理を実行する。機能プログラム６０１には、パケット受信部１０１の処理を実行するパケット受信部プログラム６１０１と、データコミット部１０３の処理を実行するデータコミット部プログラム６１０３と、検索部１０７の処理を実行する検索部プログラム６１０７とが含まれる。
【００４８】
また、メモリ５０２には、複数のゲートウェイ用バッファ１０２１−１、１０２１−Ｎから構成された第１の蓄積部１０２が格納される。また、メモリ５０２には現在時刻記憶部１０８がロードされ、プロセッサ５０１は現在時刻Ｔ＿ｃｕｒｒｅｎｔ（１０８１）を保持する時計機能を提供する。
【００４９】
図３Ａに示したパケット受信部１０１と、データコミット部１０３と、検索部１０７の各機能部は、パケット受信部プログラム６１０１、データコミット部プログラム６１０３、検索部プログラム６１０７としてメモリ５０２にロードされる。
【００５０】
プロセッサ５０１は、各機能部のプログラムに従って処理することによって、所定の機能を提供する機能部として稼働する。例えば、プロセッサ５０１は、検索部プログラム６１０７に従って処理することで検索部１０７として機能する。他のプログラムについても同様である。さらに、プロセッサ５０１は、各プログラムが実行する複数の処理のそれぞれの機能を提供する機能部としても稼働する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。
【００５１】
機能プログラム６０１の各機能を実現するプログラム、テーブル等の情報は、記憶装置５０６や不揮発性半導体メモリ、ハードディスクドライブ、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶デバイス、または、ＩＣカード、ＳＤカード、ＤＶＤ等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
【００５２】
記憶装置５０６は、機能プログラム６０１の実行時に参照されるデータを格納する。記憶装置５０６には、センサデータ情報テーブル１０４１を有する第２の蓄積部１０４と、ゲートウェイにおけるパケット送信時刻テーブル１０５１を有するゲートウェイにおけるパケット送信時刻記録部１０５と、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻テーブル１０６１とを有するＭｏｓｔ  Ｒｅｃｅｎｔ時刻記録部１０６と、アラート関連センサデバイス情報テーブル１０９１を有するアラート関連センサデバイス情報記憶部１０９と、アセット情報テーブル１１０１を有するアセット情報記憶部１１０が含まれる。
【００５３】
ゲートウェイ側インタフェース５０３は、ゲートウェイ２０との通信データの入出力を実行する。サーバ側インタフェース５０４は、システム管理サーバ４０との通信データの入出力を実行する。
【００５４】
なお、図示の例では、ゲートウェイ用バッファ１０２１をメモリ５０２上に配置する例を示したが、記憶装置５０６に配置しても良い。
【００５５】
図５は、本発明にかかるゲートウェイ２０のハードウェア構成の一例を示すブロック図である。ゲートウェイ２０は、プロセッサ７０１とメモリ７０２と現場網側インタフェース７０３と広域網側インタフェース７０４とバス７０５とを有する。プロセッサ７０１とメモリ７０２と現場網側インタフェース７０３と広域網側インタフェース７０４と記憶装置７０６は、バス７０５を介して接続される。
【００５６】
プロセッサ７０１は、機能プログラム８０１に応じた処理を実行する。機能プログラム８０１には、センサデータ受信部２０１の処理を実行するセンサデータ受信部プログラム８２０１と、センサデータ取得部２０３の処理を実行するセンサデータ取得部プログラム８２０３と、送信ヘッダ作成部２０４の処理を実行する送信ヘッダ作成部プログラム８２０４が含まれる。
【００５７】
図３Ｂに示したセンサデータ受信部２０１と、センサデータ取得部２０３と、送信ヘッダ作成部２０４の各機能部は、センサデータ受信部プログラム８２０１と、センサデータ取得部プログラム８２０３と、送信ヘッダ作成部プログラム８２０４としてメモリ７０２にロードされる。
【００５８】
プロセッサ７０１は、各機能部のプログラムに従って処理することによって、所定の機能を提供する機能部として稼働する。例えば、プロセッサ７０１は、センサデータ受信部プログラム８２０１に従って処理することでセンサデータ受信部２０１として機能する。他のプログラムについても同様である。さらに、プロセッサ７０１は、各プログラムが実行する複数の処理のそれぞれの機能を提供する機能部としても稼働する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。
【００５９】
機能プログラム８０１の各機能を実現するプログラム、テーブル等の情報は、記憶装置７０６や不揮発性半導体メモリ、ハードディスクドライブ、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶デバイス、または、ＩＣカード、ＳＤカード、ＤＶＤ等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
【００６０】
記憶装置７０６は、機能プログラム８０１の実行時に参照されるデータを格納する。記憶装置７０６には、バッファとして機能するセンサデータ一時蓄積部２０２が含まれる。
【００６１】
現場網側インタフェース７０３にはセンサデバイス３０が接続され、広域網側インタフェース７０４にはネットワーク４を介してセンサデータ管理装置１０が接続される。
【００６２】
＜センサデータ収集処理＞
図６は、本発明にかかるセンサデータ検索システム１におけるセンサデータ収集の一例を示すタイムチャートである。図６は、センサデータ管理装置１０が、第１のゲートウェイ２０−１に接続するセンサデバイスＡ３０−１およびセンサデバイスＢ３０−２からセンサデータ３００１を収集する例を示す。
【００６３】
図６において、ｔ＿ｓＡ＿ｎ（ｎは変数）は、センサデバイスＡ３０−１がセンサデータ３００１を送信した時刻、センサを示し、ｔ＿ｓＢ＿ｎ（ｎは変数）は、デバイスＢ３０−２がセンサデータ３００１を送信した時刻を示す。
【００６４】
ｔ＿Ｇ１＿ｎ（ｎは変数）は、第１のゲートウェイ２０−１がセンサデバイス３０−１およびセンサデバイス３０−２から受信したセンサデータ３００１をセンサデータ管理装置１０に送信した時刻を示す。
【００６５】
ｔ＿ＤＢ＿ｎ（ｎは変数）は、センサデータ管理装置１０が、第１の蓄積部１０２に蓄積されたセンサデータ３００１を、第２の蓄積部１０４に一括登録した時刻を示す。ｎの値は、ｔ＿ｓＡ＿ｎ、ｔ＿ｓＢ＿ｎ、ｔ＿Ｇ１＿ｎ、ｔ＿ＤＢ＿ｎに通して、付与される値であり、ｎの値が大きいほど現在時刻に近い時刻を示す。
【００６６】
図６の例におけるセンサデータ収集の流れを説明する。センサデバイスＡ３０−１およびセンサデバイスＢ３０−２は、それぞれの送信周期Ｔ＿Ａ、Ｔ＿Ｂでセンサデータ３００１を第１のゲートウェイ２０−１に送信する。センサデータ３００１には、センサデバイスＩＤと、センサデータ３００１の送信時刻ｔ＿ｓＡ＿ｎまたはｔ＿ｓＢ＿ｎを示すタイムスタンプと、センサデバイスの測定値が格納される。
【００６７】
第１のゲートウェイ２０−１は、ゲートウェイ送信周期Ｔ＿ｇａｔｅｗａｙ毎にセンサデータ一時蓄積部２０２に蓄積された複数のセンサデータ３００１をパケット２００１のペイロードに格納し、センサデータ管理装置１０に送信する。パケット２００１のヘッダには、ゲートウェイＩＤおよび送信時刻ｔ＿Ｇ１＿ｎが格納される。
【００６８】
センサデータ管理装置１０は、第１のゲートウェイ２０−１からパケット２００１を受信し、パケット２００１のヘッダから送信時刻ｔ＿Ｇ１＿ｎを取得し、第１のゲートウェイのパケット送信時刻Ｔ＿ｔｒａｎｓｍｉｔとして記憶する。また、センサデータ管理装置１０は、パケット２００１のペイロードから複数のセンサデータ３００１を取得し、第１の蓄積部１０２内の第１のゲートウェイ用バッファ１０２１−１に蓄積する。
【００６９】
センサデータ管理装置１０は、データベース一括登録周期Ｔ＿ｄａｔａｂａｓｅ毎に第１の蓄積部１０２の第１のゲートウェイ用バッファ１０２１−１に蓄積された複数のセンサデータ３００１を、第２の蓄積部１０４に一括登録する。一括登録する際、センサデータ管理装置１０は、一括登録するセンサデータ３００１のタイムスタンプの中で最新のタイムスタンプをＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔとして保持する。
【００７０】
例えば、図６では、時刻ｔ＿ＤＢ＿９に、センサデバイスＡ３０−１が送信したセンサデータ３００１を４個、センサデバイスＢ３０−２が送信したセンサデータ３００１を３個登録するが、最新のタイムスタンプはｔ＿ｓＢ＿６であるため、センサデータ管理装置１０は、ｔ＿ｓＢ＿６をＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔとして保持する。
【００７１】
図６の例において、時刻ｔ＿ＤＢ＿９の時点で、ｔ＿ｓＢ＿６以前にセンサデバイス３０が送信したセンサデータ３００１は、第２の蓄積部１０４に格納されている。時刻ｔ＿ｓＢ＿６以降かつ時刻ｔ＿Ｇ１＿７以前にセンサデバイスが送信したセンサデータ３００１は、第１の蓄積部１０２に格納されている。時刻ｔ＿Ｇ１＿７以降にセンサデバイス３０が送信したセンサデータ３００１は、第１のゲートウェイ２０−１のセンサデータ一時蓄積部２０３に格納されている。
【００７２】
図６では、第１のゲートウェイ２０−１が一定のゲートウェイ送信周期でパケット２００１を送信するプッシュ型の例を示したが、センサデータ管理装置１０が一定周期で第１のゲートウェイ２０−１にセンサデータ取得要求を送信し、パケット２００１と同等の情報を取得するプル型の場合でもよい。
【００７３】
また、センサデバイスＡ３０−１の送信周期Ｔ＿Ａ、センサデバイスＢ３０−２の送信周期Ｔ＿Ｂ、ゲートウェイ送信周期Ｔ＿ｇａｔｅｗａｙ、データベース一括登録周期Ｔ＿ｄａｔａｂａｓｅは常に同一の値である必要はなく、毎回可変であってもよい。
【００７４】
また、センサデバイス３０が一定の周期Ｔ＿Ａでセンサデータ３００１を送信するプッシュ型の例を示したが、ゲートウェイ２０が一定周期でセンサデバイス３０にセンサデータの取得要求を送信し、センサデータ３００１と同等の情報を取得するプル型の場合であってもよい。
【００７５】
＜ゲートウェイがセンサデータ管理装置にセンサデータを送信する処理＞
図７は、ゲートウェイ２０がセンサデータ管理装置１０にセンサデータを送信する処理の一例を示すフローチャートである。この処理は、上記図６に示したゲートウェイ送信周期Ｔ＿ｇａｔｅｗａｙ毎に実行される。
【００７６】
ゲートウェイ２０のセンサデータ取得部２０３が、センサデータ一時蓄積部２０２から蓄積された１以上のセンサデータ３００１を取り出し、送信するパケット２００１のペイロードとして格納する（ステップＳ７０１）。
【００７７】
次に、ゲートウェイ２０の送信ヘッダ作成部２０４が、送信するパケットのヘッダに、ゲートウェイＩＤと、送信時刻を格納する。送信時刻は、現在時刻記憶部２０５に記憶された現在時刻を格納する（ステップＳ７０２）。
【００７８】
最後に、ゲートウェイ２０のセンサデータ送信部２０６がパケット２００１を送信する。
【００７９】
上記処理によって、ゲートウェイ送信周期Ｔ＿ｔｒａｎｓｍｉｔ毎にゲートウェイ２０からセンサデータ管理装置１０へパケット２００１が送信される。
【００８０】
＜センサデータ管理装置がセンサデータを受信する処理＞
図８は、センサデータ管理装置１０が、ゲートウェイ２０が送信したセンサデータを格納したパケット２００１を受信する処理の一例を示すフローチャートである。この処理は、ゲートウェイ２０からのパケット２００１を受信する度に実行される。
【００８１】
センサデータ管理装置１０のパケット受信部１０１が、ゲートウェイ２０からパケット２００１を受信する（ステップＳ１２０１）。
【００８２】
センサデータ管理装置１０のヘッダ情報取得部１０１１が、受信したパケット２００１の送信ヘッダからゲートウェイＩＤと、送信時刻を取得する（ステップＳ１２０２）。
【００８３】
センサデータ管理装置１０のゲートウェイにおけるパケット送信時刻取得部１０１２が、ゲートウェイにおけるパケット送信時刻記録部１０５に格納された、ゲートウェイにおけるパケット送信時刻テーブル１０５１を参照し、送信ゲートウェイＩＤ（Ｆ２１）がステップＳ１２０２で取得したゲートウェイＩＤと一致するエントリのパケット送信時刻Ｔ＿ｔｒａｎｓｍｉｔ（Ｆ２２）を、ステップＳ１２０２で取得した時刻に更新する（ステップＳ１２０３）。
【００８４】
バッファ振分部１０１３が、受信したパケット２００１のペイロードに格納されたセンサデータ３００１をＳ１２０２で取得したゲートウェイＩＤのゲートウェイ用バッファ１０２１に振り分ける（ステップＳ１２０４）。
【００８５】
上記処理によって、ゲートウェイにおけるパケット送信時刻テーブル１０５１には、パケット２００１の送信時刻がゲートウェイ２０毎にパケット送信時刻Ｔ＿ｔｒａｎｓｍｉｔ（Ｆ２２）へ格納され、ゲートウェイＩＤに対応するゲートウェイ用バッファ１０２１にセンサデータ３００１が格納される。
【００８６】
＜センサデータ管理装置内でゲートウェイ用バッファ内のセンサデータをデータベースに一括登録する処理＞
図９は、センサデータ管理装置１０が、ゲートウェイ用バッファ１０２１内に格納されたセンサデータ３００１を第２の蓄積部１０４（データベース）に一括登録する処理の一例を示すフローチャートである。この処理は、図６に示したデータベース一括登録周期Ｔ＿ｄａｔａｂａｓｅ毎に実行される。
【００８７】
センサデータ管理装置１０内のデータコミット部１０３が、データ一括登録タイマ１０３７にデータ一括登録処理を開始するまでの時間（例、３０分＝Ｔ＿ｄａｔａｂａｓｅ）を設定する（ステップＳ９０１）。設定後、データ一括登録タイマは、カウントダウンを開始する。
【００８８】
データコミット部１０３は、一定時間毎に、データ一括登録タイマに設定した時間が経過したか否か判定する（ステップＳ９０２）。データコミット部１０３は、データ一括登録タイマに設定した時間が経過していない場合（ステップＳ９０２：ＮＯ）、一定時間後に再度データ一括登録タイマに設定した時間が経過したか否か判定する（ステップＳ９０２）。
【００８９】
データ一括登録タイマに設定した時間が経過した場合（ステップＳ９０２：ＹＥＳ）、データコミット部１０３は、Ｎ個のゲートウェイ用バッファ１０２１に対して、順番にデータ一括登録処理を行う。データコミット部１０３は、データ一括登録処理対象のゲートウェイＩＤを示す変数として、ｘを使用する。データコミット部１０３は、最初に、ｘの値を初期化し、ｘ＝１とする（ステップＳ９０３）。ステップＳ９０３では、データコミット部１０３が、最初に第１のゲートウェイ用バッファ１０２１−１に対して、データ一括登録処理を行うことを意味する。
【００９０】
データコミット部１０３は、ゲートウェイＩＤ＝ｘのゲートウェイ用バッファ１０２１−ｘに対して、データ一括登録処理を実施する（ステップＳ９０４）。データ一括登録処理の詳細は、後述する。
【００９１】
データコミット部１０３は、データ一括登録処理の実施後、データ一括登録処理対象のゲートウェイＩＤを示す変数ｘの値を１加算する（ステップＳ９０５）。そして、データコミット部１０３は、ｘの値が、ゲートウェイ２０の台数Ｎ以下か否かを判定する（ステップＳ９０６）。
【００９２】
ｘの値が、ゲートウェイ２０の台数Ｎ以下の場合（ステップＳ９０６：ＹＥＳ）、データコミット部１０３は、ゲートウェイＩＤ＝ｘに対してデータ一括登録処理を実施する（ステップＳ９０４）。
【００９３】
一方、ｘの値が、ゲートウェイ２０の台数Ｎより大きい場合（ステップＳ９０６：ＮＯ）、Ｎ個のゲートウェイ用バッファ全てにデータ一括登録処理を実施したことを意味するため、データコミット部１０３が、データ一括登録タイマ１０３７に一括登録処理を開始するまでの時間を設定し（ステップＳ９０１）、ステップＳ９０２〜Ｓ９０６の処理を繰り返す。データ一括登録処理は、データ一括登録タイマ１０３７に設定した時間の間隔で繰り返し実行され、センサデータ管理装置１０が停止するまで、ステップＳ９０１〜Ｓ９０６を繰り返す。
【００９４】
データ一括登録タイマ１０３７に設定する一括登録処理の時間間隔（Ｔ＿ｄａｔａｂａｓｅ）の値は、センサデータ管理装置１０を製造した際にデータコミット部１０３に予め登録して固定の値としてもよいし、センサデータ検索システム１の管理者が、システム管理サーバ４０の入力機能によって設定できる可変の値としてもよい。また、本実施例では、全てのゲートウェイ用バッファ１０２１におけるデータ一括登録処理を実施する時間間隔が同一であるが、ゲートウェイ２０毎にデータ一括登録タイマ１０３７を用意し、ゲートウェイ用バッファ１０２１毎にデータ一括登録処理を実施する時間間隔を変更してもよい。
【００９５】
例えば、第１のゲートウェイ用バッファ１０２１−１のデータ一括登録処理の時間間隔を３０分とし、第２のゲートウェイ用バッファ１０２１−２のデータ一括登録処理の時間間隔を４５分としてもよい。その際、第１のゲートウェイのデータ一括登録タイマの設定値は３０分であり、第２のゲートウェイのデータ一括登録タイマの設定値は４５分である。
【００９６】
＜データコミット部におけるデータ一括登録処理＞
図１０は、図９のステップＳ９０４に示した、データコミット部１０３におけるデータ一括登録処理の一例を示すフローチャートである。データコミット部１０３は、データ一括登録処理の入力値として、ゲートウェイＩＤ＝ｘ（１≦ｘ≦Ｎ）を入力する。これは、第ｘのゲートウェイ用のバッファ１０２１−ｘ（１≦ｘ≦Ｎ）に格納されたセンサデータのデータ一括登録処理を実施することを示す。
【００９７】
最初に、データコミット部１０３内のＭｏｓｔ  Ｒｅｃｅｎｔ時刻取得部１０３６が、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻記録部１０６のＭｏｓｔ  Ｒｅｃｅｎｔ時刻テーブル１０６１を参照する。そして、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻取得部１０３６は、ゲートウェイＩＤ（Ｆ３１）の値がゲートウェイＩＤ＝ｘに一致するエントリのＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔ（Ｆ３２）を取得する。最後に、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻取得部１０３６は、取得したＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔ（Ｆ３２）の値を一時変数Ｔ＿ｔｅｍｐｏｒａｒｙに格納する（ステップＳ９０４１）。
【００９８】
続いて、バッファデータ取得部１０３１が、第ｘのゲートウェイ用のバッファ１０２１−ｘからセンサデータ３００１を取得する。バッファデータ取得部１０３１は、第ｘのゲートウェイ用のバッファ１０２１−ｘにセンサデータ３００１が格納されているか否かを判定する（ステップＳ９０４２）。
【００９９】
センサデータ３００１が格納されている場合（ステップＳ９０４２：ＹＥＳ）、バッファデータ取得部１０３１は、格納されているセンサデータ３００１を１個取得する（ステップＳ９０４３）。
【０１００】
バッファデータ取得部１０３１は、データ形式変換部１０３２に取得したセンサデータを入力し、データ形式変換部１０３２は、取得したセンサデータ３００１をバイナリ形式から第２の蓄積部１０４（データベース）に登録するためのデータ形式に変換する（ステップＳ９０４４）。例えば、センサデータ３００１を構成する２進数のバイナリ列から、「タイムスタンプ＝２０２０/１/１  １１:５５:００、デバイスＩＤ＝Ｂ、項目＝温度、値＝２８℃」という人間が意味のわかる文字列または値に変換する。
【０１０１】
データ形式変換部１０３２は、第２の蓄積部１０４（データベース）に登録する形式に変換したセンサデータ３００１をタイムスタンプ取得部１０３４に入力し、タイムスタンプ取得部１０３４は、入力されたセンサデータ３００１からタイムスタンプを取得し、Ｍｏｓｔ Ｒｅｃｅｎｔ時刻算出部管理計算機に入力する。Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻算出部管理計算機は、入力されたタイムスタンプの時刻がＴ＿ｔｅｍｐｏｒａｒｙの時刻以後であるか否か判定する（ステップＳ９０４５）。
【０１０２】
データ形式変換部１０３２は、取得したタイムスタンプの時刻がＴ＿ｔｅｍｐｏｒａｒｙの時刻以後である場合（ステップＳ９０４５：ＹＥＳ）、Ｔ＿ｔｅｍｐｏｒａｒｙの値を取得したタイムスタンプの時刻に更新する（ステップＳ９０４６）。データ形式変換部１０３２は、取得したタイムスタンプの時刻がＴ＿ｔｅｍｐｏｒａｒｙの時刻以後でない場合（ステップＳ９０４５：ＮＯ）は、Ｔ＿ｔｅｍｐｏｒａｒｙの値を更新しない。
【０１０３】
データ形式変換部１０３２は、第２の蓄積部１０４（データベース）に登録する形式に変換したセンサデータ３００１をデータ一括登録部１０３３に入力し、データ一括登録部１０３３は、入力されたセンサデータを、データベース一括登録リストに追加する（ステップＳ９０４７）。
【０１０４】
以上、データコミット部１０３は、ステップＳ９０４３〜Ｓ９０４６の処理を、第ｘのゲートウェイ用のバッファ１０２１−ｘが空になるまで（ステップＳ９０４２：ＮＯ）、繰り返し実施する。
【０１０５】
第ｘのゲートウェイ用のバッファ１０２１−ｘが空となった（ステップＳ９０４２：ＮＯ）後、データ一括登録部１０３３が、データベース一括登録リストに格納されているデータを、第２の蓄積部１０４のセンサデータ情報テーブル１０４１に一括登録する（ステップＳ９０４８）。なお、センサデータ情報テーブル１０４１への一括登録は、データ一括登録部１０３３が、センサデータ３００１のタイムスタンプの時系列順で行うことができる。
【０１０６】
最後に、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻算出部管理計算機が、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻記録部１０６のＭｏｓｔ  Ｒｅｃｅｎｔ時刻テーブル１０６１を参照し、ゲートウェイＩＤ（Ｆ３１）の値がゲートウェイＩＤ＝ｘに一致するエントリのＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔ（Ｆ３２）を、Ｔ＿ｔｅｍｐｏｒａｒｙの値に変更し（ステップＳ９０４９）、データ一括登録処理は終了となる。
【０１０７】
上記処理により、所定の周期（データベース一括登録周期Ｔ＿ｄａｔａｂａｓｅ）毎に、第１の蓄積部１０２に格納されている各ゲートウェイ２０のセンサデータ３００１は第２の蓄積部１０４のセンサデータ情報テーブル１０４１に一括登録される。そして、センサデータ管理装置１０は、一括登録するセンサデータ３００１のタイムスタンプのうち、ゲートウェイ２０毎に最新の値のタイムスタンプがＭｏｓｔ  Ｒｅｃｅｎｔ時刻テーブル１０６１にＭｏｓｔ  Ｒｅｃｅｎｔ時刻（Ｆ３２）として設定される。
【０１０８】
すなわち、センサデータ管理装置１０は、ゲートウェイにおけるパケット送信時刻テーブル１０５１で、第１の蓄積部１０２に格納されたセンサデータ３００１の最新の時刻（ゲートウェイ２０のパケット送信時刻）をゲートウェイ２０のＩＤ毎に管理し、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻テーブル１０６１のＭｏｓｔ  Ｒｅｃｅｎｔ時刻（Ｆ３２）でセンサデータ情報テーブル１０４１に登録されたセンサデータ３００１の最新の時刻をゲートウェイ２０のＩＤ毎に管理する。
【０１０９】
＜アラート検知時にアラートに関連するセンサデータを検索する処理＞
図１１は、センサデータ管理装置１０が、アラート検知時にアラートに関連するセンサデータ３００１を検索する例を示す説明図である。図１１は、図２に示した配管管理の例において、センサデータ管理装置１０が、センサデバイスＡ３０−１が送信したアラートを検知した例を示す。
【０１１０】
センサデバイスＡ３０−１のアラートを検知したセンサデータ管理装置１０は、アラート関連センサデバイス情報記憶部１０９内のアラート関連センサデバイス情報テーブル１０９１を参照し、アラートの送信元であるセンサデバイスＡ３０−１のデバイスＩＤであるＡをキーとして、センサデバイスＡ（３０−１）のアラートに関連するセンサデータを送信するセンサデバイスのＩＤを示す関連センサデバイスＩＤリストＦ４２と、センサデバイスＡのアラートの分析に必要となるセンサデータの対象期間を示す関連時間範囲Ｆ４３（検索期間）の２種類の情報を取得する。
【０１１１】
図１１の例では、センサデータ検索システム１の管理者が予め、センサデバイスＡの周囲５００メートル以内のセンサデバイスをセンサデバイスＡの関連センサデバイスとして決定し、システム管理サーバ４０の入力機能を介して、関連センサデバイスＩＤリストＦ４２に、Ｂ、Ｃ、Ｄ、Ｅ、Ｇ、Ｈの６個のセンサデバイスＩＤを入力する。関連時間範囲に関しても、センサデータ検索システム１の管理者が予め、３０分と決定し、システム管理サーバ４０の入力機能を介して、関連時間範囲Ｆ４３に３０分と入力する。
【０１１２】
センサデータ管理装置１０は、アラート関連センサデバイス情報テーブル１０９１から取得した情報に基づき、センサデバイスＢ、Ｃ、Ｄ、Ｅ、Ｇ、Ｈの直近３０分のセンサデータを検索して、取得し、取得したセンサデータ３００１をシステム管理サーバ４０に送信する。システム管理サーバ４０は、受信したセンサデータ３００４を使用して、アラートの発生理由を分析することができる。図１１ではセンサデバイスＡ（３０−１）に関する例を示したが、他のセンサデバイス３０についても同様であり、自身に異常が発生した際に、センサデータ３００１を分析する近隣（または周囲）のセンサデバイス３０をアラート関連センサデバイス情報テーブル１０９１に予め設定しておくことで、アラートを検知したセンサデバイス３０の近隣のセンサデータ３００１を迅速に分析することが可能となる。また、センサデバイス３０毎にセンサデータ３００１を取得する時系列の範囲を関連時間範囲Ｆ４３に設定しておくことで、センサデバイス３０の種類や特性に応じた分析を行うことができる。
【０１１３】
図１２Ａ、図１２Ｂは、センサデータ管理装置１０の検索部１０７が、センサデバイス３０のアラート検知時に関連センサデータを検索する処理の一例を示すフローチャートである。最初に、検索部１０７は、アラート関連センサデバイス情報記憶部１０９内のアラート関連センサデバイス情報テーブル１０９１を参照し、アラート送信元のセンサデバイスＩＤをキーに、関連センサデバイスＩＤリストＦ４２、関連時間範囲Ｆ４３を取得する（ステップＳ１２０１）。
【０１１４】
検索部１０７は、現在時刻記憶部１０８から現在時刻Ｔ＿ｃｕｒｒｅｎｔ（１０８１）を取得し、現在時刻Ｔ＿ｃｕｒｒｅｎｔからステップＳ１２０１で取得した関連時間範囲を差し引くことで、関連センサデータ検索上限時刻Ｔ＿ｐａｓｔを算出する（ステップＳ１２０２）。なお、関連センサデータ検索上限時刻Ｔ＿ｐａｓｔは、現在時刻Ｔ＿ｃｕｒｒｅｎｔから遡る検索期間の終端を示す。
【０１１５】
例えば、現在時刻Ｔ＿ｃｕｒｒｅｎｔが２０２０／１／１  １２：００：００であり、ステップＳ１２０１で取得した関連時間範囲が３０分の場合、関連センサデータ検索上限時刻Ｔ＿ｐａｓｔは、２０２０／１／１  １１：３０：００となり、２０２０／１／１の１１：３０：００から１２：００：００の３０分間がセンサデータ３００１の検索対象期間となる。
【０１１６】
次に、検索部１０７は、関連センサデバイスのセンサデータ３００１を検索する。ステップＳ１２０１で取得した関連センサデバイスＩＤリストＦ４２内の全てのセンサデバイスＩＤに関するセンサデータ３００１を取得したか否かを判定し（ステップＳ１２０３）、センサデータ未取得の関連センサデバイスが存在する場合（ステップＳ１２０３：ＮＯ）、Ｓ１２０１で取得した関連センサデバイスＩＤリストからセンサデータ未取得のセンサデバイスＩＤを選択する（ステップＳ１２０４）。
【０１１７】
次に、検索部１０７は、選択したセンサデバイス３０が接続されたゲートウェイ２０を特定する。具体的には、検索部１０７は、アセット情報記憶部１１０のアセット情報テーブル１１０１を参照し、ステップＳ１２０４で選択したセンサデバイスＩＤをキーにして、選択したセンサデバイスＩＤの接続ゲートウェイＩＤ（Ｆ５２）を取得する（ステップＳ１２０５）。
【０１１８】
続いて、検索部１０７は、選択したセンサデバイス３０が接続されたゲートウェイ２０のパケット送信時刻と、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻を取得する。具体的には、検索部１０７は、ゲートウェイにおけるパケット送信時刻記録部１０５のゲートウェイにおけるパケット送信時刻テーブル１０５１を参照し、ステップＳ１２０５で取得した接続ゲートウェイＩＤをキーに、接続ゲートウェイ２０のパケット送信時刻Ｔ＿ｔｒａｎｓｍｉｔ（Ｆ２２）を取得する（ステップＳ１２０６）。
【０１１９】
そして、検索部１０７は、Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻記録部１０６のＭｏｓｔ  Ｒｅｃｅｎｔ時刻テーブル１０６１を参照し、ステップＳ１２０５で取得した接続ゲートウェイＩＤをキーに、接続ゲートウェイ２０のＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔ（Ｆ３２）を取得する（ステップＳ１２０７）。
【０１２０】
続いて、検索部１０７は、関連センサデータ検索上限時刻Ｔ＿ｐａｓｔと、接続ゲートウェイのパケット送信時刻Ｔ＿ｔｒａｎｓｍｉｔと、接続ゲートウェイのＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔを用いて、検索場所（範囲）を限定し、選択した関連センサデバイスＩＤリスト（Ｆ４２）のセンサデータ３００１を検索する。
【０１２１】
具体的には、検索部１０７は、関連センサデータ検索上限時刻Ｔ＿ｐａｓｔがＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔ以降であるか否か判定をする（ステップＳ１２０８）。
【０１２２】
関連センサデータ検索上限時刻Ｔ＿ｐａｓｔがＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔ以降ではない場合（ステップＳ１２０８：ＮＯ）、センサデータ管理装置１０の第１の蓄積部１０２および第２の蓄積部１０４、選択した関連センサデバイスが接続されたゲートウェイ２０のセンサデータ一時蓄積部２０２の３箇所を検索場所とする。
【０１２３】
次に、検索部１０７は、センサデータ管理装置１０の第２の蓄積部１０４（センサデータ情報テーブル１０４１）から時刻Ｔ＿ｐａｓｔ以降の関連センサデバイスＩＤリスト（Ｆ４２）のセンサデータ３００１を検索し（ステップＳ１２０９）、同様にセンサデータ管理装置１０の第１の蓄積部１０２からステップＳ１２０５で取得したゲートウェイＩＤのバッファ１０２１を選択して関連センサデバイスＩＤリスト（Ｆ４２）のセンサデータ３００１を検索し（ステップＳ１２１０）、ステップＳ１２０５で取得したゲートウェイＩＤのセンサデータ一時蓄積部２０２から関連センサデバイスＩＤリスト（Ｆ４２）のセンサデータ３００１を検索する（ステップＳ１２１１）。上記ステップＳ１２０９〜Ｓ１２１１の検索対象は、後述する図１３Ａに対応する。
【０１２４】
関連センサデータ検索上限時刻Ｔ＿ｐａｓｔがＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔ以降である場合（ステップＳ１２０８：ＹＥＳ）、関連センサデータ検索上限時刻Ｔ＿ｐａｓｔが接続ゲートウェイのパケット送信時刻Ｔ＿ｔｒａｎｓｍｉｔ以降であるか否かを判定する（ステップＳ１２１２）。
【０１２５】
関連センサデータ検索上限時刻Ｔ＿ｐａｓｔが接続ゲートウェイのパケット送信時刻Ｔ＿ｔｒａｎｓｍｉｔ以降ではない場合（ステップＳ１２１２：ＮＯ）、センサデータ管理装置１０の第１の蓄積部１０２と、選択した関連センサデバイスＩＤリスト（Ｆ４２）のセンサデバイス３０が接続されたゲートウェイ２０のセンサデータ一時蓄積部２０２の２箇所を検索場所とする。
【０１２６】
検索部１０７は、センサデータ管理装置１０の第１の蓄積部１０２ではステップＳ１２０５で取得したゲートウェイＩＤに対応するバッファ１０２１から時刻Ｔ＿ｐａｓｔ以降の関連センサデバイスＩＤリスト（Ｆ４２）のセンサデータ３００１を検索し（ステップＳ１２１３）、ステップＳ１２０５で取得したゲートウェイＩＤのセンサデータ一時蓄積部２０２から関連センサデータを検索する（ステップＳ１２１４）。上記ステップＳ１２１３〜Ｓ１２１４の検索対象は、後述する図１３Ｂに対応する。
【０１２７】
関連センサデータ検索上限時刻Ｔ＿ｐａｓｔが接続ゲートウェイのパケット送信時刻Ｔ＿ｔｒａｎｓｍｉｔ以降である場合（ステップＳ１２１２：ＹＥＳ）、選択した関連センサデバイスＩＤリスト（Ｆ４２）のセンサデバイス３０が接続されたゲートウェイ２０のセンサデータ一時蓄積部２０２の１箇所を検索場所とし、検索部１０７は、ステップＳ１２０５で取得したゲートウェイＩＤのセンサデータ一時蓄積部２０２から時刻Ｔ＿ｐａｓｔ以降の関連センサデバイスＩＤリスト（Ｆ４２）のセンサデータ３００１を検索する（ステップＳ１２１５）。上記ステップＳ１２１５の検索対象は、後述する図１３Ｃに対応する。
【０１２８】
以上で、選択した関連センサデバイスのセンサデータ検索は終了となる。検索部１０７は、全ての関連センサデバイスのセンサデータ検索を終了後（ステップＳ１２０３：ＹＥＳ）、検索結果として取得したセンサデータをシステム管理サーバ４０に送信する（ステップＳ１２１６）。
【０１２９】
図１３Ａ〜図１３Ｃは、本発明にかかる検索場所のパターンを示す説明図である。図１３Ａ〜図１３Ｃでは、センサデータ３００１−１〜３００１−８が、センサデータ管理装置１０の第２の蓄積部１０４（センサデータ情報テーブル１０４１）に蓄積され、センサデータ３００１−９〜３００１−１５がセンサデータ管理装置１０の第１の蓄積部１０２（バッファ１０２１）に蓄積され、センサデータ３００１−１６〜３００１−２２がゲートウェイ２０のセンサデータ一時蓄積部２０２に蓄積されている。
【０１３０】
図中のセンサデータ３００１−１〜３００１−２２は時系列に並んでおり、センサデータ３００１−１が最古のセンサデータ、センサデータ３００１−２２が最新のセンサデータである。
【０１３１】
図１２のフローチャートで説明した通り、関連センサデータ検索上限時刻Ｔ＿ｐａｓｔと、接続ゲートウェイのパケット送信時刻Ｔ＿ｔｒａｎｓｍｉｔと、接続ゲートウェイのＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔにより、検索場所のパターンが３通り存在する。図１３Ａは、関連センサデータ検索上限時刻Ｔ＿ｐａｓｔがＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔ以降ではない（図１２フローチャートのステップＳ１２０８：ＮＯ）場合の例を示す図である。
【０１３２】
図１３Ａは、センサデータ管理装置１０の第１の蓄積部１０２および第２の蓄積部１０４と、選択した関連センサデバイスが接続されたゲートウェイ２０のセンサデータ一時蓄積部２０２の３箇所を検索場所とし（図１２フローチャートのステップＳ１２０９、Ｓ１２１０、Ｓ１２１１）、センサデータ３００１−５〜３００１−２２が検索対象となる。
【０１３３】
図１３Ｂは、関連センサデータ検索上限時刻Ｔ＿ｐａｓｔがＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔ以降であり（図１２フローチャートのステップＳ１２０８：ＹＥＳ）、かつ、関連センサデータ検索上限時刻Ｔ＿ｐａｓｔが接続ゲートウェイのパケット送信時刻Ｔ＿ｔｒａｎｓｍｉｔ以降ではない（図１２フローチャートのステップＳ１２１２：ＮＯ）場合の例を示す図である。
【０１３４】
図１３Ｂでは、センサデータ管理装置１０の第１の蓄積部１０２と、選択した関連センサデバイスが接続されたゲートウェイ２０のセンサデータ一時蓄積部２０２の２箇所を検索場所とし（図１２フローチャートのステップＳ１２１３、Ｓ１２１４）、センサデータ３００１−１３〜３００１−２２が検索対象となる。
【０１３５】
図１３Ｃは、関連センサデータ検索上限時刻Ｔ＿ｐａｓｔが接続ゲートウェイのパケット送信時刻Ｔ＿ｔｒａｎｓｍｉｔ以降である（図１２フローチャートのステップＳ８１２：ＹＥＳ）場合の例を示す図である。選択した関連センサデバイスが接続されたゲートウェイ２０のセンサデータ一時蓄積部２０２の１箇所を検索場所とし（図１２フローチャートのステップＳ１２１５）、センサデータ３００１−１８〜３００１−２２が検索対象となる。
【０１３６】
＜本発明の効果＞
図１４Ａ、図１４Ｂは、本発明の効果の一例を示す説明図である。図１４Ａは、効果を示す上で設定した条件を示す図である。センサデータ管理装置１０に１００台のゲートウェイ２０が接続し、各ゲートウェイ２０に１００個のセンサデバイス３０が接続するものとする。
【０１３７】
各センサデバイス３０は、１秒周期でセンサデータ３００１を送信する。各ゲートウェイ２０は、１０分周期でパケット２００１を送信する。センサデータ管理装置１０が、第１の蓄積部１０２から第２の蓄積部１０４へセンサデータを一括登録する周期を３０分とする。アラート発生デバイスの関連デバイス数（関連センサデバイスＩＤリストＦ４２のセンサ数）を１００とする。
【０１３８】
図１４Ｂは、図１４Ａの条件で、前記従来例と本発明のセンサデータ検索時間を評価したグラフである。データエントリ数２００，０００の時の検索時間を０．０１秒とし、データエントリ数に検索時間が比例するモデルで検索時間を算出した。
【０１３９】
本発明で実施する処理（図１２のフローチャート）の時間は、アラート発生デバイスの関連デバイス数を１００とした場合、０．０５秒となる。本発明は、直近４０分までのセンサデータを検索する場合において、効果があり、従来例と比較して、検索時間を最大５００分の１に短縮することが可能である。
【０１４０】
以上のように、センサデータ管理装置１０は、ゲートウェイ２０が最後に送信したパケットの送信時刻Ｔ＿ｔｒａｎｓｍｉｔ及び現在時刻Ｔ＿ｃｕｒｒｅｎｔに加えて、一括登録するセンサデータ３００１のタイムスタンプの中で最新のタイムスタンプであるＭｏｓｔ  Ｒｅｃｅｎｔ時刻Ｔ＿ｒｅｃｅｎｔをゲートウェイ２０毎に管理する。
【０１４１】
そして、センサデータ管理装置１０の検索部１０７は、検索対象を決定する関連センサデータ検索上限時刻Ｔ＿ｐａｓｔを算出し、関連センサデータ検索上限時刻Ｔ＿ｐａｓｔとＴ＿ｒｅｃｅｎｔ及びＴ＿ｔｒａｎｓｍｉｔを比較することで、検索対象の場所（記憶領域）を絞り込むことができる。特に、Ｔ＿ｔｒａｎｓｍｉｔとＴ＿ｐａｓｔとを比較する（Ｓ１２１２）ことで、検索対象がゲートウェイ２０のみでよいか否かを判定することができる。
【０１４２】
これにより、センサデータ３００１を検索する記憶領域の場所（または範囲）を必要かつ最小限にすることができ、大量のセンサデータを扱うセンサデータ管理装置１０の検索処理を高速化することができるのである。
【０１４３】
また、センサデータ管理装置１０は、センサデバイス３０からアラートを検出した場合には、予め分析するセンサデバイス３０を関連センサデバイスＩＤリストＦ４２に設定しておくことで、異常等のアラートを検知したときに収集すべきセンサデータ３００１を自動的に決定することができ、異常や障害への対処を迅速に行うことが可能となる。
【０１４４】
また、上記事実施例では、センサデバイス３０が、所定の周期Ｔ＿Ａ毎にひとつのセンサデータ３００１を送信する例を示したが、センサデバイス３０は、所定の周期Ｔ＿Ａ毎に複数のセンサデータ３００１をまとめて送信することもできる。
【０１４５】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、又は置換のいずれもが、単独で、又は組み合わせても適用可能である。
【０１４６】
また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、及び機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【０１４７】
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１４８】
１  センサデータ検索システム
１０  センサデータ管理装置
２０  ゲートウェイ
３０  センサデバイス
４０  システム管理サーバ
１０１  パケット受信部
１０２  第１の蓄積部
１０３  データコミット部
１０４  第２の蓄積部
１０５  ゲートウェイにおけるパケット送信時刻記録部
１０６  Ｍｏｓｔ  Ｒｅｃｅｎｔ時刻記録部
１０７  検索部
１０８  現在時刻記憶部
１０９  アラート関連センサデバイス情報記憶部
１１０  アセット情報記憶部
２０１  センサデータ受信部
２０２  センサデータ一時蓄積部
２０３  センサデータ取得部
２０４  送信ヘッダ作成部
２０５  現在時刻記憶部
２０６  センサデータ送信部
２００１  パケット
３００１  センサデータ
【図１】
2018036991.tif 000003
【図２】
2018036991.tif 000004
【図３Ａ】
2018036991.tif 000005
【図３Ｂ】
2018036991.tif 000006
【図３Ｃ】
2018036991.tif 000007
【図３Ｄ】
2018036991.tif 000008
【図３Ｅ】
2018036991.tif 000009
【図３Ｆ】
2018036991.tif 000010
【図３Ｇ】
2018036991.tif 000011
【図３Ｈ】
2018036991.tif 000012
【図４】
2018036991.tif 000013
【図５】
2018036991.tif 000014
【図６】
2018036991.tif 000015
【図７】
2018036991.tif 000016
【図８】
2018036991.tif 000017
【図９】
2018036991.tif 000018
【図１０】
2018036991.tif 000019
【図１１】
2018036991.tif 000020
【図１２Ａ】
2018036991.tif 000021
【図１２Ｂ】
2018036991.tif 000022
【図１３Ａ】
2018036991.tif 000023
【図１３Ｂ】
2018036991.tif 000024
【図１３Ｃ】
2018036991.tif 000025
【図１４Ａ】
2018036991.tif 000026
【図１４Ｂ】
2018036991.tif 000027