(57)【特許請求の範囲】
【請求項１】
計測機器と関連付けられている木構造データを管理するデータ処理装置であって、
各部分木データに関連付けられている計測機器の数が計測値テーブルで計測値を格納できる計測機器の上限数であるテーブル格納機器数以下となるように、前記木構造データを複数の部分木データに分割するデータ分割部と、
前記データ分割部により分割された部分木データが確定状態にあるか否かを判断する状態判断部と、
前記状態判断部により確定状態にあると判断された部分木データに対して、当該部分木データに関連付けられている計測機器からの計測値を格納する計測値テーブルを割り当てるテーブル割り当て部とを有し、
前記状態判断部は、
１つの部分木データに関連付けられている計測機器が他のいずれの部分木データにも関連付けられておらず、当該１つの部分木データに関連付けられている計測機器の数が前記テーブル格納機器数以下である場合に、当該１つの部分木データが第１の確定状態にあると判断し、
１つの部分木データに関連付けられている計測機器のうちの少なくとも１つの計測機器が重複して他の部分木データにも関連付けられ、当該１つの部分木データに関連付けられている計測機器の数と当該他の部分木データに関連付けられている計測機器の数との重複を除去した合計数が前記テーブル格納機器数以下である場合に、当該１つの部分木データと当該他の部分木データとが第２の確定状態にあると判断し、
第１の確定状態及び第２の確定状態のいずれにもないと判断した部分木データを前記データ分割部に更に複数の部分木データに分割させることを特徴とするデータ処理装置。
【請求項２】
前記状態判断部は、
１つの部分木データに関連付けられている計測機器のうちの少なくとも１つの計測機器が重複して他の部分木データにも関連付けられ、当該１つの部分木データに関連付けられている計測機器の数と当該他の部分木データに関連付けられている計測機器の数との重複を除去した合計数が前記テーブル格納機器数を超え、当該１つの部分木データと当該他の部分木データとに重複して関連付けられている計測機器の数が所定数以下である場合であって、当該１つの部分木データと当該他の部分木データとが第１または第２の確定状態にあると判断できる場合に、当該１つの部分木データと当該他の部分木データとが第３の確定状態にあると判断し、
第１の確定状態及び第２の確定状態及び第３の確定状態のいずれにもないと判断した部分木データを前記データ分割部に更に複数の部分木データに分割させることを特徴とする請求項１に記載のデータ処理装置。
【請求項３】
前記データ処理装置は、
複数のノードが含まれる木構造データを管理し、
前記データ分割部は、
前記複数の部分木データとして、根ノードのみの部分木データと、前記根ノードの子ノードを新たな根ノードとする２つ以上の部分木データの各々とに分割し、
前記状態判断部は、
根ノードのみの部分木データを除く全ての部分木データが確定状態になるまで、根ノードのみの部分木データを除く確定状態にない部分木データを前記データ分割部に更に複数の部分木データに分割させることを特徴とする請求項１に記載のデータ処理装置。
【請求項４】
前記データ処理装置は、
計測値の集計の単位となる複数のノードが含まれ、各ノードに対して、計測機器の計測値に直接関連付けられている識別子である実計測点及び実計測点に直接又は間接に関連付けられている識別子である仮想計測点の少なくともいずれかが含まれる、計測値の集計のための計算式が定義されている木構造データを管理し、
前記データ処理装置は、更に、
前記データ分割部により分割された部分木データの根ノードの計算式に含まれる計測点が実計測点１つのみであるか否かを判断し、
前記根ノードの計算式に含まれる計測点が実計測点１つのみでない場合に、集計指示がある前に計測値の集計のための計算を予め行っておくことが必要である旨を示す識別子である代替計測点を前記根ノードに関連付けることを特徴とする代替計測点設定部を有することを特徴とする請求項３に記載のデータ処理装置。
【請求項５】
前記代替計測点設定部は、
前記根ノードの計算式に仮想計測点が含まれる場合に、当該仮想計測点が直接又は間接に関連付いている実計測点を用いて、実計測点のみが含まれ、前記根ノードの計算式と同じ計算結果が得られる代替計算式を生成し、
前記代替計測点に前記代替計算式を関連付けることを特徴とする請求項４に記載のデータ処理装置。
【請求項６】
前記データ処理装置は、更に、
前記代替計測点が関連付けられている根ノードに対して、当該根ノードについての集計指示がある前に計測値の集計のための計算を予め行い、計算結果を前記代替計測点に関連付ける代替計測点計算部を有することを特徴とする請求項４に記載のデータ処理装置。
【請求項７】
前記テーブル割り当て部は、
前記状態判断部により前記第１の確定状態にあると判断された１つの部分木データに、１つの計測値テーブルを割り当て、
前記状態判断部により前記第２の確定状態にあると判断された複数の部分木データに、１つの計測値テーブルを割り当てることを特徴とする請求項１に記載のデータ処理装置。
【請求項８】
前記テーブル割り当て部は、
前記状態判断部により前記第３の確定状態にあると判断された複数の部分木データの各々に、１つの計測値テーブルを割り当て、
前記複数の部分木データに重複して関連付けられている計測機器からの計測値をそれぞれの部分木データの計測値テーブルに格納させることを特徴とする請求項２に記載のデータ処理装置。
【請求項９】
計測機器と関連付けられている木構造データを管理するコンピュータが行うデータ処理方法であって、
前記コンピュータが、各部分木データに関連付けられている計測機器の数が計測値テーブルで計測値を格納できる計測機器の上限数であるテーブル格納機器数以下となるように、前記木構造データを複数の部分木データに分割するデータ分割処理と、
前記コンピュータが、前記データ分割処理により分割された部分木データが確定状態にあるか否かを判断する状態判断処理と、
前記コンピュータが、前記状態判断処理により確定状態にあると判断された部分木データに対して、当該部分木データに関連付けられている計測機器からの計測値を格納する計測値テーブルを割り当てるテーブル割り当て処理とを有し、
前記状態判断処理において、
前記コンピュータが、
１つの部分木データに関連付けられている計測機器が他のいずれの部分木データにも関連付けられておらず、当該１つの部分木データに関連付けられている計測機器の数が前記テーブル格納機器数以下である場合に、当該１つの部分木データが第１の確定状態にあると判断し、
１つの部分木データに関連付けられている計測機器のうちの少なくとも１つの計測機器が重複して他の部分木データにも関連付けられ、当該１つの部分木データに関連付けられている計測機器の数と当該他の部分木データに関連付けられている計測機器の数との重複を除去した合計数が前記テーブル格納機器数以下である場合に、当該１つの部分木データと当該他の部分木データとが第２の確定状態にあると判断し、
前記データ分割処理において、
前記コンピュータが、
前記状態判断処理で第１の確定状態及び第２の確定状態のいずれにもないと判断した部分木データを更に複数の部分木データに分割することを特徴とするデータ処理方法。
【請求項１０】
計測機器と関連付けられている木構造データを管理するコンピュータに、
各部分木データに関連付けられている計測機器の数が計測値テーブルで計測値を格納できる計測機器の上限数であるテーブル格納機器数以下となるように、前記木構造データを複数の部分木データに分割するデータ分割処理と、
前記データ分割処理により分割された部分木データが確定状態にあるか否かを判断する状態判断処理と、
前記状態判断処理により確定状態にあると判断された部分木データに対して、当該部分木データに関連付けられている計測機器からの計測値を格納する計測値テーブルを割り当てるテーブル割り当て処理とを実行させ、
前記状態判断処理において、
前記コンピュータに、
１つの部分木データに関連付けられている計測機器が他のいずれの部分木データにも関連付けられておらず、当該１つの部分木データに関連付けられている計測機器の数が前記テーブル格納機器数以下である場合に、当該１つの部分木データが第１の確定状態にあると判断させ、
１つの部分木データに関連付けられている計測機器のうちの少なくとも１つの計測機器が重複して他の部分木データにも関連付けられ、当該１つの部分木データに関連付けられている計測機器の数と当該他の部分木データに関連付けられている計測機器の数との重複を除去した合計数が前記テーブル格納機器数以下である場合に、当該１つの部分木データと当該他の部分木データとが第２の確定状態にあると判断させ、
前記データ分割処理において、
前記コンピュータに、
前記状態判断処理で第１の確定状態及び第２の確定状態のいずれにもないと判断した部分木データを更に複数の部分木データに分割させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計測機器（センサともいう）の計測結果を管理する技術に関する。
【背景技術】
【０００２】
計測機器により計測された計測データを計測機器の配置、所属または用途などの様々な視点で集計する計測データ管理装置において、実際に計測機器が設置されている実計測点に対して、実際には計測機器が設置されていない仮想計測点を設ける方法が公開されている（例えば特許文献１）。
実計測点は、実在の計測機器により計測される計測データと対応し、仮想計測点は実計測点の計測データの和または按分などを用いて算出される架空の計測データと対応する。
また、時間経過単位、建物単位、場所単位、計測種別単位、用途単位などの管理区分に応じて実計測点の計測データを按分することによって、仮想計測点の計測データを求める方法が公開されている（例えば特許文献２）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許４６４０２１２号公報
【特許文献２】特開２００６−１８５３１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
計測データは時間の経過に従って継続して到着する、同一時間帯に計測された計測データ同士が密に関連する場合も多い、という特性がある。
そのため、計測データをデータベースのテーブルに格納する場合は、テーブルの各列に個々の計測値を対応付け、同一計測時刻の計測値を１レコードにまとめて格納するのが利用に便利である。【０００５】
一方、近年の、計測機器の高性能化・低価格化、ネットワーク帯域の拡大、単位容量当たりのストレージ価格の低下等の技術的な背景を受けて、より多数の計測機器から、より短い収集周期で計測データを収集して、蓄積・保存することが可能となってきている。
また、計測データの利用者からも、それらの計測データを活用するニーズが高まっている。
例えば、電力消費量を収集・分析し省エネルギー対策の効果を高める施策を決定する、機械・設備の状態データを収集・分析して機械・設備の故障を未然に予防する予防保全、等のニーズがある。
上記の様な背景もあって、計測データ管理装置の１システムで管理する計測データは増加して来ている。【０００６】
一般的なデータベース管理システムでは、１テーブルあたりに定義可能な列数は最大１，０００程度である。
そのため、計測機器から発生した、列数の上限をはるかに超える種類の計測データを管理する場合は、テーブルを列方向に分割し、計測データを複数のテーブルに分散して格納する必要が生じる。
計測データを複数のテーブルに分散すると、上記従来技術の様な仮想計測点を利用した集計や、複数種類の計測データを利用する分析を行う場合に、複数のテーブルから計測データを読み出す場合が発生する。
このため、単一のテーブルから計測データを読み出す場合と比較して、集計・分析に要する時間が増加するという課題がある。
基本的に計測データを読み出すテーブルの数が増加するに従って、この時間も増加する。
また、複数のテーブルから計測データを読み出す場合は、ユーザのアプリケーション側で、追加の集計処理などの後処理が必要になる場合もあり、アプリケーションの開発負荷も高くなるという課題もある。【０００７】
この発明は、上記のような課題を解決することを主な目的としており、計測機器の数が多く、複数のテーブルに分散して計測値を格納する場合に、効率的に集計及び分析が行えるように計測値の格納先のテーブルを決定することを主な目的とする。
【課題を解決するための手段】
【０００８】
本発明に係るデータ処理装置は、
計測機器と関連付けられている木構造データを管理するデータ処理装置であって、
各部分木データに関連付けられている計測機器の数が計測値テーブルで計測値を格納できる計測機器の上限数であるテーブル格納機器数以下となるように、前記木構造データを複数の部分木データに分割するデータ分割部と、
前記データ分割部により分割された部分木データが確定状態にあるか否かを判断する状態判断部と、
前記状態判断部により確定状態にあると判断された部分木データに対して、当該部分木データに関連付けられている計測機器からの計測値を格納する計測値テーブルを割り当てるテーブル割り当て部とを有し、
前記状態判断部は、
１つの部分木データに関連付けられている計測機器が他のいずれの部分木データにも関連付けられておらず、当該１つの部分木データに関連付けられている計測機器の数が前記テーブル格納機器数以下である場合に、当該１つの部分木データが第１の確定状態にあると判断し、
１つの部分木データに関連付けられている計測機器のうちの少なくとも１つの計測機器が重複して他の部分木データにも関連付けられ、当該１つの部分木データに関連付けられている計測機器の数と当該他の部分木データに関連付けられている計測機器の数との重複を除去した合計数が前記テーブル格納機器数以下である場合に、当該１つの部分木データと当該他の部分木データとが第２の確定状態にあると判断し、
第１の確定状態及び第２の確定状態のいずれにもないと判断した部分木データを前記データ分割部に更に複数の部分木データに分割させることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、部分木データが第１の確定状態又は第２の確定状態にあるかどうかを判断しながら部分木データの分割を行うため、同時に集計及び分析に利用する計測値を可能な限り同一の計測値テーブルに対応付けることができ、効率的に集計及び分析を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】実施の形態１に係る計測データ管理装置の構成例を示す図。
【図２】実施の形態１に係る計測データ管理システムの構成例を示す図。
【図３】実施の形態１に係る計測データ管理システムの構成例を示す図。
【図４】実施の形態１に係る計測データのフォーマット例を示す図。
【図５】実施の形態１に係る計測値テーブルの例を示す図。
【図６】実施の形態１に係る構成情報の例を示す図。
【図７】実施の形態１に係る構成情報の例を示す図。
【図８】実施の形態１に係る構成情報の例を示す図。
【図９】実施の形態１に係る構成情報木と仮想計測点情報と実計測点と計測値テーブルとの関係を示す図。
【図１０】実施の形態１に係る構成情報テーブルの例を示す図。
【図１１】実施の形態１に係るグループ名称テーブル及びレベル名称テーブルの例を示す図。
【図１２】実施の形態１に係る仮想計測点定義テーブルの例を示す図。
【図１３】実施の形態１に係る計測値テーブル設計情報の例を示す図。
【図１４】実施の形態１に係る代替計測点定義テーブルの例を示す図。
【図１５】実施の形態１に係る計測値テーブル設計情報の生成手順を示すフローチャート図。
【図１６】実施の形態１に係る計測値テーブル設計情報の生成手順を示すフローチャート図。
【図１７】実施の形態１に係る計測点管理情報テーブルの例を示す図。
【図１８】実施の形態１に係る部分構成情報木管理テーブルの例を示す図。
【図１９】実施の形態１に係る部分構成情報木を部分木に分割する手順を示すフローチャート図。
【図２０】実施の形態１に係る計測データ管理装置の運用準備段階を示す図。
【図２１】実施の形態１に係る計測データ管理装置の計測データの収集及び蓄積段階を示す図。
【図２２】実施の形態１に係る計測データ管理装置の計測データの読み出し及び集計段階を示す図。
【図２３】実施の形態１に係る第１の確定状態の例を示す図。
【図２４】実施の形態１に係る第２の確定状態の例を示す図。
【図２５】実施の形態１に係る第３の確定状態の例を示す図。
【図２６】実施の形態１に係る構成情報木の例を示す図。
【図２７】実施の形態１に係る構成情報テーブルの例を示す図。
【図２８】実施の形態１に係る構成情報木の例を示す図。
【図２９】実施の形態１に係る構成情報テーブルの例を示す図。
【図３０】実施の形態１に係る構成情報木と実計測点との関係を示す図。
【図３１】実施の形態１に係る仮想計測点定義テーブルの例を示す図。
【図３２】実施の形態１に係る仮想計測点定義テーブルの例を示す図。
【図３３】実施の形態１に係る一時構成情報テーブルの例を示す図。
【図３４】実施の形態１に係る一時構成情報テーブルの例を示す図。
【図３５】実施の形態１に係る計測点管理情報テーブルの例を示す図。
【図３６】実施の形態１に係る部分構成情報木テーブルの例を示す図。
【図３７】実施の形態１に係る一時構成情報テーブルの更新例を示す図。
【図３８】実施の形態１に係る計測点管理情報テーブルの更新例を示す図。
【図３９】実施の形態１に係る部分構成情報木テーブルの更新例を示す図。
【図４０】実施の形態１に係る一時構成情報テーブルの更新例を示す図。
【図４１】実施の形態１に係る計測点管理情報テーブルの更新例を示す図。
【図４２】実施の形態１に係る部分構成情報木テーブルの更新例を示す図。
【図４３】実施の形態１に係る部分構成情報木テーブルの更新例を示す図。
【図４４】実施の形態１に係る計測データ管理装置のハードウェア構成例を示す図。
【図４５】実施の形態１に係る仮想計測点定義テーブルの更新例を示す図。
【図４６】実施の形態１に係る仮想計測点定義テーブルの更新例を示す図。
【図４７】実施の形態１に係る計測点管理情報テーブルの更新例を示す図。
【図４８】実施の形態１に係る代替点計測点定義の導出手順を示す図。
【発明を実施するための形態】
【００１１】
実施の形態１．
本実施の形態では、計測機器の数が多く、計測データの種類がデータベース管理システムの１テーブルの最大列数よりもはるかに多い場合に、同時に集計及び分析に利用する計測データを可能な限り同一のテーブルに対応付けることにより、集計実行時の実行時間及び分析実行時の実行時間の増加を抑止し、ユーザのアプリケーション開発負荷を削減することができる計測データ管理装置を説明する。
【００１２】
本実施の形態に係る計測データ管理装置１００は、図１に例示する構成を有する。
なお、図１に示す計測データ管理装置１００の構成要素の各々の詳細は、後述する。
計測データ管理装置１００は、データ処理装置の例に相当する。
【００１３】
また、本実施の形態に係る計測データ管理装置１００は、図２、図３に示すように、計測機器２０１、拠点装置２１０、操作端末２２０とともに、計測データ管理システム２００を構成する。
なお、図２、図３に示す計測機器２０１、拠点装置２１０、操作端末２２０の詳細は、後述する。
【００１４】
本実施の形態に係る計測データ管理装置１００の構成及び動作の詳細を説明する前に、先ず、計測データ管理装置の動作の概要を説明する。
【００１５】
計測データ管理装置１００の動作は、以下の３種類の過程に分かれる。
（１）運用準備
（２）計測データの収集及び蓄積
（３）計測データの読み出し及び集計
【００１６】
（１）運用準備
運用準備段階では、センサデータの収集及び蓄積や、読み出し及び集計等の実運用の開始に先立ち、準備として以下の処理が実行される（図２０）。
ユーザが仮想計測点情報入出力部１１１を用いて、仮想計測点定義テーブル１４１を計測データ管理装置１００に設定する（Ｓ１１）。
ユーザが構成情報入出力部１１２を用いて、構成情報テーブル１４２を計測データ管理装置１００に設定する（Ｓ１２）。
計測値テーブル設計部１２１が、仮想計測点定義テーブル１４１及び構成情報テーブル１４２に基づき、計測値テーブル設計情報１４３を生成する（Ｓ１３）。
この時、計測値テーブル設計部１２１は、必要に応じて仮想計測点定義テーブル１４１に代替計測点の情報を記述する。
代替計測点は後述する。
このステップＳ１３により、実計測点と計測値テーブル１４４（複数）の列との対応関係が決定される。
計測値テーブル定義部１２２が、計測値テーブル設計情報１４３に基づき、計測値テーブルを生成（ＣＲＥＡＴＥ）する（Ｓ１４）。
なお、本実施の形態では、主に、Ｓ１３の処理を説明する。
【００１７】
（２）計測データの収集及び蓄積
通常運用が開始されると、各実計測点に対応した計測機器から計測データが収集され、計測値が計測値テーブル１４４に蓄積される。
計測データの収集及び蓄積では、具体的には以下の処理が実行される（図２１）。
各計測機器２０１において、繰り返し（多くの場合定期的に）データが計測される（Ｓ２１）。
計測データは、拠点装置２１０を介して計測データ管理装置１００に収集される。
収集された計測データは、計測データ管理装置１００の計測データ収集蓄積部１３１に書き込まれる（Ｓ２２）。
計測データ収集蓄積部１３１は、計測値テーブル設計情報１４３に基づき、計測値の格納先の計測値テーブル１４４と列を決定し、該当する列に計測データの計測値を書き込む（Ｓ２３）。
また、計測データの実計測点ＩＤに関連する代替計測点が定義されている場合は、該当する列に計測データが書き込まれる。
代替計測点は後述する。
【００１８】
（３）計測データの読み出し及び集計
通常運用が開始され、計測データの計測値が計測値テーブル１４４に蓄積されると、必要に応じて計測データの読み出し及び集計が行われ、計測データ管理装置１００のユーザが、計測データを利用する。
計測データの読み出し及び集計では、具体的には以下の処理が実行される（図２２）。
ユーザが、仮想計測点名称や計測データの計測時刻の期間を指定して、操作端末２２０から、計測データ管理装置１００に対して、計測データの読み出しを要求する（Ｓ３１）。
仮想計測データ演算部１３２は、指定された仮想計測点名称から、ユーザが所望する計測データを得るための実計測点のリストを、仮想計測点定義テーブル１４１に基づき取得する（Ｓ３２）。
この時、ある仮想計測点に対して、代替計測点が定義されており、その代替計測点と他の実計測点の計測データが同一テーブルに割り付いている場合は、仮想計測データ演算部１３２は、代替計測点に対応する列から計測データを読み出す（Ｓ３２）。
そして、仮想計測データ演算部１３２は、仮想計測点定義に従って算出した計測データを操作端末２２０に出力する（Ｓ３３）。
【００１９】
なお、計測値テーブル設計部１２１は、データ分割部、状態判断部、テーブル割り当て部及び代替計測点設定部の例に相当する。
また、計測データ収集蓄積部１３１は、代替計測点計算部の例に相当する。
【００２０】
次に、（１）運用準備（図２０のＳ１３）を、より詳細に説明する。
【００２１】
本実施の形態に係る計測データ管理装置１００は、図９に例示するような、木構造データである構成情報木７００及び構成情報木７１０を管理している。
また、計測データ管理装置１００は、計測値テーブル１４４を管理している。
計測値テーブル１４４には、複数の計測機器２０１で計測された計測値が格納されている。
構成情報木７００及び構成情報木７１０は、それぞれ、複数のノードによる階層構造を持つ。
各ノードは、計測値の集計の単位となる。
各ノードには、集計の計算のための計算式が定義されており、その計算式には、０個以上の実計測点と０個以上の仮想計測点が含まれる。
実計測点は、計測値テーブル１４４の計測値に直接関連付けられている識別子であり、仮想計測点は、実計測点に直接又は他の仮想計測点を介して間接に関連付けられている識別子である。
つまり、各ノードは、実計測点及び仮想計測点を介して、計測機器と関連付けられている。
図９では、７２１、７２２、７２３が仮想計測点であり、７３１、７３２、７３３が実計測点である。
計測値テーブル１４４の列数、すなわち、計測値テーブル１４４で計測値を格納できる計測機器の数（テーブル格納機器数）は有限であり、実計測点の数（すなわち、計測機器の数）が計測値テーブル１４４の列数を超える場合がある。
実計測点の数が計測値テーブル１４４の列数を超える場合には、複数の計測値テーブル１４４を用いる必要がある。
本実施の形態に係る計測データ管理装置１００は、計測値を複数の計測値テーブル１４４のうちのどの計測値テーブル１４４に格納するのかを決定する。
【００２２】
本実施の形態に係る計測データ管理装置１００では、計測値テーブル設計部１２１が、部分構成情報木（部分木データ又は部分木ともいう）に関連付けられている計測機器の数が計測値テーブル２１４の列数以下となるように、構成情報木７００及び構成情報木７１０をそれぞれ複数の部分構成情報木に分割する。
例えば、構成情報木７００については、計測値テーブル設計部１２１は、ノード７０１のみの部分構成情報木と、ノード７０２ａを根ノードとする部分構成情報木と、７０２ｂを根ノードとする部分構成情報木に分割する。
ノード７０２ａの部分構成情報木に関連付けられている計測機器の数が計測値テーブル２１４の列数以下であれば、この部分構成情報木の更なる分割は行わない。
一方、ノード７０２ｂの部分構成情報木に関連付けられている計測機器の数が計測値テーブル２１４の列数を超えている場合は、この部分構成情報木を、例えば、ノード７０２ｂのみの部分木と、ノード７０３ａを根ノードとする部分構成情報木と、ノード７０３ｂを根ノードとする部分構成情報木とに分割する。
全ての部分構成情報木に関連付けられている計測機器の数が計測値テーブル２１４の列数以下となったら、計測値テーブル設計部１２１は、各部分構成情報木が確定状態にあるか否かを判断する。
そして、計測値テーブル設計部１２１は、確定状態にある部分構成情報木に対して、当該部分構成情報木に関連付けられている計測機器からの計測値を格納する計測値テーブルを割り当てる。
確定状態にない部分構成情報木に対しては、計測値テーブル設計部１２１は、当該部分構成情報木を更に複数の部分構成情報木に分割する。
【００２３】
本実施の形態では、２種類の確定状態がある。
計測値テーブル設計部１２１は、１つの部分木に関連付けられている計測機器が他のいずれの部分木にも関連付けられておらず、当該１つの部分木に関連付けられている計測機器の数が計測値テーブルの列数以下である場合に、当該１つの部分木が第１の確定状態にあると判断する。
また、計測値テーブル設計部１２１は、１つの部分木に関連付けられている計測機器のうちの少なくとも１つの計測機器が重複して他の部分木にも関連付けられ、当該１つの部分木に関連付けられている計測機器の数と当該他の部分木に関連付けられている計測機器の数との重複を除去した合計数（ユニークな合計数）が計測値テーブルの列数以下である場合に、当該１つの部分木と当該他の部分木とが第２の確定状態にあると判断する。
【００２４】
図２３の部分木１１０１、１１０２は、第１の確定状態にある。
部分木１１０１に関連付いている実計測点１〜５は、部分木１１０１にのみ関連付いており、また、計測値テーブルの列数８以下である。
同様に、部分木１１０２に関連付いている実計測点６〜１１は、部分木１１０２にのみ関連付いており、また、計測値テーブルの列数８以下である。
このため、図２３の部分木１１０１、１１０２は、第１の確定状態にある。
【００２５】
図２４の部分木１１１１、１１１２は、第２の確定状態にある。
部分木１１１１に関連付いている実計測点は１〜６であり、部分木１１１２に関連付いている実計測点は、２〜７である。
実計測点２〜６は部分木１１１１と部分木１１１２の双方に関連付いているので、この重複を除去してカウントすると、部分木１１１１に関連付いている実計測点の数と部分木１１１２に関連付いている実計測点の数の合計数は、実計測点１〜７の７つである。
７つの実計測点数は、計測値テーブルの列数８以下である。
このため、図２４の部分木１１１１、１１１２は、第２の確定状態にある。
【００２６】
また、本実施の形態に係る計測値テーブル設計部１２１は、根ノード（図２３のノードＲ）の計算式に１つの実計測点以外の計測点が含まれる場合（２つ以上の実計測点が含まれる場合、実計測点と仮想計測点との組合せが含まれる場合、仮想計測点のみが含まれる場合）に、根ノードに代替計測点を関連付ける。
代替計測点は、ユーザからの集計指示がある前に計測値の集計のための計算を予め行っておくことが必要である旨を示す識別子である。
また、根ノード（図２３のノードＲ）の計算式に仮想計測点が含まれる場合（実計測点と仮想計測点との組合せが含まれる場合、仮想計測点のみが含まれる場合）に、計測値テーブル設計部１２１は、当該仮想計測点が直接又は間接に関連付いている実計測点を用いて、実計測点のみが含まれ、根ノードに定義されている計算式と同じ計算結果が得られる代替計算式を生成し、代替計算式を代替計測点に関連付ける。
そして、計測データ収集蓄積部１３１は、代替計測点が関連付けられている根ノードに対して、当該根ノードについての集計指示がある前に計測値の集計のための計算を予め行い、計算結果を代替計測点に関連付けておく。
このようにすることで、ユーザから根ノードについての集計指示があった時点では集計値が計算済みであるため、遅延なくユーザに集計値を提示することができる。
【００２７】
以上の概要説明をもとに、本実施の形態に係る計測データ管理装置１００の構成及び動作の詳細を説明する。
【００２８】
図１は、実施の形態１における計測データ管理装置１００の機能構成図である。
実施の形態１における計測データ管理装置１００の機能構成について、図１に基づいて説明する。
【００２９】
計測データ管理装置１００は、各種の計測データを管理するコンピュータ装置である。
計測データ管理装置１００は、大きくは、仮想計測点管理部１１０、計測値テーブル管理部１２０、計測データ管理部１３０、データ記憶部１４０を備える。
【００３０】
仮想計測点管理部１１０は、仮想計測点情報入出力部１１１と構成情報入出力部１１２とを備える。
仮想計測点情報入出力部１１１は、ユーザからの仮想計測点情報の入力を受け付け、仮想計測点定義テーブル１４１に仮想計測点情報を格納する。
構成情報入出力部１１２は、ユーザからの構成情報の入力を受け付け、データ記憶部１４０の構成情報テーブル１４２に構成情報を格納する。
また、仮想計測点情報入出力部１１１は、ユーザからの要求に従って、仮想計測点情報を仮想計測点定義テーブル１４１から読み出し、読み出した仮想計測点情報を出力する。
また、構成情報入出力部１１２は、ユーザからの要求に従って、構成情報を構成情報テーブル１４２から読み出し、読み出した構成情報を出力する。
これらの仮想計測点情報、構成情報、仮想計測点定義テーブル１４１、構成情報テーブル１４２については後述する。
【００３１】
計測値テーブル管理部１２０は、計測値テーブル設計部１２１と計測値テーブル定義部１２２を備える。
計測値テーブル設計部１２１は、仮想計測点定義テーブル１４１、構成情報テーブル１４２に記録された情報に基づき、計測値テーブル１４４の設計情報を生成し、生成した設計情報を計測値テーブル設計情報１４３として記録する。
また、計測値テーブル定義部１２２は、計測値テーブル設計情報１４３に基づき、実際に計測値テーブル１４４を生成する。
【００３２】
計測データ管理部１３０は、計測データ収集蓄積部１３１、仮想計測データ演算部１３２、計測データ出力部１３３から構成される。
計測データ収集蓄積部１３１は、各種計測機器から収集された計測データの入力を受け付け、計測値テーブル１４４に格納する。
仮想計測データ演算部１３２は、仮想計測点定義テーブル１４１の仮想計測点定義に基づき、仮想計測点の計測データを算出する。
計測データ出力部１３３は、ユーザからの集計などの計測データの読み出し要求に従って、計測値テーブル１４４から計測データを読み出し、読み出した計測データをユーザに出力する。
【００３３】
データ記憶部１４０は、仮想計測点定義テーブル１４１、構成情報テーブル１４２、計測値テーブル設計情報１４３、計測値テーブル１４４等の各種データを記憶する。
【００３４】
計測データ管理装置１００の各機能部は、１台のコンピュータ装置上に実現されていてもよいし、ネットワークで接続された複数のコンピュータ装置上に分散して実現されていてもよい。
【００３５】
図２、図３は、実施の形態１における計測データ管理システム２００の構成例を示す図である。
実施の形態１における計測データ管理システム２００の構成例について、図２および図３に基づいて説明する。
【００３６】
図２に示す計測データ管理システム２００は、計測データ管理装置１００の他に、ネットワークを介して計測データ管理装置１００に接続する１台以上の拠点装置２１０および１台以上の操作端末２２０を備える。
但し、計測データ管理装置１００が操作端末２２０の機能（アプリケーション実行部２２１）を備える場合、計測データ管理システム２００は操作端末２２０を備えなくても構わない。
【００３７】
拠点装置２１０は、計測値（例：消費電力、電圧、水消費量、温度など）を含んだ計測データを計測データ管理装置１００へ送信するコンピュータまたは通信装置である。
拠点装置２１０は、計測データ受信部２１１と、計測データ送信部２１２と、拠点装置記憶部２１９とを備える。
計測データ受信部２１１は、計測値を計測する各計測機器２０１（例：分電盤、電圧計、水道メータ、温度計など）から計測値を含んだ計測データを受信する。
計測データ送信部２１２は、計測データ受信部２１１によって受信された計測データを計測データ管理装置１００へ送信する。
拠点装置記憶部２１９は、計測データ受信部２１１によって受信された計測データなど、拠点装置２１０で使用するデータを記憶する。
【００３８】
操作端末２２０は、計測値の集計処理など、ユーザから要求される処理を行うためのアプリケーションプログラム（以下、アプリケーションという）を実行する装置（コンピュータ）である。
操作端末２２０は、アプリケーションを実行するアプリケーション実行部２２１と、操作端末２２０で使用するデータを記憶する操作端末記憶部２２９とを備える。
例えば、操作端末２２０のアプリケーション実行部２２１は、アプリケーションを実行することによって、次のように動作する。
アプリケーション実行部２２１は、計測データ管理装置１００に対して計測値を要求し、計測データ管理装置１００から計測値を取得し、取得した計測値に関する集計処理を実行する。
【００３９】
計測データ管理装置１００の計測データ収集蓄積部１３１（図１参照）は、計測データ管理装置１００に接続する各拠点装置２１０から計測値を含んだ計測データを収集し、収集した計測データを計測値テーブル１４４に格納する。
【００４０】
図２に示す計測データ管理システム２００は、各拠点装置２１０が計測データ管理装置１００に接続したスター型で構成されている。但し、計測データ管理システム２００は、図３に示すように各拠点装置２１０が階層的に接続したツリー型の構成、または、その他の接続形態で計測データ管理装置１００と各拠点装置２１０とが接続した構成であっても構わない。
図３に示す計測データ管理システム２００において、拠点装置２１０Ａはネットワークを介して接続している下位の拠点装置２１０Ｂ、２１０Ｃから計測データを収集し、収集した計測データを計測データ管理装置１００へ送信する。
【００４１】
図４は、本実施の形態に係る計測データの基本的な構造を示す図である。
実施の形態１の計測データ４００は、少なくとも、実計測点ＩＤ４０１、計測時刻４０２、計測値４０３を含んでいる。
実計測点ＩＤ４０１は、計測機器２０１または計測機器２０１が設置されている場所を一意に識別するための識別子である。
以降、計測機器２０１または計測機器２０１が設定されている場所を「実計測点」と呼ぶ。
また、実計測点ＩＤを「＄ｘ」の形式で表現する。
ここで「ｘ」は任意の整数値である。
計測時刻４０２は、計測値が計測された日時を示す。
計測時刻４０２は、各計測機器２０１や各拠点装置２１０によって設定される。
計測値４０３は、計測機器２０１によって計測された計測値を示す。
【００４２】
図５は、実施の形態１における計測値テーブル１４４を示す図である。
計測値テーブル１４４の各レコード（行）は、行番号５０１、計測時刻５０２、及び同一時刻に計測された複数の計測値５０３Ａ〜５０３Ｅから構成される。
行番号５０１は、同一時刻に計測された計測値を識別する番号である。
計測時刻５０２は、計測時刻４０２に相当するが、多少の誤差を含んでいてもよい。
計測時刻４０２は、各計測機器２０１や拠点装置２１０の時計のずれにより、誤差が生じる場合がある。
その場合、許容される誤差の範囲で計測時刻４０２を丸め、同じ計測時刻５０２の計測データとする処理が必要となる。
例えば、予め許容される誤差を１００ミリ秒と設定しておき、「２０１３／４／１  １８：００：００．０００」〜「２０１３／４／１  １８：００：００．０９９」の計測時刻４０２に含まれる複数の計測データを、計測時刻５０２が「２０１３／４／１  １８：００：００．０００」の計測データとして同一のレコードにまとめる。
なお、本実施の形態において、計測時刻４０２の誤差の丸め方式は本質的な問題ではないため、詳細は省略する。
計測値５０３のいずれかに、計測値４０３が格納される。
その対応関係は、後述する計測値テーブル設計情報１４３に基づき決定される。
【００４３】
本実施の形態では、仮想計測点を設定する対象となる対象物の構成を表すため、階層構造をもった構成情報を持つことを前提としている。
この階層構造は、例えば図６に示すような木構造として表現することができ、このような階層構造を持った情報を、ここでは、構成情報木と呼ぶこととする。
この階層関係は親子関係または上下関係ともいう。
構成情報木には、図６、図７、図８の例に示す様に複数の種類（視点）がある。
【００４４】
図９は、構成情報木７００、７１０、仮想計測点情報７２０、実計測点情報７３０、計測値テーブル１４４に格納された計測値５０３の関係を説明する図である。
構成情報は、構成情報木７００、７１０のように複数の構成情報木を持つ。
構成情報木は、構成情報ノードと呼ぶノードから構成される木構造である。
構成情報ノードは、親ノードと子ノードを持つ通常ノード７０２、７０３と、親ノードを持たない根ノード７０１と、子ノードを持たない葉ノード７０４、７１１により構成される。
各構成情報ノードは、仮想計測点情報７２０の中の１個の仮想計測点（例えば７２２）と関連付けられる。
構成情報ノード７０４と７１１のように複数の構成情報ノードが１個の仮想計測点７２３を指すことがある。
【００４５】
また、仮想計測点情報７２０に含まれる仮想計測点は、１個以上の実計測点情報７３０に含まれる実計測点（例えば７３１）、または１個以上の仮想計測点と関連づいている。
例えば、仮想計測点７２２は、実計測点７３１、７３２の２個の実計測点と関連付いている。
また、仮想計測点７２１の様に仮想計測点（ここでは仮想計測点７２２）だけと関連付くこともあれば、仮想計測点７２３の様に、実計測点７３３と仮想計測点の両方と関連付く場合もある。
このように、仮想計測点は、実計測点に直接又は他の仮想計測点を介して間接に関連付けられている識別子である。
【００４６】
さらに、実計測点情報７３０に含まれる実計測点７３１は、計測値テーブル１４４の１列以上の計測値５０３と関連付けられる。
実計測点は、このように、計測機器の計測値に直接関連付けられている識別子である。
【００４７】
図６を用いて、構成情報木の例を示す。
構成情報木は、仮想計測点を設ける対象となる対象物の構成要素を表すノード（図６中の角丸四角形）と、構成要素同士の階層関係を表すエッジ（ノード同士を結んだ線）とを備える木構造である。
木構造の頂点に位置するノード（例えば、図６中の「会社」ノード）が、根ノードであり、最上位の親ノードである。
また、木構造の末端に位置するノード（例えば、図６中の「一係」ノード）が、葉ノードであり、最下位の子ノードである。
【００４８】
図６は、仮想計測点を設ける対象となる「組織」の構成を表す構成情報木である。
「会社」ノード６０１は、会社全体を表している。
「会社」は「管理部門」６０２、「○事業部門」６０３、「△事業部門」６０４等の複数の「部門」から構成される。
管理部門６０２は、「人事部」６０５、「総務部」６０６、「経理部」６０７等の複数の「部」から構成されている。
人事部６０５は、「人事課」６０８、「研修課」６０９等の複数の「課」から構成されている。
各ノード「会社」６０１、「管理部門」６０２、「人事部」６０５、「人事課」６０８等は、それぞれ仮想計測点の一例である。
【００４９】
図７は、仮想計測点を設ける対象となる「配置」の構成を表す構成情報木の一例である。
【００５０】
図８は、仮想計測点を設ける対象となる「機器」の構成を表す構成情報木の一例である。
【００５１】
図１０及び図１１は、実施の形態１における構成情報テーブル１４２を示す図である。
構成情報テーブル１４２は、仮想計測点を設ける対象となる対象物を表す構成情報を示すデータの一例である。
図１０及び図１１に示す構成情報テーブル１４２は、図６〜図８に示した構成情報木に関する構成情報を含んでいる。
【００５２】
構成情報テーブル１４２は、「ノードＩＤ」「親ＩＤ」「グループＩＤ」「レベル」「仮想計測点ＩＤ」「ノード名称」を対応付けたレコードを備える。
「ノードＩＤ」は、構成情報ノードを識別する識別子を示す。
「親ＩＤ」は、当該構成情報ノードと親子関係にある親ノードを識別する識別子を示す。
「親ＩＤ」が「ｎｕｌｌ」の場合、当該ノードは根ノードを意味する。
「グループＩＤ」は、構成情報木を識別する識別子を示す。
「レベル」は、当該構成情報ノードが位置している階層の深さ（レベル）を示す。
根ノードのレベルを「１」とし、下位に向かって１階層下がる毎に数値が１ずつ増加する。
「仮想計測点ＩＤ」は、当該構成情報ノードに対応付けられた仮想計測点を識別する識別子を示す。
以下、仮想計測点ＩＤを「＃ｘ」と記す。
ここで、「ｘ」は任意の整数値である。
「ノード名称」は、当該構成情報ノードの内容を表すノード名を示す。
【００５３】
例えば、図６に示した「会社」ノードのノードＩＤは「１」であり、グループＩＤは「１」であり、レベルは「１」であり、仮想計測点ＩＤは「＃１」である。
また、「管理部門」ノードのノードＩＤは「２」であり、親ＩＤは「１」（すなわち「会社」ノード）であり、グループＩＤは「１」であり、レベルは「２」であり、仮想計測点ＩＤは「＃２」である。
【００５４】
構成情報テーブル１４２は、構成情報木の内容を表すグループ名を定義したグループ名称テーブル１４２Ａと、構成情報木の各階層の内容を表すレベル名称を定義したレベル名称テーブル１４２Ｂとに関連付けられている（いずれも図１１）。
【００５５】
グループ名称テーブル１４２Ａは、「グループＩＤ」「グループ名称」を対応付けたレコードを備える。
例えば、図６に示した構成情報木はグループＩＤ「１」で識別され、会社内の「組織」を表している。
また、図７に示した木構造はグループＩＤ「２」で識別され、会社内の「配置（場所）」を表している。
【００５６】
レベル名称テーブル１４２Ｂは、「グループＩＤ」「レベル」「レベル名称」を対応付けたレコードを備える。
例えば、図６に示した木構造内のレベル「１」の階層は「会社」全体を表し、レベル「２」の階層は、会社内の「部門」を表している。
また、図７に示した木構造内のレベル「１」の階層は「配置」全体を表し、レベル「２」の階層は会社内の事業所がある「地区」を表し、レベル「３」の階層は会社内の「事業所」を表している。
【００５７】
図１２は、実施の形態１における仮想計測点定義テーブル１４１を示す図である。
仮想計測点定義テーブル１４１は、実計測点に対応付けて仮想計測点を定義したデータの一例である。
仮想計測点定義テーブル１４１は、「仮想計測点ＩＤ」９０１、「仮想計測点名称」９０２、「仮想計測点定義」９０３、「代替計測点フラグ」９０４を対応付けたレコードを備える。
「仮想計測点ＩＤ」９０１は、仮想計測点を識別する識別子を示す。
「仮想計測点ＩＤ」９０１は、構成情報テーブル１４２の仮想計測点ＩＤ８０５に相当する。
「仮想計測点名称」９０２は、仮想計測点の内容を表す仮想計測点名を示す。
仮想計測点名称は、ノード名称と一致していなくても良い。
「仮想計測点定義」９０３は、実計測点または他の仮想計測点に対応付けて仮想計測点の定義を示す。
「代替計測点フラグ」９０４は、仮想計測点定義に代替計測点を含むか否かのフラグを示す。
【００５８】
例えば、仮想計測点「＃１」は、会社全体の消費電力を意味する「全社電力」に関連付けられている。
特に会社全体の様な大規模な組織の場合、その消費電力を直接計測するための計測機器は存在せず、「全社電力」は実際には設けられていない仮想的な計測点である。
そこで、仮想計測点「＃１」の消費電力は、下位の組織の仮想計測点「＃２」（管理部門電力）の消費電力と「＃１０」（○事業部門電力）の消費電力と「＃２０」（△事業部門電力）の消費電力との和と等しい。
すなわち、仮想計測点「＃１」は「＃２＋＃１０＋＃２０」という定義式で定義される。
【００５９】
仮想計測点「＃２０１」は、建屋「東京第１棟」全体の消費電力を制御する「東京第１棟変電設備」に関連付けられている。
仮想計測点「＃２０１」の消費電力は、東京第１棟変電設備を表す実計測点「＄１」で計測された消費電力に等しい。
【００６０】
ここで、仮想計測点「＃１」の仮想計測点定義には、定義式「＃２＋＃１０＋＃２０」の他に、代替計測点「％１」が定義している。
代替計測点とは、本来の仮想計測点定義式または実計測点の他に、その仮想計測点の計測値を読み出すための列が、計測値テーブル１４４に定義されている計測点である。
すなわち、代替計測点が定義されている場合は、実計測点同様に、計測値テーブル１４４の対応する列から直接計測値を読み出すことができる。
仮想計測点定義に、代替計測点が定義されているか否かは、代替計測点フラグ９０４にも設定する。
代替計測点の詳細は後述する。
以下、代替計測点の識別子である代替計測点ＩＤを「％ｘ」と記すこととする。
ここで、「ｘ」は任意の整数値である。
図１２では、代替計測点「％１」、「％２」、「％３」及び「％４」が記述されているが、代替計測点は運用段階のＳ１３（図２０）において計測値テーブル設計部１２１が設定するので、代替計測点「％１」、「％２」、「％３」及び「％４」は、Ｓ１３の処理が行われた後に、計測値テーブル１４４に記述される。
【００６１】
図１３は、実施の形態１における計測値テーブル設計情報１４３を示す図である。
計測値テーブル設計情報１４３は、実計測点または代替計測点と、計測値テーブル１４４との対応関係を定義したデータの一例である。
計測値テーブル設計情報１４３は、「計測点ＩＤ」１００１、「ＤＢサーバ名」１００２、「データベース名」１００３、「テーブル名」１００４、「列名」１００５、「データ型」１００６を対応付けたレコードを備える。
「計測点ＩＤ」１００１は、実計測点ＩＤまたは代替計測点ＩＤを示す。
「ＤＢサーバ名」１００２は、計測値テーブル１４４が定義されているデータベース管理システムが存在するサーバ名を示す。
「データベース名」１００３は、計測値テーブル１４４が定義されているデータベース名を示す。
「テーブル名」１００４は、計測値テーブル１４４の実際のテーブル名を示す。
なお、「ＤＢサーバ名」１００２、「データベース名」１００３、「テーブル名」１００４は例であり、実計測点または代替計測点と対応づく計測値テーブル１４４のテーブルが一意に特定できる情報が設定されていればよい。
「列名」１００５は、実計測点または代替計測点の計測値が格納されている計測値テーブル１４４上の列名を示す。
「データ型」１００６は、計測値のデータ型を示す。
【００６２】
図１４は、実施の形態１における計測値テーブル設計情報１４３に付属する、代替計測点定義テーブル１４３Ａを示す図である。
代替計測点定義テーブル１４３Ａは、「代替計測点ＩＤ」１０１１、「代替計測点定義」１０１２を対応付けたレコードを備える。
「代替計測点ＩＤ」１０１１は、代替計測点ＩＤを示す。
「代替計測点定義」１０１２は、代替計測点の計測データを算出するための代替計測点定義を示す。
代替計測点定義は、単一の実計測点の計測データ、または実計測点と代替計測点の計測データの演算式からなる。
代替計測点定義の詳細は後述する。
【００６３】
大規模なビルや、組織など、そこで利用されている計測機器の数が多い場合は、ひとつの構成情報木に関連付いた実計測点の数が、計測値テーブル１４４の１テーブルの列数の上限よりもはるかに多くなる場合がある。
その場合は、テーブルを列方向に分割して、実計測点の計測データを複数のテーブルに分散して管理する対策が考えられる。
このとき、どの実計測点の計測データを、どのテーブルに格納するかの方法として、ある一つの構成情報木に着目して、その部分木の単位でテーブルを分割する方法が考えられる。
例えば、「配置」の構成情報に着目し、構成情報木を「事業所」毎の部分木に分割し、「東京事業所」に関連する計測データを格納するテーブルと、「神奈川事業所」に関連する計測データを格納するテーブルと、「埼玉事業所」に関連する計測データを格納するテーブルに分割する。
この場合、計測値の集計及び分析の範囲が事業所内に納まっている場合は、集計及び分析処理の効率低下の問題は発生しない。
一方で、「配置」以外の構成情報に従って集計及び分析を行おうとした場合に集計及び分析処理の効率が低下する場合がある。
【００６４】
図９に示したように、１個の仮想計測点や実計測点は、複数の構成情報木と関連付く場合がある。
実際の場合、ほとんどの仮想計測点や実計測点が、複数の構成情報木と関連付くことが考えられる。
ここで、仮に「○事業部門」に属する各部が全国各地の事業所に存在した場合、「○事業部門」に関する計測データの集計及び分析のために複数の計測値テーブル１４４からの計測値の読み出しが必要となる。
また、構成情報木の上位のノードに対応した仮想計測点の場合、例えば上記の「配置」の構成情報に着目して計測値テーブル１４４を分割した場合の「会社」や「関東地区」の場合、その計測データを仮想計測点定義式により算出する場合は、常に複数の計測値テーブル１４４からの計測値の読み出しが必要となる。
このような、集計及び分析に必要な計測データが複数の計測値テーブル１４４に分散している状態を、ここでは計測データの断片化と呼ぶこととする。
【００６５】
計測値テーブル設計部１２１は、このような計測データの断片化を抑止するような、計測値テーブル１４４の設計情報を生成する。
【００６６】
前提として、ここでは仮想計測点情報と構成情報が予め作成され、それぞれ仮想計測点定義テーブル１４１と構成情報テーブル１４２に格納されているものとする。
なお、代替計測点は計測値テーブル設計部１２１が定義するため、この時点で仮想計測点定義には代替計測点は定義されていない状態である。
また、計測値テーブル設計情報１４３には、実計測点の「計測点ＩＤ」１００１と、「データ型」１００６は設定されているものとする。
【００６７】
ここでは、以下の様に定義する。
Ｃ：計測値テーブル１４４の１テーブルの中で、計測データを格納可能な列数
木のサイズ：その木に含まれる全ノードの数
木の実サイズ：その木に関連付くユニークな実計測点及び代替計測点の数
【００６８】
図１５及び図１６に基づき、実施の形態１における計測値テーブル設計部１２１の動作（図２０に示すＳ１３の動作）を説明する。
図１５及び図１６は、実施の形態１における、計測値テーブル設計部１２１での、計測値テーブル設計情報１４３の生成処理の流れを示すフローチャートである。
【００６９】
（ステップＳ１１０１）計測値テーブル設計部１２１は、作業用の記憶装置に、構成情報テーブル１４２のコピーである一時構成情報テーブルを生成する。
また、計測値テーブル設計部１２１は、計測点管理情報テーブル、部分構成情報木管理テーブルを作成及び初期化する。
これらのテーブルは、計測値テーブル設計部１２１が独自に備える一時記憶装置に作成してもよいし、計測データ管理装置１００上の一時記憶装置上に作成してもよい。
【００７０】
ここで、一時構成情報テーブルは、部分構成情報木の状態を管理するために使用する。
【００７１】
図１７は、ステップＳ１１０１で生成される計測点管理情報テーブル１２００の例を示す図である。
計測点管理情報テーブル１２００は、「計測点ＩＤ」１２０１と、「自ノードＩＤ」１２０２、「根ノードＩＤ」１２０３、「列名」１２０４、「代替計測点定義」１２０５を対応付けたレコードを備える。
「計測点ＩＤ」１２０１は、実計測点ＩＤまたは代替計測点ＩＤを示す。
「自ノードＩＤ」１２０２は、「計測点ＩＤ」１２０１により指定される実計測点ＩＤを直接含む仮想計測点定義を持つ仮想計測点に関連付いた全てのノードのノードＩＤを示す。
例えば、図１２の仮想計測点定義テーブル１４１において、仮想計測点ＩＤ「＃２０１」の仮想計測点定義９０３は「＄１」であり、直接実計測点ＩＤを含んでいる。
その場合、構成情報テーブル１４２から、仮想計測点ＩＤ「＃２０１」に関連付くノードＩＤ  ８０１として「２０１」を抽出し、「自ノードＩＤ」１２０２に設定する。
一方、図１２の仮想計測点定義テーブル１４１において、仮想計測点ＩＤ「＃１」の仮想計測点定義９０３は、全て仮想計測点の計測データの演算式からなるため、実計測点ＩＤを直接含まない。
図１７の計測点管理情報テーブル１２００の「根ノードＩＤ」１２０３は、「計測点ＩＤ」１２０１により指定される実計測点または代替計測点が関連付く部分構成情報木の根ノードＩＤを示す。
実計測点または代替計測点が、複数の部分構成情報木に関連付く場合は、根ノードＩＤには、その関連付く全ての部分構成情報木の根ノードのノードＩＤを設定する。
その関連付く全ての部分構成情報木のサイズが１（ノード１個）の場合、またはいずれの部分構成情報木とも関連づかない場合は、「ｎｕｌｌ」を設定する。
「列名」１２０４は、「計測点ＩＤ」１２０１により指定される計測データを格納する計測値テーブル１４４上の列名を示す。
「代替計測点定義」１２０５は、代替計測点の計測データを算出するための定義式を示す。
代替計測点定義の定義式は、単一の実計測点の計測データ、または実計測点と代替計測点の計測データの演算式からなる。
【００７２】
図１８は、ステップＳ１１０１で生成される部分構成情報木管理テーブル１２１０を示す図である。
部分構成情報木管理テーブル１２１０は、「部分構成情報木ＩＤ」１２１１、「根ノードＩＤ」１２１２、「部分構成情報木グループＩＤ」１２１３、「確定フラグ」１２１４、「ＤＢサーバ名」１２１５、「データベース名」１２１６、「テーブル名」１２１７を対応付けたレコードを備える。
「部分構成情報木ＩＤ」１２１１は、部分構成情報木を一意に識別するための識別子を示す。
「根ノードＩＤ」１２１２は、部分構成情報木ＩＤにより識別される部分構成情報木の根ノードのノードＩＤを示す。
「部分構成情報木グループＩＤ」１２１３は、関連する部分構成情報木の集合（部分構成情報木グループ）を一意に識別するための識別子を示す。
第２の確定状態と判定された複数の部分構成情報木に対して、同一の「部分構成情報木グループＩＤ」が設定される。
「確定フラグ」１２１４は、「部分構成情報木ＩＤ」１２１１により識別される部分構成情報木が確定しているか否かを示す。
「ＤＢサーバ名」１２１５、「データベース名」１２１６、「テーブル名」１２１７は、それぞれ、計測値テーブル１４４のＤＢサーバ名、データベース名、テーブル名を示す。
これは、「部分構成情報木ＩＤ」１２１１により識別される部分構成情報木に関連付いた実計測点または代替計測点の計測データを格納するテーブルを一意に識別するための情報で、図１３の計測値テーブル設計情報１４３の「ＤＢサーバ名」１００２、「データベース名」１００３と同じものである。
【００７３】
ここで、「部分構成情報木Ｔ１が確定している」とは、前述したように、部分構成情報木が以下の「第１の確定状態」又は「第２の確定状態」になっていることを指す。
そして、「第１の確定状態」及び「第２の確定状態」のいずれにも該当しない部分構成情報木を、「確定していない部分構成情報木」と呼ぶ。
【００７４】
（第１の確定状態）
実サイズがＣ以下の部分構成情報木Ｔ１であって、関連付く全ての実計測点または代替計測点が、他の部分構成情報木Ｔ２と関連付いていない。
計測点管理情報テーブル１２００において、関連付く全ての実計測点または代替計測点の根ノードＩＤが部分構成情報木Ｔ１の根ノードだけである。
【００７５】
（第２の確定状態）
実サイズがＣ以下の部分構成情報木Ｔ１に関連付く全ての実計測点または代替計測点が、他の部分構成情報木Ｔ２と関連付いていた場合であっても、部分構成情報木Ｔ１、Ｔ２に関連付いた実計測点のユニークな（重複を除外した）数がＣ以下である。
ある部分構成情報木Ｔ１に関連付いた実計測点Ｎ１が、他の部分構成情報木Ｔ２にも関連付いており、部分構成情報木Ｔ２に関連付いた他の実計測点Ｎ２がさらに別の部分構成情報木Ｔ３に関連付いていた場合は、部分構成情報木Ｔ１、Ｔ２、Ｔ３のいずれかに関連付く全ての実計測点または代替計測点のユニークな数を計測し、その数がＣ以下であれば第２の確定状態である。
【００７６】
計測値テーブル設計部１２１は、初めに、計測点管理情報テーブル１２００の各レコードの計測点ＩＤ１２０１に、全実計測点ＩＤを１個ずつ設定する。
次に各実計測点ＩＤに対して、関連する構成情報木を抽出し、その根ノードのノードＩＤを根ノードＩＤ１２０３に設定する。
そのために、計測値テーブル設計部１２１は、仮想計測点定義テーブル１４１の仮想計測点定義９０３を探索して、該当する実計測点ＩＤを含む仮想計測点定義に対応する仮想計測点ＩＤ９０１を全て抽出する。
次に、その仮想計測点ＩＤが関連付くグループＩＤ８０３を、構成情報テーブル１４２から全て抽出する。
最後に、抽出したグループＩＤに属するノードＩＤの内、根ノードのノードＩＤを抽出し、計測点管理情報テーブル１２００の根ノードＩＤ１２０３に設定する。
【００７７】
ある木のサイズを知るためには、一時構成情報テーブルにおいて、その木の根ノードに相当するノードから順に、そのノードＩＤを親ＩＤとするノードの数を再帰的に数えていけばよい。
また、ある木の実サイズを知るためには、計測点管理情報テーブル１２００の根ノードＩＤ１２０３の中に、その木の根ノードＩＤが出現する回数を数え上げればよい。
【００７８】
同様に、計測値テーブル設計部１２１は、初めに、各構成情報木を一意に識別するための識別子＝部分構成情報木ＩＤを定義し、部分構成情報木管理テーブル１２１０の各レコードの部分構成情報木ＩＤ１２１１に設定する。
この時の部分構成情報木ＩＤとして、構成情報テーブル１４２のグループＩＤ８０３を使用してもよい。
【００７９】
（ステップＳ１１０２）計測値テーブル設計部１２１は、全ての部分構成情報木の実サイズがＣ以下となるよう、構成情報木を部分木に分割していく。
このステップの一例として、以下の手順がある。
（１）計測値テーブル設計部１２１は、全ての部分構成情報木の中から、実サイズがＣを超える部分構成情報木Ｔを１個選択する。
（２）計測値テーブル設計部１２１は、選択した部分構成情報木Ｔを根ノードと、その根ノードの子のノードを新たな根ノードとする部分木に分割する。
そして、計測値テーブル設計部１２１は、計測点管理情報テーブル１２００、部分構成情報木管理テーブル１２１０を更新する。
この手順の詳細は後述する。
（３）計測値テーブル設計部１２１は、（１）〜（２）の操作を、実サイズがＣを超える部分構成情報木が存在しなくなるまで繰り返す。
【００８０】
（ステップＳ１１０３）計測値テーブル設計部１２１は、確定していない部分構成情報木の中から、最もサイズが大きい部分構成情報木Ｔ１を選択する。
【００８１】
（ステップＳ１１０４）計測値テーブル設計部１２１は、ステップＳ１１０３で選択した部分構成情報木Ｔ１に関連付く実計測点または代替計測点Ｎ１と関連付いている、他の確定していない部分構成情報木の中から、最もサイズが大きい部分構成情報木Ｔ２を選択する。
【００８２】
（ステップＳ１１０５）計測値テーブル設計部１２１は、部分構成情報木Ｔ１、Ｔ２の内、根ノードの子のノードの数を比較し、より子のノードの数が多い部分構成情報木Ｔ´を選択する。
そして、計測値テーブル設計部１２１は、部分構成情報木Ｔ´を根ノードＲと、その子ノードを新たな親とする部分構成情報木とに分割する。
ここで、選択した部分構成情報木Ｔ´の分割では、ステップＳ１１０２の（２）と同様の手順が適用される。
【００８３】
（ステップＳ１１０６）計測値テーブル設計部１２１は、ステップＳ１１０５の根ノードＲの仮想計測点定義に、実計測点が直接含まれるか否かをチェックする。
すなわち、計測値テーブル設計部１２１は、構成情報テーブル１４２より、根ノードＲのノードＩＤに関連する仮想計測点ＩＤ８０５を抽出する。
そして、計測値テーブル設計部１２１は、仮想計測点定義テーブル１４１から、その仮想計測点ＩＤの仮想計測点定義９０３を抽出し、実計測点を直接含むかチェックする。
チェックの結果、直接含む場合（ＹＥＳ）は、処理はステップＳ１１０９に進む。
直接含まない場合（ＮＯ）は、処理はステップＳ１１０７に進む。
「実計測点を直接含む」とは、仮想計測点定義９０３が１つの実計測点で定義されている場合をいう。
仮想計測点定義９０３が、複数の実計測点で定義されている場合、仮想計測点のみで定義されている場合、実計測点と仮想計測点との組合せで定義されている場合は、直接含まない（ＮＯ）と判定される。
【００８４】
（ステップＳ１１０７）計測値テーブル設計部１２１は、ステップＳ１１０５の根ノードＲに、新たに代替計測点ＩＤを割り当てて、計測点管理情報テーブル１２００に追加する。
計測値テーブル設計部１２１は、計測点管理情報テーブル１２００に新規のレコードを追加し、「計測点ＩＤ」１２０１として新たに割り当てた代替計測点ＩＤを、「自ノードＩＤ」１２０２に設定し、「根ノードＩＤ」１２０３に根ノードＲのノードＩＤを設定する。
「列名」１２０４は後から設定される。
「代替計測点定義」１２０５には、その代替計測点の計測データを算出するための定義式が設定される。
【００８５】
「代替計測点定義」１２０５に定義式を設定するためには、計測値テーブル設計部１２１は、その根ノードＲのノードＩＤに関連付く仮想計測点ＩＤを、構成情報テーブル１４２の仮想計測点ＩＤ８０５から抽出し、その仮想計測点の仮想計測点定義を、仮想計測点定義テーブル１４１の仮想計測点定義９０３から抽出する。
さらに、計測値テーブル設計部１２１は、その抽出した仮想計測点定義９０３の定義式に、仮想計測点ＩＤが含まれなくなるまで、再帰的に定義式を展開した上で、展開結果を「代替計測点定義」１２０５に設定する。
【００８６】
このとき、展開後の「代替計測点定義」１２０５が非常に複雑で計測データの算出負荷が高い、同じ計測時刻の計測データからだけでは、代替計測点の計測データを算出することができない等の場合においては、計測値テーブル設計部１２１は、代替計測点を定義しなくてもよい。
【００８７】
（ステップＳ１１０８）計測値テーブル設計部１２１は、仮想計測点定義テーブル１４１に、代替計測点の情報を追加する。
計測値テーブル設計部１２１は、上記のステップＳ１１０７における手順と同様にして、根ノードＲのノードＩＤに関連する仮想計測点定義９０３を特定し、そこに根ノードＲに割り当てた代替計測点ＩＤを追加する。
【００８８】
（ステップＳ１１０９）計測値テーブル設計部１２１は、根ノードＲを、サイズ１の部分構成情報木として、部分構成情報木管理テーブルに追加する。
計測値テーブル設計部１２１は、根ノードＲに対応するレコードを生成し、新たに部分構成情報木ＩＤを割り当て、「部分構成情報木ＩＤ」１２１１に設定する。
また、計測値テーブル設計部１２１は、根ノードＲのノードＩＤを「根ノードＩＤ」１２１２に設定する。
さらに、計測値テーブル設計部１２１は、新たに部分構成情報木にグループＩＤを割り当て、「部分構成情報木グループＩＤ」１２１３に設定する。
【００８９】
（ステップＳ１１１０）計測値テーブル設計部１２１は、部分構成情報木管理テーブル１２１０をチェックし、全ての部分構成情報木が確定しているか否か（「確定フラグ」９０４が立っているか否か）をチェックする。
全ての部分構成情報木が確定していた場合（「確定フラグ」９０４が立っていた場合、ＹＥＳ）は、処理はステップＳ１１１１に進む。
確定していない部分構成情報木が存在する場合（ＮＯ）は、処理はステップＳ１１０３に戻る。
【００９０】
（ステップＳ１１１１）計測値テーブル設計部１２１は、全ての部分構成情報木が確定したら、ＤＢサーバ名１２１５、データベース名１２１６、テーブル名１２１７、列名１２０４を設定する。
まず、計測値テーブル設計部１２１は、部分構成情報木管理テーブル１２１０において、同じ「部分構成情報木グループＩＤ」１２１３が設定されているレコードには、同じ「ＤＢサーバ名」１２１５、「データベース名」１２１６、「テーブル名」１２１７を設定する。
計測値テーブル設計部１２１は、異なる「部分構成情報木グループＩＤ」１２１３が設定されているレコードには、少なくとも、「ＤＢサーバ名」１２１５、「データベース名」１２１６、「テーブル名」１２１７のいずれかが異なる値を設定する。
続けて、計測値テーブル設計部１２１は、同じ部分構成情報木グループに属する部分構成情報木の根ノードＩＤを、「根ノードＩＤ」１２１２から抽出し、計測点管理情報テーブル１２００の「根ノードＩＤ」１２０３に、その根ノードＩＤが設定されている計測点に対して、ユニークな「列名」１２０４を割り当てる。
【００９１】
（ステップＳ１１１２）計測値テーブル設計部１２１は、計測点管理情報テーブル１２００と部分構成情報木管理テーブル１２１０の情報に基づき、計測値テーブル設計情報１４３と代替計測点定義テーブル１４３Ａを更新する。
すなわち、下記の通りに設定する。
計測点管理情報テーブル１２００の「計測点ＩＤ」１２０１
→  計測値テーブル設計情報１４３の「計測点ＩＤ」１００１
部分構成情報木管理テーブル１２１０の「ＤＢサーバ名」１２１５
→  計測値テーブル設計情報１４３の「ＤＢサーバ名」１００２
部分構成情報木管理テーブル１２１０の「データベース名」１２１６
→  計測値テーブル設計情報１４３の「データベース名」１００３
部分構成情報木管理テーブル１２１０の「テーブル名」１２１７
→  計測値テーブル設計情報１４３の「テーブル名」１００４
計測点管理情報テーブル１２００の「列名」１２０４
→  計測値テーブル設計情報１４３の「列名」１００５
計測点管理情報テーブル１２００の「計測点ＩＤ」１２０１の中の代替計測点ＩＤ
→  代替計測点定義テーブル１４３Ａの「代替計測点ＩＤ」１０１１
計測点管理情報テーブル１２００の「代替計測点定義」１２０５
→  代替計測点定義テーブル１４３Ａの「代替計測点定義」１０１２
ここで、計測値テーブル設計情報１４３の、代替計測点の「データ型」１００６は、その代替計測点に関連する実計測点の「データ型」１００６を基に設定することができる。
【００９２】
ステップＳ１１１２において、計測値テーブル設計情報１４３の「計測点ＩＤ」１００１と、部分構成情報木管理テーブル１２１０の「ＤＢサーバ名」１２１５や「データベース名」１２１６との対応関係は、計測点管理情報テーブル１２００の「根ノードＩＤ」１２０３と、部分構成情報木管理テーブル１２１０の「根ノードＩＤ」１２１２をキーにして、決定することができる。
【００９３】
なお、ステップＳ１１１１において、「ＤＢサーバ名」１２１５、「データベース名」１２１６、「テーブル名」１２１７、「列名」１２０４を割り当てるとしているが、計測値テーブル設計部１２１は、計測点管理情報テーブル１２００の「計測点ＩＤ」１２０１、「自ノードＩＤ」１２０２、「根ノードＩＤ」１２０３、「代替計測点定義」１２０５と、部分構成情報木管理テーブル１２１０の「部分構成情報木ＩＤ」１２１１、「根ノードＩＤ」１２１２、「部分構成情報木グループＩＤ」１２１３、「確定フラグ」１２１４だけを設定し、残りの「ＤＢサーバ名」１２１５、「データベース名」１２１６、「テーブル名」１２１７、「列名」１２０４はユーザが設定するようにしてもよい。
【００９４】
（ステップＳ１１１３）計測値テーブル設計部１２１は、更新された計測値テーブル設計情報１４３と代替計測点定義テーブル１４３Ａを、データ記憶部１４０に記録し、終了する。
【００９５】
部分構成情報木のサイズが大きい程、そこに関連付く実計測点または代替計測点が、他の部分構成情報木と関連付いている確率が高くなる。
そのため、上記のステップＳ１１０３、Ｓ１１０４においては、計測値テーブル設計部１２１は、部分構成情報木のサイズが大きい木を優先的に選択して分割している。
上記のステップＳ１１０３、Ｓ１１０４において、木のサイズではなく、木の実サイズを基準として部分構成情報木Ｔを選択してもよい。
また、根ノードの子のノードの数が最も多い部分構成情報木を選択するようにしてもよい。
根ノードの子ノードの数が多い程、１回の部分構成情報木への分割によって、より小さい部分構成情報木に分割されるため、全ての部分構成情報木が確定するまでのステップ数の削減の効果が期待できる。
また、予め木のサイズ、または実サイズ、または根ノードの子のノードの数の閾値を設けておき、その閾値を超える部分構成情報木の中で、最初に見つかった部分構成情報木を選択するようにしてもよい。
これにより、分割する部分構成情報木の候補の探索に要する時間の削減の効果が期待できる。
【００９６】
ステップＳ１１０５において、根ノードの子のノードの数ではなく、木のサイズ、または木の実サイズを基準に、部分構成情報木を選択してもよい。
また、予め根ノードの子のノードの数、または木のサイズ、または木の実サイズの閾値を設けておき、その閾値を超える部分構成情報木の中で、最初に見つかった部分構成情報木を選択するようにしてもよい。
【００９７】
図１９は、実施の形態１における、部分構成情報木を部分木に分割する処理の流れを示すフローチャートである。
すなわちステップＳ１１０２の（２）の手順の詳細を示すものである。
【００９８】
（ステップＳ１３０１）分割する部分構成情報木Ｔが指定される。
【００９９】
（ステップＳ１３０２）計測値テーブル設計部１２１は、一時構成情報テーブルにおいて、部分構成情報木Ｔの根ノードＲのノードＩＤを「親ＩＤ」８０２とするレコードを全て抽出する。
それらのレコードのノードをＲｉとする。
そして、計測値テーブル設計部１２１は、該当するレコードの「親ＩＤ」８０２を「ｎｕｌｌ」に設定する。
【０１００】
（ステップＳ１３０３）計測値テーブル設計部１２１は、部分構成情報木Ｔの根ノードＲのノードＩＤを、計測点管理情報テーブル１２００の「根ノードＩＤ」１２０３として持つレコードを抽出し、その根ノードＩＤを更新する。同時に、計測値テーブル設計部１２１は、構成情報テーブル１４２において、部分構成情報木Ｔに含まれる全ノードの「レベル」８０４を更新する。
【０１０１】
ステップＳ１３０３における、計測点管理情報テーブル１２００の「根ノードＩＤ」１２０３の更新手順の一例を示す。
まず、計測値テーブル設計部１２１は、ステップＳ１３０２において抽出されたノードＲｉのレコードのノードＩＤのいずれかを選択する。
そして、計測値テーブル設計部１２１は、構成情報テーブル１４２において、その選択したノードＩＤから順に子ノードのノードＩＤを探索し、該当するレコードの「レベル」８０４から１を引く。さらに、計測値テーブル設計部１２１は、計測点管理情報テーブル１２００の「自ノードＩＤ」１２０２に含まれるノードＩＤを検出したところで、その計測点管理情報テーブル１２００のレコードの「根ノードＩＤ」を、元のＩＤに替えて、その選択したノードＩＤを設定する。
計測値テーブル設計部１２１は、この操作を、ステップＳ１３０２において抽出された全レコードのノードＩＤに対して繰り返す。
【０１０２】
（ステップＳ１３０４）計測値テーブル設計部１２１は、ステップＳ１３０２〜Ｓ１３０３の操作によって分割された部分構成情報木Ｔｉの情報を、部分構成情報木管理テーブル１２１０に追加する。
計測値テーブル設計部１２１は、各部分構成情報木Ｔｉに対応するレコードを生成し、新たに部分構成情報木ＩＤを割り当て、「部分構成情報木ＩＤ」１２１１に設定する。
また、計測値テーブル設計部１２１は、部分構成情報木Ｔｉの根ノードＲｉのノードＩＤを「根ノードＩＤ」１２１２に設定する。さらに、計測値テーブル設計部１２１は、新たに部分構成情報木のグループＩＤを割り当て、「部分構成情報木グループＩＤ」１２１３に設定する。
【０１０３】
（ステップＳ１３０５）計測値テーブル設計部１２１は、確定した部分構成情報木をチェックし、確定した部分構成情報木が存在した場合は、部分構成情報木管理テーブル１２１０における、その部分構成情報木に該当する「確定フラグ」１２１４を立てる。
確定した複数の部分構成情報木が、同じ実計測点または代替計測点に関連付いていた場合は、計測値テーブル設計部１２１は、それらの部分構成情報木の「部分構成情報木グループＩＤ」１２１３に、同じ部分構成情報木グループＩＤを割り当て設定する。
また、異なる部分構成情報木グループに属する確定した部分構成情報木であっても、それらに関連付いた実計測点または代替計測点のユニークな数がＣ以下であった場合は、計測値テーブル設計部１２１は、同じ部分構成情報木グループＩＤを設定し直してもよい。
【０１０４】
ステップＳ１３０５において、部分構成情報木を確定したと判定する別の条件（第３の確定状態）について示す。
１個以上の実計測点Ｐが複数の確定していない部分構成情報木に関連付いていた場合であっても、その実計測点Ｐを独立した計測点とみなして、異なる代替計測点ＩＤを割り当てることで、部分構成情報木を確定させることができる。
すなわち、計測値テーブル設計部１２１は、実計測点Ｐの計測データを、複数の計測値テーブル１４４に格納する。
ただし、そのような実計測点Ｐの数が多い場合は、多くの計測データを二重、三重に重複して記憶することになり、ストレージ容量の無駄である。
そこで、計測値テーブル設計部１２１は、予め重複可能な計測点の数を閾値として設定しておき、複数の確定していない部分構成情報木に関連付いている実計測点の数がその閾値を超えない場合は、計測点管理情報テーブル１２００にレコードを追加し、実計測点Ｐに新たに代替計測点ＩＤを割り当て、「計測点ＩＤ」１２０１にその代替計測点ＩＤを設定する。
同時に、計測値テーブル設計部１２１は、そのレコードの「代替計測点定義」１２０５には、元の実計測点ＩＤを設定する。
そして、計測値テーブル設計部１２１は、その実計測点Ｐに関連付いていた部分構成情報木については、そのまま確定させる。
実計測点Ｐに異なる代替計測点ＩＤを割り当てることにより、実計測点Ｐに関連付いていた部分構成情報木を、独立した部分構成情報木とみなすことができ、これらの部分構成情報木が第１の確定状態または第２の確定状態を満たす場合には、当該部分構成情報木を確定させることができる。
【０１０５】
図２５に示す例では、部分木データ１１０１は実計測点１〜６と関連付いており、部分木データ１１０２は実計測点６〜１１と関連付いている。
実計測点６は、部分木データ１１０１と部分木データ１１０２の両方に関連付いている。
図２５の例では、１つの計測値テーブルの列数は８個であり、部分木データ１１０１と部分木データ１１０２に関連付く実計測点の数は１１であるため、図２４に示した第２の確定状態には該当しない。
図２５の例では、複数の部分木データに関連付いている実計測点の数が閾値を超えないので、部分木データ１１０１と部分木データ１１０２は、それぞれ第３の確定状態にあると判定される。
そして、実計測点６は、部分木データ１１０１の計測値テーブルと、部分木データ１１０２の計測値テーブルの双方に割当てられる。
実計測点の数の閾値は、ユーザが任意に決定することができる。
【０１０６】
ここで、計測値テーブル設計部１２１の動作例を、具体例を用いて説明する。
【０１０７】
図２６及び図２８は、以下の説明で用いる構成情報木１１３１及び構成情報木１１３２を示す。
構成情報木１１３１にはグループＩＤ＝１が設定され、構成情報木１１３２にはグループＩＤ＝２が設定されている。
図２６及び図２８において、輪郭が二重になっているノードは、実計測点と直接関連付いているノードである。
図２７は、図２６の構成情報木１１３１の構成情報テーブル（図１０の構成情報テーブル１４２に相当）であり、図２９は、図２８の構成情報木１１３２の構成情報テーブルである。
構成情報木１１３１と構成情報木１１３２は、図３０に示すように、実計測点＄１〜＄１５と関連付いている。
図３１は、構成情報木１１３１の仮想計測点定義テーブル（図１２の仮想計測点定義テーブル１４１に相当）であり、図３２は、構成情報木１１３２の仮想計測点定義テーブルである。
図３３は、構成情報木１１３１の一時構成情報テーブルであり、図３４は、構成情報木１１３２の一時構成情報テーブルである。
図３５は、構成情報木１１３１と構成情報木１１３２の計測点管理情報テーブル（図１７の計測点管理情報テーブル１２００に相当）である。
図３６は、計測値テーブル設計部１２１が構成情報木１１３１と構成情報木１１３２の分割を開始する前の部分構成情報木テーブル（図１８の部分構成情報木管理テーブル１２１０に相当）である。
以下では、実サイズＣ＝８、すなわち、計測値テーブル１４４に計測値を格納可能な実計測点（計測機器）の数が８個であると仮定する。
【０１０８】
計測値テーブル設計部１２１は、図１５のＳ１１０２に示すように、構成情報木１１３１と構成情報木１１３２を、各部分木の実サイズがＣ＝８以下となるように分割する。
【０１０９】
具体的には、計測値テーブル設計部１２１は、例えば、構成情報木１１３１を選択し（図１９のＳ１３０１）、根ノード「Ａ０１」の子ノードであるノード「Ａ０２」及び「Ａ０３」を抽出する（Ｓ１３０２）。
そして、計測値テーブル設計部１２１は、構成情報木１１３１の一時構成情報テーブル（図３３）のノード「Ａ０２」〜「Ａ３９」の「レベル」から１を引く（Ｓ１３０３）。
この結果、構成情報木１１３１の一時構成情報テーブルは図３７のように更新される。
また、計測値テーブル設計部１２１は、計測点管理情報テーブル（図３５）内の根ノードＩＤ欄に「１」（根ノード「Ａ０１」のＩＤ）が記述されているレコードの根ノードＩＤを更新する（Ｓ１３０３）。
この結果、計測点管理情報テーブルは、図３８のように更新される。
【０１１０】
次に、計測値テーブル設計部１２１は、ノード「Ａ０２」を根ノードとする部分木の情報と、ノード「Ａ０３」を根ノードとする部分木の情報とを、部分構成情報木テーブル（図３６）に追加する（Ｓ１３０４）。
なお、この時点では、ノード「Ａ０２」を根ノードとする部分木もノード「Ａ０３」を根ノードとする部分木も、確定していない。
ノード「Ａ０２」を根ノードとする部分木と直接関連付いている実計測点は、実計測点１〜７であるため、実サイズは７であるが、実計測点１〜７は、構成情報木１１３２にも関連付いている。
このため、ノード「Ａ０２」を根ノードとする部分木は、第１の確定状態になっていない。
構成情報木１１３２は、この時点では、分割されていないので、実計測点１〜７と関連付いている構成情報木１１３２は実計測点８〜１５にも関連付いているので、第２の確定状態にもなっていない。
また、構成情報木１１３２は、第３の確定状態にもなっていない。
ノード「Ａ０３」を根ノードとする部分木と直接関連付いている実計測点は、実計測点８〜１４であるため、実サイズは７であるが、実計測点８〜１４は、構成情報木１１３２にも関連付いている。
このため、ノード「Ａ０３」を根ノードとする部分木は、第１の確定状態になっていない。
構成情報木１１３２は、この時点では、分割されていないので、実計測点８〜１４と関連付いている構成情報木１１３２は実計測点１〜７及び１５にも関連付いているので、第２の確定状態にもなっていない。
また、構成情報木１１３２は、第３の確定状態にもなっていない。
このため、部分構成情報木テーブルは図３９のように更新される。
図３９の部分構成情報木テーブルでは、根ノード「Ａ０１」のみで構成される部分木では確定フラグが「１」となっているが、それ以外の部分木では確定フラグが「０」である。
【０１１１】
次に、計測値テーブル設計部１２１は、構成情報木１１３２を選択し（図１９のＳ１３０１）、根ノード「Ｂ０１」の子ノードであるノード「Ｂ１１」〜「Ｂ１３」を抽出する（Ｓ１３０２）。
そして、計測値テーブル設計部１２１は、構成情報木１１３２の一時構成情報テーブル（図３４）のノード「Ｂ１１」〜「Ｂ４４」の「レベル」から１を引く（Ｓ１３０３）。
この結果、構成情報木１１３２の一時構成情報テーブルは図４０のように更新される。
また、計測値テーブル設計部１２１は、計測点管理情報テーブル（図３８）内の根ノードＩＤ欄に「１０１」（根ノード「Ｂ０１」のＩＤ）が記述されているレコードの根ノードＩＤを更新する（Ｓ１３０３）。
この結果、計測点管理情報テーブルは、図４１のように更新される。
【０１１２】
次に、計測値テーブル設計部１２１は、ノード「Ｂ１１」を根ノードとする部分木の情報と、ノード「Ｂ１２」を根ノードとする部分木の情報と、ノード「Ｂ１３」を根ノードとする部分木の情報とを、部分構成情報木テーブル（図３９）に追加する（Ｓ１３０７）。
なお、この時点では、全ての部分木が確定する。
ノード「Ａ０２」を根ノードとする部分木とノード「Ｂ１１」を根ノードとする部分木に関連付いている実計測点のユニークな数は７個であるため、ノード「Ａ０２」を根ノードとする部分木とノード「Ｂ１１」を根ノードとする部分木は第２の確定状態に該当する。
ノード「Ａ０３」を根ノードとする部分木とノード「Ｂ１２」を根ノードとする部分木とノード「Ｂ１３」を根ノードとする部分木に関連付いている実計測点のユニークな数は８個であるため、ノード「Ａ０３」を根ノードとする部分木とノード「Ｂ１２」を根ノードとする部分木とノード「Ｂ１３」を根ノードとする部分木は第２の確定状態に該当する。
このため、部分構成情報木テーブルは図４２のように更新される。
図４２の部分構成情報木テーブルでは、全ての部分木において確定フラグが「１」である。
【０１１３】
次に、計測値テーブル設計部１２１は、部分構成情報木テーブルの「部分構成情報木グループＩＤ」の欄を更新する。
具体的には、計測値テーブル設計部１２１は、図４３に示すように「部分構成情報木グループＩＤ」の欄を更新する。
【０１１４】
次に、計測値テーブル設計部１２１は、図１５のＳ１１０３〜Ｓ１１０５を行うが、本例では、全ての部分木が確定しているので、Ｓ１１０３〜Ｓ１１０５の処理は省略される。
計測値テーブル設計部１２１は、根ノードの仮想計測点定義に実計測点が直接含まれるかを判断する（Ｓ１１０６）。
図３１及び図３２の仮想計測点定義テーブルを参照すると、根ノードである「Ａ０１」、「Ａ０２」、「Ａ０３」、「Ｂ０１」、「Ｂ１１」、「Ｂ１２」、「Ｂ１３」のいずれも、仮想計測点定義に実計測点が直接含まれていない（Ｓ１１０６でＮＯ）。
このため、計測値テーブル設計部１２１は、「Ａ０１」、「Ａ０２」、「Ａ０３」、「Ｂ０１」、「Ｂ１１」、「Ｂ１２」、「Ｂ１３」の各々に対して代替計測点の情報を仮想計測点定義テーブルに追加する（Ｓ１１０８）。
また、本例では、全ての部分木の情報が既に部分構成情報木管理テーブルに登録されているので、Ｓ１１０９の処理は省略される。
そして、全ての部分木が確定している（Ｓ１１１０でＹＥＳ）ので、計測値テーブル設計部１２１はＳ１１１１〜Ｓ１１１３の処理を行う。
Ｓ１１１１〜Ｓ１１１３の処理は、図１６を参照して説明した通りなので、ここでは説明を割愛する。
Ｓ１１１３の処理が完了した段階では、仮想計測点定義テーブルが図４５及び図４６に示すように更新され、計測点管理情報テーブルが図４７に示すように更新されている。
図４５の仮想計測点定義テーブルでは、仮想計測点ＩＤ：＃１の仮想計測点定義において代替計測点「％１」が追加され、代替計測点フラグが「１」になっている。
また、仮想計測点ＩＤ：＃２、＃３の仮想計測点定義において代替計測点「％２」、「％３」が追加され、代替計測点フラグが「１」になっている。
同様に、図４６の仮想計測点定義テーブルでも、仮想計測点ＩＤ：＃１０１、＃１１１、＃１１２、＃１１３の仮想計測点定義において代替計測点「％４」、「％５」、「％６」、「％７」が追加され、代替計測点フラグが「１」になっている。
また、図４７の計測点管理情報テーブルでは、計測点ＩＤ：％１〜％７のレコードが追加されている。
計測点管理情報テーブル内の代替計測点定義は、例えば、図４８に示す手順で導出される。
図４８は、％１の代替計測点の導出手順を示している。
図４５に示すように、％１の代替計測点は、＃１の仮想計測点に対応しており、仮想計測点定義から、＃１＝＃２＋＃３であり、＃２＝＃１１＋＃１２＋＃１３であり、＃３＝＃１４＋＃１５＋＃１６である。
このため、％１の代替計測点は、＃１＝（＃１１＋＃１２＋＃１３）＋（＃１４＋＃１５＋＃１６）となる。
以降、同様にして、各仮想計測点を仮想計測点定義に従って展開していくと、図４８の最終行のような代替計測点定義が得られる。
【０１１５】
以上、本実施の形態では、以下に示す計測データ管理装置を説明した。
（ａ）計測機器により計測された複数の計測データの入力を受け付ける計測データ収集蓄積部と、計測データを格納するため記憶装置を備え、入力された計測データを、記憶装置内に定義された複数の計測値テーブルのいずれかに格納する。
（ｂ）計測機器は、複数の階層（木構造）をもった構成情報と関連付けられている。
（ｃ）上記の構成情報の階層関係に依存して仮想計測点の計測データを算出するための仮想計測点定義を備え、計測値テーブルに格納された計測データと、仮想計測点定義に基づいて仮想計測点の計測データを算出し、出力する計測データ出力部を備える。
（ｄ）上記の構成情報と仮想計測点定義に基づき、構成情報を部分木に分割する計測値テーブル設計部を備える。
（ｅ）計測値テーブル設計部は、さらに、構成情報の１または複数の部分木に関連付いた計測データと、計測値テーブルとを関連付け、その対応情報を計測値テーブル設計情報として記録する。
（ｆ）計測値テーブル設計情報に基づき、記憶装置内に複数のテーブルを定義する、計測値テーブル定義部を備える。
（ｇ）計測データ収集蓄積部は、計測データの識別子と、計測値テーブル設計情報に基づき、その計測データを格納する計測値テーブルを決定する。
【０１１６】
また、本実施の形態では、構成情報の部分木に関連付いた計測データの種類数が、計測データの格納に使用するデータベース管理システムの諸元の範囲内になるよう、構成情報を部分木に再帰的に分割する計測値テーブル設計部を説明した。
【０１１７】
また、本実施の形態では、１または複数の計測データが、複数の構成情報に関連付いている場合に、その関連付いた構成情報のいずれかを選択し、１または複数の部分木に関連付いた計測データの数が、上記諸元の範囲内になるまで繰り返し部分木に分割する計測値テーブル設計部を説明した。
【０１１８】
また、本実施の形態では、以下に示す計測値テーブル設計部を説明した。
（ａ）構成情報の部分木への分割は、木構造の根ノードと、その根ノードの子のノードを新たな根とする部分木とに分割する。
（ｂ）元の根ノードに、新たに代替計測点の識別子を割り当て、その識別子と、その根ノードに相当する仮想計測点の計測データを算出するための算出式とを計測値テーブル設計情報に記憶する。
【０１１９】
また、本実施の形態では、１または複数の計測データが、複数の構成情報の部分木に関連付いている場合に、その計測データに複数の代替計測点の識別子を割り当て、その識別子と、元の計測データを得るための計測機器の識別子、または算出式とを計測値テーブル設計情報に記憶する計測値テーブル設計部を説明した。
【０１２０】
最後に、本実施の形態に示した計測データ管理装置１００のハードウェア構成例を図４４を参照して説明する。
計測データ管理装置１００はコンピュータであり、計測データ管理装置１００の各要素をプログラムで実現することができる。
計測データ管理装置１００のハードウェア構成としては、バスに、演算装置１９０１、外部記憶装置１９０２、主記憶装置１９０３、通信装置１９０４、入出力装置１９０５が接続されている。
【０１２１】
演算装置１９０１は、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
外部記憶装置１９０２は、例えばＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフラッシュメモリ、ハードディスク装置である。
主記憶装置１９０３は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。
通信装置１９０４は、例えばＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）である。
入出力装置１９０５は、例えばマウス、キーボード、ディスプレイ装置等である。
【０１２２】
プログラムは、通常は外部記憶装置１９０２に記憶されており、主記憶装置１９０３にロードされた状態で、順次演算装置１９０１に読み込まれ、実行される。
プログラムは、図１に示す「〜部」（データ記憶部を除く、以下も同様）として説明している機能を実現するプログラムである。
更に、外部記憶装置１９０２にはオペレーティングシステム（ＯＳ）も記憶されており、ＯＳの少なくとも一部が主記憶装置１９０３にロードされ、演算装置１９０１はＯＳを実行しながら、図１に示す「〜部」の機能を実現するプログラムを実行する。
また、本実施の形態の説明において、「〜の判断」、「〜の判定」、「〜の抽出」、「〜の分割」、「〜の検知」、「〜の設定」、「〜の登録」、「〜の選択」、「〜の生成」、「〜の追加」、「〜の更新」、「〜の入力」、「〜の出力」等として説明している処理の結果を示す情報やデータや信号値や変数値が主記憶装置１９０３にファイルとして記憶されている。
また、暗号鍵・復号鍵や乱数値やパラメータが、主記憶装置１９０３にファイルとして記憶されてもよい。
【０１２３】
なお、図４４の構成は、あくまでも計測データ管理装置１００のハードウェア構成の一例を示すものであり、計測データ管理装置１００のハードウェア構成は図４４に記載の構成に限らず、他の構成であってもよい。
【０１２４】
また、本実施の形態に示す手順により、本発明に係るデータ処理方法を実現可能である。
【符号の説明】
【０１２５】
１００  計測データ管理装置、１１０  仮想計測点管理部、１１１  仮想計測点情報入出力部、１１２  構成情報入出力部、１２０  計測値テーブル管理部、１２１  計測値テーブル設計部、１２２  計測値テーブル定義部、１３０  計測データ管理部、１３１  計測データ収集蓄積部、１３２  仮想計測データ演算部、１３３  計測データ出力部、１４０  データ記憶部、１４１  仮想計測点定義テーブル、１４２  構成情報テーブル、１４３  計測値テーブル設計情報、１４４  計測値テーブル、２００  計測データ管理システム、２０１  計測機器、２１０  拠点装置、２１１  計測データ受信部、２１２  計測データ送信部、２１９  拠点装置記憶部、２２０  操作端末、２２１  アプリケーション実行部、２２９  操作端末記憶部、４００  計測データ、１２００  計測点管理情報テーブル、１２１０  部分構成情報木管理テーブル。
【図１】
0005972472.tif 000002
【図２】
0005972472.tif 000003
【図３】
0005972472.tif 000004
【図４】
0005972472.tif 000005
【図５】
0005972472.tif 000006
【図６】
0005972472.tif 000007
【図７】
0005972472.tif 000008
【図８】
0005972472.tif 000009
【図９】
0005972472.tif 000010
【図１０】
0005972472.tif 000011
【図１１】
0005972472.tif 000012
【図１２】
0005972472.tif 000013
【図１３】
0005972472.tif 000014
【図１４】
0005972472.tif 000015
【図１５】
0005972472.tif 000016
【図１６】
0005972472.tif 000017
【図１７】
0005972472.tif 000018
【図１８】
0005972472.tif 000019
【図１９】
0005972472.tif 000020
【図２０】
0005972472.tif 000021
【図２１】
0005972472.tif 000022
【図２２】
0005972472.tif 000023
【図２３】
0005972472.tif 000024
【図２４】
0005972472.tif 000025
【図２５】
0005972472.tif 000026
【図２６】
0005972472.tif 000027
【図２７】
0005972472.tif 000028
【図２８】
0005972472.tif 000029
【図２９】
0005972472.tif 000030
【図３０】
0005972472.tif 000031
【図３１】
0005972472.tif 000032
【図３２】
0005972472.tif 000033
【図３３】
0005972472.tif 000034
【図３４】
0005972472.tif 000035
【図３５】
0005972472.tif 000036
【図３６】
0005972472.tif 000037
【図３７】
0005972472.tif 000038
【図３８】
0005972472.tif 000039
【図３９】
0005972472.tif 000040
【図４０】
0005972472.tif 000041
【図４１】
0005972472.tif 000042
【図４２】
0005972472.tif 000043
【図４３】
0005972472.tif 000044
【図４４】
0005972472.tif 000045
【図４５】
0005972472.tif 000046
【図４６】
0005972472.tif 000047
【図４７】
0005972472.tif 000048
【図４８】
0005972472.tif 000049