Azure Data Explorer の機械学習機能Machine learning capability in Azure Data Explorer

Azure Data Explorer は、ビッグ データ分析プラットフォームです。Azure Data Explorer is a Big Data analytics platform. これは、サービスの正常性、QoS、または正常に機能していないデバイスを監視するために使用されます。It's used to monitor service health, QoS, or malfunctioning devices. 組み込みの異常検出と予測機能では、異常な動作がチェックされます。The built-in anomaly detection and forecasting functions check for anomalous behavior. このようなパターンが検出されると、異常を軽減または解決するために根本原因分析 (RCA) が実行されます。Once such a pattern is detected, a Root Cause Analysis (RCA) is run to mitigate or resolve the anomaly.

診断プロセスは、複雑で時間がかかり、ドメインの専門家によって行われます。The diagnosis process is complex and lengthy, and done by domain experts. このプロセスには次のものが含まれます。The process includes:

  • 同じ時間枠の異なるソースから追加データを取り込んで結合するFetching and joining additional data from different sources for the same time frame
  • 複数のディメンション上での値の分布における変化を検索するLooking for changes in the distribution of values on multiple dimensions
  • 追加の変数をグラフ化するCharting additional variables
  • ドメインに関する知識と直感に基づくその他の手法Other techniques based on domain knowledge and intuition

これらの診断シナリオは Azure Data Explorer では一般的であることから、診断フェーズをより簡単にし、RCA の期間を短縮するための機械学習プラグインが提供されています。Since these diagnosis scenarios are common in Azure Data Explorer, machine learning plugins are available to make the diagnosis phase easier, and shorten the duration of the RCA.

Azure Data Explorer には、autoclusterbasket、およびdiffpatterns の 3 つ機械学習プラグインが用意されています。Azure Data Explorer has three Machine Learning plugins: autocluster, basket, and diffpatterns. すべてのプラグインで、クラスタリング アルゴリズムが実装されます。All plugins implement clustering algorithms. autoclusterbasket プラグインでは、単一のレコード セットがクラスター化され、diffpatterns プラグインでは 2 つのレコード セット間の差異がクラスター化されます。The autocluster and basket plugins cluster a single record set, and the diffpatterns plugin clusters the differences between two record sets.

単一レコード セットのクラスター化Clustering a single record set

一般的なシナリオには、次のような特定の条件によって選択されたデータ セットが含まれます。A common scenario includes a data set selected by a specific criteria such as:

  • 異常な動作を示す時間枠Time window that shows anomalous behavior
  • 高温状態のデバイスの測定値High temperature device readings
  • 長時間におよんでいるコマンドLong duration commands
  • 消費量の多いユーザー。データ内の共通するパターン (セグメント) を簡単かつ迅速に検索する方法が必要です。Top spending users You want a fast and easy way to find common patterns (segments) in the data. パターンとは、複数のディメンション (カテゴリ列) にわたって同じ値を共有するレコードを持つデータ セットのサブセットです。Patterns are a subset of the data set whose records share the same values over multiple dimensions (categorical columns).

次のクエリでは、サービスの例外の時系列が 1 週間にわたり 10 分間のビンで作成され表示されます。The following query builds and shows a time series of service exceptions over the period of a week, in ten-minute bins:

[ クリックするとクエリが実行されます ][Click to run query]

let min_t = toscalar(demo_clustering1 | summarize min(PreciseTimeStamp));  
let max_t = toscalar(demo_clustering1 | summarize max(PreciseTimeStamp));  
demo_clustering1
| make-series num=count() on PreciseTimeStamp from min_t to max_t step 10m
| render timechart with(title="Service exceptions over a week, 10 minutes resolution")

サービスの例外の時間グラフ

サービスの例外の数は、サービスの全体のトラフィックと関連しています。The service exception count correlates with the overall service traffic. 月曜日から金曜日までの営業日の毎日のパターンがはっきりとわかります。You can clearly see the daily pattern for business days, Monday to Friday. 正午にサービスの例外の数が増加し、夜間にはその数が減少しています。There's a rise in service exception counts at mid-day, and drops in counts during the night. 週末には数は少なく横ばい状態になっています。Flat low counts are visible over the weekend. Azure Data Explorer 内の時系列の異常検出を使用すれば、例外の急激な増加を検出できます。Exception spikes can be detected using time series anomaly detection in Azure Data Explorer.

データの急激な増加が 2 番目に発生しているのは火曜日の午後です。The second spike in the data occurs on Tuesday afternoon. さらに詳しく診断してそれが急激な増加であるかどうかを確認するには、次のクエリを使用します。The following query is used to further diagnose and verify whether it's a sharp spike. このクエリでは、急激な増加を示している付近のグラフが、1 分間のビンで 8 時間というより高い解像度で再描画されます。その後、その境界を調べることができます。The query redraws the chart around the spike in a higher resolution of eight hours in one-minute bins. You can then study its borders.

[ クリックするとクエリが実行されます ][Click to run query]

let min_t=datetime(2016-08-23 11:00);
demo_clustering1
| make-series num=count() on PreciseTimeStamp from min_t to min_t+8h step 1m
| render timechart with(title="Zoom on the 2nd spike, 1 minute resolution")

急激な増加の時間グラフに焦点を合わせる

15 時 00 分から 15 時 02 分までの 2 分間という短い期間に急激な増加が発生したことがわかります。You'll see a narrow two-minute spike from 15:00 to 15:02. 次のクエリでは、この 2 分間の時間枠での例外の数がカウントされます。In the following query, count the exceptions in this two-minute window:

[ クリックするとクエリが実行されます ][Click to run query]

let min_peak_t=datetime(2016-08-23 15:00);
let max_peak_t=datetime(2016-08-23 15:02);
demo_clustering1
| where PreciseTimeStamp between(min_peak_t..max_peak_t)
| count
CountCount
972972

次のクエリでは、972 個の例外の中から 20 個をサンプリングします。In the following query, sample 20 exceptions out of 972:

[ クリックするとクエリが実行されます ][Click to run query]

let min_peak_t=datetime(2016-08-23 15:00);
let max_peak_t=datetime(2016-08-23 15:02);
demo_clustering1
| where PreciseTimeStamp between(min_peak_t..max_peak_t)
| take 20
PreciseTimeStampPreciseTimeStamp リージョンRegion ScaleUnitScaleUnit DeploymentIdDeploymentId TracepointTracepoint ServiceHostServiceHost
2016-08-23 15:00:08.73024602016-08-23 15:00:08.7302460 scusscus su5su5 9dbd1b161d5b4779a73cf19a7836ebd69dbd1b161d5b4779a73cf19a7836ebd6 100005100005 00000000-0000-0000-0000-00000000000000000000-0000-0000-0000-000000000000
2016-08-23 15:00:09.94965842016-08-23 15:00:09.9496584 scusscus su5su5 9dbd1b161d5b4779a73cf19a7836ebd69dbd1b161d5b4779a73cf19a7836ebd6 1000700610007006 8d257da1-7a1c-44f5-9acd-f9e02ff507fd8d257da1-7a1c-44f5-9acd-f9e02ff507fd
2016-08-23 15:00:10.59117482016-08-23 15:00:10.5911748 scusscus su5su5 9dbd1b161d5b4779a73cf19a7836ebd69dbd1b161d5b4779a73cf19a7836ebd6 100005100005 00000000-0000-0000-0000-00000000000000000000-0000-0000-0000-000000000000
2016-08-23 15:00:12.29579122016-08-23 15:00:12.2957912 scusscus su5su5 9dbd1b161d5b4779a73cf19a7836ebd69dbd1b161d5b4779a73cf19a7836ebd6 1000700710007007 f855fcef-ebfe-405d-aaf8-9c5e2e43d862f855fcef-ebfe-405d-aaf8-9c5e2e43d862
2016-08-23 15:00:18.59553572016-08-23 15:00:18.5955357 scusscus su5su5 9dbd1b161d5b4779a73cf19a7836ebd69dbd1b161d5b4779a73cf19a7836ebd6 1000700610007006 9d390e07-417d-42eb-bebd-793965189a289d390e07-417d-42eb-bebd-793965189a28
2016-08-23 15:00:20.74448542016-08-23 15:00:20.7444854 scusscus su5su5 9dbd1b161d5b4779a73cf19a7836ebd69dbd1b161d5b4779a73cf19a7836ebd6 1000700610007006 6e54c1c8-42d3-4e4e-8b79-9bb076ca71f16e54c1c8-42d3-4e4e-8b79-9bb076ca71f1
2016-08-23 15:00:23.86949992016-08-23 15:00:23.8694999 eus2eus2 su2su2 89e2f62a73bb4efd8f545aeae40d7e5189e2f62a73bb4efd8f545aeae40d7e51 3610936109 19422243-19b9-4d85-9ca6-bc961861d28719422243-19b9-4d85-9ca6-bc961861d287
2016-08-23 15:00:26.42717862016-08-23 15:00:26.4271786 ncusncus su1su1 e24ef436e02b4823ac5d5b1465a9401ee24ef436e02b4823ac5d5b1465a9401e 3610936109 3271bae4-1c5b-4f73-98ef-cc117e9be9143271bae4-1c5b-4f73-98ef-cc117e9be914
2016-08-23 15:00:27.89581242016-08-23 15:00:27.8958124 scusscus su3su3 90d3d2fc7ecc430c9621ece335651a0190d3d2fc7ecc430c9621ece335651a01 904498904498 8cf38575-fca9-48ca-bd7c-21196f6d67658cf38575-fca9-48ca-bd7c-21196f6d6765
2016-08-23 15:00:32.98849692016-08-23 15:00:32.9884969 scusscus su3su3 90d3d2fc7ecc430c9621ece335651a0190d3d2fc7ecc430c9621ece335651a01 1000700710007007 d5c7c825-9d46-4ab7-a0c1-8e2ac1d83ddbd5c7c825-9d46-4ab7-a0c1-8e2ac1d83ddb
2016-08-23 15:00:34.50616232016-08-23 15:00:34.5061623 scusscus su5su5 9dbd1b161d5b4779a73cf19a7836ebd69dbd1b161d5b4779a73cf19a7836ebd6 10021101002110 55a71811-5ec4-497a-a058-140fb0d611ad55a71811-5ec4-497a-a058-140fb0d611ad
2016-08-23 15:00:37.44902732016-08-23 15:00:37.4490273 scusscus su3su3 90d3d2fc7ecc430c9621ece335651a0190d3d2fc7ecc430c9621ece335651a01 1000700610007006 f2ee8254-173c-477d-a1de-4902150ea50df2ee8254-173c-477d-a1de-4902150ea50d
2016-08-23 15:00:41.24312232016-08-23 15:00:41.2431223 scusscus su3su3 90d3d2fc7ecc430c9621ece335651a0190d3d2fc7ecc430c9621ece335651a01 103200103200 8cf38575-fca9-48ca-bd7c-21196f6d67658cf38575-fca9-48ca-bd7c-21196f6d6765
2016-08-23 15:00:47.29839752016-08-23 15:00:47.2983975 ncusncus su1su1 e24ef436e02b4823ac5d5b1465a9401ee24ef436e02b4823ac5d5b1465a9401e 423690590423690590 00000000-0000-0000-0000-00000000000000000000-0000-0000-0000-000000000000
2016-08-23 15:00:50.59328342016-08-23 15:00:50.5932834 scusscus su5su5 9dbd1b161d5b4779a73cf19a7836ebd69dbd1b161d5b4779a73cf19a7836ebd6 1000700610007006 2a41b552-aa19-4987-8cdd-410a3af016ac2a41b552-aa19-4987-8cdd-410a3af016ac
2016-08-23 15:00:50.82590212016-08-23 15:00:50.8259021 scusscus su5su5 9dbd1b161d5b4779a73cf19a7836ebd69dbd1b161d5b4779a73cf19a7836ebd6 10021101002110 0d56b8e3-470d-4213-91da-97405f8d005e0d56b8e3-470d-4213-91da-97405f8d005e
2016-08-23 15:00:53.24907312016-08-23 15:00:53.2490731 scusscus su5su5 9dbd1b161d5b4779a73cf19a7836ebd69dbd1b161d5b4779a73cf19a7836ebd6 3610936109 55a71811-5ec4-497a-a058-140fb0d611ad55a71811-5ec4-497a-a058-140fb0d611ad
2016-08-23 15:00:57.00009462016-08-23 15:00:57.0000946 eus2eus2 su2su2 89e2f62a73bb4efd8f545aeae40d7e5189e2f62a73bb4efd8f545aeae40d7e51 6403864038 cb55739e-4afe-46a3-970f-1b49d8ee7564cb55739e-4afe-46a3-970f-1b49d8ee7564
2016-08-23 15:00:58.22227072016-08-23 15:00:58.2222707 scusscus su5su5 9dbd1b161d5b4779a73cf19a7836ebd69dbd1b161d5b4779a73cf19a7836ebd6 1000700710007007 8215dcf6-2de0-42bd-9c90-181c70486c9c8215dcf6-2de0-42bd-9c90-181c70486c9c
2016-08-23 15:00:59.93826202016-08-23 15:00:59.9382620 scusscus su3su3 90d3d2fc7ecc430c9621ece335651a0190d3d2fc7ecc430c9621ece335651a01 1000700610007006 451e3c4c-0808-4566-a64d-84d85cf30978451e3c4c-0808-4566-a64d-84d85cf30978

autocluster() を使用して単一レコード セットをクラスタ化するUse autocluster() for single record set clustering

例外の数が 1,000 未満であっても、各列には複数の値が含まれているため、共通するセグメントを見つけにくいことには変わりありません。Even though there are less than a thousand exceptions, it's still hard to find common segments, since there are multiple values in each column. autocluster() プラグインを使用すれば、次のクエリに示されているように、共通するセグメントの短いリストを瞬時に抽出し、急激に増加した 2 分間において興味深いクラスターを検索することができます。You can use the autocluster() plugin to instantly extract a short list of common segments and find the interesting clusters within the spike's two minutes, as seen in the following query:

[ クリックするとクエリが実行されます ][Click to run query]

let min_peak_t=datetime(2016-08-23 15:00);
let max_peak_t=datetime(2016-08-23 15:02);
demo_clustering1
| where PreciseTimeStamp between(min_peak_t..max_peak_t)
| evaluate autocluster()
セグメント IDSegmentId CountCount PercentPercent リージョンRegion ScaleUnitScaleUnit DeploymentIdDeploymentId ServiceHostServiceHost
00 639639 65.740740740740765.7407407407407 eaueau su7su7 b5d1d4df547d4a04ac15885617edba57b5d1d4df547d4a04ac15885617edba57 e7f60c5d-4944-42b3-922a-92e98a8e7dece7f60c5d-4944-42b3-922a-92e98a8e7dec
11 9494 9.670781893004119.67078189300411 scusscus su5su5 9dbd1b161d5b4779a73cf19a7836ebd69dbd1b161d5b4779a73cf19a7836ebd6
22 8282 8.436213991769558.43621399176955 ncusncus su1su1 e24ef436e02b4823ac5d5b1465a9401ee24ef436e02b4823ac5d5b1465a9401e
33 6868 6.995884773662556.99588477366255 scusscus su3su3 90d3d2fc7ecc430c9621ece335651a0190d3d2fc7ecc430c9621ece335651a01
44 5555 5.658436213991775.65843621399177 weuweu su4su4 be1d6d7ac9574cbc9a22cb8ee20f16fcbe1d6d7ac9574cbc9a22cb8ee20f16fc

上記の結果からは、最も際立っているセグメントには例外レコードの合計の 65.74% が含まれていて、そのセグメントでは 4 つのディメンションが共有されていることがわかります。You can see from the results above, the most dominant segment contains 65.74% of the total exception records and shares four dimensions. 次のセグメントでは、共通するものはずっと少なくなります。The next segment is much less common. それには全レコードの 9.67% だけが含まれ、3 つのディメンションが共有されています。It contains only 9.67% of the records, and shares three dimensions. その他のセグメントもすべて、共通するものは少なくなっています。The other segments are even less common.

Autocluster では、複数のディメンションをマイニングして、興味深いセグメントを抽出するために独自のアルゴリズムが使用されています。Autocluster uses a proprietary algorithm for mining multiple dimensions and extracting interesting segments. "興味深い" とは、各セグメントのレコード セットと機能セットの両方のカバレッジが重大であることを意味します。"Interesting" means that each segment has significant coverage of both the records set and the features set. セグメントも分岐しています。これは、それぞれが他のものとは異なることを意味しています。The segments are also diverged, meaning that each one is different from the others. これらのセグメントの 1 つまたは複数が、RCA プロセスに関連する可能性があります。One or more of these segments may be relevant for the RCA process. セグメントのレビューと評価を最小限に抑えるために、autocluster では小規模なセグメント リストのみが抽出されます。To minimize segment review and assessment, autocluster extracts only a small segment list.

basket() を使用して単一レコード セットをクラスタ化するUse basket() for single record set clustering

次のクエリに示すように、basket() プラグインを使用することもできます。You can also use the basket() plugin as seen in the following query:

[ クリックするとクエリが実行されます ][Click to run query]

let min_peak_t=datetime(2016-08-23 15:00);
let max_peak_t=datetime(2016-08-23 15:02);
demo_clustering1
| where PreciseTimeStamp between(min_peak_t..max_peak_t)
| evaluate basket()
セグメント IDSegmentId CountCount PercentPercent リージョンRegion ScaleUnitScaleUnit DeploymentIdDeploymentId TracepointTracepoint ServiceHostServiceHost
00 639639 65.740740740740765.7407407407407 eaueau su7su7 b5d1d4df547d4a04ac15885617edba57b5d1d4df547d4a04ac15885617edba57 e7f60c5d-4944-42b3-922a-92e98a8e7dece7f60c5d-4944-42b3-922a-92e98a8e7dec
11 642642 66.049382716049466.0493827160494 eaueau su7su7 b5d1d4df547d4a04ac15885617edba57b5d1d4df547d4a04ac15885617edba57
22 324324 33.333333333333333.3333333333333 eaueau su7su7 b5d1d4df547d4a04ac15885617edba57b5d1d4df547d4a04ac15885617edba57 00 e7f60c5d-4944-42b3-922a-92e98a8e7dece7f60c5d-4944-42b3-922a-92e98a8e7dec
33 315315 32.407407407407432.4074074074074 eaueau su7su7 b5d1d4df547d4a04ac15885617edba57b5d1d4df547d4a04ac15885617edba57 1610816108 e7f60c5d-4944-42b3-922a-92e98a8e7dece7f60c5d-4944-42b3-922a-92e98a8e7dec
44 328328 33.744855967078233.7448559670782 00
55 9494 9.670781893004119.67078189300411 scusscus su5su5 9dbd1b161d5b4779a73cf19a7836ebd69dbd1b161d5b4779a73cf19a7836ebd6
66 8282 8.436213991769558.43621399176955 ncusncus su1su1 e24ef436e02b4823ac5d5b1465a9401ee24ef436e02b4823ac5d5b1465a9401e
77 6868 6.995884773662556.99588477366255 scusscus su3su3 90d3d2fc7ecc430c9621ece335651a0190d3d2fc7ecc430c9621ece335651a01
88 167167 17.181069958847717.1810699588477 scusscus
99 5555 5.658436213991775.65843621399177 weuweu su4su4 be1d6d7ac9574cbc9a22cb8ee20f16fcbe1d6d7ac9574cbc9a22cb8ee20f16fc
1010 9292 9.465020576131699.46502057613169 1000700710007007
1111 9090 9.259259259259269.25925925925926 1000700610007006
1212 5757 5.86419753086425.8641975308642 00000000-0000-0000-0000-00000000000000000000-0000-0000-0000-000000000000

basket では、項目セットのマイニングのために "Apriori" アルゴリズムが実装されます。Basket implements the "Apriori" algorithm for item set mining. これにより、レコード セットのカバレッジがしきい値 (既定値は 5%) を超えているすべてのセグメントが抽出されます。It extracts all segments whose coverage of the record set is above a threshold (default 5%). より多くのセグメントが抽出され、類似のもの (たとえば、セグメント 0、1 または 2、3) が含まれていることがわかります。You can see that more segments were extracted with similar ones, such as segments 0, 1 or 2, 3.

どちらのプラグインも強力で容易に使用できます。Both plugins are powerful and easy to use. それらに伴う制限は、ラベルを使用しない教師なしの方法で単一のレコード セットがクラスター化されることです。Their limitation is that they cluster a single record set in an unsupervised manner with no labels. 抽出されたパターンが、選択したレコード セット、異常なレコード、またはグローバルなレコード セットのいずれの特徴を示しているのかが明確ではありません。It's unclear whether the extracted patterns characterize the selected record set, anomalous records, or the global record set.

2 つのレコード セットの差異をクラスター化するClustering the difference between two records sets

diffpatterns() プラグインでは、autoclusterbasket における制限が克服されています。The diffpatterns() plugin overcomes the limitation of autocluster and basket. Diffpatterns は、2 つのレコード セットを受け取り、異なっている主要なセグメントを抽出します。Diffpatterns takes two record sets and extracts the main segments that are different. 一方のセットには、通常、調査中の異常なレコード セットが含まれます。One set usually contains the anomalous record set being investigated. 1 つは autoclusterbasket によって分析されています。One is analyzed by autocluster and basket. もう一方のセットには、参照レコード セットであるベースラインが含まれています。The other set contains the reference record set, the baseline.

次のクエリでは、diffpatterns によって、ベースライン内のクラスターとは異なる、急激に増加した 2 分間での興味深いクラスターが検索されます。In the query below, diffpatterns finds interesting clusters within the spike's two minutes, which are different from the clusters within the baseline. 急激な増加が始まった時刻である 15 時 00 分より前の 8 分をベースライン ウィンドウとして定義します。The baseline window is defined as the eight minutes before 15:00, when the spike started. バイナリ列 (AB) によって拡張し、特定のレコードがベースラインまたは異常セットのどちらに属するかを指定します。You extend by a binary column (AB), and specify whether a specific record belongs to the baseline or to the anomalous set. Diffpatterns では監視下学習アルゴリズムが実装されます。ここで、異常対ベースライン フラグ (AB) によって 2 つのクラス ラベルは生成済みです。Diffpatterns implements a supervised learning algorithm, where the two class labels were generated by the anomalous versus the baseline flag (AB).

[ クリックするとクエリが実行されます ][Click to run query]

let min_peak_t=datetime(2016-08-23 15:00);
let max_peak_t=datetime(2016-08-23 15:02);
let min_baseline_t=datetime(2016-08-23 14:50);
let max_baseline_t=datetime(2016-08-23 14:58); // Leave a gap between the baseline and the spike to avoid the transition zone.
let splitime=(max_baseline_t+min_peak_t)/2.0;
demo_clustering1
| where (PreciseTimeStamp between(min_baseline_t..max_baseline_t)) or
        (PreciseTimeStamp between(min_peak_t..max_peak_t))
| extend AB=iff(PreciseTimeStamp > splitime, 'Anomaly', 'Baseline')
| evaluate diffpatterns(AB, 'Anomaly', 'Baseline')
セグメント IDSegmentId CountACountA CountBCountB PercentAPercentA PercentBPercentB PercentDiffABPercentDiffAB リージョンRegion ScaleUnitScaleUnit DeploymentIdDeploymentId TracepointTracepoint
00 639639 2121 65.7465.74 1.71.7 64.0464.04 eaueau su7su7 b5d1d4df547d4a04ac15885617edba57b5d1d4df547d4a04ac15885617edba57
11 167167 544544 17.1817.18 44.1644.16 26.9726.97 scusscus
22 9292 356356 9.479.47 28.928.9 19.4319.43 1000700710007007
33 9090 336336 9.269.26 27.2727.27 18.0118.01 1000700610007006
44 8282 318318 8.448.44 25.8125.81 17.3817.38 ncusncus su1su1 e24ef436e02b4823ac5d5b1465a9401ee24ef436e02b4823ac5d5b1465a9401e
55 5555 252252 5.665.66 20.4520.45 14.814.8 weuweu su4su4 be1d6d7ac9574cbc9a22cb8ee20f16fcbe1d6d7ac9574cbc9a22cb8ee20f16fc
66 5757 204204 5.865.86 16.5616.56 10.6910.69

最も際立っているセグメントは、autocluster によって抽出されたセグメントと同じです。The most dominant segment is the same segment that was extracted by autocluster. 2 分間の異常なウィンドウでのそのカバレッジも 65.74% です。Its coverage on the two-minute anomalous window is also 65.74%. しかし、8 分間のベースライン ウィンドウでのそのカバレッジは 1.7% に過ぎません。However, its coverage on the eight-minute baseline window is only 1.7%. 差異は 64.04% です。The difference is 64.04%. この差異は、異常な急増に関連しているようです。This difference seems to be related to the anomalous spike. この想定を検証するには、元のグラフを、この問題あるセグメントに属するレコードと、他のセグメントのレコードに分割します。To verify this assumption, split the original chart into the records that belong to this problematic segment, and records from the other segments. 次のクエリを参照してください。See the query below.

[ クリックするとクエリが実行されます ][Click to run query]

let min_t = toscalar(demo_clustering1 | summarize min(PreciseTimeStamp));  
let max_t = toscalar(demo_clustering1 | summarize max(PreciseTimeStamp));  
demo_clustering1
| extend seg = iff(Region == "eau" and ScaleUnit == "su7" and DeploymentId == "b5d1d4df547d4a04ac15885617edba57"
and ServiceHost == "e7f60c5d-4944-42b3-922a-92e98a8e7dec", "Problem", "Normal")
| make-series num=count() on PreciseTimeStamp from min_t to max_t step 10m by seg
| render timechart

'diffpattern' セグメントの時間グラフの検証

このグラフでは、火曜日の午後に発生した急激な増加は、diffpatterns を使用して検出されたこの特定のセグメントからの例外が原因であることを確認できます。This chart allows us to see that the spike on Tuesday afternoon was because of exceptions from this specific segment, discovered by using the diffpatterns plugin.

まとめSummary

Azure Data Explorer の機械学習プラグインは多くのシナリオで役に立ちます。The Azure Data Explorer Machine Learning plugins are helpful for many scenarios. autocluster および basket では、教師なし学習アルゴリズムが実装され、使いやすくなっています。The autocluster and basket implement an unsupervised learning algorithm and are easy to use. Diffpatterns では教師あり学習アルゴリズムが実装されます。より複雑になりますが、RCA のためにセグメントの差異を抽出する際はより力を発揮します。Diffpatterns implements a supervised learning algorithm and, although more complex, it's more powerful for extracting differentiation segments for RCA.

これらのプラグインは、アドホックのシナリオおよびリアルタイムに近い自動監視サービスにおいて、対話形式で使用されます。These plugins are used interactively in ad-hoc scenarios and in automatic near real-time monitoring services. Azure Data Explorer では、時系列の異常検出の後に診断プロセスが続きます。In Azure Data Explorer, time series anomaly detection is followed by a diagnosis process. このプロセスは必要なパフォーマンス基準を満たすように高度に最適化されます。The process is highly optimized to meet necessary performance standards.