(57)【要約】【課題】システムへの影響を抑制しつつ必要な範囲のデータを取得する。【解決手段】電力系統からの収集データを処理する分散処理システムを構成する複数のデータ処理装置のそれぞれは、収集データをシリアルな送信順に従い他のデータ処理装置に送信する送信部と、送信した収集データに対する他のデータ処理装置からの応答を受信する応答受信部と、他のデータ処理装置に収集データを送信開始してから、当該収集データに対する応答を受信するまでの所要時間を取得する時間取得部と、シリアルな送信順に従って送信部が収集データを送信する毎に、当該収集データに対応した送信順番を少なくとも含む送信済収集データを格納する送信済メモリと、応答受信部が応答を受信しないと判定された時から少なくとも所要時間を遡った範囲に該当する送信順番を含む送信済収集データを、送信済メモリから読み出し出力する送信データ取得部と、を備える。【選択図】図３
2014206809.tif 000002
【特許請求の範囲】
【請求項１】
電力系統からの収集データを処理する分散処理システムを構成する複数のデータ処理装置のそれぞれは、
収集データをシリアルな送信順に従って他のデータ処理装置に送信する送信部と、
前記送信部により送信した収集データに対する前記他のデータ処理装置からの応答を受信する応答受信部と、
前記他のデータ処理装置に収集データを送信開始してから、当該収集データに対する応答を受信するまでの所要時間を取得する時間取得部と、
前記シリアルな送信順に従って前記送信部が収集データを送信する毎に、当該収集データに対応した送信順番を少なくとも含む送信済収集データを格納する送信済メモリと、
前記応答受信部が応答を受信しないと判定された時から少なくとも前記所要時間を遡った範囲に該当する前記送信順番を含む前記送信済収集データを、前記送信済メモリから読み出し出力する送信データ取得部と、を備える、データ処理装置。
【請求項２】
前記他のデータ処理装置は、
前記シリアルな送信順に従って前記送信部から送信された収集データを受信する毎に、当該収集データに対応した送信順番を少なくとも含む受信済収集データを格納する受信済メモリと、
前記応答受信部が応答を受信しないと判定された時から少なくとも前記所要時間を遡った範囲に該当する前記送信順番を含む前記受信済収集データを、前記受信済メモリから読み出し出力する受信データ取得部を、備える、請求項１に記載のデータ処理装置。
【請求項３】
前記複数のデータ処理装置のそれぞれは、
前記他のデータ処理装置に対し、前記時間取得部により取得された前記所要時間を通知する、請求項１または２に記載のデータ処理装置。
【請求項４】
前記複数のデータ処理装置のそれぞれは、
前記他のデータ処理装置の前記受信データ取得部が出力した前記受信済収集データと、前記送信データ取得部により出力された前記送信済収集データとを比較する、請求項２に記載のデータ処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理装置に関し、特に、電力系統からの収集データを処理する分散処理システムのデータ処理装置に関する。
【背景技術】
【０００２】
分散処理システムにおいては、複数の計算機がネットワークで接続されており、各計算機で動作するプログラムがデータの送受信を行いながら必要な処理を行っている。分散処理システムで通信障害などの不具合が発生した場合、不具合の解析のために、プログラムおよびネットワークのトレースデータを採取する。
【０００３】
障害解析のためのデータを採取する技術は、例えば特許文献１（特開２００５−００４５１３号公報）に示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−００４５１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
分散処理システムにおいては、計算機間で多量のデータの送受信を行っているため、障害解析のためのデータも大量に発生することになる。したがって、大量のデータを伝送する場合には通信負荷が高くなり、また解析データを格納するために多くのメモリ容量が必要とされ、またデータ処理に係るＣＰＵ（Central  Processing  Unit）などのプロセッサの負荷も高くなるとの課題があった。
【０００６】
しかしながら、特許文献１では、障害解析データを採取すべきノードやデータ採取対象を限定するための方法を開示するが、上記の課題を解決するための方法は提案していない。
【０００７】
それゆえに、本発明の目的は、分散処理システムにおいて、システムへの影響を抑制しつつ必要な範囲のデータを取得するデータ処理装置を提供することである。
【課題を解決するための手段】
【０００８】
この発明のある局面に従う、電力系統からの収集データを処理する分散処理システムを構成する複数のデータ処理装置のそれぞれは、収集データをシリアルな送信順に従って他のデータ処理装置に送信する送信部と、送信部により送信した収集データに対する他のデータ処理装置からの応答を受信する応答受信部と、他のデータ処理装置に収集データを送信開始してから、当該収集データに対する応答を受信するまでの所要時間を取得する時間取得部と、シリアルな送信順に従って送信部が収集データを送信する毎に、当該収集データに対応した送信順番を少なくとも含む送信済収集データを格納する送信済メモリと、応答受信部が応答を受信しないと判定された時から少なくとも所要時間を遡った範囲に該当する送信順番を含む送信済収集データを、送信済メモリから読み出し出力する送信データ取得部と、を備える。
【０００９】
好ましくは、上記の他のデータ処理装置は、シリアルな送信順に従って送信部から送信された収集データを受信する毎に、当該収集データに対応した送信順番を少なくとも含む受信済収集データを格納する受信済メモリと、応答受信部が応答を受信しないと判定された時から少なくとも所要時間を遡った範囲に該当する送信順番を含む受信済収集データを、受信済メモリから読み出し出力する受信データ取得部を、備える。
【００１０】
好ましくは、複数のデータ処理装置のそれぞれは、他のデータ処理装置に対し、時間取得部により取得された所要時間を通知する。
【００１１】
好ましくは、複数のデータ処理装置のそれぞれは、他のデータ処理装置の受信データ取得部が出力した受信済収集データと、送信データ取得部により出力された送信済収集データとを比較する。
【発明の効果】
【００１２】
本発明によれば、応答受信部が応答を受信しないと判定された時は、その時から少なくとも所要時間を遡った範囲に該当する送信済収集データがメモリから取得される。したがって、取得するデータ量を限定した範囲にすることができて、システムにかかる負荷などを抑制することができる。
【図面の簡単な説明】
【００１３】
【図１】この発明の実施の形態に係る電力系統からの収集データを処理する分散処理システムの概略構成図である。
【図２】この発明の実施の形態に係る計算機のハードウェア構成図である。
【図３】この発明の実施の形態に係る計算機の機能構成を示す図である。
【図４】この発明の実施の形態に係るテーブルの一例を示す図である。
【図５】この発明の実施の形態に係るパケットの構成図である。
【図６】この発明の実施の形態に係るリングバッファを説明する
【図７】この形態に係る通信を伴う処理フローチャートである。
【発明を実施するための形態】
【００１４】
本発明の実施の形態について、図面を参照しながら詳細に、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【００１５】
＜構成＞
図１は、この発明の実施の形態に係る電力系統からの収集データを処理する分散処理システムの概略構成図である。分散処理システムは、有線通信または無線通信のネットワーク３，４と、これらネットワークに接続された複数の計算機１００を備える。各計算機１００はネットワーク３を経由して相互にデータ通信し、データを処理するデータ処理装置の機能を有する。また、ネットワーク４には、監視対象である電力系統５が接続されており、各計算機１００は、電力系統５との間でネットワーク４を経由しデータ通信することにより、電力情報などのデータを収集する。収集データは、計算機１００の予め定められた記憶領域に格納される。ここでは、各計算機１００は、ネットワーク３を介して相互に通信する処理と、ネットワーク４を介して電力系統５からデータ収集する処理とを実行するが、本実施の形態では、主に、ネットワーク３を経由した計算機１００間の通信を説明する。
【００１６】
図２は、この発明の実施の形態に係る計算機１００のハードウェア構成図である。図２を参照して、計算機１００は、コンピュータに相当する構成を有する。具体的には、ＣＰＵ（Central  Processing  Unit）１０２と、計算機１００の使用者による指示の入力を受けるキーボード１０４およびマウス１０６と、メモリ１０８と、メモリ１０８より大容量のハードディスク１０９と、各種情報を表示するためのディスプレイ１１０と、タイマ１１１と、着脱可能に装着される記録媒体１１４をアクセスしてデータの読み書きを行うメモリインターフェイス（Ｉ／Ｆ）１１２と、ネットワーク３または４と通信するための通信インターフェイス（Ｉ／Ｆ）１１６とを含む。各ハードウェアは、相互にデータバスによって接続されている。タイマ１１１は、現在時刻を計時する。計算機１００間で通信することにより、各計算機１００のタイマ１１１が同じ時間を示すように同期をとっている。
【００１７】
ＣＰＵ１０２は、メモリ１０８に記憶されたプログラムを読み出して実行することで、計算機１００の各部を制御する。より詳細にはＣＰＵ１０２は、当該プログラムを実行することによって、後述する計算機１００の処理（ステップ）の各々を実現する。ＣＰＵ１０２は、例えば、マイクロプロセッサ（Microprocessor）に対応する。
【００１８】
通信Ｉ／Ｆ１６は、送信符号化および変調などしてネットワーク３または４に送信するデータ送信部に対応した送信器６Ａと、ネットワーク３または４から受信した信号を復調しデータに復号して出力する受信器６Ｂとを含む。受信器６Ｂは、送信器６Ａが送信したデータに対する応答を受信する応答受信部に対応する。
【００１９】
メモリ１０８は、ＲＡＭ（Random  Access  Memory）およびＲＯＭ（Read-Only  Memory）などの揮発性または不揮発性のメモリによって実現される。メモリ１０８は、ＣＰＵ１０２によって実行されるプログラム、データなどを記憶するとともに、他の計算機１００に送信済のデータを一時的に格納するリングバッファＲＢを有する。メモリ１０８に格納されるデータには、後述するデータＴＳＢおよびＴＲＢが含まれる。
【００２０】
計算機１００における処理は、各ハードウェアおよびＣＰＵ１０２により実行されるプログラムによって実現される。このようなプログラムは、メモリ１０８またはハードディスク１０９に予め記憶されている場合がある。また、プログラムは、記録媒体１１４からメモリＩ／Ｆ１１２を介して、あるいは、ネットワーク３を経由してダウンロード可能なものとして提供される場合もある。このようなプログラムは、メモリインターフェイス１１２を介して、ンターフェイス１１６を介してダウンロードされた後、メモリ１０８に格納される。
【００２１】
図２に示される計算機１００を構成する各ハードウェアは、一般的なものである。したがって、各ハードウェアの動作は周知であるので、詳細な説明は繰り返さない。
【００２２】
図３は、この発明の実施の形態に係る計算機１００の機能構成を示す図であって、主に、ネットワーク３を経由しデータ通信するための構成を示す。図３では、説明を簡単にするために、ネットワーク３を経由して相互に通信する計算機１００どうしのうち、データ送信側の計算機１００（以下、計算機１００Ａともいう）と、データ受信側の計算機１００（以下、計算機１００Ｂともいう）とを示す。計算機１００Ａは、ネットワーク３を経由して他の複数台の計算機１００と通信可能であるが、ここでは、説明を簡単にするために１台の計算機１００Ｂと通信すると想定する。
【００２３】
計算機１００Ａは、通信Ｉ／Ｆ１１６に対応する第１通信部１１と、通信に関する障害の発生を検出するための通信障害検出部１２と、通信障害を解析するためのデータを取得する障害解析データ取得部１３と、一時保持範囲算出部１４と、を備える。一時保持範囲算出部１４は、リングバッファＲＢに一時的に保持（格納）されるデータの範囲を算出して決定する。なお、通信に関する障害としては、ここでは通信路においてパケットがあふれてルータなどでパケット消失を引き起こすような障害を含む。
【００２４】
計算機１００Ｂは、通信Ｉ／Ｆ１１６に対応する第２通信部２１と、通信に関する障害の発生を検出するための通信障害検出部２３と、通信障害を解析するためのデータを取得する障害解析データ取得部２２と、一時保持範囲設定部２４と、を備える。一時保持範囲設定部２４は、リングバッファＲＢに一時的に保持（格納）されるデータの範囲を設定する。一時保持範囲算出部１４と一時保持範囲設定部２４の詳細は後述する。
【００２５】
なお、図３の各機能は、ＣＰＵ１０２が実行するプログラムと回路の組み合わせにより実現される。
【００２６】
＜一時保持範囲の算出方法＞
図４は、本発明の実施の形態に係るテーブルＴＢの一例を示す図である。これらデータは、計算機１００Ａおよび計算機１００Ｂの各メモリ１０８に格納される。データＴＳＢおよびＴＲＢそれぞれは、通信相手である計算機１００を識別するための識別子Ｄ１に対応して、データの送信時間Ｄ２と、待機時間Ｄ３とを含む。
【００２７】
送信時間Ｄ２は、タイマ１１１が計測する時間であって、送信器６Ａがネットワーク３にデータ送信を開始してから、当該データが相手側の計算機１００により受信されるまでの長さの時間を示す。ここでは、たとえば、送信器６Ａにより、後述するパケットの先頭ビットがネットワーク３に送出開始されてから、最終ビットがネットワーク３に送出完了するまでの時間の長さを示す。
【００２８】
また、待機時間Ｄ３も、タイマ１１１が計測する時間から求められる。具体的には、送信器６Ａがネットワーク３を経由して送信したデータに対する相手側の計算機１００からの応答を受信器６Ｂが受信するまでの長さの時間から、上記の送信時間を差し引いた長さの時間を示す。ここでは、通信で経由するルータ数およびルータ種類は、相手側の計算機１００毎に相違するため、データＴＳＢおよびＴＲＢに示すように、送信時間Ｄ２および待機時間Ｄ３も相手側計算機１００毎に相違する。
【００２９】
一時保持範囲算出部１４は、他の各計算機１００と通信し、データを送信開始してから、当該データに対する応答を受信するまでの所要時間（＝送信時間＋待機時間）を算出して取得する時間取得部の機能を有する。
【００３０】
送信側の計算機１００Ａの一時保持範囲算出部１４が算出した、送信時間Ｄ２および待機時間Ｄ３は、受信側の計算機１００Ｂに送信される。計算機１００Ｂの一時保持範囲設定部２４は、これを受信し、メモリ１０８にデータＴＲＢとして格納する。
【００３１】
＜パケットの構成＞
図５は、本実施の形態に係るパケットの構成図である。本実施の形態では、ネットワーク３を経由した計算機１００どうしの通信では、パケット形式のデータが送受信されるとするが、形式はパケットに限定されず、たとえばフレーム形式であってもよい。
【００３２】
図５を参照して、パケットはヘッダ部と、送信するべきデータ（応答を含む）を格納するデータ部と、誤り検出のためのデータを格納するＦＣＳ（Frame Check Sequence）部を有する。ヘッダ部には、パケットのタイプ（種類）を示す種別３１、宛先アドレスおよび送信元アドレスが格納される。宛先アドレスはパケットの送信先の計算機１００のアドレス等の識別子を示し、送信元アドレスはパケットの送信元の計算機１００のアドレス等の識別子を示す。計算機１００は、パケットを受信すると、受信パケットの種別３１の値から、いずれの種類のパケットであるかを判定することができる。ここでは、パケットの種類として、図５に示すパケットＰＡ１、ＰＡ２およびＰＡ３を示す。
【００３３】
図５（Ａ）を参照して、パケットＰＡ１は、電力系統５からの収集データを他の計算機１００を利用して分散処理するために送信される。ヘッダ部の種別３１として、“０１”が格納される。データ部には、電力系統５から収集した電力情報が格納される。ＣＰＵ１０２は、電力系統５からの収集データを格納したパケットＰＡ１を生成し、これを予め定められたシリアルな送信順に従って、送信器６Ａを介して計算機１００Ｂに送信する。ＣＰＵ１０２は、ヘッダ部にパケットＰＡ１のネットワーク３への送信時刻３２をタイマ１１１の出力に基づき格納し、また、シリアルな送信順番を示すシリアル番号３３を格納する。
【００３４】
なお、電力情報は、例えば設備の状態データと設備記号の組み合わせにより示される。具体的には、開閉器の開/閉、変圧器のタップ位置、各機器の電流/電圧などの情報を示す。
【００３５】
図５（Ｂ）を参照して、パケットＰＡ２は、上記の＜一時保持範囲算出方法＞により算出された送信時間３４および待機時間３５を他の計算機１００に通知するために用いられる。ヘッダ部の種別３１として“１０”が格納される。データ部には、通知するべき送信時間３４および待機時間３５が格納される。
【００３６】
図５（Ｃ）を参照して、パケットＰＡ３は、通信障害が検出されたことを他の計算機１００に通知するために用いられる。ヘッダ部の種別３１として“１１”が格納される。データ部には、通知するべき障害発生時刻３６および発生番号３７が格納される。発生番号３７は、上記のシリアルな送信順において通信障害の発生時に送信したパケットＰＡ１のシリアル番号を示す。
【００３７】
＜リングバッファ＞
図６は、本発明の実施の形態に係るリングバッファを説明する図である。図６（Ａ）では、送信側の計算機１００Ａの送信済データを格納したリングバッファＲＢ（以下、リングバッファＲＢ（Ｓ）ともいう）のデータ格納状態が示される。図６（Ｂ）では、受信側の計算機１００Ｂの受信済データを格納したリングバッファＲＢ（以下、リングバッファＲＢ（Ｒ）ともいう）のデータ格納状態が示される。リングバッファＲＢは、メモリ１０８における領域が固定であり、且つ予め定められたサイズ（容量）を有する。本実施の形態では、サイズは、上記の所要時間分の送受信データを十分に格納可能な容量を有する。
【００３８】
計算機１００ＡのＣＰＵ１１２は、シリアルな送信順に従ってパケットＰＡ１を送信する毎に、対応した送信順番（送信時刻３２，シリアル番号３３）を少なくとも含む送信済収集データ４０を、リングバッファＲＢ（Ｓ）に書き込む（格納する）。リングバッファＲＢ（Ｓ）には、当該領域の先頭アドレスから矢印ＡＲの方向に順にデータが書き込まれる。最終アドレスまで送信済収集データ４０が格納されて容量がいっぱいになると、書き込みアドレスを領域の先頭アドレスに戻し、古い格納データから順に上書きする。
【００３９】
同様に、計算機１００ＢのＣＰＵ１１２は、シリアルな送信順に従って送信されたパケットＰＡ１を受信する毎に、当該パケットＰＡ１の送信順番（送信時刻３２，シリアル番号３３を示す時刻４１およびデータＮｏ.４２）を少なくとも含む受信済収集データ４３を、リングバッファＲＢ（Ｒ）に書き込む（格納する）。リングバッファＲＢ（Ｒ）にも、当該領域の先頭アドレスから矢印ＡＲの方向に、順にデータが書き込まれて容量がいっぱいになると、書き込みアドレスを領域の先頭アドレスに戻し、古い格納データから順に上書きする。これにより、計算機１００Ａでは送信済の収集データを、また、計算機１００Ｂでは受信できた収集データを、それぞれ、少なくとも上記の所要時間分を格納しておくことができる。
【００４０】
なお、リングバッファＲＢのデータは、通信障害解析のために参照される。したがって、少なくとの通信障害発生時のデータを特定できればよい場合には、送信済収集データ４０および受信済収集データ４３は、送受信パケットのデータ部のデータは含まないとしてもよい。
【００４１】
＜送信側での通信障害解析用のデータ取得＞
本実施の形態に係る送信側の計算機１００Ａでは、通信障害検出部１２が通信障害を検出したとき、障害解析データ取得部１３は、通信障害検出時刻から少なくとも上記の所要時間を遡った範囲に該当する送信済収集データ４０を、リングバッファＲＢ（Ｓ）から検索し、ハードディスク１０９（以下、ハードディスク１０９（Ｓ）ともいう）に出力する。
【００４２】
具体的には、通信障害により、シリアルな順番に従って送信された一連のパケットＰＡ１のうちの、１個が消失し受信側の計算機１００Ｂで受信できなかった場合について説明する。
【００４３】
データ送信時には、計算機１００Ｂは、パケットＰＡ１を受信する毎に、受信完了を示す応答パケットを計算機１００Ａ宛てに送信する。応答パケットは、当該受信パケットＰＡ１のシリアル番号３３を格納している。計算機１００Ａでは、通信障害検出部１２は、第１通信部１１を介し受信する応答パケットのシリアル番号が、シリアルに連続しているかを判定する。連続しておらず欠けたと判定したとき通信障害を検出する。
【００４４】
たとえば、図６の矢印Ｘの時に通信障害発生が検出されると、障害解析データ取得部１３は、リングバッファＲＢ（Ｓ）に格納された各送信済収集データ４０のうち範囲２０（Ｓ）の領域に格納された送信済収集データ４０を読み出す。つまり、矢印Ｘの通信障害検出時刻から少なくとも上記の所要時間（以下、所要時間ＲＱ（Ｓ）ともいう）を遡った範囲に該当した時刻３２を有する送信済収集データ４０と、所要時間ＲＱ（Ｓ）の前後の時間Ｍ１，Ｍ２の範囲に該当した時刻３２を有する送信済収集データ４０とを、リングバッファＲＢ（Ｓ）から読み出し、ハードディスク１０９（Ｓ）に格納する。ここでは、出力先をハードディスク１０９（Ｓ）としたが、図示しないプリンタ、ディスプレイなどに出力されるとしてもよい。
【００４５】
なお、時間Ｍ１とＭ２は、通信障害の解析用データを確実に取得するための所要時間ＲＱに関する余裕時間であり、実験等により予め定められる。
【００４６】
＜受信側での通信障害解析用のデータ取得＞
上記の送信側の計算機１００Ａにおいて範囲２０（Ｓ）の送信済収集データ４０がハードディスク１０９（Ｓ）に出力されるとき、計算機１００Ｂでも、リングバッファＲＢ（以下、リングバッファＲＢ（Ｒ）ともいう）の、範囲２０（Ｓ）に対応した範囲２０（Ｒ）の受信済収集データ４３が読み出されて、ハードディスク１０９（以下、ハードディスク１０９（Ｒ）ともいう）に格納される。
【００４７】
具体的には、計算機１００Ａでは、ＣＰＵ１１２は、通信障害発生を検出すると、パケットＰＡ３を計算機１００Ｂ宛てに送信する。計算機１００Ｂは、パケットＰＡ３を受信すると、受信パケットＰＡ３の発生時刻３６または発生番号３７に基づき、リングバッファＲＢ（Ｒ）を検索する。検索結果、発生番号３７の直近の番号を示すデータＮｏ．４２の受信済収集データ４３（矢印Ｙが示すデータ）から、メモリ１０８のデータＴＲＢが示す所要時間（以下、所要時間ＲＱ（Ｒ）ともいう）を遡った範囲に該当する時刻４１を有した受信済収集データ４３と、所要時間ＲＱ（Ｒ）の前後の予め定められた時間Ｍ３，Ｍ４の範囲に該当する時刻４１を有した受信済収集データ４３とを、リングバッファＲＢ（Ｒ）から読み出し、ハードディスク１０９（Ｒ）に格納する。ここでも、出力先をハードディスク１０９（Ｒ）としたが、図示しないプリンタ、ディスプレイなどに出力されるとしてもよい。
【００４８】
なお、時間Ｍ３とＭ４は、解析用データを確実に取得するための所要時間ＲＱ（Ｒ）に関する余裕時間であり、実験等により予め定められる。
【００４９】
＜処理フロー＞
図７は、本発明の実施の形態に係る計算機１００間の通信を伴った処理のフローチャートである。図７では、計算機１００Ａの処理フローと計算機１００Ｂの処理フローが関連付けて示される。計算機１００Ａの処理フローチャートは、プログラムとして予め計算機１００Ａのメモリ１０８に格納されて、計算機１００ＡのＣＰＵ１１２が読み出し、実行する。同様に、計算機１００Ｂの処理フローチャートも、プログラムとして予め計算機１００Ｂのメモリ１０８に格納されて、計算機１００ＢのＣＰＵ１１２が読み出し、実行する。
【００５０】
計算機１００Ａおよび計算機１００Ｂのそれぞれが、電源投入されて起動されると、対応のフローチャートに従う処理を開始する。
【００５１】
まず、計算機１００Ａの一時保持範囲算出部１４は、上述の＜一時保持範囲の算出方法＞に係る手順を実行し、計算機１００Ｂについての送信時間Ｄ２および待機時間のＤ３を算出し、データＴＳＢとしてメモリ１０８に格納する（ステップＳＳ３）。そして、データＴＳＢを受信側の計算機１００Ｂに通知する（ステップＳＳ７）。
【００５２】
受信側の計算機１００Ｂの一時保持範囲設定部２４は、計算機１００Ａから送信されたデータＴＳＢを受信し、データＴＲＢとしてメモリ１０８に格納する（ステップＳＲ７）。これにより、通信障害を解析用データの一時保持範囲を決定するためのデータを計算機１００ＡとＢ間で共有することができる。
【００５３】
その後、計算機１００Ａでは、収集データを格納したパケットＰＡ１が生成されて、送信器６Ａを介し計算機１００Ｂに送信される（ステップＳＳ９）。送信したパケットＰＡ１は送信済収集データ４０としてリングバッファＲＢ（Ｓ）に格納される（ステップＳＳ１１）。
【００５４】
計算機１００Ｂでは、受信器６Ｂを介し計算機１００ＡからパケットＰＡ１が受信できたときは、受信済収集データ４３としてリングバッファＲＢ（Ｒ）に格納する（ステップＳＲ９、ステップＳＲ１１でＹＥＳ）。そして、応答パケットが生成されて、計算機１００Ａに送信される（ステップＳＲ１３）。一方、直前のパケットを受信してから予め定めた時間を経過してもパケットＰＡ１が受信できないときは（ステップＳＲ１１でＮＯ）、リングバッファＲＢ（Ｒ）への格納および応答送信は行われず、ステップＳＲ１５に移行する。
【００５５】
計算機１００Ａでは、ステップＳＳ９で送信したパケットＰＡ１に対する応答パケットを受信するか否かを判定する（ステップＳＳ１３）。具体的には、通信障害検出部１２は、当該パケットＰＡ１を送信後、データＴＳＢの待機時間Ｄ３内に応答パケットを受信するか否かを判定する。応答パケットを受信できたと判定すると（ステップＳＳ１３でＹＥＳ）、ステップＳＳ９に戻り、収集データを送信する。なお、実際には、受信器６Ｂを介し応答パケットの受信を待機する時間Ｄ３内でも送信器６Ａを介してシリアルな順序に従い、順次に、パケットＰＡ１が計算機１００Ｂ宛てに送信されて、送信済収集データ４０がリングバッファＲＢ（Ｓ）に格納されている。
【００５６】
一方、待機時間Ｄ３を待っても応答パケットを受信できないと判定すると（ステップＳＳ１３でＮＯ）、通信障害検出部１２は通信障害の発生を検出し、障害発生を通知するためのパケットＰＡ３を生成し、計算機１００Ｂに送信する（ステップＳＳ１５）。
【００５７】
通信障害発生が検出されたとき、計算機１００Ａでは、障害解析データ取得部１３はリングバッファＲＢ（Ｓ）を検索し、図６（Ａ）で説明した範囲２０（Ｓ）の送信済収集データ４０を読み出し、ハードディスク１０９（Ｓ）に格納する（ステップＳＳ１７、ＳＳ１９）。これにより、障害解析のためのログデータは、ハードディスク１０９（Ｓ）に格納されて保持（上書きされず）される。その後、処理を終了するか否かが判定される（ステップＳＳ２１）。終了と判定されると（ステップＳＳ２１でＹＥＳ）、一連の処理は終了するが、終了と判定されないときは（ステップＳＳ２１でＮＯ）、ステップＳＳ９に戻り、収集データの送信が繰り返される。例えば、計算機１００Ａが電源ＯＦＦされたか否かにより、処理を終了するか否かを判定する。
【００５８】
なお、ステップＳＳ１３〜ＳＳ２１の期間においても、送信器６Ａを介してシリアルな順序に従い、順次に、パケットＰＡ１が計算機１００Ｂ宛てに送信されて、送信済収集データ４０がリングバッファＲＢ（Ｓ）に格納されている。
【００５９】
同様に、計算機１００Ｂでは、計算機１００Ａから障害発生を通知するパケットＰＡ３を受信するか否かを判定する（ステップＳＲ１５）。受信したと判定すると（ステップＳＲ１５でＹＥＳ）、ステップＳＲ１７に移行するが、受信しないと判定すると（ステップＳＲ１５でＮＯ）、ステップＳＲ９に戻り、計算機１００ＡからのパケットＰＡ１を受信する。
【００６０】
なお、実際には、ステップＳＲ１１〜ＳＲ１５の期間においても、受信器６Ｂを介してシリアルな順序に従い、順次に、送信されたパケットＰＡ１が計算機１００Ｂの受信器６Ｂにより受信されて、受信済収集データ４３としてリングバッファＲＢ（Ｒ）に格納されている。
【００６１】
通信障害検出部２３は、受信器６Ｂから受信したパケットを入力し、入力パケットの種別３１は“１１”を示すと判定すると（ステップＳＲ１５でＹＥＳ）、障害解析データ取得部２２はリングバッファＲＢ（Ｒ）を検索し、図６（Ｂ）で説明した範囲２０（Ｒ）の受信済収集データ４３を読み出し、ハードディスク１０９（Ｒ）に格納する（ステップＳＲ１７、ＳＲ１９）。これにより、障害解析のためのログデータは、ハードディスク１０９（Ｒ）に格納されて保持（上書きされず）される。その後、例えば、送信側の計算機１００Ｂが電源ＯＦＦされたか否かにより、処理を終了するか否かを判定する（ステップＳＲ２１）。終了と判定されると（ステップＳＲ２１でＹＥＳ）、一連の処理は終了するが、終了と判定されないときは（ステップＳＲ２１でＮＯ）、ステップＳＲ９に戻り、収集データの受信が繰り返される。
【００６２】
なお、ステップＳＲ１５〜ＳＲ２１の期間においても、シリアルな順序に従い、計算機１００Ａから送信されたパケットＰＡ１を、受信器６Ｂを介して受信し、受信済収集データ４３としてリングバッファＲＢ（Ｒ）に格納される。
【００６３】
＜解析処理＞
本実施の形態では、計算機１００Ａでハードディスク１０９（Ｓ）に格納された範囲２０（Ｓ）の送信済収集データ４０のログデータを、障害発生時の収集データとして取得すうことができる。
【００６４】
また、本実施の形態では、計算機１００Ａでハードディスク１０９（Ｓ）に格納された範囲２０（Ｓ）の送信済収集データ４０のログデータと、計算機１００Ｂでハードディスク１０９（Ｒ）に格納された範囲２０（Ｒ）の受信済収集データ４３のログデータとを比較する。比較結果から、障害発生の状況（前後での障害発生の回数など）を検出できるとともに、障害により受信できなかったシリアル番号から、障害により受信できなかった対応の未受信収集データを特定することができる。
【００６５】
ログデータの解析処理は、計算機１００Ａが、計算機１００Ｂからログデータを受信し、受信したログデータをハードディスク１０９（Ｓ）のログデータと比較して行う。この場合には、収集データの送信元である計算機１００Ａで比較がなされるから、計算機１００Ａが格納している送信済収集データから、障害発生時の収集データを速やかに特定することができる。
【００６６】
また、計算機１００Ｂが、計算機１００Ａからログデータを受信し、ハードディスク１０９（Ｒ）のログデータと比較し、比較結果から、障害発生の状況を検出するとしてもよい。
【００６７】
または、解析専用の計算機を備えるようにして、専用計算機が計算機１００Ａおよび計算機１００Ｂの両方からログデータを受信し、比較し、障害発生の状況を検出するとしてもよい。
【００６８】
上記の比較結果による情報は、計算機１００Ａまたは計算機１００Ｂのディスプレイ１０に表示され、またはハードディスク１０９に格納されるとしてよい。
【００６９】
＜収集データの送受信＞
上記の実施の形態では、電力系統５からの収集データを格納したパケットＰＡ１は、計算機１００Ａから計算機１００Ｂの一方向に送信される場合を説明したが、同時に、計算機１００Ｂからも電力系統５からの収集データを格納したパケットＰＡ１が計算機１００Ａへ送信されるような双方向の通信とすることもできる。つまり、計算機１００は、収集データの他の計算機１００への送信機能と受信機能との両方を有し、両方が並行して動作する。
【００７０】
この場合において、計算機１００Ｂは、図３の計算機１００Ａの機能構成をさらに備え、また、計算機１００Ａは、図３の計算機１００Ｂの構成をさらに備える。収集データの通信時には、計算機１００Ａは図７の送信側の処理と並行して図７の受信側の処理を実行し、計算機１００Ｂは図７の受信側の処理と並行して図７の送信側の処理を実行する。
【００７１】
したがって、図７のステップＳＳ７で計算機１００Ａから、計算機１００Ｂに通知されたデータＴＳＢと同様に、計算機１００Ｂから計算機１００Ａに対して、データＴＲＢが通知される。これにより、データＴＳＢに基づき計算機１００Ａでは範囲２０（Ｓ）が設定されるとともに計算機１００Ｂでは範囲２０（Ｒ）が設定される。また、データＴＲＢに基づき、計算機１００Ａでは範囲２０（Ｒ）が設定されるとともに計算機１００Ｂの範囲２０（Ｓ）が設定される。
【００７２】
これにより、計算機１００Ａが収集データを計算機１００Ｂに送信する通信処理（これを、第１通信処理ともいう）と、計算機１００Ｂが収集データを送信側計算機１００Ｂに送信する通信処理（これを、第２通信処理ともいう）とが並行して実行される場合に、第１通信処理で障害発生したときは、計算機１００ＡではリングバッファＲＢ（Ｓ）の範囲２０（Ｓ）のログデータがハードディスク１０９（Ｓ）に格納されて、計算機１００ＢではリングバッファＲＢ（Ｒ）の範囲２０（Ｒ）のログデータが、ハードディスク１０９（Ｒ）に格納される。同様に、第２通信処理で障害発生したときは、計算機１００ＡではリングバッファＲＢ（Ｒ）の範囲２０（Ｒ）のログデータがハードディスク１０９（Ｒ）に格納されて、計算機１００ＢではリングバッファＲＢ（Ｓ）の範囲２０（Ｓ）のログデータが、ハードディスク１０９（Ｓ）に格納される。この場合には、上記の解析処理では、第１通信処理に関しては、収集データ送信元の計算機１００Ａで、計算機１００Ｂのログデータを受信して解析処理を実行する。また、第２通信処理に関しては、収集データ送信元の計算機１００Ｂで、計算機１００Ａのログデータを受信し解析処理を実行する。
【００７３】
＜変形例＞
上述の実施の形態では計算機１００Ａは、計算機１００Ｂとのみ通信するとしたが、複数の他の計算機１００と通信する場合であっても、他の各計算機１００との間での収集データの通信に、上記の実施の形態を同様に適用することができる。
【００７４】
また、データＴＳＢ（データＴＲＢ）は、計算機１００が起動したときに算出し相手側計算機１００に通知するとしたが、これに限定されない。たとえば、計算機１００が稼働中において定期的にデータＴＳＢ（データＴＲＢ）の算出し通知するとしてもよい。
【００７５】
また、範囲２０（Ｓ）についての時間Ｍ１，Ｍ２および範囲２０（Ｒ）の時間Ｍ３，Ｍ４は時間に代替して、パケット数で設定するとしてもよい。
【００７６】
本実施の形態では、他のコンピュータと通信しながら電力系統からの収集データを処理する方法が提供される。このデータ処理方法は、収集データをシリアルな送信順に従って他のコンピュータに送信するステップと、送信するステップにより送信した収集データに対する他のコンピュータからの応答を受信するステップと、他のコンピュータに収集データを送信開始してから、当該収集データに対する応答を受信するまでの所要時間を取得するステップと、シリアルな送信順に従って送信するステップにおいて収集データを送信する毎に、当該収集データに対応した送信順番を少なくとも含む送信済収集データをメモリに格納するステップと、応答を受信するステップにおいて応答を受信しないと判定された時から少なくとも所要時間を遡った範囲に該当する送信順番を含む送信済収集データを、メモリから読み出し出力するステップと、を備える。
【００７７】
（実施の形態の効果）
本実施の形態によれば、複数の計算機１００がネットワークされた分散処理システムにおいて、障害解析のために、必要な範囲２０（Ｓ）または２０（Ｒ）のデータを抽出して取得するから、解析ための大量データ伝送による通信負荷、また解析データを格納するためにメモリ消費容量、またデータ処理に係るＣＰＵの負荷などの上昇を抑制することができる。
【００７８】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００７９】
３，４  ネットワーク、５  電力系統、１２，２３  通信障害検出部、１３，２２  障害解析データ取得部、１４  一時保持範囲算出部、２４  一時保持範囲設定部、１００  計算機。
【図１】
2014206809.tif 000003
【図２】
2014206809.tif 000004
【図３】
2014206809.tif 000005
【図４】
2014206809.tif 000006
【図５】
2014206809.tif 000007
【図６】
2014206809.tif 000008
【図７】
2014206809.tif 000009