常態を学習してアノマリーを検出
具体的には、SIOS iQではまずは24時間の運用状況を学習する。次の学習サイクルは1週間の常態を学ぶ7日間。続いて1カ月、四半期、1年と学習する。ちなみに1カ月の学習は30日間で区切るのではなく、暦の上での1カ月という単位で学習する。最初の7日間までは学習した結果がないので、この間はしきい値に基づいた監視を行う。8日目以降は、学習結果から得られる分析結果を提示する。

SIOS iQでは常態を学習してアノマリーを検出する
SIOS iQでは、常態を機械学習することにより「アノマリー」を検出するのが基本的な仕組みだ。アノマリーとは、法則や理論からみて異常だったり説明できなかったりする事象のことだ。関連性分析でアノマリーを見つけ、原因、影響を解析し問題解決に必要なすべての情報をまとめて提示する。
野田氏は「アノマリーの検出は、しきい値を算出するのとは異なります」と説明する。「例えば、CPU利用率のスパイクなどは時間帯によって判断が異なります」。また、VDIを導入しているような場合には、勤務開始直後の時間は一斉に仮想デスクトップが動き始めるためにスパイクが発生するが、これは異常ではない。とはいえ、この朝のスパイクの状況をもとにしきい値を高く設定してしまうと、その他の時間帯のスパイクを検出できない。こういった時間帯の違いなども含め常態を学習し、アノマリーを検出するのがSIOS iQでの機械学習の使い方だ。
「週次のバックアップ作業のようなものも、最初の1カ月間くらいまではアノマリーとして認識しますが、1カ月過ぎればほぼ常態だと学習し2カ月後くらいからはアノマリーだと言わなくなります」(野田氏)
週次のバックアップをもっと早くに正常だと認識させたければ、「教師あり学習」の機能を持てばいい。とはいえ、現状のSIOS iQにはそれはない。「教師あり学習の機能はあればいいのですが、間違って学習させてしまった場合にどうするかが難しいところです」とのことで、このあたりは今後の検討課題となっている。
機械学習をサイオステクノロジーのコアテクノロジーに
SIOS iQでサポートするのはVMware ESXiとvCenterで構成される環境だ。そこにあるもの、たとえば物理ホスト、仮想マシン、アプリケーション、物理ストレージ、仮想ディスク、物理スイッチ、仮想ネットワークなどの静的な関係性と、アプリケーション間通信やディスクIO、ネットワークトラフィックなどの動的な関連性を、「ノード」と「エッジ」の集合であるグラフ表現でモデル化する。

障害の原因と影響範囲を可視化
得られるグラフ情報はグラフデータベースに格納し、目的に応じた機械学習アルゴリズムを使って分析する。それを知識ベースとして蓄積するのだ。蓄積された知識に基づき、今起こっている現象をリアルタイムに分析する。
「SIOS iQは、VMware社にOEM化してもらいたい製品とも言えます」と野田氏。現時点でSIOS iQと直接競合するような製品は他にはないと言う。とはいえシステムの振る舞いの学習など、利用している技術は似ているものもあり、そういったものが今後競合になってくることもあり得そうだ。
SIOS iQの現状のチャレンジとしては、監視ツールという性格上負荷を最小限することだと野田氏は言う。さらに今後の進化の1つとしては、管理者にメールなどでアラートを発信する機能の実装など、ある意味普通のシステム管理、監視ツール的な機能の実装もある。
サイオステクノロジーでは、SIOS iQで活用している機械学習の技術が、その他の領域でも活用できると考えている。今後は、機械学習の技術を、同社のコアテクノロジーの1つとして、さまざまな領域に応用していくことも考えているとのことだ。