.NET 用 Azure Synapse Analytics 監視クライアント ライブラリ - バージョン 1.0.0-beta.3

このディレクトリには、.NET SDK のオープンソースサブセットが含まれています。 完全な Azure SDK のドキュメントについては、 Microsoft Azure .NET デベロッパー センターを参照してください。

Azure portal 内にある Azure Synapse Analytics のリッチな監視エクスペリエンスでは、データ ウェアハウスのワークロードに関する分析情報が表示されます。 Azure Synapse Analytics 監視クライアント ライブラリを使用すると、リソースをプログラムで監視できます。

Azure Synapse は、エンタープライズ データ ウェアハウスとビッグ データ分析がまとめられた無制限の分析サービスです。 サーバーレスのオンデマンド リソースまたはプロビジョニング済みのリソースを使用しながら大規模に、各自の条件で自由にデータを照会することができます。 Azure Synapse では、これら 2 つの環境を 1 つにした統合エクスペリエンスを使用して、データの取り込み、準備、管理、提供を行い、BI と機械学習の差し迫ったニーズに対応できます。

作業の開始

完全な Microsoft Azure SDK は Microsoft Azure ダウンロード ページ からダウンロードでき、デプロイ パッケージの構築、ツールとの統合、豊富なコマンド ライン ツールなどのサポートが付属しています。

最適な開発エクスペリエンスを得るには、開発者は公式の Microsoft NuGet パッケージをライブラリに使用する必要があります。 NuGet パッケージは、新しい機能と修正プログラムで定期的に更新されます。

パッケージをインストールする

NuGet を使用して .NET 用の Azure Synapse Analytics 監視クライアント ライブラリをインストールします。

dotnet add package Azure.Analytics.Synapse.Monitoring --version 1.0.0-preview.1

前提条件

  • Azure サブスクリプション:Azure Synapseを含む Azure サービスを使用するには、サブスクリプションが必要です。 既存の Azure アカウントをお持ちでない場合は、無料試用版にサインアップするか、アカウントの作成時Visual Studio サブスクリプション特典を使用できます。
  • 既存のAzure Synapse ワークスペース。 Azure Synapse ワークスペースを作成する必要がある場合は、Azure Portal または Azure CLI を使用できます。

Azure CLI を使用する場合、コマンドは次のようになります。

az synapse workspace create \
    --name <your-workspace-name> \
    --resource-group <your-resource-group-name> \
    --storage-account <your-storage-account-name> \
    --file-system <your-storage-file-system-name> \
    --sql-admin-login-user <your-sql-admin-user-name> \
    --sql-admin-login-password <your-sql-admin-user-password> \
    --location <your-workspace-location>

クライアントを認証する

Azure Synapse Analytics サービスと対話するには、MonitoringClient クラスのインスタンスを作成する必要があります。 ワークスペース エンドポイントが必要です。この エンドポイントは、ポータルで "開発エンドポイント" と表示され、クライアント オブジェクトをインスタンス化するための クライアント シークレット資格情報 (クライアント ID、クライアント シークレット、テナント ID) が必要です。

クライアント シークレット資格情報の認証は、この概要セクションで使用されていますが、 Azure ID で認証するその他の方法を見つけることができます。 次に示す DefaultAzureCredential プロバイダー、または Azure SDK で提供されている他の資格情報プロバイダーを使用するには、Azure.Identity パッケージをインストールする必要があります。

Install-Package Azure.Identity

主要な概念

MonitoringClient

MonitoringClient 使用すると、ワークスペースの Spark アプリケーションまたは SQL OD/DW クエリの一覧を取得できます。

スレッド セーフ

すべてのクライアント インスタンス メソッドがスレッド セーフであり、相互に独立していることを保証します (ガイドライン)。 これにより、クライアント インスタンスの再利用に関する推奨事項は、スレッド間でも常に安全になります。

その他の概念

クライアント オプション | 応答 | へのアクセス実行時間の長い操作 | エラーの | 処理診断 | あざける | クライアントの有効期間

Azure.Analytics.Synapse.Monitoring パッケージでは、同期 API と非同期 API がサポートされています。 次のセクションでは、Azure Synapse Analytics 監視関連の最も一般的なタスクについて説明します。

監視の例

Spark アプリケーションの一覧を取得する

GetSparkJobList は、ワークスペースの Spark アプリケーションの一覧を取得します。

SparkJobListViewResponse sparkJobList = client.GetSparkJobList();
foreach (var sparkJob in sparkJobList.SparkJobs)
{
    if (sparkJob.State == "Running")
    {
        Console.WriteLine ($"{sparkJob.Name} has been running for {sparkJob.RunningDuration}");
    }
    else
    {
        Console.WriteLine ($"{sparkJob.Name} has been in {sparkJob.State} for {sparkJob.QueuedDuration}");
    }
}

SQl クエリを取得する

GetSqlJobQueryString SQL OD/DW クエリを取得します

SqlQueryStringDataModel sqlQuery = client.GetSqlJobQueryString();

ビルドするには

Azure Synapse クライアント ライブラリの構築については、「Microsoft Azure SDK for .NETのビルド」を参照してください。

ターゲット フレームワーク

Azure Synapse クライアント ライブラリのターゲット フレームワークについては、Microsoft Azure SDK for .NETのターゲット フレームワークに関するページを参照してください。

トラブルシューティング

github で issue を開いてください。

次の手順

次の手順では、さらに例を追加します

共同作成

このプロジェクトでは、Microsoft オープン ソースの倫理規定を採用しています。 詳しくは、「Code of Conduct FAQ (倫理規定についてよくある質問)」を参照するか、opencode@microsoft.com 宛てに質問またはコメントをお送りください。