(57)【要約】【課題】時系列データの分析を支援すること。【解決手段】データ分析装置は、複数の時系列データのそれぞれについて変化点スコアの時系列を算出する第１の算出部と、前記時系列データごとに、前記変化点スコアの時系列に基づいて、指定された時刻から所定の期間内における時間的変化量を示す指標値を算出する第２の算出部と、前記第２の算出部によって算出された指標値に従った順番で、前記複数の時系列データを出力する出力部と、を有する。【選択図】図３
2018132918.tif 000002
【特許請求の範囲】
【請求項１】
複数の時系列データのそれぞれについて変化点スコアの時系列を算出する第１の算出部と、
前記時系列データごとに、前記変化点スコアの時系列に基づいて、指定された時刻から所定の期間内における時間的変化量を示す指標値を算出する第２の算出部と、
前記第２の算出部によって算出された指標値に従った順番で、前記複数の時系列データを出力する出力部と、
を有することを特徴とするデータ分析装置。
【請求項２】
前記第２の算出部は、前記指定された時刻に近い変化点スコアほど、前記指標値に対する重み付けを大きくして前記指標値を算出する、
ことを特徴とする請求項１記載のデータ分析装置。
【請求項３】
複数の時系列データのそれぞれについて変化点スコアの時系列を算出する第１の算出手順と、
前記時系列データごとに、前記変化点スコアの時系列に基づいて、指定された時刻から所定の期間内における時間的変化量を示す指標値を算出する第２の算出手順と、
前記第２の算出手順において算出された指標値に従った順番で、前記複数の時系列データを出力する出力手順と、
をコンピュータが実行することを特徴とするデータ分析方法。
【請求項４】
前記第２の算出手順は、前記指定された時刻に近い変化点スコアほど、前記指標値に対する重み付けを大きくして前記指標値を算出する、
ことを特徴とする請求項３記載のデータ分析方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ分析装置及びデータ分析方法に関する。
【背景技術】
【０００２】
情報システム・ネットワークは複数の要素によって構成されている。複数の要素とは、例えば、スイッチ、ルータ、ロードバランサ、ファイアウォール、ＩＤＳ（Intrusion Detection System）／ＩＰＳ（Intrusion Prevention System）、ＷＡＦ（Web Application Firewall）等のネットワーク装置や、ストレージ装置、サーバ、および、サーバ上で動作する各種ソフトウェアである。
【０００３】
これらの各要素については、故障・異常検出やキャパシティ管理のために、様々な統計情報が収集され、運用監視システム等によって監視されている。収集される情報の例としては、ＣＰＵ、メモリ、ディスク関係の統計情報や、ネットワーク関係の統計情報などがある。統計項目は装置単位のものから、インタフェースポート単位、ＣＰＵコア単位、ストレージ装置のＲｅａｄ単位又はＷｒｉｔｅ単位など、監視対象や設定により多岐にわたる。
【０００４】
これらの統計情報は、時系列で変化するものであり、かつ、測定単位×測定項目数分の時系列データとなる。時系列の定量データは折れ線グラフで表現することが一般的であるが、データ系列数が大きいため、全ての系列をグラフ化することは困難である。ここで、データ系列数とは、時系列データの数をいう。
【０００５】
運用者による目視による監視においては、注目すべき特定の系列のみ表示する、ヒートマップと呼ばれる値を色情報にマッピングして表現する方法などが利用されている。
【０００６】
また、異常検知・故障検知を目的として、時系列データの各系列をクラスタリングし、アノマリを検出するといったことが行われている。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】RFC3954 NetFlow, ［online］、インターネット＜https://www.ietf.org/rfc/rfc3954.txt＞
【非特許文献２】RFC3176 SFlow, ［online］、インターネット＜https://www.ietf.org/rfc/rfc3176.txt＞
【非特許文献３】RFC1157 SNMP, ［online］、インターネット＜http://www.ietf.org/rfc/rfc1157.txt＞
【非特許文献４】SYSSTAT Utilities Home Page, ［online］、インターネット＜http://sebastien.godard.pagesperso-orange.fr/＞
【非特許文献５】データマイニングによる異常検知, 山西 健司. ISBN-13: 978-4320018822
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、情報システム・ネットワークから収集される時系列データは膨大であり、注目すべき項目・系列を選び出すことが困難である。
【０００９】
また、故障やセキュリティインシデントのようなイベントが発生した場合に、その事後において、イベントに関連して変化した時系列データを分析する場合にも、データ種別、機器数が多い場合、その分析に大きな労力が必要となる。
【００１０】
本発明は、上記の点に鑑みてなされたものであって、時系列データの分析を支援することを目的とする。
【課題を解決するための手段】
【００１１】
そこで上記課題を解決するため、データ分析装置は、複数の時系列データのそれぞれについて変化点スコアの時系列を算出する第１の算出部と、前記時系列データごとに、前記変化点スコアの時系列に基づいて、指定された時刻から所定の期間内における時間的変化量を示す指標値を算出する第２の算出部と、前記第２の算出部によって算出された指標値に従った順番で、前記複数の時系列データを出力する出力部と、を有する。
【発明の効果】
【００１２】
時系列データの分析を支援することができる。
【図面の簡単な説明】
【００１３】
【図１】第１の実施の形態におけるシステム構成例を示す図である。
【図２】第１の実施の形態におけるデータ分析装置のハードウェア構成例を示す図である。
【図３】第１の実施の形態におけるデータ分析装置の機能構成例を示す図である。
【図４】第１の実施の形態における時系列データの表示例を示す図である。
【図５】第２の実施の形態において監視対象のデータの収集時にデータ分析装置が実行する処理手順の一例を説明するためのフローチャートである。
【図６】第２の実施の形態において時系列データの表示時にデータ分析装置が実行する処理手順の一例を説明するためのフローチャートである。
【図７】第２の実施の形態における時系列データの表示例を示す図である。
【発明を実施するための形態】
【００１４】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、第１の実施の形態におけるシステム構成例を示す図である。図１において、データ分析装置１０は、１以上の監視対象機器２０とＬＡＮ（Local Area Network）又はインターネット等のネットワークを介して接続されている。
【００１５】
図２は、第１の実施の形態におけるデータ分析装置のハードウェア構成例を示す図である。図２のデータ分析装置１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、インタフェース装置１０５、表示装置１０６、及び入力装置１０７等を有する。
【００１６】
データ分析装置１０での処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムを記憶した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００１７】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従ってデータ分析装置１０に係る機能を実現する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。表示装置１０６はプログラムによるＧＵＩ（Graphical User Interface）等を表示する。入力装置１０７はキーボード及びマウス等で構成され、様々な操作指示を入力させるために用いられる。
【００１８】
図３は、第１の実施の形態におけるデータ分析装置の機能構成例を示す図である。図３において、データ分析装置１０は、データ収集部１１、指標値計算部１２、及び表示制御部１３等を有する。これら各部は、データ分析装置１０にインストールされた１以上のプログラムが、ＣＰＵ１０４に実行させる処理により実現される。データ分析装置１０は、また、時系列ＤＢ１４を利用する。時系列ＤＢ１４は、例えば、補助記憶装置１０２、又はデータ分析装置１０にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
【００１９】
データ収集部１１は、監視対象機器２０群から一定時間間隔で監視対象のデータを収集する。監視対象機器２０群から収集されるデータには、例えば、ＣＰＵ、メモリ、ディスクの使用に関係する統計情報や、ネットワークの使用（負荷）に関係する統計情報等のあらゆる時系列データが含まれる。例えば、ＣＰＵの使用に関係する統計情報としては、ＣＰＵ使用率（％）が挙げられる。ネットワークの使用に関係する統計情報としては、ネットワーク帯域（ｂｐｓ）が挙げられる。また、データの収集先の監視対象機器２０の識別情報及びデータの種別を示す種別情報も、属性として当該データに含まれる。収集された時系列データは、時系列ＤＢ１４に記憶される。データの収集方法は、特定の方法に限定されないが、例えば、ＮｅｔＦｌｏｗ（非特許文献１）やｓＦｌｏｗ（非特許文献２）といったネットワークのフロー情報や、ＳＮＭＰ（Simple Network Management Protocol）（非特許文献３）、サーバ機器におけるｓｙｓｓｔａｔ（非特許文献４）などにより収集できる。
【００２０】
指標値計算部１２は、指標値計算の基準時刻を表示制御部１３から取得し、時系列ＤＢ１４に保存されている時系列データの系列ごとの時間的変化量の指標値化を行う。すなわち、指標値計算部１２は、時系列データの与えられた基準時刻における変動を定量化した指標値を計算する。なお、時系列データの系列とは、監視対象の種別（監視対象項目）と、具体的な監視対象との組み合わせによって区別される単位である。例えば、監視対象項目が「監視対象機器２０ごとのＣＰＵ使用率」であれば、具体的な監視対象機器２０ごとに、時系列データの系列が区別される。
【００２１】
指標値計算部１２は、例えば、以下のような手順で指標値を求める。
【００２２】
基準時刻の一定時間範囲（所定の期間）の平均、および、標準偏差を算出し、時系列データを正規化する。ここで、一定時間範囲とは、基準時刻を始点とする一定時間でもよいし、基準時刻を終点とする一定時間でもよい。又は、基準時刻を跨ぐ一定時間（例えば、基準時刻から前後Ｎ分等）であってもよい。また、時系列データの正規化とは、例えば、時系列データの各データについて、平均との差を標準偏差で除することで、当該各データの平均を０、分散を１に調整することである。
【００２３】
続いて、平均と正規化された時系列データ各点の差の絶対値を計算する。続いて、指標値に対する重みが、基準時刻に近いほうが大きく、遠い方が小さくなるように重み付けした上で各点（各データ）の差の絶対値を合計する。続いて、その合計値を各点に含まれる点の数で割ることで、平均からの差の重みつき平均を求め、これを指標値とする。
【００２４】
又は、過去の時系列データの時次変動、日次変動、週次変動に基づいて、基準時刻が属する時刻、日にち、及び曜日における時系列データの予測値を算出し、予測値と基準時刻の一定時間範囲内の各点（各データ）との差の絶対値を計算してもよい。この場合、指標値に対する重みが、基準時刻に近い方が大きく、遠い方が小さくなるように重み付けした上で各点の差の絶対値を合計し、合計値をデータ点の数で割ることで、指標値が得られる。
【００２５】
なお、上記の２通りの計算方法のうちのいずれの計算方法を採用するかについては、ユーザによって指定されてもよい。
【００２６】
なお、例えば、故障やセキュリティインシデント等の発生を示すイベントの発生時刻が基準時刻として指定されてもよい。
【００２７】
表示制御部１３は、基準時刻、指標値の計算方法の指定、時系列データの表示指定などの入力をユーザから受け付け、時系列データをグラフ化して表示装置１０６に表示する。この際、表示制御部１３は、指標値計算部１２に指標値の算出を要求する。当該要求には、基準時刻、指標値の計算方法が指定される。表示制御部１３は、データ種別が共通する複数の時系列データを、指標値計算部１２によって算出された指標値に従って並べて表示する。
【００２８】
なお、システムとしてデフォルトの指標値計算方法が１つ以上指定され、指標値計算部１２が各時刻における指標値（各時刻を基準時刻とした場合の指標値）を予め計算しておくことで、表示時間を短縮することも考えられる。
【００２９】
図４は、時系列データの表示例を示す図である。図４では、縦軸にデータ種別が割り当てられ、横軸に指標値の順番が割り当てられた２次元の座標系に対して、各時系列データがグラフ化されて配置された例が示されている。すなわち、各データ種別において、左に配置されている時系列データほど指標値が大きい。なお、各時系列データは、正規化前の生の時系列データである。
【００３０】
ユーザが、時系列データが変動しないことに注目するならば、表示制御部１３に対するデータ系列の表示指定によって、指標値の小さい順（昇順）に表示させることもできる。
また、データの種別によらず、指標値の大きい順、もしくは、小さい順に表示させることもできる。
【００３１】
なお、縦軸への割り当てと横軸への割り当てとが入れ替えられてもよい。
【００３２】
上述したように、第１の形態によれば、監視対象の機器が生成する大量の時系列データに対し、特定の時期に大きく変化しているデータに注目することができるようになる。  また、故障やセキュリティインシデント等の発生を示すイベントが発生した場合に、そのイベント発生時刻の近傍において、特に変化を示した時系列データを抽出することができ、原因分析・影響分析を効率的に行うことが可能となる。
【００３３】
上記より、第１の形態によれば、時系列データの分析を支援することができる。
【００３４】
次に、第２の実施の形態について説明する。第２の実施の形態では第１の実施の形態と異なる点について説明する。第２の実施の形態において特に言及されない点については、第１の実施の形態と同様でもよい。
【００３５】
第１の実施の形態では、例えば、メモリ使用量（Ｂｙｔｅ）とＣＰＵ使用率（％）のような、単位の異なる複数の時系列データ（すなわち、データ種別の異なる時系列データ）を比較しようとした場合、数値の大きい時系列データの変化量が過大評価されてしまう。
【００３６】
この問題を避けるために、第１の実施の形態のように、時系列データの平均と標準偏差とを用いて正規化したとしても、標準偏差の小さい時系列データの変化が過大評価されてしまう。例えば、ほぼ全区間に渡って値が０であり、注目する時刻の傍でだけ１となった時系列データは、大きく変化したと扱われてしまう。
【００３７】
第２の実施の形態では、このような問題を解決し、異なるデータ種別間において、時系列データの比較を可能とする例について説明する。
【００３８】
図５は、第２の実施の形態において監視対象のデータの収集時にデータ分析装置が実行する処理手順の一例を説明するためのフローチャートである。なお、図５は一定時間間隔ごとに訪れるタイミングの１回分の処理手順が示されている。
【００３９】
ステップＳ１０１において、データ収集部１１は、監視対象機器２０群から監視対象のデータを収集し、収集したデータを時系列ＤＢ１４に記憶する。なお、データの収集方法は、第１の実施の形態と同様でよい。
【００４０】
続いて、指標値計算部１２は、収集されたデータの系列ごとに、逐次的に変化点スコアを算出する（Ｓ１０２）。本実施の形態において、変化点スコアとは、非特許文献５のＰ４８〜Ｐ５４に示されているＣｈａｎｇｅＦｉｎｄｅｒアルゴリズムにより算出される変化点スコアをいう。
【００４１】
続いて、指標値計算部１２は、算出された変化点スコアを対応する系列のデータ（時系列データ）に関連付けて時系列ＤＢ１４に記憶する（Ｓ１０３）。
【００４２】
ステップＳ１０１〜Ｓ１０３が一定時間間隔で繰り返されることにより、時系列ＤＢ１４には、系列ごとに、時系列データと、変化点スコアの時系列データ（以下、「時系列変化点」という。）とが記憶される。
【００４３】
図６は、第２の実施の形態において時系列データの表示時にデータ分析装置が実行する処理手順の一例を説明するためのフローチャートである。
【００４４】
ユーザによって基準時刻が入力されると、指標値計算部１２は、基準時刻を基準とした一定時間範囲に対応する、各系列の時系列データ及び時系列変化点を時系列ＤＢ１４から取得する（Ｓ２０１）。なお、一定時間範囲の時間幅がユーザによって指定されてもよい。
【００４５】
続いて、指標値計算部１２は、系列ごとの時系列変化点について、基準時刻を中心とした重みつき平均を算出し、算出結果を、時系列データの時間的変化量を示す指標値とする（Ｓ２０２）。
【００４６】
重みつき平均は、変化点をＸ−ｗ，Ｘ−（ｗ−１），…，Ｘ−１，Ｘ０，Ｘ１，…，Ｘｗ−１，Ｘｗとし、重みをＷ−ｗ，Ｗ−（ｗ−１），…，Ｗ−１，Ｗ０，Ｗ１，…，Ｗｗ−１，Ｗｗとするとき、
ΣＷｉＸｉ／ΣＷｉ（ｉ＝−ｗ，−ｗ＋１，…，−１，０，１，…，ｗ−１，ｗ）
により算出される。
【００４７】
重みＷｉは、例えば、各変化点スコアに対応する時刻と基準時刻との時間差の逆数でもよいし、μを基準時刻とし、３σを一定時間範囲とした場合の、平均μ、分散σ２とする正規分布Ｎ（μ，σ２）に従うように決められてもよい。すなわち、重みは、基準時刻に近い方が大きく、遠い方が小さくなるように決定されればよい。
【００４８】
続いて、表示制御部１３は、各系列の時系列データを各系列の指標値の降順又は昇順にソートする（Ｓ２０３）。続いて、表示制御部１３は、各時系列データをソート順で出力する（Ｓ２０４）。例えば、各時系列データがソート順で表示装置１０６に表示される。または、ソート結果が補助記憶装置１０２に記憶されてもよいし、ソートされた時系列データがプリンタによって印刷されてもよい。
【００４９】
図７は、第２の実施の形態における時系列データの表示例を示す図である。図７では、各時系列データがグラフ化されて上から下に並べて配置された例が示されている。図７では、上に配置されている時系列データほど指標値が大きい。
【００５０】
ユーザが、時系列データが変動しないことに注目するならば、表示制御部１３に対する表示指定において昇順を指定すればよい。この場合、時系列データは、指標値の小さい順（昇順）に表示される。
【００５１】
また、データの種別を限定して、指標値の大きい順、又は小さい順に時系列データが表示されるようにしてもよい。
【００５２】
上述したように、第２の実施の形態によれば、ＣｈａｎｇｅＦｉｎｄｅｒアルゴリズムにより算出される変化点スコアに基づいて指標値が算出される。ＣｈａｎｇｅＦｉｎｄｅｒはＡＲモデルの２段階学習に基づいており、モデルの変動をスコア化することができる。したがって、このような指標値によれば、異なる単位・種類の複数の時系列データを一度に分析し、データの種類によらず、変化の大きいデータを抽出し、分析を支援することができる。
【００５３】
なお、本実施の形態において、指標値計算部１２は、第１の算出部及び第２の算出部の一例である。表示制御部１３は、出力部の一例である。
【００５４】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００５５】
１０            データ分析装置
１１            データ収集部
１２            指標値計算部
１３            表示制御部
１４            時系列ＤＢ
２０            監視対象機器
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
１０６        表示装置
１０７        入力装置
Ｂ            バス
【図１】
2018132918.tif 000003
【図２】
2018132918.tif 000004
【図３】
2018132918.tif 000005
【図４】
2018132918.tif 000006
【図５】
2018132918.tif 000007
【図６】
2018132918.tif 000008
【図７】
2018132918.tif 000009