こんにちは、kc-dreamです。
今回はAzure LogAnalyticsの番外編ということで、Kustoクエリについてご紹介します。
#Kusto概要
Kusto は、ビッグ データに対する対話型分析を格納して実行するためのサービスです。
これはリレーショナル データベース管理システムに基づいており、データベース、テーブル、列などのエンティティをサポートし、複雑な分析クエリ演算子 (計算列、検索とフィルター処理、行、グループごとの集計、結合など) を提供します。
##Kustoクエリとは
Kusto クエリは、データを処理して結果を返すための、読み取り専用の要求です。 要求は、構文を読みやすく、作りやすく、自動化しやすくするように設計されたデータフローモデルを利用してプレーンテキストで述べられます。 クエリでは、データベース、テーブル、列など、SQL に似た階層に編成されたスキーマ エンティティが使用されます。
##Kustoクエリの使用方法
StormEvents
| where StartTime >= datetime(2007-11-01) and StartTime < datetime(2007-12-01)
| where State == "FLORIDA"
| count
- Kustoクエリにはステートメントが1つありますが、それは表形式ステートメントです。 このステートメントは StormEvents という名前のテーブルの参照から始まっています (このテーブルをホストするデータベースはここでは接続情報の一部として暗に示されるだけです)。
- そのテーブルのデータ (行)が StartTime 列の値でフィルター処理され、さらに State 列の値でフィルター処理されます。
- "FLORIDA" 行の数がクエリにより返されます。
###Kustoチートシートまとめ
SQLクエリからKustoクエリを使用する際のクエリをまとめています。
SQL から Kusto カンニングペーパー
SQL から Azure Monitor へ
###LogAnalyticsで実際に使用してみる
別記事でご紹介しているので、参考にしてもらえると幸いです。
別記事リンクは以下になります。
Azure LogAnalytics 概要についてまとめてみた
Azure LogAnalyticsでWindowsServerを監視してみた
LogAnalyticsのデータ取得時間の調査方法
###参考情報
Azure Monitor ログ クエリ
Kusto Query Language (KQL) from Scratch
Azure Monitor でログ クエリの使用を開始する
#おわりに
Kustoクエリについては、Azure環境にてログや各種リソースメトリックを収集したデータを活用する際に使用するので、自身がよく使うコマンドは覚えておくのが便利です。