.NET SDK を使用した Azure Data Lake Storage Gen1 に対するアカウント管理操作
この記事では、.NET SDK を使用して Azure Data Lake Storage Gen1 に対するアカウント管理操作を実行する方法について説明します。 アカウント管理操作には、Data Lake Storage Gen1 アカウントの作成、Azure サブスクリプション内のアカウントの一覧表示、アカウントの削除などがあります。
.NET SDK を使用して Data Lake Storage Gen1 に対するデータ管理操作を実行する方法については、.NET SDK を使用した Data Lake Storage Gen1 に対するファイルシステム操作に関するページを参照してください。
前提条件
Visual Studio 2013 以降。 以下の手順では、Visual Studio 2019 を使用します。
Azure サブスクリプション。 Azure 無料試用版の取得に関するページを参照してください。
.NET アプリケーションの作成
Visual Studio で、 [ファイル] メニュー、 [新規作成] 、 [プロジェクト] の順に選択します。
[コンソール アプリ (.NET Framework)] を選択し、 [次へ] を選択します。
[プロジェクト名] に
CreateADLApplication
と入力して、 [作成] を選択します。NuGet パッケージをプロジェクトに追加します。
ソリューション エクスプローラーでプロジェクト名を右クリックし、 [NuGet パッケージの管理] をクリックします。
[NuGet パッケージ マネージャー] タブで、 [パッケージ ソース] が nuget.org に設定されており、 [プレリリースを含める] チェック ボックスがオンになっていることを確認します。
以下の NuGet パッケージを検索してインストールします。
Microsoft.Azure.Management.DataLake.Store
- このチュートリアルでは、v2.1.3-preview を使用します。Microsoft.Rest.ClientRuntime.Azure.Authentication
- このチュートリアルでは、v2.2.12 を使用します。
NuGet パッケージ マネージャーを閉じます。
Program.csを開き、既存のコードを削除し、次のステートメントに置き換えて、名前空間の参照を追加します。
using System; using System.IO; using System.Linq; using System.Text; using System.Threading; using System.Collections.Generic; using System.Security.Cryptography.X509Certificates; // Required only if you are using an Azure AD application created with certificates using Microsoft.Rest; using Microsoft.Rest.Azure.Authentication; using Microsoft.Azure.Management.DataLake.Store; using Microsoft.Azure.Management.DataLake.Store.Models; using Microsoft.IdentityModel.Clients.ActiveDirectory;
変数を宣言し、プレースホルダーの値を指定します。 さらに、指定したローカル パスとファイル名がコンピューターに存在していることを確認します。
namespace SdkSample { class Program { private static DataLakeStoreAccountManagementClient _adlsClient; private static string _adlsAccountName; private static string _resourceGroupName; private static string _location; private static string _subId; private static void Main(string[] args) { _adlsAccountName = "<DATA-LAKE-STORAGE-GEN1-NAME>.azuredatalakestore.net"; _resourceGroupName = "<RESOURCE-GROUP-NAME>"; _location = "East US 2"; _subId = "<SUBSCRIPTION-ID>"; } } }
記事の以降のセクションでは、認証、ファイルのアップロードなどの操作を実行する .NET メソッドの使用方法について説明します。
認証
- アプリケーションのエンドユーザー認証については、Data Lake Storage Gen1 での .NET SDK を使用したエンドユーザー認証に関するページを参照してください。
- アプリケーションのサービス間認証については、.NET SDK を使用した Data Lake Storage Gen1 に対するサービス間認証に関するページを参照してください。
クライアント オブジェクトを作成する
次のスニペットを使用して、アカウントの作成やアカウントの削除など、アカウント管理要求をサービスに発行するために使用される Data Lake Storage Gen1 アカウント クライアント オブジェクトを作成します。
// Create client objects and set the subscription ID
_adlsClient = new DataLakeStoreAccountManagementClient(armCreds) { SubscriptionId = _subId };
Data Lake Storage Gen1 アカウントを作成する
次のスニペットを使用して、Data Lake Storage Gen1 アカウント クライアント オブジェクトの作成中に指定した Azure サブスクリプションに Data Lake Storage Gen1 アカウントを作成します。
// Create Data Lake Storage Gen1 account
var adlsParameters = new DataLakeStoreAccount(location: _location);
_adlsClient.Account.Create(_resourceGroupName, _adlsAccountName, adlsParameters);
サブスクリプション内のすべての Data Lake Storage Gen1 アカウントを一覧表示する
次のメソッドをクラス定義に追加します。 次のスニペットは、特定の Azure サブスクリプション内のすべての Data Lake Storage Gen1 アカウントを一覧表示します。
// List all Data Lake Storage Gen1 accounts within the subscription
public static List<DataLakeStoreAccountBasic> ListAdlStoreAccounts()
{
var response = _adlsClient.Account.List(_adlsAccountName);
var accounts = new List<DataLakeStoreAccountBasic>(response);
while (response.NextPageLink != null)
{
response = _adlsClient.Account.ListNext(response.NextPageLink);
accounts.AddRange(response);
}
return accounts;
}
Data Lake Storage Gen1 アカウントの削除
次のスニペットを使用して、以前に作成した Data Lake Storage Gen1 アカウントを削除します。
// Delete Data Lake Storage Gen1 account
_adlsClient.Account.Delete(_resourceGroupName, _adlsAccountName);