(57)【要約】【課題】検索の条件とする変化量と時間幅が一定でない場合にも、効率的にデータを検索できる構成を得る。【解決手段】ロード実行部１０２は、一定の時間幅で刻まれる時刻と時刻ごとの数値とが記述されている入力データ１４３を、時刻に基づきグルーピングして、共通の時間帯に属する時刻が記述されている複数の入力データ１４３で構成されるブロックを複数生成する。データ圧縮部１０３は、ブロックごとに、記述されている時刻が連続している２つのデータの単位で、２つのデータの間の数値の変化量を算出する。検索実行部１０６は、時間幅数と、当該時間幅数での数値の変化量の閾値が定義されている検索条件１４４を取得する。変化量計算部１１０は、ブロック別に、検索条件１４４の時間幅数と同じ個数ずつ変化量を合算する。検索条件判定部１０９は、変化量の合算値と検索条件１４４の変化量の閾値とを比較して、いずれかのブロックを選択する。【選択図】図１
2015133062.tif 000002
【特許請求の範囲】
【請求項１】
一定の時間幅で刻まれる時刻と時刻ごとの数値とが記述されているデータを、記述されている時刻に基づきグルーピングして、共通の時間帯に属する時刻が記述されている複数のデータで構成されるデータブロックを複数生成するとともに、複数のデータブロックの中からいずれかのデータブロックを選択するデータ処理装置であって、
データブロックごとに、記述されている時刻が連続している２つのデータの単位で、２つのデータの間の数値の変化量を算出する変化量算出部と、
データブロックを選択するための選択条件として、時間幅数と、前記時間幅数での数値の変化量の閾値が定義されている条件情報を取得する条件情報取得部と、
データブロック別に、前記条件情報に定義されている時間幅数と同じ個数ずつ変化量を合算し、変化量の合算値と前記条件情報に定義されている変化量の閾値とを比較して、いずれかのデータブロックを選択するデータブロック選択部とを有することを特徴とするデータ処理装置。
【請求項２】
前記データ処理装置は、更に、
データブロックごとに、前記変化量算出部により算出された変化量に対する圧縮処理を行う圧縮処理部と、
データブロックごとに、前記圧縮処理部により圧縮処理された後の変化量を圧縮変化量として記憶する記憶部と、
前記記憶部に記憶されている圧縮変化量に対する伸張処理を行う伸張処理部と、
前記伸張処理部の伸張処理の対象にするデータブロックを指定する伸張対象指定部とを有し、
前記条件情報取得部は、
伸張処理の対象とするデータブロックの条件である伸張処理対象条件と、前記選択条件とが定義されている条件情報を取得し、
前記伸張対象指定部は、
前記複数のデータブロックのうち前記伸張処理対象条件に合致するデータブロックを伸張処理の対象に指定し、
前記伸張処理部は、
前記伸張対象指定部により伸張処理の対象に指定されたデータブロックの圧縮変化量に対してのみ伸張処理を行い、
前記データブロック選択部は、
前記伸張処理部により圧縮変化量に対する伸張処理が行われたデータブロックの中から、いずれかのデータブロックを選択することを特徴とする請求項１に記載のデータ処理装置。
【請求項３】
前記データ処理装置は、更に、
データブロックごとに、データブロックに含まれる複数のデータに記述されている数値の特徴量を抽出する特徴量抽出部を有し、
前記条件情報取得部は、
前記伸張処理対象条件として、特徴量の条件が定義されている条件情報を取得し、
前記伸張対象指定部は、
前記複数のデータブロックのうち、前記特徴量抽出部により抽出された特徴量が前記条件情報に定義されている特徴量の条件に合致するデータブロックを伸張処理の対象に指定することを特徴とする請求項２に記載のデータ処理装置。
【請求項４】
前記記憶部は、
データブロックごとに、前記変化量算出部により算出された変化量のうちの少なくとも上位２つの変化量が記述されている変化量情報を記憶しており、
前記伸張対象指定部は、
前記複数のデータブロックのうち前記伸張処理対象条件に合致するデータブロックを抽出するとともに、抽出したデータブロックに対して、データブロックごとに、前記変化量情報に記述されている変化量を合算し、変化量の合算値と前記条件情報に定義されている変化量の閾値とを比較して、伸張処理の対象にするデータブロックを指定することを特徴とする請求項３に記載のデータ処理装置。
【請求項５】
前記記憶部は、
データブロックごとに、前記変化量算出部により算出された変化量のうち、前記条件情報で定義される最大の時間幅数と同じ個数分の変化量が記述されている変化量情報を記憶しており、
前記伸張対象指定部は、
前記複数のデータブロックのうち前記伸張処理対象条件に合致するデータブロックを抽出するとともに、抽出したデータブロックに対して、データブロックごとに、前記条件情報に定義されている時間幅数と同じ個数だけ前記変化量情報に記述されている変化量を合算し、変化量の合算値と前記条件情報に定義されている変化量の閾値とを比較して、伸張処理の対象にするデータブロックを指定することを特徴とする請求項４に記載のデータ処理装置。
【請求項６】
前記伸張対象指定部は、
変化量の合算値が前記条件情報に定義されている変化量の閾値以上であるデータブロックを伸張処理の対象に指定することを特徴とする請求項４又は５に記載のデータ処理装置。
【請求項７】
前記データブロック選択部は、
変化量の合算値が前記条件情報に定義されている変化量の閾値以上であるデータブロックを選択することを特徴とする請求項１に記載のデータ処理装置。
【請求項８】
一定の時間幅で刻まれる時刻と時刻ごとの数値とが記述されているデータを、記述されている時刻に基づきグルーピングして、共通の時間帯に属する時刻が記述されている複数のデータで構成されるデータブロックを複数生成するとともに、複数のデータブロックの中からいずれかのデータブロックを選択するコンピュータが行うデータ処理方法であって、
前記コンピュータが、データブロックごとに、記述されている時刻が連続している２つのデータの単位で、２つのデータの間の数値の変化量を算出する変化量算出ステップと、
前記コンピュータが、データブロックを選択するための選択条件として、時間幅数と、前記時間幅数での数値の変化量の閾値が定義されている条件情報を取得する条件情報取得ステップと、
前記コンピュータが、データブロック別に、前記条件情報に定義されている時間幅数と同じ個数ずつ変化量を合算し、変化量の合算値と前記条件情報に定義されている変化量の閾値とを比較して、いずれかのデータブロックを選択するデータブロック選択ステップとを有することを特徴とするデータ処理方法。
【請求項９】
一定の時間幅で刻まれる時刻と時刻ごとの数値とが記述されているデータを、記述されている時刻に基づきグルーピングして、共通の時間帯に属する時刻が記述されている複数のデータで構成されるデータブロックを複数生成するとともに、複数のデータブロックの中からいずれかのデータブロックを選択するコンピュータに、
前記コンピュータが、データブロックごとに、記述されている時刻が連続している２つのデータの単位で、２つのデータの間の数値の変化量を算出する変化量算出ステップと、
前記コンピュータが、データブロックを選択するための選択条件として、時間幅数と、前記時間幅数での数値の変化量の閾値が定義されている条件情報を取得する条件情報取得ステップと、
前記コンピュータが、データブロック別に、前記条件情報に定義されている時間幅数と同じ個数ずつ変化量を合算し、変化量の合算値と前記条件情報に定義されている変化量の閾値とを比較して、いずれかのデータブロックを選択するデータブロック選択ステップとを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データの検索を効率化する技術に関する。
以下では、プラントにおける温度等の計測値データを管理する場合を例にして説明を行う。
【背景技術】
【０００２】
火力、鉄鋼等のプラントデータ管理では、異常時の原因究明等の目的のため、プラントデータの長期蓄積が行われている。
プラントデータの蓄積においては、蓄積に係るストレージの節約のため、データを圧縮する方法が開示されている（例えば特許文献１）。
【０００３】
プラントデータ管理において、あるセンサに着目し、急激な変化点時刻を取得するための検索が行われている。
圧縮されたデータに対して検索を行う場合、データ伸張に係る時間を削減するため、あらかじめ変化点を区間ごとに計算しておき、検索時の不要なデータ伸張を省略するための方法が開示されている（例えば特許文献２、３）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−２２１７９９号公報
【特許文献２】特開２００４−１９８１４８号公報
【特許文献３】特開２００９−２５１８７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来の変化点検索方式では、検索の条件とする変化量を事前に定義できる場合は事前に作成した索引を用いて高速に検索可能であったが、検索の条件とする変化量と時間幅が動的に変化する場合には索引を用いることが困難である。
【０００６】
本発明は、このような事情に鑑みたものであり、検索の条件とする変化量と時間幅が一定でない場合にも、効率的にデータを検索できる構成を得ることを主な目的とする。
【課題を解決するための手段】
【０００７】
本発明に係るデータ処理装置は、
一定の時間幅で刻まれる時刻と時刻ごとの数値とが記述されているデータを、記述されている時刻に基づきグルーピングして、共通の時間帯に属する時刻が記述されている複数のデータで構成されるデータブロックを複数生成するとともに、複数のデータブロックの中からいずれかのデータブロックを選択するデータ処理装置であって、
データブロックごとに、記述されている時刻が連続している２つのデータの単位で、２つのデータの間の数値の変化量を算出する変化量算出部と、
データブロックを選択するための選択条件として、時間幅数と、前記時間幅数での数値の変化量の閾値が定義されている条件情報を取得する条件情報取得部と、
データブロック別に、前記条件情報に定義されている時間幅数と同じ個数ずつ変化量を合算し、変化量の合算値と前記条件情報に定義されている変化量の閾値とを比較して、いずれかのデータブロックを選択するデータブロック選択部とを有することを特徴とする。
【発明の効果】
【０００８】
本発明では、データブロックごとに、記述されている時刻が連続している２つのデータの単位で、２つのデータの間の数値の変化量を算出しておき、データブロック別に、条件情報に定義されている時間幅数と同じ個数ずつ変化量を合算し、変化量の合算値と条件情報に定義されている変化量の閾値とを比較して、いずれかのデータブロックを選択する。
このため、検索の条件とする変化量と時間幅が一定でない場合にも、効率的にデータを検索することができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１に係るデータ処理装置の構成例を示す図。
【図２】実施の形態１に係るシステム構成例を示す図。
【図３】実施の形態１に係るデータ処理装置のハードウェア構成例を示す図。
【図４】実施の形態１に係るデータ処理装置のデータ入力処理を示すフローチャート図。
【図５】実施の形態１に係るデータ処理装置のデータ検索処理を示すフローチャート図。
【図６】実施の形態１に係る温度センサＡでの計測値の時間的変化を示す図。
【図７】実施の形態１に係る温度センサＡのプラントデータ例を示す図。
【図８】実施の形態１に係る温度センサＡの索引データ例を示す図。
【図９】実施の形態２に係るデータ処理装置の構成例を示す図。
【図１０】実施の形態２に係るデータ処理装置のデータ入力処理を示すフローチャート図。
【図１１】実施の形態２に係るデータ処理装置のデータ検索処理を示すフローチャート図。
【図１２】実施の形態２に係るデータ処理装置のデータ検索処理の詳細を示すフローチャート図。
【図１３】実施の形態２に係る予測値データの例を示す図。
【図１４】実施の形態１に係るプラントデータの例を示す図。
【発明を実施するための形態】
【００１０】
実施の形態１．
本実施の形態及び以降の実施の形態では、プラントデータのロード時に圧縮過程で差分を算出し、検索時の伸張過程で差分を用いた変化量計算を行って、効率的にデータ検索を行うデータ処理装置を説明する。
【００１１】
図１は、本実施の形態に係るデータ処理装置１０１の構成例を示す。
【００１２】
データ処理装置１０１は、ロード実行部１０２、データ圧縮部１０３、特徴量抽出部１０４、検索実行部１０６、検索条件最適化部１０７、データ伸張部１０８、検索条件判定部１０９、変化量計算部１１０、データ格納領域１１１から構成される。
【００１３】
ロード実行部１０２は、データ収集アプリケーション１４１から入力データ１４３を取得する。
入力データ１４３は、一定の時間幅で刻まれる時刻と時刻ごとの数値とが記述されているデータである。
また、ロード実行部１０２は、入力データ１４３に記述されている時刻に基づき入力データ１４３をグルーピングして、共通の時間帯に属する時刻が記述されている複数の入力データ１４３で構成されるデータブロック（以下、単にブロックともいう）を複数生成する。
なお、データ収集アプリケーション１４１は、データ処理装置１０１へデータ入力を行う上位のアプリケーションプログラムである。
【００１４】
データ圧縮部１０３は、データブロックごとに、記述されている時刻が連続している２つのデータの単位で、２つのデータの間の数値の変化量を算出する。
更に、データ圧縮部１０３は、データブロックごとに、算出した変化量に対する圧縮処理を行う。
データ圧縮部１０３は、変化量算出部及び圧縮処理部の例に相当する。
【００１５】
特徴量抽出部１０４は、データブロックごとに、データブロックに含まれる入力データの数値のうちの最大値及び最小値を特徴量として抽出する。
【００１６】
データ格納領域１１１は、圧縮変化量１２１、１２２、索引データ１３０を記憶する。
圧縮変化量１２１、１２２は、データ圧縮部１０３により圧縮処理された後のデータブロックごとの変化量である。
圧縮変化量１２１は、ブロックＩＤ：０００１のデータブロックの圧縮処理後の変化量である。・
圧縮変化量１２２は、ブロックＩＤ：０００２のデータブロックの圧縮処理後の変化量である。
索引データ１３０には、ブロックＩＤごとに、特徴量抽出部１０４により抽出された特徴量が示される。
なお、圧縮変化量１２１、１２２、索引データ１３０の詳細は後述する。
データ格納領域１１１は、記憶部の例に相当する。
【００１７】
検索実行部１０６は、データ検索アプリケーション１４２から検索条件１４４を取得し、取得した検索条件１４４に合致するデータブロックを検索結果１４５としてデータ検索アプリケーション１４２に返却する。
検索条件１４４には、時間幅数と、当該時間幅数での数値の変化量の閾値が定義されている。
時間幅数の変化量の閾値は、２つの時間幅の間の変化量が５以上であるといった閾値である。
また、検索条件１４４には、圧縮変化量の伸張処理が行われるデータブロックの条件である伸張処理対象条件が定義されている。
伸張処理対象条件は、例えば、特定の種類の計測値データのデータブロックであるといった条件や、例えば、データブロック内の全ての数値が３０以上であるといった条件である。
検索条件１４４は条件情報の例に相当する。
また、検索実行部１０６は条件情報取得部の例に相当する。
なお、データ検索アプリケーション１４２は、データ処理装置１０１に対してデータ検索を行う上位のアプリケーションプログラムである。
【００１８】
検索条件最適化部１０７は、複数のデータブロックのうち、検索条件１４４に定義されている伸張処理対象条件に合致するデータブロックを伸張処理の対象に指定する。
検索条件最適化部１０７は、伸張対象指定部の例に相当する。
【００１９】
データ伸張部１０８は、検索条件最適化部１０７により伸張対象の対象に指定されたデータブロックの圧縮変化量に対する伸張処理を行う。
データ伸張部１０８は、伸張処理部の例に相当する。
【００２０】
変化量計算部１１０は、データブロック別に、検索条件１４４に定義されている時間幅数と同じ個数ずつ、データ伸張部１０８により伸張された変化量を合算する。
変化量計算部１１０は、後述する検索条件判定部１０９とともにデータブロック選択部の例に相当する。
【００２１】
検索条件判定部１０９は、変化量計算部１１０により計算された変化量の合算値と、検索条件１４４に定義されている変化量の閾値とを比較して、いずれかのデータブロックを選択する。
検索条件判定部１０９により選択されたデータブロックは、検索結果１４５に含められる。
検索条件判定部１０９は、前述の変化量計算部１１０とともにデータブロック選択部の例に相当する。
【００２２】
図２は、データ処理装置１０１を用いたプラントデータ管理構成例を示す。
データ収集装置２０１は、データ収集アプリケーション１４１を備え、データ処理装置１０１にデータ入力するための入力データ１４３を保持する。
データ検索装置２０２は、データ検索アプリケーション１４２を備え、データ処理装置１０１からデータ検索するための検索条件１４４、データ処理装置１０１から受け取った検索結果１４５を保持する。
データ収集装置２０１、データ検索装置２０２は、１つでも複数でも構わない。
また、データ収集装置２０１、データ検索装置２０２がデータ処理装置１０１に内包されるような構成でもよい。
【００２３】
上述のデータ処理装置１０１はコンピュータであり、データ処理装置１０１の各構成要素はプログラムにより処理を実行できる。
また、プログラムを記憶媒体に記憶させ、記憶媒体からコンピュータに読み取られるようにすることができる。
【００２４】
図３は、データ処理装置１０１のハードウェア構成例を示す図である。
バス３０５に、演算装置３０１、外部記憶装置３０２、主記憶装置３０３、通信装置３０４が接続されている。
演算装置３０１は、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
外部記憶装置３０２は、例えばＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やハードディスクである。
主記憶装置３０３は、通常ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。
通信装置３０４は、通常イーサネット（登録商標）に対応した通信カードである。
プログラムは、通常は外部記憶装置３０２に記憶されており、主記憶装置３０３にロードされた状態で、順次演算装置３０１に読み込まれ処理を行う。
プログラムは、図１に示す「〜部」として説明している機能を実現するプログラムである。
また、図１に示すデータ格納領域１１１は、例えば、外部記憶装置３０２により実現される。
更に、外部記憶装置３０２にはオペレーティングシステム（ＯＳ）も記憶されており、ＯＳの少なくとも一部が主記憶装置３０３にロードされ、演算装置３０１はＯＳを実行しながら、図１に示す「〜部」の機能を実現するプログラムを実行する。
また、実施の形態１の説明において、処理の結果を示す情報やデータや信号値や変数値が主記憶装置３０３にファイルとして記憶されている。
【００２５】
なお、図３の構成は、あくまでもデータ処理装置１０１のハードウェア構成の一例を示すものであり、データ処理装置１０１のハードウェア構成は図３に記載の構成に限らず、他の構成であってもよい。
例えば、表示ディスプレイ等の出力装置や、マウス・キーボードといった入力装置がバス３０５に接続されていてもよい。
【００２６】
また、データ収集装置２０１やデータ検索装置２０２もコンピュータである。
データ処理装置１０１、データ収集装置２０１、データ検索装置２０２間の通信は通信装置３０４にて行う。
【００２７】
次に、データ格納領域１１１に格納される圧縮変化量１２１、１２２、索引データ１３０について説明する。
【００２８】
データ収集アプリケーション１４１からの入力データ１４３は、例えば、センサで計測された計測値データである。
入力データ１４３では、一定の時間幅（例えば、１秒）で刻まれる時刻と時刻ごとの数値（例えば、センサの計測値）とが記述されている。
本実施の形態では、複数のセンサの計測値データが入力データ１４３としてデータ処理装置１０１に集められるものとする。
データ処理装置１０１では、複数のセンサからの計測値は、センサごとに、近似する時刻でまとめられてデータブロックとして管理される。
図１４を用いて、データブロックを説明する。
図１４は、複数のセンサからの計測値を時刻ごとにテーブル形式で表したプラントデータである。
なお、図１４のプラントデータ１４００は説明のためのデータであり、データ処理装置１０１は図１４のプラントデータ１４００を記憶している訳ではない。
データ処理装置１０１は、時刻間の差分である変化量を圧縮した圧縮変化量１２１、１２２を記憶する。
図１４において、Ｓ１（１４０２）、Ｓ２（１４０３）・・・Ｓｎ（１４０４）は、それぞれセンサのＩＤ（Ｉｄｅｎｔｉｆｉｅｒ）である。
時刻１４０１は、各センサで計測が行われた時刻であり、入力データ１４３に記述されていた時刻である。
また、数値（３０、３３、４０等）は、各センサで計測された計測値であり、入力データ１４３に時刻とともに記述されていた計測値である。
つまり、センサＳ１からは、入力データ１４３として、「２０１３／０９／２０  １０：１１：１２」と「３０」とが記述されたデータ、「２０１３／０９／２０  １０：１１：１３」と「３３」とが記述されたデータ、「２０１３／０９／２０  １０：１１：１４」と「４０」とが記述されたデータ等が、データ処理装置１０１に届く。
データブロックは、符号１４０５で示すように、センサごとに、共通の時間帯（例えば、１分単位、１０分単位、１時間単位等）に属する時刻が記述されている複数の入力データで構成される。
そして、データ圧縮部１０３は、データブロックごとに、記述されている時刻が連続している２つのデータの単位で、２つのデータの間の数値の変化量を算出する。
図１４の例では、センサＳ１の場合、データ圧縮部１０３は、「２０１３／０９／２０  １０：１１：１２」と「２０１３／０９／２０  １０：１１：１３」との間の数値の差をとって、３３−３０＝３を変化量とする。
同様に、データ圧縮部１０３は、「２０１３／０９／２０  １０：１１：１３」と「２０１３／０９／２０  １０：１１：１４」との間の数値の差をとって、４０−３３＝７を変化量とする。
更に、データ圧縮部１０３は、１つのデータブロックから抽出された変化量群に対して圧縮処理を行う。
データ圧縮部１０３の圧縮アルゴリズムは、どのようなものでもよい。
データ圧縮部１０３により圧縮処理が行われた後の変化量が圧縮変化量１２１、１２２としてデータ格納領域１１１に格納される。
また、各データブロックには、ロード実行部１０２によりブロックＩＤが設定される。
図１の例では、圧縮変化量１２１は、「ブロックＩＤ：０００１」のデータブロックの圧縮変化量であり、圧縮変化量１２２は、「ブロックＩＤ：０００２」のデータブロックの圧縮変化量である。
【００２９】
また、特徴量抽出部１０４は、データブロックごと（ブロックＩＤごと）に、データブロックに含まれる数値のうちの最大値と最小値とを抽出し、抽出した最大値と最小値を索引データ１３０にまとめる。
図１の索引データ１３０では、「ブロックＩＤ：０００１」のデータブロックはセンサＳ１の計測値を対象としており、数値の最大値が「４０」であり、最小値が「２７」であったことが分かる。
なお、本実施の形態では、特徴量として最大値と最小値を用いる例を説明するが、特徴量は最大値と最小値に限らない。
特徴量は、例えば平均値、中央値、最頻値等でもよい。
【００３０】
次に、図４に示すフローチャートに基づいて、データ処理装置１０１におけるデータ収集アプリケーション１４１からのデータ入力処理について説明する。
【００３１】
ステップＳ１０１において、ロード実行部１０２がデータ収集アプリケーション１４１の入力データ１４３を受け付ける。
【００３２】
次に、ステップＳ１０２において、ロード実行部１０２が入力データ１４３をセンサＩＤ単位に分解する。
なお、ステップＳ１０１で、センサＩＤ単に分割された状態の入力データ１４３を取得している場合は、ステップＳ１０２は省略可能である。
【００３３】
次に、ステップＳ１０３において、ロード実行部１０２がセンサＩＤ単位に分解された入力データ１４３を、所定の時間幅ごとに、ブロック単位でまとめ、各ブロックにブロックＩＤを割り当てる。
ブロックの時間幅は、例えば、固定でもよいし、過去の圧縮状況から算出してもよい。
また、ロード実行部１０２は、ブロックごとに、ブロックに含まれる数値を特徴量抽出部１０４に出力する。
特徴量抽出部１０４が特徴量として最大値と最小値を抽出し、抽出した最大値と最小値をブロックＩＤ及びセンサＩＤとともに索引データ１３０に登録する。
【００３４】
次に、ステップＳ１０４において、ステップＳ１０３でまとめられたブロックのうち、圧縮されていないブロックがある場合は、データ圧縮部１０３が、圧縮されていないブロックの内１件を抽出し、ステップＳ１０５へ進む。
すべてのブロックが圧縮されている場合は、処理を終了する。
【００３５】
ステップＳ１０５では、データ圧縮部１０３が、連続する２つの時刻の単位で、数値の間の差分（変化量）を算出する。
【００３６】
次に、ステップＳ１０６において、データ圧縮部１０３が、ステップＳ１０５で算出された変化量を圧縮し、ロード実行部１０２に圧縮結果（圧縮変化量）を受け渡す。
【００３７】
最後に、ステップＳ１０８において、ロード実行部１０２がデータ格納領域１１１に圧縮データ（圧縮変化量）を格納する。
【００３８】
次に、図５に示すフローチャートに基づいて、データ処理装置１０１におけるデータ検索アプリケーション１４２からのデータ検索処理について説明する。
【００３９】
ステップＳ２０１において、検索実行部１０６がデータ検索アプリケーション１４２の検索条件１４４を受け付ける。
前述したように、検索条件１４４には、時間幅数と、当該時間幅数での数値の変化量の閾値が定義されている。
また、検索条件１４４には、圧縮変化量の伸張処理が行われるデータブロックの条件である伸張処理対象条件が定義されている。
【００４０】
次に、ステップＳ２０２において、検索条件最適化部１０７が検索処理の実行計画を作成する。
処理の実行計画は、複数検索条件を効率的な順序で実行するよう最適化する。
より具体的には、検索条件最適化部１０７は、検索条件１４４に定義されている伸張処理対象条件に合致するデータブロックのみを伸張処理の対象にするようにして、データ伸張処理量を抑制する。
例えば、センサＳ１及びセンサＳ２のみを対象とする旨の伸張処理対象条件が検索条件１４４に定義されている場合は、検索条件最適化部１０７は、センサＳ１及びセンサＳ２のブロックの圧縮変化量のみを伸張処理の対象とする実行計画を作成する。
【００４１】
次に、ステップＳ２０３において、検索条件最適化部１０７が索引データ１３０を参照し、ステップＳ２０４以降で読み出し、伸張が必要なブロックを判定するため、ブロックの数を把握する。
前述のように、センサＳ１及びセンサＳ２のみを対象とする旨の伸張処理対象条件が検索条件１４４に定義されている場合は、検索条件最適化部１０７は、索引データ１３０を参照して、センサＳ１のブロック数及びセンサＳ２のブロックの数を把握する。
【００４２】
次に、ステップＳ２０４において、検索条件最適化部１０７が索引データ１３０から、伸張処理対象条件に合致するブロックのブロックＩＤ１３１、センサＩＤ１３２、特徴量１３４の組（レコード）を１つ取り出し、ステップＳ２０５に進む。
伸張処理対象条件に合致するブロックのすべての組（レコード）を取り出している場合は、ステップＳ２０６に進む。
【００４３】
ステップＳ２０５において、検索条件最適化部１０７がステップＳ２０４で取り出した特徴量１３４と検索条件１４４の伸張処理対象条件とを比較する。
特徴量１３４と伸張処理対象条件との比較の結果、当該ブロックの読み出しが必要があると判断した場合は、検索条件最適化部１０７は、当該ブロックを読み出し対象ブロックリストに追加する。
例えば、特徴量１３４にブロック内の最大値、最小値が記述されている場合は、検索条件１４４の伸張処理対象条件と特徴量１３４の値の範囲に重なりがあれば、読み出し対象ブロックリストに追加する。
より具体的には、例えば、伸張処理対象条件として「２７」以上が定義されていれば、図１の索引データ１３０から、「ブロックＩＤ：０００１」のブロックと「ブロックＩＤ：０００３」のブロックは、読み出し対象ブロックリストに追加されるが、「ブロックＩＤ：０００２」のブロックは追加されない。
なお、読み出し対象ブロックリストに追加するための判定方法は、特徴量を用いるものであればどのような方法でも構わない。
【００４４】
ステップＳ２０６において、検索条件最適化部１０７が読み出し対象ブロックリストから１つのブロックを取り出し、当該ブロックの圧縮変化量をデータ格納領域１１１から読み出し、ステップＳ２０７に進む。
読み出し対象ブロックリスト内の全てのブロックの圧縮変化量を読み出している場合は、ステップＳ２１１に進む。
【００４５】
ステップＳ２０７では、データ伸張部１０８が、検索条件最適化部１０７から圧縮変化量を受け取り、受け取った圧縮変化量に対する伸張処理を行う。
【００４６】
ステップＳ２０８において、検索条件最適化部１０７が検索条件１４４を参照して変化量計算の必要性を判断する。
具体的には、検索条件１４４に時間幅数と変化量の閾値が記述されている場合は、変化量計算が必要である。
変化量計算が必要な場合は、ステップＳ２０９の変化量計算に進む。
変化量計算が不要な場合は、ステップＳ２１０の検索条件判定に進む。
【００４７】
ステップＳ２０９では、変化量計算部１１０がデータ伸張部１０８から伸張後の変化量を受け取り、また、検索条件最適化部１０７から検索条件１４４に記述されている時間幅数を受け取り、時間幅数ずつ変化量を合算し、時間幅数分の変化量の合算値を得る。
【００４８】
ステップＳ２１０では、検索条件判定部１０９が検索条件最適化部１０７から検索条件１４４を受け取り、検索条件１４４に合致するブロックを選択し、選択したブロックのデータを検索結果１４５に追加する。
Ｓ２０８でＹＥＳの場合は、検索条件判定部１０９は、変化量計算部１１０が計算した時間幅数分の変化量の合算値と、検索条件１４４の変化量の閾値とを比較して、ブロックを選択する。
【００４９】
最後に、ステップＳ２１１において、検索実行部１０６が検索結果１４５をデータ検索アプリケーション１４２に返却する。
【００５０】
次に、図６の温度センサＡの計測値の例と図７のプラントデータの例と図８の索引データの例を用いて、実施の形態に係るデータ処理装置１０１の差分を用いた変化量の計算について説明する。
【００５１】
図６は、温度センサＡの計測値の時間的変化を示す。
データ処理装置１０１は、温度センサＡによる１秒ごとの計測値が示される入力データ１４３を取得する。
図６において、「ブロック０００１」、「ブロック０００２」、「ブロック０００３」は、それぞれブロックＩＤを示す。
【００５２】
図７は、図６の計測値を、時刻７２１ごとに、温度センサＡの計測値７２２、変化量７２３、変化量の合算値７２４にまとめたプラントデータ７２０である。
図７では、「ブロック０００２」の「２０１３／０９／２０  １０：１１：１２」、「２０１３／０９／２０  １０：１１：１３」、「２０１３／０９／２０  １０：１１：１４」について、温度センサＡの計測値７２２、変化量７２３、変化量の合算値７２４を示している。
【００５３】
つまり、図６に示すように、「２０１３／０９／２０  １０：１１：１２」での温度センサＡの計測値は「３０」であり、「２０１３／０９／２０  １０：１１：１３」での温度センサＡの計測値は「３５」であり、「２０１３／０９／２０  １０：１１：１４」での温度センサＡの計測値は「４０」である（計測値７２２）。
【００５４】
また、「２０１３／０９／２０  １０：１１：１２」と「２０１３／０９／２０  １０：１１：１３」との間の計測値の変化量（差分）は、「２０１３／０９／２０  １０：１１：１２」の行の変化量７２３に記載の通り、「５」である。
また、「２０１３／０９／２０  １０：１１：１３」と「２０１３／０９／２０  １０：１１：１４」との間の計測値の変化量（差分）は、「２０１３／０９／２０  １０：１１：１３」の行の変化量７２３に記載の通り、「５」である。
なお、「２０１３／０９／２０  １０：１１：１３」の行の変化量７２３に記載の「７」は、「２０１３／０９／２０  １０：１１：１４」と「２０１３／０９／２０  １０：１１：１５」（図７に不図示）との間の計測値の変化量（差分）である。
【００５５】
また、後述では、検索条件１４４の時間幅数が「２」である例を説明するので、図７の変化量の合算値７２４では、時間幅数「２」での変化量の合算値を示している。
つまり、時間幅数「２」である「２０１３／０９／２０  １０：１１：１２」と「２０１３／０９／２０  １０：１１：１４」との間の変化量の合算値は、「２０１３／０９／２０  １０：１１：１２」の行の変化量の合算値７２４に記載の通り、５＋５＝１０である。
なお、「２０１３／０９／２０  １０：１１：１３」の行の変化量の合算値７２４に記載の「７」は、「２０１３／０９／２０  １０：１１：１３」と「２０１３／０９／２０  １０：１１：１５」（図７に不図示）との間の変化量の合算値である。
また、「２０１３／０９／２０  １０：１１：１４」の行の変化量の合算値７２４に記載の「７」は、「２０１３／０９／２０  １０：１１：１４」と「２０１３／０９／２０  １０：１１：１６」（図７に不図示）との間の変化量の合算値である。
【００５６】
図７のプラントデータ７２０は、説明のためのデータであり、データ処理装置１０１は図７のプラントデータ７２０を記憶している訳ではない。
前述の通り、データ処理装置１０１は、圧縮変化量を記憶する。
【００５７】
図８は、温度センサＡの計測値についての索引データ８３０である。
図８の索引データ８３０は、図１の索引データ１３０と同様の構成であるため、説明を省略する。
【００５８】
ここでは、データ検索アプリケーション１４２が、伸張処理対象条件を計測値「２７」以上とし、また、時間幅「２」の間の変化量の閾値を「１０」以上とする検索条件１４４を指定しているとする。
【００５９】
まず、データ検索アプリケーション１４２がデータ処理装置１０１に対して前述の検索条件１４４を送信し、検索実行部１０６が検索条件１４４を受け付ける。
【００６０】
次に、検索条件最適化部１０７が検索条件から実行計画を作成し、図８に示す索引データ８３０を取得する。
検索条件最適化部１０７は、特徴量８３４と検索条件１４４の「２７」以上の指定を比較し、重なりのあるブロックＩＤ０００１、０００２、０００３を読み出し対象ブロックリストに追加する。
【００６１】
データ伸張部１０８は、ブロックＩＤ０００１、０００２、０００３の圧縮変化量を伸張して、圧縮前の変化量を取得する。
変化量計算部１１０は、データ伸張部１０８により得られた変化量を検索条件１４４に記述されている時間幅数「２」ずつ合算して、変化量の合算値を得る。
ブロックＩＤ０００２では、図７に示すように、「２０１３／０９／２０  １０：１１：１２」と「２０１３／０９／２０  １０：１１：１４」との間の変化量の合算値が「１０」である。
このように、ブロックＩＤ０００２は、最小値が「２７」以上であり、変化量の合算値が「１０」以上であるため、検索条件１４４に該当する。
従って、検索条件判定部１０９はブロックＩＤ０００２を検索結果１４５に追加する。
【００６２】
以上のように、本実施の形態では、圧縮時に保存した差分を伸張時に抽出し、変化量計算に用いることで、時間幅がパラメータとして与えられる場合の変化量計算を実施する。
従来は、数値そのもの（図１４の３０、３３、４０等）を圧縮しているため、検索条件に時間幅数と変化量の閾値が規定されている場合は、（１）伸張処理により毎時刻の数値を得て、（２）時刻間の数値の変化量（差分）を計算し、（３）計算した変化量を時間幅数分合算し、（４）変化量の合算値と変化量の閾値とを比較する、という４段階の処理が必要である。
このため、検索処理に時間を要していた。
これに対して、本実施の形態では、事前に変化量を計算しているため、（１）伸張処理により変化量を得て、（２）変化量を時間幅数分合算し、（３）変化量の合算値と変化量の閾値とを比較する、という３段階の処理ですみ、検索処理の高速化が図れる。
【００６３】
実施の形態２．
実施の形態２では、読み出し対象ブロックリストの追加時に、変化量の合算値を予測し、予測値と検索条件で指定されている変化量の閾値とを比較して、読み出し対象のブロックを絞り込むデータ処理装置を実現する。
【００６４】
図９は、実施の形態２におけるデータ処理装置９０１の構成例を示す。
【００６５】
図９のデータ処理装置９０１では、図１のデータ処理装置１０１と比較して、選択変化量抽出部９０５と変化量予測部９１２が追加されている。
また、索引データ９３０に、選択変化量９３３の項目が追加されている。
これら以外の要素は、図１に示したものと同じであるため、説明を省略する。
なお、本実施の形態では、索引データ９３０は、変化量情報の例に相当する。
【００６６】
選択変化量抽出部９０５は、データ圧縮部９０３により算出された変化量のうち上位ｍ個の変化量を選択変化量として抽出する。
なお、ｍの値は、検索条件１４４で指定される時間幅数の最大値である。
【００６７】
変化量予測部９１２は、選択変化量９３３と検索条件１４４で指定されている時間幅数を用いて、伸張対象のブロックＩＤを選択するために、変化量の合算値の予測値を導出する。
なお、本実施の形態では、変化量予測部９１２も、検索条件最適化部９０７とともに伸張対象指定部の例に相当する。
【００６８】
本実施の形態に係るデータ処理装置９０１のハードウェア構成も、図３に示したものと同様である。
【００６９】
次に、図１０に示すフローチャートに基づいて、データ処理装置９０１におけるデータ収集アプリケーション１４１からのデータ入力処理について説明する。
なお、ステップＳ１０１〜Ｓ１０７は、図４に示したものと同じなので、以下では、図１０において追加されたステップＳ１５１を説明する。
【００７０】
ステップＳ１５１では、選択変化量抽出部９０５が、ステップＳ１０５で算出された変化量（圧縮前）をデータ圧縮部９０３から受け取り、受け取った変化量のうち上位ｍ個の変化量を選択し、選択変化量９３３として索引データ９３０に登録する。
【００７１】
次に、図１１に示すフローチャートに基づいて、データ処理装置９０１におけるデータ検索アプリケーション１４２からのデータ検索処理について説明する。
なお、ステップＳ２０１〜Ｓ２０４、Ｓ２０６〜Ｓ２１１は、図５に示したものと同じなので、以下では、ステップＳ２５１及びＳ２５２を説明する。
【００７２】
ステップＳ２５１では、図５のステップＳ２０５と同様の処理が行われるが、以下の点が異なる。
ステップＳ２０５では、特徴量９３４と検索条件１４４の伸張処理対象条件との比較によって選択されたブロックは読み出し対象ブロックリストに追加されるが、ステップＳ２５１では、選択されたブロックは読み出し対象ブロック候補リストに追加される。
つまり、本実施の形態では、ステップＳ２５２の処理により選択されたブロックが最終的な読み出し対象ブロックリストに追加されるため、ステップＳ２５１の段階では、暫定的な読み出し対象ブロックリストである読み出し対象ブロック候補リストに追加される。
【００７３】
ステップＳ２５２では、検索条件最適化部９０７が、選択変化量９３３を索引データ９３０から読み出し、選択変化量９３３に基づく変化量の合算値の予測値と検索条件１４４の変化量の閾値を比較して、読み出し対象ブロックリストに追加するブロックを判定する。
より具体的には、Ｓ２０４で取り出されたブロックが、Ｓ２５１において読み出し対象ブロック候補リストに追加された場合に、検索条件最適化部９０７が、索引データ９３０から当該ブロックの選択変化量９３３を読み出す。
そして、検索条件最適化部９０７は、読み出した選択変化量９３３と検索条件１４４で指定されている時間幅数を変化量予測部９１２に出力する。
変化量予測部９１２は、選択変化量９３３の変化量のうち、検索条件１４４の時間幅数分の変化量を上位から合算して、変化量の合算値の予測値を算出する。
例えば、検索条件１４４で指定されている時間幅数がｋ個（ｋ≧ｍ）であれば、変化量予測部９１２は、選択変化量９３３のｍ個の変化量のうち上位ｋ個の変化量を合算して、予測値を算出する。
変化量予測部９１２は、算出した予測値を検索条件最適化部９０７に通知する。
検索条件最適化部９０７は、変化量予測部９１２から通知された予測値と検索条件１４４の変化量の閾値とを比較し、予測値が閾値以上であれば、当該ブロックを最終的な読み出し対象ブロックリストに追加する。
【００７４】
Ｓ２０６以降の処理では、Ｓ２５２により読み出し対象ブロックリストに追加されたブロックに対するデータ伸張、変化量計算等が行われる。
【００７５】
以下、図１２に示すフローチャートに基づいて、ステップＳ２５２の詳細な動作であるデータ処理装置９０１における変化量の予測値を用いた伸張対象となるブロックの絞り込みについて説明する。
【００７６】
ステップＳ４０１において、検索条件最適化部９０７が検索条件１４４から時間幅数を取得する。
ここでは、例えば、検索条件１４４の時間幅数がｋ個である場合を想定する。
また、検索条件最適化部９０７は、前述のように、索引データ９３０から選択変化量９３３を取得する。
そして、検索条件最適化部９０７は、選択変化量９３３と時間幅数ｋを変化量予測部９１２に出力する。
【００７７】
次に、ステップＳ４０２において、変化量予測部９１２が索引データ９３０の選択変化量９３３と時間幅数ｋを取得する。
【００７８】
次に、ステップＳ４０３において、変化量予測部９１２が選択変化量９３３のｍ個の変化量のうち上位からｋ個の変化量を抽出し、ｋ個の変化量を合計し、合計値ｓを変化量の合算値の予測値として検索条件最適化部９０７に通知する。
【００７９】
次に、ステップＳ４０４において、検索条件最適化部９０７がステップＳ４０３で得られた合計値ｓと検索条件１４４で指定されている変化量の閾値とを比較し、合計値ｓが閾値以上であればステップＳ４０５に進み、合計値ｓが閾値未満であればステップＳ４０６へ進み処理を終了する。
【００８０】
ステップＳ４０５では、検索条件最適化部９０７が判定対象となっているブロックＩＤを読み出し対象ブロックリストに追加する。
【００８１】
本実施の形態の動作について、図６の温度センサＡの計測値の例と図７のプラントデータ７２０の例と図９の索引データ９３０の例を用いて、変化量の合算値の予測値による読み出し対象の絞り込みについて説明する。
【００８２】
ここでは、データ検索アプリケーション１４２が、伸張処理対象条件を計測値「２７」以上とし、時間幅「２」の間の変化量の閾値を「１０」以上とする検索条件１４４を指定しているとする。
【００８３】
まず、データ検索アプリケーション１４２がデータ処理装置９０１に対して前述の検索条件１４４を送信し、検索実行部９０６が検索条件１４４を受け付ける。
【００８４】
次に、検索条件最適化部９０７が検索条件から実行計画を作成し、図９に示す索引データ９３０を取得する。
検索条件最適化部９０７は、特徴量９３４と検索条件１４４の「２７」以上の指定を比較し、重なりのあるブロックＩＤ０００１、０００２、０００３を読み出し対象ブロック候補リストに追加する。
【００８５】
変化量予測部９１２が、検索条件最適化部９０７から、検索条件１４４の時間幅数「２」を取得し、また、読み出し対象ブロック候補リストに追加されたブロックの選択変化量９３３を取得する。
変化量予測部９１２は、ブロックごとに、選択変化量９３３から上位２個の変化量を合計して、予測値１２０３（図１３）を求める。
検索条件最適化部９０７は、予測値１２０３と検索条件１４４の変化量の閾値「１０」とを比較し、予測値１２０３が閾値以上となるブロックＩＤ０００２を読み出し対象ブロックリストに追加する。
【００８６】
以上のように、本実施の形態では、圧縮時に保存した選択変化量を用いて検索時に変化量の合算値の予測値を算出し、伸張するブロックの絞り込みを行う。
従来の変化量検索では、時間幅を固定することにより変化量の索引を構築しており、時間幅がパラメータとして与えられる検索条件においては、索引を用いることが困難であったが、本実施の形態を用いることで、動的な時間幅に対して選択変化量による予測値を活用し、圧縮されたデータを伸張することなく、不要なデータ伸張を回避する効果が得られる。
【００８７】
なお、以上では、選択変化量の個数であるｍの値を、検索条件１４４で指定される時間幅数の最大値とする例を説明した。
これに対して、選択変化量の個数ｍを検索条件１４４で指定される時間幅数よりも少ない個数とすることも可能である（但し、ｍ≧２）。
そして、検索条件１４４で指定された時間幅数が選択変化量の個数を上回る場合は、時間幅数を選択変化量の個数で除した除算値を選択変化量の合計値に乗算して、予測値を算出する。
例えば、選択変化量が「７、５」の２つであり、検索条件１４４で指定された時間幅数が「５」である場合は、変化量予測部９１２は、選択変化量の合計値「１２」（７＋５＝１２）に、時間幅数を選択変化量の個数で除した除算値「２．５」（５÷２＝２．５）を乗算して、予測値「３０」（１２×２．５＝３０）を得ることができる。
【符号の説明】
【００８８】
１０１  データ処理装置、１０２  ロード実行部、１０３  データ圧縮部、１０４  特徴量抽出部、１０６  検索実行部、１０７  検索条件最適化部、１０８  データ伸張部、１０９  検索条件判定部、１１０  変化量計算部、１１１  データ格納領域、１２１  圧縮変化量、１２２  圧縮変化量、１３０  索引データ、１４１  データ収集アプリケーション、１４２  データ検索アプリケーション、１４３  入力データ、１４４  検索条件、１４５  検索結果、９０１  データ処理装置、９０２  ロード実行部、９０３  データ圧縮部、９０４  特徴量抽出部、９０５  選択変化量抽出部、９０６  検索実行部、９０７  検索条件最適化部、９０８  データ伸張部、９０９  検索条件判定部、９１０  変化量計算部、９１１  データ格納領域、９１２  変化量予測部、９３０  索引データ。
【図１】
2015133062.tif 000003
【図２】
2015133062.tif 000004
【図３】
2015133062.tif 000005
【図４】
2015133062.tif 000006
【図５】
2015133062.tif 000007
【図６】
2015133062.tif 000008
【図７】
2015133062.tif 000009
【図８】
2015133062.tif 000010
【図９】
2015133062.tif 000011
【図１０】
2015133062.tif 000012
【図１１】
2015133062.tif 000013
【図１２】
2015133062.tif 000014
【図１３】
2015133062.tif 000015
【図１４】
2015133062.tif 000016