(57)【要約】多数のデータ発生源から大量のデータが送信されても、データが溢れることを防止しつつ、データを解析する手段に対して高速にデータを渡すことができる解析前処理システムを提供する。データ取得手段７１は、複数のデータ発生源で生成されたデータ群を取得する。データ切り出し手段７２は、データ取得手段７１が取得したデータ群から個々のデータを切り出す。フィルタリング手段７３は、データ切り出し手段７２が切り出したデータ毎に、所定の条件を満たしているか否かを判定し、所定の条件を満たしているデータをバッファ７４に記憶させ、所定の条件を満たしていないデータを破棄する。解析用データ決定手段７５は、バッファ７４に記憶されたデータの中から、解析に用いられるデータの集合である解析データ群を定める。解析用データ出力手段７６は、データを解析するデータ解析手段に解析データ群を送る。
2010095459.tif 000002
【特許請求の範囲】
【請求項１】
複数のデータ発生源で生成されたデータ群を取得するデータ取得手段と、
データ取得手段が取得したデータ群から個々のデータを切り出すデータ切り出し手段と、
解析に用いられるデータを記憶するバッファと、
データ切り出し手段が切り出したデータ毎に、所定の条件を満たしているか否かを判定し、所定の条件を満たしているデータを前記バッファに記憶させ、所定の条件を満たしていないデータを破棄するフィルタリング手段と、
前記バッファに記憶されたデータの中から、解析に用いられるデータの集合である解析データ群を定める解析用データ決定手段と、
データを解析するデータ解析手段に解析データ群を送る解析用データ出力手段とを備える
ことを特徴とする解析前処理システム。
【請求項２】
フィルタリング手段は、
データ切り出し手段が切り出したデータ毎に、既にバッファに記憶されているいずれのデータともデータの内容が異なるという条件を満たしているか否かを判定する内容一致不一致判定手段と、
前記条件を満たしてないデータを破棄し、前記条件を満たすデータをバッファに記憶させるデータ選別手段とを有する
請求項１に記載の解析前処理システム。
【請求項３】
フィルタリング手段は、
データに含まれる内容が有効であることを示す基準を記憶する基準記憶手段と、
データ切り出し手段が切り出したデータ毎に、データの内容が前記基準を満たしているか否かを判定する基準判定手段と、
データの内容が基準を満たしていないデータを破棄し、基準を満たしているデータをバッファに記憶させるデータ選別手段とを有する
請求項１または請求項２に記載の解析前処理システム。
【請求項４】
フィルタリング手段は、
データ切り出し手段から入力された各データのデータ識別情報を記憶するデータ識別情報記憶手段と、
データ切り出し手段からデータが入力されたときに当該データのデータ識別情報がデータ識別情報記憶手段に記憶されているか否かを判定し、記憶されていないときには当該データのデータ識別情報をデータ識別情報記憶手段に記憶させる重複判定手段と、
データ識別情報がデータ識別情報記憶手段に記憶されていたと判定されたデータを破棄し、データ識別情報がデータ識別情報記憶手段に記憶されていなかったと判定されたデータをバッファに記憶させるデータ選別手段とを有する
請求項１から請求項３のうちのいずれか１項に記載の解析前処理システム。
【請求項５】
解析用データ決定手段は、一定期間毎に、前記一定期間内にバッファに記憶されたデータの集合を解析データ群として定める
請求項１から請求項４のうちのいずれか１項に記載の解析前処理システム。
【請求項６】
解析用データ決定手段は、バッファに記憶されたデータ数が所定個に達する毎に、前記所定個のデータの集合を解析データ群として定める
請求項１から請求項４のうちのいずれか１項に記載の解析前処理システム。
【請求項７】
解析用データ出力手段は、データ解析手段に送った解析データ群に属する各データをバッファから削除する
請求項１から請求項６のうちのいずれか１項に記載の解析前処理システム。
【請求項８】
データを解析するデータ解析手段を備え、
前記データ解析手段は、解析用データ出力手段が出力した解析データ群を保持し、解析を終えた解析データ群を削除することで解析用データ出力手段とは非同期に解析を行う
請求項１から請求項７のうちのいずれか１項に記載の解析前処理システム。
【請求項９】
複数のデータ発生源で生成されたデータ群を取得し、
取得したデータ群から個々のデータを切り出し、
切り出したデータ毎に、所定の条件を満たしているか否かを判定し、所定の条件を満たしているデータをバッファに記憶させ、所定の条件を満たしていないデータを破棄し、
前記バッファに記憶されたデータの中から、解析に用いられるデータの集合である解析データ群を定め、
データを解析するデータ解析手段に解析データ群を送る
ことを特徴とする解析前処理方法。
【請求項１０】
切り出したデータ毎に、既にバッファに記憶されているいずれのデータともデータの内容が異なるという条件を満たしているか否かを判定し、
前記条件を満たしてないデータを破棄し、前記条件を満たすデータをバッファに記憶させる
請求項９に記載の解析前処理方法。
【請求項１１】
切り出したデータ毎に、データに含まれる内容が有効であることを示す基準をデータの内容が満たしているか否かを判定し、
データの内容が基準を満たしていないデータを破棄し、基準を満たしているデータをバッファに記憶させる
請求項９または請求項１０に記載の解析前処理方法。
【請求項１２】
個々のデータを切り出したときに当該データのデータ識別情報がデータ識別情報記憶手段に記憶されているか否かを判定し、記憶されていないときには当該データのデータ識別情報をデータ識別情報記憶手段に記憶させ、
データ識別情報がデータ識別情報記憶手段に記憶されていたと判定されたデータを破棄し、データ識別情報がデータ識別情報記憶手段に記憶されていなかったと判定されたデータをバッファに記憶させる
請求項９から請求項１１のうちのいずれか１項に記載の解析前処理方法。
【請求項１３】
コンピュータに、
複数のデータ発生源で生成されたデータ群を取得するデータ取得処理、
データ取得処理で取得したデータ群から個々のデータを切り出すデータ切り出し処理、
データ切り出し処理で切り出したデータ毎に、所定の条件を満たしているか否かを判定し、所定の条件を満たしているデータをバッファに記憶させ、所定の条件を満たしていないデータを破棄するフィルタリング処理、
前記バッファに記憶されたデータの中から、解析に用いられるデータの集合である解析データ群を定める解析用データ決定処理、
データを解析するデータ解析手段に解析データ群を送る解析用データ出力処理
を実行させるための解析前処理プログラム。
【請求項１４】
コンピュータに、
フィルタリング処理で、
データ切り出し処理で切り出したデータ毎に、既にバッファに記憶されているいずれのデータともデータの内容が異なるという条件を満たしているか否かを判定する内容一致不一致判定処理、および、
前記条件を満たしてないデータを破棄し、前記条件を満たすデータをバッファに記憶させるデータ選別処理
を実行させる請求項１３に記載の解析前処理プログラム。
【請求項１５】
コンピュータに、
フィルタリング処理で、
データ切り出し処理で切り出したデータ毎に、データに含まれる内容が有効であることを示す基準をデータの内容が満たしているか否かを判定する基準判定処理、および、
データの内容が基準を満たしていないデータを破棄し、基準を満たしているデータをバッファに記憶させるデータ選別処理
を実行させる請求項１３または請求項１４に記載の解析前処理プログラム。
【請求項１６】
コンピュータに、
フィルタリング処理で、
データ切り出し処理で切り出したデータ毎に、当該データのデータ識別情報がデータ識別情報記憶手段に記憶されているか否かを判定し、記憶されていないときには当該データのデータ識別情報をデータ識別情報記憶手段に記憶させる重複判定処理、および、
データ識別情報がデータ識別情報記憶手段に記憶されていたと判定されたデータを破棄し、データ識別情報がデータ識別情報記憶手段に記憶されていなかったと判定されたデータをバッファに記憶させるデータ選別処理
を実行させる請求項１３から請求項１５のうちのいずれか１項に記載の解析前処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ解析の対象となるデータに対して前処理を行う解析前処理システム、解析前処理方法および解析前処理プログラムに関する。
【背景技術】
【０００２】
複数のセンサや地理的に分散しているサーバのログ等を対象としてデータを時系列に解析する時系列解析装置がある。このような時系列解析装置では、解析対象となるデータを一旦、データベースやファイルとして保存し、バッチ処理等で解析する。【０００３】
このようなデータを蓄積するデータベースが非特許文献１に記載されている。非特許文献１に記載された技術では、センサネットワークで観測されたセンサデータをネットワーク上の単一のデータベースに蓄積する。過去のデータを参照する場合には、ＳＱＬで問い合わせを行うことでデータを参照する。【０００４】
また、Ｗｅｂサーバとして広く利用されているapache（Apacheソフトウェア財団）のログを解析する例を説明する。通常、クライアントからのアクセスを分散させるために複数のＷｅｂサーバが用意されている。各Ｗｅｂサーバはそれぞれ独立に、アクセスやエラーのログをファイルとして保存する。apacheのデフォルトの設定では、エラーログは、/usr/local/apache/logs/error.logファイルに記録される。解析装置がこれらのログを解析する場合、解析装置はＦＴＰ（File Transfer Protocol）等を利用して、複数のサーバに記録されたログを収集し、そのログを解析する。【０００５】
解析データが解析対象とするデータを収集する一般的な構成の例を図２２に示す。データ発生源となる各Ｗｅｂサーバ２０２は、それぞれクライアント２０１にアクセスされ、データ（ログ）を生成する。各Ｗｅｂサーバ２０２は、そのログをログ収集手段２０３に送信し、ログ収集手段２０３はそのデータを受信すると、記憶手段にデータベースあるいはファイルとして記憶する。そして、ログ収集手段２０３はそのデータをデータ解析用のデータ形式に変換してデータ解析装置２０４に渡し、データ解析装置２０４がデータ解析を行う。【０００６】
データ発生源（図２２に示す例ではＷｅｂサーバ２０２）とデータ解析装置とがそれぞれ独立に動作する構成を実現するための簡易な構成として、発生したデータをデータベースやファイルとして保存して、データ解析装置がそのデータを解析する構成が挙げられる。また、データ発生源とデータ解析装置とが互いにコミュニケーションを取りながら非同期に処理を進める構成では、双方が相手からのコミュニケーションの依頼の有無を判定する必要があり、煩雑なシステムとなる。このような煩雑な動作を回避するため、発生したデータをデータベースやファイルとして保存する構成が採用されている。【０００７】
また、データ発生源からデータを送信する処理、そのデータを受信する処理、受信するデータを一時保存する処理に利用できるライセンスフリーのライブラリが多く存在する。例えば、ファイルを転送する場合にはＦＴＰサーバを利用すればよい。また、データベースにおいてＯＤＢＣ（Open Database Connectivity）ドライバを利用してもよい。このようなライブラリを利用できることからも、発生したデータをデータベースやファイルとして保存する構成が採用されている。【０００８】
また、特許文献１には、振動センサや脈拍センサ等の複数のセンサの計測したデータをマイコンが収集し、マイコンがＰＤＡ等にデータを出力する構成が記載されている。マイコンは、生体信号の原データに対して、外乱信号の除去を目的としたフィルタリング処理や、秒単位・分単位での集計処理等を施し、加工データを生成する。マイコンは、加工データをＰＤＡに送信する。また、特許文献１には、計測データに変動がなく、被験者の状態が未だ生体信号を計測すべきでないと判断したときに、所定時間が経過するまで、生体信号の計測動作を待機することが記載されている。【０００９】
また、特許文献２には、センサネットワークにおいて、センサが出力する単位時間あたりのデータ量を抑制する処理が記載されている。具体的には、センサノードの測定間隔を増大したり、観測情報のまとめ送りを行ったり、あるいは、センサノードとルータノードの間で見なし通信を行って、単位時間当たりの送出データ量を抑えることが記載されている。【００１０】
また、特許文献３には、受信したデータが再び後続のストリームで受信される場合、後続のデータストリームを中断することが記載されている。また、顧客の組織やユーザの組織に関するフィルタリングをデータストリームに行うことが記載されている。【００１１】
特許文献４には、１回目の測定データと２回目の測定データの差の絶対値が所定値を越える場合に測定データを削除する荷電ビーム測長装置が記載されている。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２００３−３０７７５号公報（段落００３７，００４８−００５０，００６３、図１）
【特許文献２】特開２００８−４２４５８号公報（段落００５１）
【特許文献３】特開２００２−７７２７７号公報（段落００３３，００３５）
【特許文献４】特開２００２−６２１２３号公報（段落００２１）
【非特許文献】
【００１３】
【非特許文献１】白石陽、「センサネットワークのためのデータベース技術」、情報処理、社団法人情報処理学会、Ｖｏｌ．４７、Ｎｏ．４（２００６０４１５）、ｐｐ．３８７−３９３、２００６年
【発明の概要】
【発明が解決しようとする課題】
【００１４】
センサやＷｅｂサーバ等のデータ発生源が複数存在し、それらのデータを一旦、データベースやファイルとして記憶し、データ解析装置に渡す構成（例えば、図２２に示す構成）では、データ発生源の数が多くなると、データを収集する手段（例えば、図２２に示すログ収集手段２０３）へのアクセス集中により、データを収集する手段での処理が間に合わなくなる可能性がある。例えば、データベースあるいはファイルとしてデータを保存する場合、データ保存のためのＩ／Ｏが低速であるため、データを保存する処理等が間に合わなくなる可能性がある。【００１５】
また、データ発生源の数が多くなると、データを収集する手段（例えば、図２２に示すログ収集手段２０３）に送られるデータ量も多くなってしまい、保存可能なデータの容量を越えてしまうおそれがある。特許文献２には、センサノードが計測間隔を増大させたり、センサノードとルータノードとの間で見なし通信を行うこと等が記載されている。また、特許文献１では、センサでの計測を待機することが記載されている。しかし、センサノード等のデータ発生源の数が多いと、データ発生源を個別に制御することは難しい。例えば、プローブカーがデータ発生源であるとすると、何万台ものプローブカーに対してデータ送信の待機などを個別に命令することは処理負荷の点等から難しい。【００１６】
そこで、本発明は、多数のデータ発生源から大量のデータが送信されても、データが溢れることを防止しつつ、データを解析する手段に対して高速にデータを渡すことができる解析前処理システム、解析前処理方法および解析前処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１７】
本発明による解析前処理システムは、複数のデータ発生源で生成されたデータ群を取得するデータ取得手段と、データ取得手段が取得したデータ群から個々のデータを切り出すデータ切り出し手段と、解析に用いられるデータを記憶するバッファと、データ切り出し手段が切り出したデータ毎に、所定の条件を満たしているか否かを判定し、所定の条件を満たしているデータをバッファに記憶させ、所定の条件を満たしていないデータを破棄するフィルタリング手段と、バッファに記憶されたデータの中から、解析に用いられるデータの集合である解析データ群を定める解析用データ決定手段と、データを解析するデータ解析手段に解析データ群を送る解析用データ出力手段とを備えることを特徴とする。【００１８】
また、本発明による解析前処理方法は、複数のデータ発生源で生成されたデータ群を取得し、取得したデータ群から個々のデータを切り出し、切り出したデータ毎に、所定の条件を満たしているか否かを判定し、所定の条件を満たしているデータをバッファに記憶させ、所定の条件を満たしていないデータを破棄し、バッファに記憶されたデータの中から、解析に用いられるデータの集合である解析データ群を定め、データを解析するデータ解析手段に解析データ群を送ることを特徴とする。【００１９】
また、本発明による解析前処理プログラムは、コンピュータに、複数のデータ発生源で生成されたデータ群を取得するデータ取得処理、データ取得処理で取得したデータ群から個々のデータを切り出すデータ切り出し処理、データ切り出し処理で切り出したデータ毎に、所定の条件を満たしているか否かを判定し、所定の条件を満たしているデータをバッファに記憶させ、所定の条件を満たしていないデータを破棄するフィルタリング処理、バッファに記憶されたデータの中から、解析に用いられるデータの集合である解析データ群を定める解析用データ決定処理、データを解析するデータ解析手段に解析データ群を送る解析用データ出力処理を実行させることを特徴とする。
【発明の効果】
【００２０】
本発明によれば、多数のデータ発生源から大量のデータが送信されても、データが溢れることを防止しつつ、データを解析する手段に対して高速にデータを渡すことができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の第１の実施形態の解析前処理システムの例を示すブロック図である。
【図２】データストリーム生成手段の構成例を示すブロック図である。
【図３】解析前処理システムの物理構成の一例を示す説明図である。
【図４】時系列データ発生源が生成するデータの例を示す説明図である。
【図５】データ送信手段が送信するデータの例を示す説明図である。
【図６】解析ウィンドウを模式的に示す説明図である。
【図７】データストリーム生成手段の入出力の例を示す説明図である。
【図８】切り出されたデータの例を示す説明図である。
【図９】送信データバッファにおけるメモリイメージの例を示す模式図である。
【図１０】フィルタリング手段の構成例を示すブロック図である。
【図１１】本発明の第１の実施形態の処理経過の例を示すフローチャートである。
【図１２】フィルタリング処理の処理経過の例を示すフローチャートである。
【図１３】第２の実施形態におけるフィルタリング手段の構成例を示すブロック図である。
【図１４】有効データ定義手段が記憶する基準の例を示す説明図である。
【図１５】第２の実施形態におけるフィルタリング処理の処理経過の例を示すフローチャートである。
【図１６】データの複製が生じる状況の具体例を示す説明図である。
【図１７】第３の実施形態におけるフィルタリング手段の構成例を示すブロック図である。
【図１８】データ識別情報の例を示す説明図である。
【図１９】第３の実施形態におけるフィルタリング処理の処理経過の例を示すフローチャートである。
【図２０】参考実施形態におけるデータストリーム生成手段の構成例を示すブロック図である。
【図２１】本発明の最小構成を示す説明図である。
【図２２】解析対象データを収集するシステムの一般的な構成例を示すブロック図である。
【発明を実施するための形態】
【００２２】
以下、本発明の実施形態を図面を参照して説明する。
実施形態１．
図１は、本発明の第１の実施形態の解析前処理システムの例を示すブロック図である。本発明の解析前処理システム７は、時系列データ発生源１が発生させたデータを受信するデータ受信手段３と、受信したデータを加工して時系列データ解析手段５に送るデータストリーム生成手段４とを備える。
【００２３】
時系列データ発生源１は、時間の経過とともにデータを順次、発生させるデータ発生源である。データ送信手段２は、時系列データ発生源１が発生させたデータを解析前処理システム７に送信する。また、時系列データ解析手段５は、データストリーム生成手段４から入力されるデータを対象に解析処理を行う。図１に示すように、時系列データ発生源１およびデータ送信手段２は複数設けられていてよい。
【００２４】
データ受信手段３は、時系列データ発生源１が発生させたデータを各データ送信手段２から受信する。データストリーム生成手段４は、受信したデータに対してフィルタリング処理を行う。そして、データストリーム生成手段４は、時系列データ解析手段５における１回分の解析毎に、フィルタリングで得たデータの中から、１回分の解析の対象となるデータの集合を定め、時系列データ解析手段５に送る。時系列データ解析手段５は、このデータを用いて解析を行う。データストリーム生成手段４の動作は、解析の前処理に相当する。
【００２５】
なお、時系列データ発生源１およびデータ送信手段２が解析前処理システムに含まれていてもよい。同様に、時系列データ解析手段５が解析前処理システムに含まれていてもよい。
【００２６】
図２は、データストリーム生成手段４の構成例を示すブロック図である。図１で示した要素と同一の要素については、図１と同一の符号を付す。データストリーム生成手段４は、ストリームデータ生成手段４０１と、フィルタリング手段４０７と、送信データバッファ４０２と、解析ウィンドウ生成手段４０３と、ストリームデータ送信手段４０４とを備える。ストリームデータ生成手段４０１は、データ受信手段３が受信したデータを、解析のためのデータフォーマットに変換する。フィルタリング手段４０７は、データに対するフィルタリング処理を行い、フィルタリングによって得たデータを送信データバッファ４０２に記憶させる。送信データバッファ４０２は、データを一時的に記憶するメモリである。解析ウィンドウ生成手段４０３は、送信データバッファにデータが登録されたことを通知されると、時系列データ解析装置５が一度に解析するデータの集合を生成する。ストリームデータ送信手段４０４は、解析ウィンドウ生成手段４０３からの命令に応じて、送信データバッファ４０２から時系列データ解析手段５にデータを送信する。
【００２７】
図３は、解析前処理システムの物理構成の一例を示す説明図である。典型的には、時系列データ発生源１は物理的に分散した位置に存在し、サーバがデータを収集して解析を行う。図３に示す例では、ｎ台のクライアントＰＣ１，ＰＣ２，・・・，ＰＣｎがそれぞれ、時系列データ発生源１とデータ送信手段２とを備える。各クライアントは、例えば、ＰＣ（パーソナルコンピュータ）等の情報処理装置である。また、図３に示す例では、データ解析を行うサーバＰＣ８にデータ受信手段３、データストリーム生成手段４、および時系列データ解析手段５が設けられている。
【００２８】
ただし、図３に示す物理構成は例示であり、図３に示す例に限定されない。例えば、複数の時系列データ発生源が、一つの計算機で実現されていてもよい。また、データ受信手段３、データストリーム生成手段４、および時系列データ解析手段５がそれぞれ異なる計算機で実現されてもよい。図３に示す各手段をどのような装置で実現するかは、発生するデータの数、計算機の処理能力、時系列データ発生源１の物理的な分散状況に応じて、適宜定めればよい。時系列データ発生源１、データ送信手段２、データ受信手段３、データストリーム生成手段４、および時系列データ解析手段５を１台の計算機に設ける構成であってもよい。
【００２９】
以下の説明では、複数のクライアントがデータを発生させ、このデータをサーバＰＣに送信して、サーバＰＣが前処理、および解析を行う場合を例にして説明する。
【００３０】
各手段の詳細を説明する。
【００３１】
時系列データ発生源１は、解析対象となるデータを継続的に発生させる。時系列データ発生源１がセンサであり、解析対象となるセンサデータを継続的に生成してもよい。また、時系列データ発生源１がＷｅｂサーバ等のサーバ装置であり、解析対象となるログを継続的に生成してもよい。本実施形態では、時系列データ発生源１が、車両（プローブカー）に搭載され、例えば速度、位置、進行方向等を測定するセンサである場合を例にして説明する。何万台ものプローブカーを走行させ、各プローブカーのセンサからデータを収集して解析することで、渋滞情報を生成することができる。ただし、本発明は、プローブカーのデータ解析以外にも適用可能である。図３では、各ＰＣが時系列データ発生源１およびデータ送信手段２として動作する場合を示しているが、本例では、プローブカーとは別に設けられる基地局がデータ送信手段２に相当する。
【００３２】
図４は、個々のプローブカーに設けられたセンサ（時系列データ発生源１）が生成するデータの例を示す説明図である。本例において、個々のプローブカーに設けられた時系列データ発生源１は、日時、車両ＩＤ、緯度、経度、速度を含むデータを生成する。日時は、データの発生日時である。車両ＩＤは、時系列データ発生源１が搭載されているプローブカーのＩＤ（識別情報）である。各プローブカーには、それぞれユニークな車両ＩＤが割り当てられている。緯度は、プローブカーの位置の緯度であり、経度は、プローブカーの位置の経度である。また、速度は、プローブカーの速度であり、図４に示す例では時速である。よって、図４に示すデータは、「2008/7/20 12:00:00」に生成されたデータであり、プローブカー「ＣＩＤ０００１」が「緯度35.000」、「経度135.000」に存在し、時速６０．０ｋｍで走行していることを示している。本例では、日時、車両ＩＤ、緯度、経度、速度の組を１つのデータとする。
【００３３】
データ送信手段２は、時系列データ発生源１が生成したデータを解析前処理システム（サーバＰＣ）に送信する。本例では、プローブカーとは別に設けられた基地局がデータ送信手段２に相当する。また、プローブカーには基地局に対してデータを送信する送信手段（図示略）も設けられている。プローブカーに設けられた送信手段（図示略）は、無線ＬＡＮを介して基地局（データ送信手段２）にデータを送信し、基地局（データ送信手段２）は、そのデータをサーバＰＣに送信する。基地局（データ送信手段２）は、例えば、有線ＬＡＮを介してサーバＰＣに接続される。本発明は、プローブカーから収集するデータ以外を対象とする場合にも適用可能であり、データ送信手段２のデータ送信方法は特に限定されない。例えば、ＦＴＰ（FILE TRANSFER PROTOCOL RFC 959）を利用して、データを送信してもよい。
【００３４】
図５は、データ送信手段２が送信するデータの例を示す説明図である。データ送信手段２は、一つ一つのデータを個別にサーバＰＣに送信するのではなく、一定個数のデータをまとめて送信することが好ましい。このように複数のデータをまとめて送信することにより、通信コストを下げることができる。データ送信手段２は、図５に例示するように、区切り１０７でデータを連結し、ヘッダ１０６を付加して、データをサーバＰＣに送信する。ヘッダ１０６は、通信プロトコルで定められたヘッダであり、例えば、送信データのサイズ等のパラメータを含む。区切り１０７は、個々のデータの境界を示す情報である。
【００３５】
データ受信手段３は、データ送信手段２が送信したデータ（例えば、図５に例示するデータ）を受信する。データ受信手段３は、データ送信手段２と同じ通信プロトコルに従って、データを受信すればよい。例えば、ＦＴＰによってデータを受信してもよい。
【００３６】
データストリーム生成手段４は、データ受信手段３が受信したデータを一つずつのデータに分け、時系列データ手段５が解析を行うためのデータの集合にまとめる。また、データストリーム生成手段４は、データに対してフィルタリング処理を行い、その結果得たデータから解析ウィンドウを生成する。通常、時系列データ解析手段５は、データを一つずつ解析するのではなく、データの集合の解析を繰り返す。解析ウィンドウとは、この１回の解析において解析対象となるデータの集合である。図６は、解析ウィンドウを模式的に示す説明図である。図６に示す各丸印は、時間経過に伴い生成されたデータを表している。このデータ１１０の集合が解析ウィンドウ１２０であり、時系列データ解析手段５は、一つの解析ウィンドウを用いて、１回の解析処理を行う。データストリーム生成手段４は、フィルタリングによって得たデータから解析ウィンドウを定める処理を行い、解析ウィンドウを時系列データ解析手段５に送る。
【００３７】
解析ウィンドウの種類として、例えば、タイムベースウィンドウ（Time-Base Window）やトプルベースウィンドウ（Topple-Base Window）が挙げられる。タイムベースウィンドウは、一定時間毎に、その時間内に属するデータをまとめた解析ウィンドウである。トプルベースウィンドウは、時系列順に一定個数ずつデータを特定して、そのデータをまとめた解析ウィンドウである。図６は、トプルベースウィンドウの例を示し、２個のデータずつ解析ウィンドウを生成した場合を示している。
【００３８】
データストリーム生成手段４は、解析ウィンドウ毎に、解析ウィンドウを識別するためのＩＤ（ウィンドウＩＤ）を定め、ウィンドウＩＤをデータに挿入し、時系列データ解析手段５に渡す。
【００３９】
図７は、データストリーム生成手段４の入出力の例を示す説明図である。データストリーム生成手段４には、データ受信手段３から、複数のデータが区切り１０７で連結され、通信用のヘッダ１０６を含むデータが入力される。データストリーム生成手段４は、入力されたデータから、一つ一つのデータを切り出し、ウィンドウＩＤを割り当て、ウィンドウＩＤを割り当てたデータを時系列データ解析手段５に渡す。データストリーム生成手段４は、一つの解析ウィンドウに含める各データに共通のウィンドウＩＤを割り当てる。共通のウィンドウＩＤが割り当てられたデータの集合が、１回の解析で同時に解析される。また、ウィンドウＩＤが割り当てられる個々のデータは、時系列データ発生源１が生成したデータであり、本例では、日時、車両ＩＤ、緯度、経度、速度を含む。
【００４０】
図２等を参照して、データストリーム生成手段４が備える各要素を説明する。ストリームデータ生成手段４０１は、データ受信手段３がデータ送信手段２（図２において図示略。図１参照。）から受信したデータに対してフォーマット変換を行い、一つ一つのデータに分割する。ストリームデータ生成手段４０１は、ヘッダ１０６および区切り１０７（図７参照）を判別し、ヘッダ１０６と区切り１０７との間のデータや、区切り１０７間のデータをそれぞれ切り出せばよい。データのフォーマットは、ＲＦＣ（Request for Comments）等で標準化されており、受信したデータがＲＦＣの仕様に従っている場合、その仕様に従って、ヘッダとデータとの境界やデータ間の区切りを判別し、各データを切り出せばよい。図８は、ストリームデータ生成手段４０１によって切り出されたデータの例を示す。図５に例示するデータが入力されると、ストリームデータ生成手段４０１は、図８に示すように３つのデータを切り出す。
【００４１】
フィルタリング手段４０７は、データ受信手段３が受信したデータからストリームデータ生成手段４０１が切り出した一つ一つのデータに対してフィルタリング処理を行う。換言すれば、フィルタリング手段４０７は、ストリームデータ生成手段４０１に切り出された各データが所定の条件を満たしているか否かをデータ毎に判定し、所定の条件を満たしているデータを送信データバッファ４０２に記憶させ、所定の条件を満たしていないデータを破棄する。この所定の条件とは、データが解析に有用であることを示す条件である。
【００４２】
所定の条件の例として、例えば、「既に送信バッファ４０２に記憶されているいずれのデータともデータの内容が異なる」という条件を用いてもよい。仮に、送信データバッファ４０２に既に記憶されているデータと同内容のデータを送信データバッファ４０２に記憶させたとする。この場合、ストリームデータ送信手段４０４は、同内容の複数のデータを時系列データ解析手段５に送信する。しかし、時系列データ解析手段５は解析を行うときに同内容のデータを複数個必要としない場合がある。
【００４３】
例えば、個々のプローブカーに設けられたセンサ（時系列データ発生源１）がプローブカーの位置、速度、車両ＩＤを含むデータ（図４参照）を一定時間間隔で発生させ、時系列データ解析手段５がそのデータに関する解析を行うものとする。この場合、停止しているプローブカーは、位置、速度、車両ＩＤが同内容となっているデータを繰り返し発生させる。一方、時系列データ解析手段５の解析処理では、あるプローブカーの状況（位置や速度）が変化したときに、その変化した内容を必要とし、内容が変化していないデータは参照する必要がないことがある。このような場合、位置、速度、車両ＩＤが同内容となっているデータは冗長なデータであり、解析には用いられない。具体例を挙げると、解析において各車両の平均速度を求める場合、停止している車両のデータは平均速度算出には不要であり、そのようなデータを複数個、時系列データ解析手段５に送る必要はない。
【００４４】
フィルタリング手段４０７は、「既に送信バッファ４０２に記憶されているいずれのデータともデータの内容が異なる」という条件を満たしているデータを送信データバッファ４０２に記憶させ、条件を満たしていないデータ（すなわち、既に送信データバッファ４０２に記憶済みのデータと同内容のデータ）を破棄する。この結果、冗長のデータを時系列解析手段５に送ることを防止できる。
【００４５】
以下、所定の条件として、「既に送信バッファ４０２に記憶されているいずれのデータともデータの内容が異なる」という条件を用いる場合を例にして説明する。この条件を第１の条件と記す。第１の条件は、データが解析に有用であることを示す所定の条件の一例であり、第２の実施形態や第３の実施形態で説明するように、他の条件を用いてもよい。
【００４６】
送信データバッファ４０２は、フィルタリング手段４０７によって所定の条件を満たしていると判定されたデータを記憶するメモリである。図９は、送信データバッファ４０２におけるメモリイメージの例を示す模式図である。図９では、リスト構造を採用した場合を例示している。１つのデータを記憶するメモリ領域１３１に１つのデータが記憶される。また、各メモリ領域を連結するポインタ１３２が定められる。なお、フィルタリング手段４０７は、各データを記憶させたときに各ポインタを、ストリームデータ生成手段４０１を介して解析ウィンドウ生成手段４０３に通知する。あるいは、解析ウィンドウ生成手段４０３に直接、ポインタを通知してもよい。ポインタを辿ることで、各データに順にアクセスできる。ただし、送信データバッファ４０２がデータを記憶する態様は、図９の例に限定されない。例えば、送信データバッファ４０２は、リスト構造ではなく、テーブル構造でデータを記憶してもよい。
【００４７】
解析ウィンドウ生成手段４０３は、フィルタリング手段４０７が送信データバッファにデータを記憶させたタイミングで、そのデータを記憶させたメモリ領域へのポインタの通知を受け、ポインタを基に解析ウィンドウを生成する。解析ウィンドウ生成手段４０３には、解析ウィンドウの仕様が予め設定されている。解析ウィンドウの仕様には、解析ウィンドウの種類やウィンドウのサイズが含まれている。解析ウィンドウの種類として、タイムベースウィンドウで解析するか、トプルベースウィンドウで解析するかが定められる。ウィンドウサイズとして、タイムベースウィンドウの場合には時間が定められ、トプルベースウィンドウの場合にはデータの個数が定められる。
【００４８】
解析ウィンドウ生成手段４０３は、定められた仕様に従って解析ウィンドウを生成する。例えば、タイムベースウィンドウで解析を行うと定められ、ウィンドウサイズとして時間が定められているとする。この場合、解析ウィンドウ生成手段４０３は、解析ウィンドウを生成したときに、その解析ウィンドウの生成日時を記憶し、その日時にウィンドウサイズを加算することによって、次の解析ウィンドウを生成するタイミングを算出する。そして、解析ウィンドウ生成手段４０３は、新たなデータが追加されたことに伴い、ポインタの通知をフィルタリング手段４０７から受けると、通知されたポインタが示すメモリ領域のデータにおける日時のフィールドにアクセスする。そして、次の解析ウィンドウの生成タイミングを越えている日時が記憶されているか否かを判定する。次の解析ウィンドウの生成タイミングを越える日時が記憶されている場合、解析ウィンドウ生成手段４０３は、送信データバッファに記憶された各データに対して新たなウィンドウＩＤを割り当てることによって、それらの一つの解析ウィンドウと定め、ストリームデータ送信手段４０４にそのデータの集合（解析ウィンドウ）の送信命令を発行する。
【００４９】
また、例えば、トプルベースウィンドウで解析を行うと定められ、ウィンドウサイズとしてデータ数が定められているとする。解析ウィンドウ生成手段４０３は、新たなデータが追加されたことに伴ってポインタの通知を受ける度に、その通知を受けた回数をカウントする。通知を受けた回数は、送信データバッファ４０２に追加されたデータ数を意味する。ウィンドウサイズで定められた個数分の通知を受けると、解析ウィンドウ生成手段４０３は、送信データバッファに記憶された各データに対して新たなウィンドウＩＤを割り当てることによって、それらの一つの解析ウィンドウと定め、ストリームデータ送信手段４０４にそのデータの集合（解析ウィンドウ）の送信命令を発行する。このとき、通知を受けた回数のカウント値を０に初期化する。
【００５０】
なお、タイムベースウィンドウの場合も、トプルベースウィンドウの場合も、データの集合の送信命令として、新たに定めた解析ウィンドウに属する各データを記憶するメモリ領域へのポインタの集合を発行する。
【００５１】
ストリームデータ送信手段４０４は、データの集合の送信命令（すなわち、送信対象のデータを記憶するメモリ領域へのポインタ）を解析ウィンドウ生成手段４０３から受け取ると、その各ポインタが示すメモリ領域に記憶されたデータを時系列データ解析手段５に送信する。ストリームデータ送信手段４０４は、データを送信すると、そのデータを送信データバッファ４０２から削除する。
【００５２】
時系列データ解析手段５は、データストリーム生成手段４から受信するデータを解析する。時系列データ解析手段５は、データストリーム生成手段４から受信したデータを記憶するための記憶手段（図示せず）を備え、受信したデータをその記憶手段に記憶させる。そして、時系列データ解析手段５は、同一のウィンドウＩＤが付加されているデータを読み込み、そのデータを対象にして解析を行う。また、読み込んだデータは、記憶手段から削除する。プローブカーのデータの解析を行う場合、時系列データ解析手段５は、例えば、プローブカーのデータを道路地図にマッチングさせて、プローブカーの平均速度から、どの位置で渋滞が生じているかを示す渋滞情報を生成する。この処理を、一定間隔（例えば、５分間隔）で行う。この場合、タイムベースウィンドウで解析を行うと定めておけばよい。時系列データ解析手段５が行う処理は、データ発生源１が発生させるデータや、解析目的に応じて決めておけばよく、特定の解析処理に限定されない。
【００５３】
図１０は、フィルタリング手段４０７の構成例を示すブロック図である。フィルタリング手段４０７は、データ選別手段４０７０１と同一性判定手段４０７０２とを備える。
【００５４】
同一性判定手段４０７０２は、ストリームデータ生成手段４０１から入力される各データと、送信データバッファ４０２に既に記憶されている各データとの間で、データ同士の内容が同一となっているか否かを判定する。ストリームデータ生成手段４０１から入力される個々のデータは、フィルタリングの判定対象となるデータであり、以下、フィルタリング判定対象データと記す。
【００５５】
本例では、データの内容が同一であるというために、時系列データ発生源１が同一であることは必須であるものとする。例えば、図４に例示するプローブカーに関するデータの場合、車両ＩＤが同一であることは必須である。車両ＩＤが異なっているデータ同士は、たとえ、緯度、経度、速度が一致していても同一内容のデータではない。また、時系列データ発生源１が同一であることをデータ同一の必須条件とする場合、時間の経過に伴って発生する各データ間では日時は異なる。従って、内容が同一か否かを判定する場合、日時が同一であるか否かは無視してよい。データに含まれる項目の中に、日時のように、同一であるか否かを無視してよい項目があってもよい。
【００５６】
また、データ中の誤差を含む項目（例えば、図４に例示する緯度、経度、速度）に関しては、完全に一致している必要はない。この場合、同一性判定手段４０７０２は、送信データバッファ４０２に記憶されているデータに含まれる値と、フィルタリング判定対象データに含まれている値との差を計算し、その差が予め定められた範囲内であるか否かを判定すればよい。例えば、速度に関しては、送信データバッファ４０２に記憶されているデータ中の速度と、フィルタリング判定対象データ中の速度との差を計算し、その差が−５〜＋５の範囲内であれば、速度が同一と判定する。本例で示した−５，＋５の単位は「ｋｍ／ｈ」である。緯度や経度に関しても、データ間の値の差が、予め定められた範囲内に収まっているか否かを判定して、収まっていれば同内容と判定すればよい。
【００５７】
このように、同一性判定手段４０７０２は、フィルタリング判定対象データと、送信データバッファ４０２に記憶されたデータとの間で、時系列データ発生源１のＩＤ（例えば車両ＩＤ）が合致し、他の項目（例えば、緯度、経度、速度）の内容も同内容であると判定した場合に、データが同内容であると判定すればよい。また、時系列データ発生源１のＩＤが一致しなかったり、あるいは、他のいずれかの項目（例えば、緯度、経度、速度のいずれか）に同内容でないと判定した項目があったりした場合に、データが同内容でないと判定すればよい。
【００５８】
データ選別手段４０７０１は、フィルタリング判定対象データ毎に、フィルタリング判定対象データの内容が、送信データバッファ４０２中のいずれのデータとも同内容でないと判定されたか否かを確認する。そして、データ選別手段４０７０１は、その確認結果に応じて、フィルタリング判定対象データを送信データバッファ４０２に記憶させるか、あるいは、破棄する。
【００５９】
フィルタリング判定対象データの内容が、送信データバッファ４０２中のいずれのデータとも同内容でないと判定された場合、そのフィルタリング対象データは上記の第１の条件を満たしていることになる。この場合、データ選別手段４０７０１は、フィルタリング判定対象データを送信データバッファ４０２に記憶させる。そして、データ選別手段４０７０１は、フィルタリング判定対象データを送信データバッファ４０２に記憶させたときに、そのメモリ領域のポインタを解析ウィンドウ生成手段４０３に通知する。
【００６０】
一方、フィルタリング判定対象データの内容が送信データバッファ４０２中のいずれかのデータと同内容であると判定された場合、そのフィルタリング対象データは上記の第１の条件を満たしていないことになる。この場合、データ選別手段４０７０１は、フィルタリング判定対象データを破棄する。
【００６１】
本実施形態において、データ受信手段３、データストリーム生成手段４のストリームデータ生成手段４０１、フィルタリング手段４０７（データ選別手段４０７０１、同一性判定手段４０７０２）、解析ウィンドウ生成手段４０３、ストリームデータ送信手段４０４は、例えば、解析前処理プログラムに従って動作するコンピュータのＣＰＵによって実現される。この場合、解析前処理システムが解析前処理プログラムを記憶するプログラム記憶手段（図示略）を備え、ＣＰＵがそのプログラムを読み込み、そのプログラムに従って、データ受信手段３、データストリーム生成手段４のストリームデータ生成手段４０１、フィルタリング手段４０７、解析ウィンドウ生成手段４０３、ストリームデータ送信手段４０４として動作すればよい。また、これらの各手段が別々の専用回路によって実現されていてもよい。
【００６２】
また、時系列データ発生源１、データ送信手段２、時系列データ解析手段５も、例えば、プログラムに従って動作するＣＰＵによって実現される。
【００６３】
次に、動作について説明する。
図１１は、本発明の第１の実施形態の処理経過の例を示すフローチャートである。各時系列データ発生源１がデータを発生し、データ送信手段２が解析前処理システムにデータを送信する処理を時系列データ発生送信ステップ（ステップＳ１）と記す。また、データを受信した解析前処理システム（例えばサーバＰＣ）がデータを受信し、データに対するフィルタリング処理を行い、データを送信データバッファ４０２に記憶させ、解析ウィンドウを生成する処理を、データストリーム生成ステップ（ステップＳ２）と記す。また、時系列データ解析手段５がデータを解析する処理を時系列データ受信解析ステップ（ステップＳ３）と記す。ステップＳ１，Ｓ２，Ｓ３は、互いに独立した処理であり、並行して実行される。すなわち、ステップＳ１，Ｓ２，Ｓ３は、非同期に実行される。
【００６４】
時系列データ発生送信ステップ（ステップＳ１）では、個々の時系列データ発生源１は、時間経過に伴って継続的にデータを発生させる（ステップＳ１０１）。個々の時系列データ発生源１は、発生させるデータに発生時刻（データ生成時刻）を含めてもよい。各時系列データ発生源１は、データをデータ送信手段２に送り、データ送信手段２は、データをまとめて送信するためにデータをバッファ（図示略）に記憶させる（ステップＳ１０２）。このバッファはデータ送信手段２側でデータをバッファリングするためのバッファである。また、データ送信手段２は、バッファに蓄積したデータを送信するタイミングになったか否かを判定する（ステップＳ１０３）。例えば、所定個数のデータが蓄積されたならば、データを送信すると判定し、蓄積されたデータが所定個数に達していなければデータを送信しないと判定してもよい。あるいは、前回のデータ送信から一定期間経過したならばデータを送信すると判定し、また一定期間経過していなければ送信しないと判定してもよい。データを送信するタイミングになったと判定した場合（ステップＳ１０３におけるＹｅｓ）、データ送信手段２は、データを結合して解析前処理システム７に送信し（ステップＳ１０４）、送信したデータをバッファから削除する（ステップＳ１０５）。データを送信するタイミングになっていない場合、ステップＳ１０１，Ｓ１０２を繰り返す。
【００６５】
なお、時系列データ発生源１とデータ送信手段２とが同一の装置において実現されている場合、ステップＳ１０１，Ｓ１０２，Ｓ１０３，Ｓ１０５の処理を時系列データ発生源１が実行してもよい。
【００６６】
データストリーム生成ステップ（ステップＳ２）では、データ受信手段３は、データ送信手段２が送信したデータを受信する（ステップＳ２０１）。データ受信手段３も、バッファ（図示略）を備え、受信したデータを一旦バッファに記憶させる。そして、データの受信タイミングとは非同期に、バッファのデータをデータストリーム生成手段４に入力する。このため、ステップＳ２をステップＳ１とは非同期に行うことができる。
【００６７】
ストリームデータ生成手段４０１は、データ受信手段３から入力されたデータをフォーマット変換し、結合されたデータから一つ一つのデータを切り出す（ステップＳ２０２）。ストリームデータ生成手段４０１は、切り出した個々のデータをフィルタリング手段４０７に入力する。フィルタリング手段４０７は、入力されたデータに対するフィルタリング処理を行う（ステップＳ２０３）。すなわち、フィルタリング手段４０７は、入力されたデータが所定の条件を満たしているか否かを判定し、所定の条件を満たしているデータを送信データバッファ４０２に記憶させ、所定の条件を満たしていないデータを破棄する。また、フィルタリング手段４０７は、データを記憶させたメモリ領域へのポインタを、解析ウィンドウ生成手段４０３に通知する。
【００６８】
解析ウィンドウ生成手段４０３はポインタを通知されると、解析ウィンドウを生成する条件が満たされたか否かを判定する（ステップＳ２０４）。例えば、トプルベースウィンドウで解析を行うと指定されている場合では、ウィンドウサイズで定められた個数分の通知を受けたか否かを判定する。あるいは、タイムベースウィンドウで解析を行うと指定されている場合では、前回の解析ウィンドウ生成時以降、ウィンドウサイズで定められた期間が経過しているか否かを判定する。解析ウィンドウを生成する条件が満たされている場合（ステップＳ２０４のＹｅｓ）、解析ウィンドウに含める各データに対して、共通のウィンドウＩＤを追加し、解析ウィンドウの送信命令を発行する（ステップＳ２０５）。ストリームデータ送信手段４０４は、この送信命令に応じて、共通のウィンドウＩＤが割り当てられたデータ群（すなわち、解析ウィンドウ）を時系列データ解析手段５に送信する（ステップＳ２０６）。そして、ストリームデータ送信手段４０４は、ステップＳ２０６で送信したデータを送信データバッファ４０２から削除する（ステップＳ２０７）。
【００６９】
一つ一つのデータを切り出して解析ウィンドウとする処理が解析の前処理に相当する。
【００７０】
時系列データ受信解析ステップ（ステップＳ３）では、時系列データ解析手段５は、ストリームデータ送信手段４０４が送信したデータ（解析ウィンドウ）を受信する（ステップＳ３０１）。時系列データ解析手段５は、解析用バッファ（図示略）を備え、ストリームデータ送信手段４０４が送信したデータを一旦解析用バッファに記憶させる。そして、時系列データ解析手段５は、データの受信タイミングとは非同期に解析用バッファに記憶したデータを解析する（ステップＳ３０２）。このため、ステップＳ２とステップＳ３も非同期に行うことができる。具体的には、ストリームデータ送信手段４０４が解析ウィンドウを送信する動作とは非同期にデータ解析を行うことができる。時系列データ解析手段５は、ステップＳ３０２での解析が終了したデータを時系列データ解析手段５のバッファから削除する（ステップＳ３０３）。
【００７１】
図１２は、フィルタリング処理（ステップＳ２０３）の処理経過の例を示すフローチャートである。ストリームデータ生成手段４０１は、一つ一つのデータを切り出すと、（ステップＳ２０２、図１１参照）、そのデータをフィルタリング手段４０７に入力する。この個々のデータはフィルタリング判定対象データである。
【００７２】
同一性判定手段４０７０２は、フィルタリング判定対象データが入力されると、フィルタリング判定対象データ毎に、送信データバッファ４０２に記憶された個々のデータとの間で、同内容であるか否かを判定する（ステップＳ７０１）。
【００７３】
データ選別手段４０７０１は、送信データバッファ４０２中のいずれのデータとも同内容でないと判定されたフィルタリング判定対象データを、送信データバッファ４０２に記憶させ、データを記憶させたメモリ領域へのポインタを、解析ウィンドウ生成手段４０３に通知する（ステップＳ７０２）。一方、送信データバッファ４０２中のいずれかのデータと同内容であると判定されたフィルタリング判定対象データを破棄する（ステップＳ７０２）。そして、図１１に示すステップＳ２０４以降の動作を行う。
【００７４】
本実施形態によれば、各時系列データ発生源１が発生させたデータをデータ受信手段３が受信すると、そのデータをデータベースやファイルとしてではなく、メモリ（送信データバッファ４０２）に記憶させる。ＳＱＬでデータベースにアクセスする場合や、ファイルにアクセスする場合には、処理時間がかかってしまうが、本願発明では、メモリにデータを記憶させるので迅速にデータを時系列データ解析手段５に送ることができる。
【００７５】
また、特に本実施形態では、データ受信手段３が受信したデータを全て送信データバッファ４０２に記憶させるのではなく、フィルタリング処理で選別したデータを送信データバッファ４０２に記憶させる。従って、時系列データ発生源１が多数存在し、大量のデータを受信したとしても、解析前処理システムにおいてデータが溢れることを防止して、前処理を行ったデータを時系列データ解析手段５に送ることができる。
【００７６】
また、フィルタリング手段４０７は、解析で用いない冗長なデータを破棄する。従って、冗長なデータを送信データバッファ４０２に記憶させることを防止でき、送信データバッファ４０２を有効に活用することができる。
【００７７】
さらに、個々のデータ送信手段２あるいは時系列データ発生源１にフィルタリング処理を実行させるのではなく、解析前処理システムが備えるフィルタリング手段４０７が、データ送信手段２および時系列データ発生源１とは非同期にフィルタリング処理を実行する。従って、データ送信手段２あるいは時系列データ発生源１に対して個別にフィルタリング処理を行わせるような制御を行う必要がない。
【００７８】
実施形態２．
本発明の第２の実施形態の解析前処理システムも第１の実施形態と同様に、データ受信手段３とデータストリーム生成手段４とを備え（図１参照）、時系列データ発生源１が発生させたデータをデータ送信手段２から受信すると、データの前処理を行い、時系列データ解析手段５に送る。
【００７９】
また、第２の実施形態においても、第１の実施形態と同様に、データストリーム生成手段４は、ストリームデータ生成手段４０１と、フィルタリング手段４０７と、送信データバッファ４０２と、解析ウィンドウ生成手段４０３と、ストリームデータ送信手段４０４とを備える（図２参照）。ただし、フィルタリング手段４０７の動作が第１の実施形態と異なる。他の各手段は上記の第１の実施形態と同様である。
【００８０】
上記の第１の実施形態では、フィルタリング処理で用いる所定の条件として、「既に送信バッファ４０２に記憶されているいずれのデータともデータの内容が異なる」という条件（第１の条件）を用いる場合を説明した。第２の実施形態では、所定の条件として他の条件を用いる。
【００８１】
第２の実施形態では、フィルタリング処理で用いる所定の条件として、「データの内容が予め定められた基準を満たしている」という条件を用いる。この条件を、第２の条件と記す。例えば、データに含まれる内容に誤差が含まれることがあるが、誤差を含むデータであっても、基準を満たすデータであれば、解析に有効に用いることができる。このように解析に用いることができる有効なデータを判別するための基準を予め定めておき、フィルタリング手段４０７は、フィルタリング判定対象データの内容がこの基準を満たしているか否かを判定し、満たしていないデータを破棄する。
【００８２】
個々のプローブカーに設けられたセンサ（時系列データ発生源１）が発生させるデータを例に説明すると、データは位置、速度、方向等を含むことが多い。ただし、これらの値は誤差を含む。特に位置（例えば、緯度、経度）は、ＧＰＳ（Global Positioning System）によって取得することが一般的であり、建物等の影響を受けると位置の計算に大きな誤差を含むことがある。そのような大きな誤差を含むデータは解析に利用できないので、フィルタリング手段４０７が排除する。
【００８３】
図１３は、第２の実施形態におけるフィルタリング手段４０７の構成例を示すブロック図である。第２の実施形態におけるフィルタリング手段４０７は、有効データ定義手段４０７１３と、有効性判定手段４０７１２と、データ選別手段４０７１１とを備える。
【００８４】
有効データ定義手段４０７１３は、有効に用いることができるデータの内容の基準を記憶する記憶装置である。図１４は、有効データ定義手段４０７１３が記憶する基準の例を示す説明図である。図１４に例示する基準は、図４に例示するデータに対応し、日時、車両ＩＤ、緯度、経度、速度が満たすべき基準を示している。図４に示す「最小」、「最大」は、これらの項目の値の範囲を規定する。データに含まれる項目の値が、「最小」から「最大」までの範囲に含まれていれば、その項目の値は有効である。例えば、図１４に示す例において、日時に関しては、「現在時刻から１日前」〜「現在時刻」までの範囲に含まれていれば有効である。同様に、車両ＩＤに関しては、「ＣＩＤ０００１」〜「ＣＩＤ９９９９」の範囲に含まれていれば有効である。このように、項目の値が文字列と数値の組み合わせである場合、その数値の範囲を規定してもよい。緯度に関しては、３４．０００〜３６．０００の範囲に含まれていれば有効である。経度に関しては、１３４．０００〜１３６．０００の範囲に含まれていれば有効である。速度に関しては、０〜１２０の範囲に含まれていれば有効である。本例では、「最小」、「最大」を定めているが、いずれか一方のみを定めていてもよい。
【００８５】
図１４に示す「差分」は、直前のデータ（時系列データ発生源が同一の直前のデータ）との関係を規定する基準である。例えば、図１４に示す例において、日時に関しては、車両ＩＤが同一の直前のデータとの日時の差分が１時間以内であれば有効である。車両ＩＤに関しては、「差分」は規定されない。緯度に関しては、車両ＩＤが同一の直前のデータとの緯度の差分が０．０１以下であれば有効である。経度に関しては、車両ＩＤが同一の直前のデータとの経度の差分が０．０１以下であれば有効である。速度に関しては、車両ＩＤが同一の直前のデータとの速度の差分が１２０以下であれば有効である。
【００８６】
「最小」、「最大」が規定する基準は、データに含まれる項目が満たすべき絶対的な基準である。「差分」は、データに含まれる項目が他のデータとの関係において満たすべき相対的な基準である。図１４に示す例では、絶対的な基準（最小、最大）と、相対的な基準（差分）とを定めているが、いずれか一方のみを定めていてもよい。
【００８７】
有効性判定手段４０７１２は、ストリームデータ生成手段４０１からフィルタリング判定対象データが入力されると、そのフィルタリング判定対象データ中の各項目が、有効データ定義手段４０７１３に記憶されている各基準を満足しているか否かを判定する。例えば、図１４に例示する基準が記憶されているとする。有効性判定手段４０７１２は、フィルタリング判定対象データ中の日時、車両ＩＤ、緯度、経度、速度がそれぞれ最小値から最大値までの範囲に属しているか否かを判定する。また、日時、緯度、経度、速度それぞれに関し、直前のフィルタリング判定対象データにおける値との差を計算し、その計算結果が「差分」として規定された基準を満たしているか否かを判定する。
【００８８】
有効性判定手段４０７１２は、相対的な基準について判定するため、あるフィルタリング判定対象データについて、有効性の判定を行ったならば、そのフィルタリング判定対象データを、同じ時系列データ発生源で発生した次のフィルタリング判定対象データが入力されるまで記憶しておく。あるいは、送信データバッファ４０２に記憶されている直前のデータを参照して相対的な基準について判定してもよい。
【００８９】
データ選別手段４０７１１は、フィルタリング判定対象データ毎に、有効性判定手段４０７１２による判定結果を確認する。そして、データ選別手段４０７１１は、その確認結果に応じて、フィルタリング判定対象データを送信データバッファ４０２に記憶させるか、あるいは、破棄する。
【００９０】
フィルタリング判定対象データの各項目について有効データ定義手段４０７１３に規定されている基準を満たしていると判定された場合、そのフィルタリング対象データは上記の第２の条件を満たしていることになる。この場合、データ選別手段４０７１１は、フィルタリング判定対象データを送信データバッファ４０２に記憶させる。そして、データ選別手段４０７１１は、フィルタリング判定対象データを送信データバッファ４０２に記憶させたときに、そのメモリ領域のポインタを解析ウィンドウ生成手段４０３に通知する。
【００９１】
一方、フィルタリング判定対象データの各項目のいずれかについて、有効データ定義手段４０７１３に規定されている基準を満たしていないと判定された場合、そのフィルタリング対象データは上記の第２の条件を満たしていないことになる。この場合、データ選別手段４０７１１は、フィルタリング判定対象データを破棄する。例えば、いずれかの項目について、絶対的な基準あるいは相対的な基準を満たしていないと判定されたならば、データ選別手段４０７１１は、そのフィルタリング判定対象データを破棄する。
【００９２】
第２の実施形態のフィルタリング手段４０７のデータ選別手段４０７１１、有効性判定手段４０７１２は、例えば、解析前処理プログラムに従って動作するコンピュータのＣＰＵによって実現される。この場合、ＣＰＵが、解析前処理プログラムに従って、データ選別手段４０７１１、有効性判定手段４０７１２や、他の各手段として動作すればよい。また、データ選別手段４０７１１、同一性判定手段４０７１２がそれぞれ別々の専用回路によって実現されていてもよい。
【００９３】
第２の実施形態の処理経過は、第１の実施形態と同様である（図１１参照）。ただし、フィルタリング処理（ステップＳ２０３）における処理が異なる。図１５は、第２の実施形態におけるフィルタリング処理の処理経過の例を示すフローチャートである。有効性判定手段４０７１２は、ストリームデータ生成手段４０１からフィルタリング判定対象データを入力されると、フィルタリング判定対象データ内の各項目が絶対的な基準を満足しているか否かを判定する（ステップＳ７１１）。例えば、図１４に例示する基準が定められている場合、日時、車両ＩＤ、緯度、経度、速度に関して、それぞれ最小値から最大値までの範囲内に含まれているか否かを判定する。全ての項目に関して絶対的な基準を満足していると判定した場合（ステップＳ７１２のＹｅｓ）、有効性判定手段４０７１２は、フィルタリング判定対象データ内の各項目が相対的な基準を満足しているか否かを判定する（ステップＳ７１３）。例えば、時、緯度、経度、速度に関して、車両ＩＤが同一の直前のフィルタリング判定対象データとの差を計算し、その差が、定められた基準（図１４に例示する「差分」）を満たしているか否かを判定する。
【００９４】
データ選別手段４０７１１は、絶対的基準に関する判定結果、および相対的基準に関する判定結果を確認する。そして、絶対的基準に関する判定（ステップＳ７１１）または相対的基準に関する判定（ステップＳ７１３）において、いずれかの項目が基準を満たしていないと判定されている場合（ステップＳ７１２のＮｏ、あるいはステップＳ７１４のＮｏ）、データ選別手段４０７１１は、そのフィルタリング判定対象データを破棄する（ステップＳ７１６）。また、絶対的基準に関する判定（ステップＳ７１１）および相対的基準に関する判定（ステップＳ７１３）において、各項目が基準を満足していると判定されている場合（ステップＳ７１４のＹｅｓ）、データ選別手段４０７１１は、フィルタリング判定対象データを送信データバッファ４０２に記憶させ、フィルタリング判定対象データを記憶させたメモリ領域のポインタを解析ウィンドウ生成手段４０３に通知する。（ステップＳ７１５）。この結果、所定の条件（本実施形態では第２の条件）を満たすデータが選別される。
【００９５】
フィルタリング処理（ステップＳ２０３、図１１参照）以降の動作は、第１の実施形態と同様である。
【００９６】
第２の実施形態においても、第１の実施形態と同様の効果を得ることができる。
【００９７】
実施形態３．
次に、第３の実施形態として、「既にストリームデータ生成手段４０１から入力されたいずれかのデータの複製ではない」という条件をフィルタリング処理で用いる実施形態を示す。この条件を第３の条件と記す。
【００９８】
本発明の第３の実施形態の解析前処理システムも前述の各実施形態と同様に、データ受信手段３とデータストリーム生成手段４とを備え（図１参照）、時系列データ発生源１が発生させたデータをデータ送信手段２から受信すると、データの前処理を行い、時系列データ解析手段５に送る。
【００９９】
また、第３の実施形態においても、前述の各実施形態と同様に、データストリーム生成手段４は、ストリームデータ生成手段４０１と、フィルタリング手段４０７と、送信データバッファ４０２と、解析ウィンドウ生成手段４０３と、ストリームデータ送信手段４０４とを備える（図２参照）。ただし、フィルタリング手段４０７の動作が第１の実施形態や第２の実施形態と異なる。他の各手段は上記の第１の実施形態と同様である。
【０１００】
時系列データ発生源１がデータを発生させ、データ受信手段３がデータを受信するまでの過程で、時系列データ発生源１の複製が生じて、データ受信手段３が同一のデータを複数受信することがある。例えば、複数のデータ送信手段２が同一の時系列データ発生源１から同一データを受信し、その複数のデータ送信手段２がそのデータを解析前処理システムに送信した場合、このようなことが生じる。図１６は、この状況の具体例を示す説明図である。時系列データ発生源１がプローブカーに設けられたセンサであり、データ送信手段２ａ，２ｂが、時系列データ発生源１とデータ受信手段３との間でデータを中継する基地局であるとする。基地局は、エリア毎に設けられるが、対応するエリア同士が一部重なるように配置される。基地局に対応するエリア同士が重なっている部分にプローブカーが存在し、その位置からデータを無線発信すると、その各エリアに対応する基地局２ａ，２ｂがそれぞれ同一のデータを受信する。基地局２ａ，２ｂはいずれも受信したデータを解析前処理システムに送信するので、データ受信手段３は、同一のデータを複数受信することになる。このように複製されたデータは、時系列データ解析手段５での解析においては不要であり、フィルタリング手段４０７が排除する。
【０１０１】
図１７は、第３の実施形態におけるフィルタリング手段４０７の構成例を示すブロック図である。第３の実施形態におけるフィルタリング手段４０７は、処理済みデータ記憶手段４０７２３と、有効性判定手段４０７２２と、データ選別手段４０７２１とを備える。
【０１０２】
処理済みデータ記憶手段４０７２３は、ストリームデータ生成手段４０１から入力された各データを識別するためのデータ識別情報を記憶する記憶装置である。図１８は、処理済みデータ記憶手段４０７２３が記憶するデータ識別情報の例を示す。データの発生源および発生時刻が同一であるデータが２個以上存在する場合、２個目以降のデータは複製である。従って、図１８に示すように、日時と、時系列データ発生源のＩＤ（例えば車両ＩＤ）との組み合わせを、データ識別情報とすればよい。図１８の第１レコードは、プローブカー「ＣＩＤ０００１」で日時「2008/7/20 12:00:00」に生成されたデータは、既に受信済みであることを意味する。
【０１０３】
有効性判定手段４０７２２は、ストリームデータ生成手段４０１からフィルタリング判定対象データを入力されると、処理済みデータ記憶手段４０７２３に記憶されたデータ識別情報を参照して、そのフィルタリング判定対象データが未だ入力されていなかったデータであるか否かを判定する。フィルタリング判定対象データが未だ入力されていなかったデータであるならば、有効性判定手段４０７２２は、そのフィルタリング判定対象データのデータ識別情報（例えば、日時と車両ＩＤの組）を処理済みデータ記憶手段４０７２３に記憶させる。
【０１０４】
データ選別手段４０７２１は、フィルタリング判定対象データ毎に、有効性判定手段４０７２２による判定結果を確認する。そして、データ選別手段４０７２１は、その確認結果に応じて、フィルタリング判定対象データを送信データバッファ４０２に記憶させるか、あるいは、破棄する。
【０１０５】
フィルタリング判定対象データが未だ入力されていなかったデータであると判定されたということは、そのフィルタリング判定対象データが初めて入力されたということであり、第３の条件を満たしていることになる。この場合、データ選別手段４０７２１は、フィルタリング判定対象データを送信データバッファ４０２に記憶させる。そして、データ選別手段４０７２１は、フィルタリング判定対象データを送信データバッファ４０２に記憶させたときに、そのメモリ領域のポインタを解析ウィンドウ生成手段４０３に通知する。
【０１０６】
一方、フィルタリング判定対象データが既に入力済みのデータであると判定されたということは、第３の条件を満たしていないことになる。この場合、データ選別手段４０７２１は、フィルタリング判定対象データを破棄する。
【０１０７】
第３の実施形態のフィルタリング手段４０７のデータ選別手段４０７２１、有効性判定手段４０７２２は、例えば、解析前処理プログラムに従って動作するコンピュータのＣＰＵによって実現される。この場合、ＣＰＵが、解析前処理プログラムに従って、データ選別手段４０７２１、有効性判定手段４０７２２や、他の各手段として動作すればよい。また、データ選別手段４０７２１、有効性判定手段４０７２２がそれぞれ別々の専用回路によって実現されていてもよい。
【０１０８】
第３の実施形態の処理経過は、第１の実施形態や第２の実施形態と同様である（図１１参照）。ただし、フィルタリング処理（ステップＳ２０３）における処理が異なる。図１９は、第３の実施形態におけるフィルタリング処理の処理経過の例を示すフローチャートである。
【０１０９】
有効性判定手段４０７２２は、ストリームデータ生成手段４０１からフィルタリング判定対象データを入力されると、そのフィルタリング判定対象データが未だ入力されていなかったデータであるか否かを判定する（ステップＳ７２１）。具体的には、入力されたフィルタリング判定対象データのデータ識別情報（例えば、日時と車両ＩＤの組）が、既に処理済みデータ記憶手段４０７２３に記憶されているかどうかを判定する。データ識別情報が記憶されていなければ（ステップＳ７２２のＮｏ）、そのフィルタリング判定対象データは、未だ入力されていなかったデータ（初めて入力されたデータ）である。一方、データ識別情報が記憶されていれば（ステップＳ７２２のＹｅｓ）、そのフィルタリング判定対象データは、すでに入力されている。
【０１１０】
フィルタリング判定対象データが初めて入力されたデータであるならば（ステップＳ７２２のＮｏ）、有効性判定手段４０７２２は、そのフィルタリング判定対象データのデータ識別情報を処理済みデータ記憶手段４０７２３に追加記憶させる（ステップＳ７２３）。
【０１１１】
データ選別手段４０７２１は、有効性判定手段４０７２２の判定結果を確認する。そして、入力されたフィルタリング判定対象データが入力済みであったならば（ステップＳ７２２のＹｅｓ）、データ選別手段４０７２１は、そのフィルタリング判定対象データを破棄する（ステップＳ７２５）。また、入力されたフィルタリング判定対象データが初めて入力されたデータであるならば（ステップＳ７２２のＮｏ）、データ選別手段４０７２１は、そのフィルタリング判定対象データを送信データバッファ４０２に記憶させ、フィルタリング判定対象データを記憶させたメモリ領域のポインタを解析ウィンドウ生成手段４０３に通知する（ステップＳ７２４）。この結果、所定の条件（本実施形態では第３の条件）を満たすデータが選別される。
【０１１２】
フィルタリング処理（ステップＳ２０３、図１１参照）以降の動作は、第１の実施形態や第２の実施形態と同様である。
【０１１３】
第３の実施形態においても、第１の実施形態と同様の効果を得ることができる。
【０１１４】
また、フィルタリング手段４０７は、前述の第１から第３の条件のうち、複数の条件を組み合わせ、その複数の条件を満たしているデータのみを送信データバッファ４０２に記憶させ、他のデータを破棄する構成であってもよい。例えば、第１と第２の条件を満たしているデータのみを送信データバッファ４０２に記憶させ、他のデータを破棄する構成であってもよい。条件の組み合わせ方は特に限定されない。
【０１１５】
上記の各実施形態では、プローブカーに設けられた時系列データ発生源１がデータを発生させ、そのデータに対して、フィルタリング処理を行い解析ウィンドウを作成する前処理を行う場合を例示した。このような解析ウィンドウは、渋滞情報の生成の他にも、例えば、ヒヤリハットマップを用いて警告を行うといった解析に利用できる。同様に、人が時系列データ発生源１となるセンサを所持して、人に対して、ヒヤリハットマップを用いて警告するといった解析にも利用できる。また、データの種類は、上記のような解析に利用されるデータに限定されず、本発明は、解析対象となる種々のデータに対する前処理に適用可能である。
【０１１６】
また、フィルタリング処理を行わない実施形態も考えられ、以下、この実施形態を説明する。本実施形態の解析前処理システムは、図１に示す第１の実施形態と同様に、データ受信手段３とデータストリーム生成手段４とを備える。図２０は、フィルタリング処理を行わない実施形態におけるデータストリーム生成手段４の構成例を示すブロック図である。この実施形態において、データストリーム生成手段４は、ストリームデータ生成手段４０１と、送信データバッファ４０２と、解析ウィンドウ生成手段４０３と、ストリームデータ送信手段４０４とを備える。これらの各手段は、第１の実施形態と同様である。ただし、フィルタリング手段４０７は設けられておらず、ストリームデータ生成手段４０１は、切り出したデータを全て送信データバッファ４０２に記憶させる。また、ストリームデータ生成手段４０１は、データを送信データバッファ４０２に記憶させた場合、その旨の通知として、例えば、記憶させたメモリ領域へのポインタを解析ウィンドウ生成手段４０３に通知する。
【０１１７】
この構成の場合、データストリーム生成ステップ（ステップＳ２、図１１参照）において、ステップＳ２０３（フィルタリング処理）が行われないが、他の点に関しては、第１の実施形態と同様である。
【０１１８】
図２０に示す構成としても、データをデータベースやファイルとして記憶させておく場合よりも、迅速にデータを時系列データ解析手段５に送ることができる。ただし、送信データバッファ４０２でのデータ溢れを防止するために、第１から第３の各実施形態で示したようにフィルタリング手段４０７を設けることが好ましい。
【０１１９】
次に、本発明の最小構成を説明する。図２１は、本発明の最小構成を示す説明図である。本発明の解析前処理システムは、データ取得手段７１と、データ切り出し手段７２と、バッファ７４と、フィルタリング手段７３と、解析用データ決定手段７５と、解析用データ出力手段７６とを備える。
【０１２０】
データ取得手段７１（例えばデータ受信手段３）は、複数のデータ発生源で生成されたデータ群を取得する。
【０１２１】
データ切り出し手段７２（例えばストリームデータ生成手段４０１）は、データ取得手段７１が取得したデータ群から個々のデータを切り出す。
【０１２２】
バッファ７４（例えば送信データバッファ４０２）は、解析に用いられるデータを記憶する。
【０１２３】
フィルタリング手段７３（例えばフィルタリング手段４０７）は、データ切り出し手段７２が切り出したデータ毎に、所定の条件を満たしているか否かを判定し、所定の条件を満たしているデータをバッファ７４に記憶させ、所定の条件を満たしていないデータを破棄する。
【０１２４】
解析用データ決定手段７５（例えば解析ウィンドウ生成手段４０３）は、バッファ７４に記憶されたデータの中から、解析に用いられるデータの集合である解析データ群（例えば解析ウィンドウ）を定める。
【０１２５】
解析用データ出力手段７６（例えばストリームデータ生成手段４０４）は、データを解析するデータ解析手段（例えば時系列データ解析手段５）に解析データ群を送る。
【０１２６】
そのような構成により、多数のデータ発生源から大量のデータが送信されても、データが溢れることを防止しつつ、データを解析する手段に対して高速にデータを渡すことができる。
【０１２７】
また、上記の実施形態には、フィルタリング手段７３が、データ切り出し手段７２が切り出したデータ毎に、既にバッファ７４に記憶されているいずれのデータともデータの内容が異なるという条件を満たしているか否かを判定する内容一致不一致判定手段（例えば同一性判定手段４０７０２）と、条件を満たしてないデータを破棄し、条件を満たすデータをバッファ７４に記憶させるデータ選別手段（例えばデータ選別手段４０７０１）とを有する構成が開示されている。
【０１２８】
また、上記の実施形態には、フィルタリング手段７３が、データに含まれる内容が有効であることを示す基準を記憶する基準記憶手段（例えば有効データ定義手段４０７１３）と、データ切り出し手段７２が切り出したデータ毎に、データの内容が基準を満たしているか否かを判定する基準判定手段（例えば有効性判定手段４０７１２）と、データの内容が基準を満たしていないデータを破棄し、基準を満たしているデータをバッファ７４に記憶させるデータ選別手段（例えばデータ選別手段４０７１１）とを有する構成が開示されている。
【０１２９】
また、上記の実施形態には、フィルタリング手段７３が、データ切り出し手段７２から入力された各データのデータ識別情報を記憶するデータ識別情報記憶手段（例えば処理済みデータ記憶手段４０７２３）と、データ切り出し手段７２からデータが入力されたときにそのデータのデータ識別情報がデータ識別情報記憶手段に記憶されているか否かを判定し、記憶されていないときにはそのデータのデータ識別情報をデータ識別情報記憶手段に記憶させる重複判定手段（例えば有効性判定手段４０７２２）と、データ識別情報がデータ識別情報記憶手段に記憶されていたと判定されたデータを破棄し、データ識別情報がデータ識別情報記憶手段に記憶されていなかったと判定されたデータをバッファ７４に記憶させるデータ選別手段（例えばデータ選別手段４０７２１）とを有する構成が開示されている。
【０１３０】
また、上記の実施形態には、解析用データ決定手段７５が、一定期間毎に、一定期間内にバッファ７４に記憶されたデータの集合を解析データ群として定める構成が開示されている。
【０１３１】
また、上記の実施形態には、解析用データ決定手段７５が、バッファ７４に記憶されたデータ数が所定個に達する毎に、所定個のデータの集合を解析データ群として定める構成が開示されている。
【０１３２】
また、上記の実施形態には、解析用データ出力手段７６が、データ解析手段に送った解析データ群に属する各データをバッファ７４から削除する構成が開示されている。
【０１３３】
また、上記の実施形態には、データを解析するデータ解析手段（例えば時系列データ解析手段５）を備え、データ解析手段が、解析用データ出力手段７６が出力した解析データ群を保持し、解析を終えた解析データ群を削除することで解析用データ出力手段７６とは非同期に解析を行う構成が開示されている。
【０１３４】
なお、上記の実施の形態では、以下の（１）〜（９）に示すような解析前処理システムの特徴的構成が示されている。
【０１３５】
（１）複数のデータ発生源で生成されたデータ群を取得するデータ取得部と、データ取得部が取得したデータ群から個々のデータを切り出すデータ切り出し部と、解析に用いられるデータを記憶するバッファと、データ切り出し部が切り出したデータ毎に、所定の条件を満たしているか否かを判定し、所定の条件を満たしているデータをバッファに記憶させ、所定の条件を満たしていないデータを破棄するフィルタリング部と、バッファに記憶されたデータの中から、解析に用いられるデータの集合である解析データ群を定める解析用データ決定部と、データを解析するデータ解析部に解析データ群を送る解析用データ出力部とを備えることを特徴とする解析前処理システム。
【０１３６】
（２）フィルタリング部が、データ切り出し部が切り出したデータ毎に、既にバッファに記憶されているいずれのデータともデータの内容が異なるという条件を満たしているか否かを判定する内容一致不一致判定部と、条件を満たしてないデータを破棄し、条件を満たすデータをバッファに記憶させるデータ選別部とを有する解析前処理システム。
【０１３７】
（３）フィルタリング部が、データに含まれる内容が有効であることを示す基準を記憶する基準記憶部と、データ切り出し部が切り出したデータ毎に、データの内容が基準を満たしているか否かを判定する基準判定部と、データの内容が基準を満たしていないデータを破棄し、基準を満たしているデータをバッファに記憶させるデータ選別部とを有する解析前処理システム。
【０１３８】
（４）フィルタリング部が、データ切り出し部から入力された各データのデータ識別情報を記憶するデータ識別情報記憶部と、データ切り出し部からデータが入力されたときに当該データのデータ識別情報がデータ識別情報記憶部に記憶されているか否かを判定し、記憶されていないときには当該データのデータ識別情報をデータ識別情報記憶部に記憶させる重複判定部と、データ識別情報がデータ識別情報記憶部に記憶されていたと判定されたデータを破棄し、データ識別情報がデータ識別情報記憶部に記憶されていなかったと判定されたデータをバッファに記憶させるデータ選別部とを有する解析前処理システム。
【０１３９】
（５）解析用データ決定部が、一定期間毎に、一定期間内にバッファに記憶されたデータの集合を解析データ群として定める解析前処理システム。
【０１４０】
（６）解析用データ決定部が、バッファに記憶されたデータ数が所定個に達する毎に、その所定個のデータの集合を解析データ群として定める解析前処理システム。
【０１４１】
（７）解析用データ出力部が、データ解析部に送った解析データ群に属する各データをバッファから削除する解析前処理システム。
【０１４２】
（８）データを解析するデータ解析部を備え、データ解析部が、解析用データ出力部が出力した解析データ群を保持し、解析を終えた解析データ群を削除することで解析用データ出力部とは非同期に解析を行う解析前処理システム。
【０１４３】
（９）複数のデータ発生源で生成されたデータ群を取得するデータ取得手段と、データ取得手段が取得したデータ群から個々のデータを切り出すデータ切り出し手段と、解析に用いられるデータを記憶するバッファと、データ切り出し手段が切り出したデータ毎に、所定の条件を満たしているか否かを判定し、所定の条件を満たしているデータをバッファに記憶させ、所定の条件を満たしていないデータを破棄するフィルタリング手段と、バッファに記憶されたデータの中から、解析に用いられるデータの集合である解析データ群を定める解析用データ決定手段と、データを解析するデータ解析手段に解析データ群を送る解析用データ出力手段とを備えることを特徴とする解析前処理システム。
【０１４４】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１４５】
この出願は、２００９年２月２０日に出願された日本出願特願２００９−０３８４１３を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用の可能性】
【０１４６】
本発明は、解析のために収集させるデータを解析用にまとめる解析前処理システムに好適に適用される。
【符号の説明】
【０１４７】
１  時系列データ発生源
２  データ送信手段
３  データ受信手段
４  データストリーム生成手段
５  時系列データ解析手段
７  解析前処理システム
４０１  ストリームデータ生成手段
４０２  送信データバッファ
４０３  解析ウィンドウ生成手段
４０４  ストリームデータ送信手段
４０７  フィルタリング手段
４０７０１  データ選別手段
４０７０２  同一性判定手段
４０７１１，４０７２１  データ選別手段
４０７１２，４０７２２  有効性判定手段
４０７１３  有効データ定義手段
４０７２３  処理済みデータ記憶手段
【図１】
2010095459.tif 000003
【図２】
2010095459.tif 000004
【図３】
2010095459.tif 000005
【図４】
2010095459.tif 000006
【図５】
2010095459.tif 000007
【図６】
2010095459.tif 000008
【図７】
2010095459.tif 000009
【図８】
2010095459.tif 000010
【図９】
2010095459.tif 000011
【図１０】
2010095459.tif 000012
【図１１】
2010095459.tif 000013
【図１２】
2010095459.tif 000014
【図１３】
2010095459.tif 000015
【図１４】
2010095459.tif 000016
【図１５】
2010095459.tif 000017
【図１６】
2010095459.tif 000018
【図１７】
2010095459.tif 000019
【図１８】
2010095459.tif 000020
【図１９】
2010095459.tif 000021
【図２０】
2010095459.tif 000022
【図２１】
2010095459.tif 000023
【図２２】
2010095459.tif 000024
【国際調査報告】
2010095459.tif 000025
2010095459.tif 000026
2010095459.tif 000027
2010095459.tif 000028