(57)【要約】【課題】数値データが外れ値を示した場合に、どのような対応をとるべきか把握しやすいデータ監視装置、データ監視方法及びデータ監視プログラムを提供する。【解決手段】データ監視装置１０は、定期的に記録された数値データを取得する取得部１１と、数値データの外れ値を検出する検出部１２と、検出部１２により外れ値を検出した場合に、数値データの推移と類似する、過去に取得された数値データを抽出する抽出部１３と、抽出部１３により抽出された数値データに基づいて、数値データの今後の推移を予測する予測部１４と、を備える。【選択図】図２
2018191217.tif 000002
【特許請求の範囲】
【請求項１】
定期的に記録された数値データを取得する取得部と、
前記数値データの外れ値を検出する検出部と、
前記検出部により前記外れ値を検出した場合に、前記数値データの推移と類似する、過去に取得された前記数値データを抽出する抽出部と、
前記抽出部により抽出された前記数値データに基づいて、前記数値データの今後の推移を予測する予測部と、
を備えるデータ監視装置。
【請求項２】
前記予測部は、前記数値データが所定の閾値に達する時刻を予測する、
請求項１に記載のデータ監視装置。
【請求項３】
前記検出部は、
前記数値データをフーリエ変換して周波数成分を算出する算出部を含み、
前記周波数成分に基づいて前記数値データの外れ値を検出する、
請求項１又は２に記載のデータ監視装置。
【請求項４】
前記検出部は、
前記周波数成分について主成分分析を行い、前記周波数成分の次元削減を行う削減部をさらに含む、
請求項３に記載のデータ監視装置。
【請求項５】
前記検出部は、
前記数値データを、学習用データと前記学習用データ以外に分類する分類部と、
前記学習用データの平均及び分散に基づいて、前記数値データを標準化する標準化部と、
を含む、
請求項１から４のいずれか１項に記載のデータ監視装置。
【請求項６】
前記分類部は、所定の周期に関して、少なくとも連続する２周期にわたって前記数値データが所定の数値範囲に収まる場合に、当該少なくとも連続する２周期の前記数値データを前記学習用データに分類する、
請求項５に記載のデータ監視装置。
【請求項７】
定期的に記録された数値データを取得するステップと、
前記数値データの外れ値を検出するステップと、
前記外れ値を検出した場合に、前記外れ値の発生に至る前記数値データの推移と類似する、過去に取得された前記数値データを抽出するステップと、
抽出された前記数値データに基づいて、前記数値データの今後の推移を予測するステップと、
を含むデータ監視方法。
【請求項８】
データ監視装置に備えられたコンピュータを、
定期的に記録された数値データを取得する取得部、
前記数値データの外れ値を検出する検出部、
前記検出部により前記外れ値を検出した場合に、前記外れ値の発生に至る前記数値データの推移と類似する、過去に取得された前記数値データを抽出する抽出部、及び
前記抽出部により抽出された前記数値データに基づいて、前記数値データの今後の推移を予測する予測部、
として機能させるデータ監視プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ監視装置、データ監視方法及びデータ監視プログラムに関する。
【背景技術】
【０００２】
従来、通信回線を介して転送されるデータ量（以下、トラフィックという。）等の数値データを監視して、数値データが外れ値を示した場合に、原因の究明や、再発防止策の検討等が行われている。
【０００３】
外れ値の検出に関して、例えば、非特許文献１には、データの相対的な孤立度合いを示すlocal outlier factor (ＬＯＦ)と称する指標を算出し、ＬＯＦを基準として外れ値を検出することが記載されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Markus M. Breunig、他３名、 “LOF: Identifying Density-Based Local Outliers”、Proc. ACM SIGMOD 2000 Int. Conf. On Management of Data, Dalles, TX, 2000
【発明の概要】
【発明が解決しようとする課題】
【０００５】
監視対象の数値データが通信回線のトラフィックの場合、トラフィックが異常に高い値となった後、さらにトラフィックが増大してサーバに過剰な負荷がかかり、通信障害が発生することがある。一方で、トラフィックが一時的に外れ値を示した場合であっても、その後平常に推移するようになり、結果的に何らの障害も発生しないことがある。
【０００６】
トラフィックの外れ値を検出した場合に、障害の発生に備えて管理者に対して警告を通知することが考えられるが、結果的に何らの障害も発生しない場合もあるため、警告が通知されても対応が取りづらいことがあった。
【０００７】
そこで、本発明は、数値データが外れ値を示した場合に、どのような対応をとるべきか把握しやすいデータ監視装置、データ監視方法及びデータ監視プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一態様に係るデータ監視装置は、定期的に記録された数値データを取得する取得部と、数値データの外れ値を検出する検出部と、検出部により外れ値を検出した場合に、数値データの推移と類似する、過去に取得された数値データを抽出する抽出部と、抽出部により抽出された数値データに基づいて、数値データの今後の推移を予測する予測部と、を備える。
【０００９】
この態様によれば、数値データの外れ値を検出した場合に、数値データの今後の推移が予測される。そのため、障害の発生を予測することができ、どのような対応をとるべきか把握することができる。
【００１０】
上記態様において、予測部は、数値データが所定の閾値に達する時刻を予測してもよい。
【００１１】
この態様によれば、所定の閾値を障害が発生する限界値に設定することで、障害が発生する時刻を予測することができ、数分単位で実行可能な対応策を立案する必要があるのか、数時間単位で実行可能な対応策を立案する必要があるのかといった判断に資する情報を提供することができる。
【００１２】
上記態様において、検出部は、数値データをフーリエ変換して周波数成分を算出する算出部を含み、周波数成分に基づいて数値データの外れ値を検出してもよい。
【００１３】
この態様によれば、数値データの時間成分には必ずしも現れないパターンに基づいて外れ値の検出を行うことができる。
【００１４】
上記態様において、検出部は、周波数成分について主成分分析を行い、周波数成分の次元削減を行う削減部をさらに含んでもよい。
【００１５】
この態様によれば、解析対象となる数値データの容量を削減することができ、演算負荷を低減させることができる。
【００１６】
上記態様において、検出部は、数値データを、学習用データと学習用データ以外に分類する分類部と、学習用データの平均及び分散に基づいて、数値データを標準化する標準化部と、を含んでもよい。
【００１７】
この態様によれば、異なる種類の数値データを扱う場合であっても内部処理を変更する必要がなくなり、様々な種類の数値データに関して同様の処理で障害の発生を予測することができる。
【００１８】
上記態様において、分類部は、所定の周期に関して、少なくとも連続する２周期にわたって数値データが所定の数値範囲に収まる場合に、当該少なくとも連続する２周期の数値データを学習用データに分類してもよい。
【００１９】
この態様によれば、平常時の数値データが学習用データに分類され、平常時との比較に基づいて外れ値の検出が行われるため、障害発生の予測精度が向上する。
【００２０】
本発明の他の態様に係るデータ監視方法は、定期的に記録された数値データを取得するステップと、数値データの外れ値を検出するステップと、外れ値を検出した場合に、外れ値の発生に至る数値データの推移と類似する、過去に取得された数値データを抽出するステップと、抽出された数値データに基づいて、数値データの今後の推移を予測するステップと、を含む。
【００２１】
この態様によれば、数値データの外れ値を検出した場合に、数値データの今後の推移が予測される。そのため、障害の発生を予測することができ、どのような対応をとるべきか把握することができる。
【００２２】
本発明の他の態様に係るデータ監視プログラムは、データ監視装置に備えられたコンピュータを、定期的に記録された数値データを取得する取得部、数値データの外れ値を検出する検出部、検出部により外れ値を検出した場合に、外れ値の発生に至る数値データの推移と類似する、過去に取得された数値データを抽出する抽出部、及び抽出部により抽出された数値データに基づいて、数値データの今後の推移を予測する予測部、として機能させる。
【００２３】
この態様によれば、数値データの外れ値を検出した場合に、数値データの今後の推移が予測される。そのため、障害の発生を予測することができ、どのような対応をとるべきか把握することができる。
【発明の効果】
【００２４】
本発明によれば、数値データが外れ値を示した場合に、どのような対応をとるべきか把握しやすいデータ監視装置、データ監視方法及びデータ監視プログラムが提供される。
【図面の簡単な説明】
【００２５】
【図１】本発明の実施形態に係るデータ監視装置のネットワーク構成図である。
【図２】本発明の実施形態に係るデータ監視装置の機能ブロック図である。
【図３】本発明の実施形態に係るデータ監視装置によって実行される第１処理のフローチャートである。
【図４】本発明の実施形態に係るデータ監視装置によって実行される第２処理のフローチャートである。
【図５】本発明の実施形態に係るデータ監視装置によって予測された数値データの今後の推移を示すグラフである。
【発明を実施するための形態】
【００２６】
添付図面を参照して、本発明の実施形態について説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。
【００２７】
図１は、本発明の実施形態に係るデータ監視装置１０のネットワーク構成図である。データ監視装置１０は、通信ネットワークＮに接続され、通信ネットワークＮを介してユーザ端末装置２０及びサーバ装置３０と接続される。通信ネットワークＮは、有線又は無線による通信網であってよく、インターネット、ＬＡＮ（Local Area Network）又はその他のネットワークであってよい。
【００２８】
本実施形態に係るデータ監視装置１０は、サーバ装置３０のトラフィックを示す数値データを監視する。もっとも、データ監視装置１０は、トラフィック以外の数値データを監視してもよく、監視対象とする数値データは任意である。サーバ装置３０は、クライアントであるユーザ端末装置２０からのリクエストに応じて、例えばウェブページに関するデータをユーザ端末装置２０に送信する。同図では、１台のユーザ端末装置２０を示しているが、通信ネットワークＮには任意の台数のユーザ端末装置２０が接続されてよく、サーバ装置３０は、任意の台数のユーザ端末装置２０からのリクエストを受け付けるものであってよい。サーバ装置３０にリクエストが集中すると、トラフィックが増大し、サーバ装置３０の演算負荷や通信負荷が過大となり、通信障害が発生することがある。
【００２９】
図２は、本発明の実施形態に係るデータ監視装置１０の機能ブロック図である。データ監視装置１０は、取得部１１、検出部１２、抽出部１３、予測部１４及び記憶部１５を備える。
【００３０】
取得部１１は、定期的に記録された数値データを取得する。取得部１１は、取得した数値データを、記録日時と関連付けて記憶部１８に記憶する。本実施形態に係るデータ監視装置１０の場合、取得部１１は、サーバ装置３０からトラフィックに関する数値データを所定の時間間隔で継続的に取得する。所定の時間間隔は任意に設定してよいが、例えば１秒間隔とすることができる。
【００３１】
検出部１２は、数値データの外れ値を検出する。検出部１２は、算出部１２ａ、削減部１２ｂ、分類部１２ｃ及び標準化部１２ｄを含む。算出部１２ａは、数値データをフーリエ変換して周波数成分を算出する。検出部１２は、周波数成分に基づいて数値データの外れ値を検出する。
【００３２】
削減部１２ｂは、周波数成分について主成分分析を行い、周波数成分の次元削減を行う。ここで、次元削減とは、周波数成分の一部を捨象して、周波数成分の数を減らすことをいう。分類部１２ｃは、数値データを、学習用データと学習用データ以外に分類する。より具体的には、分類部１２ｃは、所定の周期に関して、少なくとも連続する２周期にわたって数値データが所定の数値範囲に収まる場合に、当該少なくとも連続する２周期の数値データを学習用データに分類する。ここで、所定の周期及び所定の数値範囲は、データ監視装置１０のユーザによって任意に設定されてよいが、数値データに基づいて算出されてもよい。数値データは、学習用データ又は非学習用データの区別が可能なように、記憶部１８に記憶される。数値データは、例えば学習用データ又は非学習用データを示すタグが付されて記憶部１８に記憶される。標準化部１２ｄは、学習用データの平均及び分散に基づいて、数値データを標準化する。
【００３３】
抽出部１３は、検出部１２により外れ値を検出した場合に、過去に取得された数値データの中から、取得部１１により取得した数値データの推移と類似する数値データを抽出する。予測部１４は、抽出部１３により抽出された数値データに基づいて、数値データの今後の推移を予測する。また、予測部１４は、数値データが所定の閾値に達する時刻を予測する。
【００３４】
図３は、本発明の実施形態に係るデータ監視装置１０によって実行される第１処理のフローチャートである。第１処理は、データ監視装置１０によって数値データを学習用データと非学習用データに分類する処理である。
【００３５】
データ監視装置１０は、取得部１１によって数値データを取得する（Ｓ１０）。分類部１２ｃは、所定の周期に関して、少なくとも連続する２周期にわたって数値データが所定の数値範囲に収まるか否かを判断する（Ｓ１１）。分類部１２ｃは、例えば、所定の周期として１日間を用いて、連続する２日間の数値データが、数値データ全体の９９パーセント点内に収まるか否かを判断することとしてよい。
【００３６】
少なくとも連続する２周期にわたって数値データが所定の数値範囲に収まる場合（Ｓ１１：Ｙｅｓ）、分類部１２ｃは、当該少なくとも連続する２周期の数値データを学習用データに分類する（Ｓ１２）。一方、少なくとも連続する２周期にわたって数値データが所定の数値範囲に収まらない場合（Ｓ１１：Ｎｏ）、分類部１２ｃは、当該少なくとも連続する２周期の数値データを非学習用データに分類する（Ｓ１３）。
【００３７】
分類部１２ｃは、学習用データ又は非学習用データを示すタグを付して、数値データを記憶部１８に記憶する（Ｓ１４）。さらに、標準化部１２ｄは、学習用データの平均及び分散を算出する（Ｓ１５）。学習用データの平均及び分散の用途については、次図に示す第２処理のフローチャートにおいて説明する。分類部１２ｃによって学習用データと非学習用データの分類を行うことで、平常時の数値データが学習用データに分類され、平常時との比較に基づいて外れ値の検出が行われるため、障害発生の予測精度が向上する。特に、過去に取得された数値データ全体を用いて標準化部１２ｄによる標準化や検出部１２による外れ値の検出を行う場合よりも、障害発生の予測精度が向上する。
【００３８】
図４は、本発明の実施形態に係るデータ監視装置１０によって実行される第２処理のフローチャートである。第２処理は、数値データの外れ値を検出した場合に、数値データの今後の推移を予測する処理である。
【００３９】
データ監視装置１０は、取得部１１によって数値データを取得する（Ｓ２０）。標準化部１２ｄは、第１処理において算出した学習用データの平均及び分散を用いて、数値データを標準化する（Ｓ２１）。標準化部１２ｄは、数値データと学習用データの平均の差を、学習用データの標準偏差（分散の平方根）で割ることで、数値データを標準化してよい。このように、数値データを標準化することで、異なる種類の数値データを扱う場合であっても内部処理を変更する必要がなくなり、様々な種類の数値データに関して同様の処理で障害の発生を予測することができる。また、学習用データに基づいて数値データの標準化を行うことで、平常時における数値データの平均及び分散に基づいて標準化を行うことができ、数値データ全体の平均及び分散に基づいて数値データを標準化する場合と比較して、その後に行われる検出部１２による外れ値の検出や、予測部１４による数値データの今後の推移の予測の精度が向上する。
【００４０】
算出部１２ａは、数値データをフーリエ変換して周波数成分を算出する（Ｓ２２）。算出部１２ａは、高速フーリエ変換を用いて数値データのフーリエ変換を求めてよい。数値データの周波数成分を算出して、外れ値検出を行うことで、数値データの時間成分には必ずしも現れないパターンに基づいて外れ値の検出を行うことができる。
【００４１】
削減部１２ｂは、数値データの周波数成分について主成分分析を行い、周波数成分の次元削減を行う（Ｓ２３）。削減部１２ｂは、主成分分析によって数値データの周波数成分のうち支配的ではない成分を抽出し、当該成分を削除する処理を行ってよい。削減部１２ｂによって、解析対象となる数値データの容量を削減することができ、データ監視装置１０の演算負荷を低減させることができる。
【００４２】
標準化部１２ｄは、第１処理において算出した学習用データの平均及び分散を用いて、削減部１２ｂによって次元削減されたデータを標準化する（Ｓ２４）。このように、次元削減を行う前後で数値データの標準化を行うことで、異なる種類の数値データを扱う場合であっても内部処理を変更する必要がなくなり、様々な種類の数値データに関して同様の処理で障害の発生を予測することができる。
【００４３】
データ監視装置１０は、検出部１２によって、数値データの周波数成分に基づいて数値データの外れ値を検出したか否かを判断する（Ｓ２５）。検出部１２は、ＬＯＦに基づいて、外れ値の検出を行ってよい。検出部１２によって外れ値を検出しない場合（Ｓ２５：Ｎｏ）、第２処理は終了する。一方、外れ値を検出した場合（Ｓ２５：Ｙｅｓ）、抽出部１３は、現在の数値データの推移と類似する、過去に取得された数値データを記憶部１８から抽出する（Ｓ２６）。抽出部１３は、現在の数値データと類似する過去に取得された数値データを、レコメンド処理を用いて抽出してよい。抽出部１３は、例えば、現在の数値データ及び過去に取得された数値データに関して局所近傍ハッシュを求めて、類似する数値データを抽出してよい。
【００４４】
予測部１４は、抽出部１３により抽出された数値データに基づいて、数値データの今後の推移を予測する（Ｓ２７）。予測部１４は、抽出部１３により抽出された数値データを、現在の数値データに外挿することで、数値データの今後の推移を予測してよい。さらに、予測部は、数値データが所定の閾値に達する時刻を予測する（Ｓ２８）。ここで、所定の閾値は、データ監視装置１０のユーザによって任意に設定されてよいが、数値データに基づいて算出されてもよい。
【００４５】
本実施形態に係るデータ監視装置１０によれば、数値データの外れ値を検出した場合に、数値データの今後の推移が予測される。そのため、障害の発生を予測することができ、どのような対応をとるべきか容易に把握することができる。また、所定の閾値を、障害が発生する限界値に設定することで、障害が発生する時刻を予測することができ、数分単位で実行可能な対応策を立案する必要があるのか、数時間単位で実行可能な対応策を立案する必要があるのかといった判断に資する情報を提供することができる。
【００４６】
図５は、本発明の実施形態に係るデータ監視装置１０によって予測された数値データの今後の推移を示すグラフである。グラフの横軸は時間を示し、縦軸は数値データのデータ値を示す。
【００４７】
同図に示すグラフは、過去に取得された数値データである第１数値データＤ１と、予測された数値データである第２数値データＤ２と、抽出部１３によって抽出された数値データである第３数値データＤ３と、を含む。また、グラフには、検出部１２によって外れ値が検出されたタイミングが「外れ値検出」という記載によって図示されている。
【００４８】
抽出部１３は、検出部１２によって外れ値が検出された後に、記憶部１８に記憶された過去の数値データから、現在の数値データの推移と類似する第３数値データＤ３を抽出する。予測部１４は、第３数値データＤ３を現在の数値データに外挿して、予測される数値データの推移として、第２数値データＤ２を表示させる。第２数値データＤ２は、予測部１４は、第２数値データＤ２が閾値に達する時刻を求めることで、障害が発生する時刻を予測する。グラフには、予測部１４によって予測された、障害が発生する時刻を「予測時刻」として示している。
【００４９】
本実施形態に係るデータ監視装置１０によれば、数値データの今後の推移を容易に把握できるように表示することができ、障害が発生するおそれを分かり易く図示することができる。
【００５０】
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態が備える各要素並びにその配置、材料、条件、形状及びサイズ等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
【符号の説明】
【００５１】
１０…データ監視装置、１１…取得部、１２…検出部、１２ａ…算出部、１２ｂ…削減部、１２ｃ…分類部、１２ｄ…標準化部、１３…抽出部、１４…予測部、1５…記憶部、２０…ユーザ端末装置、３０…サーバ装置、Ｄ１…第１数値データ、Ｄ２…第２数値データ、Ｄ３…第３数値データ、Ｎ…通信ネットワーク。
【図１】
2018191217.tif 000003
【図２】
2018191217.tif 000004
【図３】
2018191217.tif 000005
【図４】
2018191217.tif 000006
【図５】
2018191217.tif 000007