Kqlmagic を使用したノートブックの作成と実行
Kqlmagic は、 Azure Data Studio ノートブック で Python カーネルの機能を拡張するコマンドです。 Python と Kusto クエリ言語 (KQL) を組み合わせて、render
コマンドに統合された豊富な Plotly ライブラリを使ってデータのクエリと視覚化を実行できます。 Kqlmagic を使用すると、ノートブック、データ分析、Python の豊富な機能の利点がすべて同じ場所にもたらされます。 Kqlmagic でサポートされているデータ ソースには、 Azure Data Explorer 、 Application Insights 、 Azure Monitor ログ があります。
この記事では、Kqlmagic 拡張機能を Azure Data Explorer クラスター、Application Insights ログ、および Azure Monitor ログに使用して、Azure Data Studio でノートブックを作成および実行する方法について説明します。
前提条件
ノートブックに Kqlmagic をインストールしてセットアップする
このセクションのステップはすべて Azure Data Studio ノートブック内で実行されます。
新しいノートブックを作成し、 [カーネル] を [Python 3] に変更します。
パッケージを更新する必要がある場合は、Python パッケージをアップグレードするように求められることがあります。
Kqlmagic をインストールします。
import sys !{sys.executable} -m pip install Kqlmagic --no-cache-dir --upgrade
インストールされていることを確認します。
import sys !{sys.executable} -m pip list
Kqlmagic を読み込みます。
%reload_ext Kqlmagic
Note
このステップが失敗した場合は、ファイルを閉じて再度開きます。
Kqlmagic が正しく読み込まれているかどうかをテストするには、ヘルプ ドキュメントを参照するか、バージョンを確認します。
%kql --help "help"
注意
Samples@help
がパスワードの入力を求めている場合は、空白のままにして、Enter キーを押します。インストールされている Kqlmagic のバージョンを確認するには、次のコマンドを実行します。
%kql --version
Kqlmagic と Azure Data Explorer クラスター
このセクションでは、Azure Data Explorer クラスターで Kqlmagic を使用してデータ分析を実行する方法について説明します。
Azure Data Explorer に対して Kqlmagic を読み込んで認証する
注意
Azure Data Studio で新しいノートブックを作成するたびに、Kqlmagic 拡張機能を読み込む必要があります。
[カーネル] が [Python 3] に設定されていることを確認します。
Kqlmagic を読み込みます。
%reload_ext Kqlmagic
クラスターに接続し、認証を行います。
%kql azureDataExplorer://code;cluster='help';database='Samples'
Note
独自の ADX クラスターを使用している場合は、次のように、接続文字列にリージョンを含める必要があります。
%kql azuredataexplorer://code;cluster='mycluster.westus';database='mykustodb'
デバイスのサインインを使用して認証します。 出力からコードをコピーし、認証を選択します。これにより、コードを貼り付ける必要があるブラウザーが開きます。 正常に認証されたら、Azure Data Studio に戻って、スクリプトの残りの部分を続行できます。
Azure Data Explorer のクエリと視覚化
render 演算子を使ってデータのクエリを実行し、plotly ライブラリを使ってデータを視覚化します。 このクエリと視覚化では、ネイティブの KQL を使用する統合されたエクスペリエンスが提供されます。
状態と頻度別に上位 10 個のイベントを分析します。
%kql StormEvents | summarize count() by State | sort by count_ | limit 10
Kusto クエリ言語 (KQL) に慣れている場合は、
%kql
の後にクエリを入力できます。タイムライン グラフの視覚化:
%kql StormEvents \ | summarize event_count=count() by bin(StartTime, 1d) \ | render timechart title= 'Daily Storm Events'
%%kql
を使用した複数行のクエリ サンプル。%%kql StormEvents | summarize count() by State | sort by count_ | limit 10 | render columnchart title='Top 10 States by Storm Event count'
Kqlmagic と Application Insights
Application Insights に対して Kqlmagic を読み込んで認証する
[カーネル] が [Python 3] に設定されていることを確認します。
Kqlmagic を読み込みます。
%reload_ext Kqlmagic
Note
Azure Data Studio で新しいノートブックを作成するたびに、Kqlmagic 拡張機能を読み込む必要があります。
接続して認証します。
まず、Application Insights リソースの API キーを生成する必要があります。 次に、アプリケーション ID と API キーを使用して、ノートブックから Application Insights に接続します。
%kql appinsights://appid='DEMO_APP';appkey='DEMO_KEY'
Application Insights のクエリと視覚化
render 演算子を使ってデータのクエリを実行し、plotly ライブラリを使ってデータを視覚化します。 このクエリと視覚化では、ネイティブの KQL を使用する統合されたエクスペリエンスが提供されます。
ページ ビューの表示:
%%kql pageViews | limit 10
Note
特定の日付にズームインするには、マウスを使用してグラフの領域上をドラッグすします。
タイムライン グラフでのページ ビューの表示:
%%kql pageViews | summarize event_count=count() by name, bin(timestamp, 1d) | render timechart title= 'Daily Page Views'
Kqlmagic と Azure Monitor ログ
Azure Monitor ログに対して Kqlmagic を読み込んで認証する
[カーネル] が [Python 3] に設定されていることを確認します。
Kqlmagic を読み込みます。
%reload_ext Kqlmagic
Note
Azure Data Studio で新しいノートブックを作成するたびに、Kqlmagic 拡張機能を読み込む必要があります。
接続と認証:
%kql loganalytics://workspace='DEMO_WORKSPACE';appkey='DEMO_KEY';alias='myworkspace'
Azure Monitor ログのクエリと視覚化
render 演算子を使ってデータのクエリを実行し、plotly ライブラリを使ってデータを視覚化します。 このクエリと視覚化では、ネイティブの KQL を使用する統合されたエクスペリエンスが提供されます。
タイムライン グラフの表示:
%%kql KubeNodeInventory | summarize event_count=count() by Status, bin(TimeGenerated, 1d) | render timechart title= 'Daily Kubernetes Nodes'
次のステップ
ノートブックと Kqlmagic についてさらに学習します:
- Azure Data Studio 用の Kusto (KQL) 拡張機能 (プレビュー)
- Kusto (KQL) ノートブックの作成と実行 (プレビュー)
- Jupyter Notebook と Kqlmagic 拡張機能を使用して Azure Data Explorer 内のデータを分析する
- Kusto、Application Insights、および LogAnalytics のデータを使用してノートブック エクスペリエンスを実現する、Jupyter Notebook と Jupyter Lab への拡張 (マジック)。
- Kqlmagic
- Azure Data Studio でノートブックを使用する方法