Azure CLI を使用して Azure Data Lake Storage Gen1 の使用を開始する

Note

2024 年 2 月 29 日に Azure Data Lake Storage Gen1 は廃止されます。 詳細については、公式告知を参照してください。 Azure Data Lake Storage Gen1 を使用している場合は、その日になる前に Azure Data Lake Storage Gen2 に移行してください。 方法については、「Azure Data Lake Storage を Gen1 から Gen2 に移行する」を参照してください。

Azure Data Lake Storage Gen1 アカウントを持っていなければ、新しいアカウントは作成できません。

Azure CLI を使用して Azure Data Lake Storage Gen1 アカウントを作成し、フォルダーの作成、データ ファイルのアップロードとダウンロード、ご自分のアカウントの削除などの基本操作を行う方法について説明します。Data Lake Storage Gen1 の詳細については、Data Lake Storage Gen1 の概要に関する記事をご覧ください。

Azure CLI は、Azure リソースを管理するための、Azure のコマンド ライン エクスペリエンスです。 macOS、Linux、および Windows で使用できます。 詳細については、Azure CLI の概要に関するページを参照してください。 コマンドと構文の完全な一覧については、Azure Data Lake Storage Gen1 CLI リファレンスを参照することもできます。

前提条件

この記事を読み始める前に、次の項目を用意する必要があります。

認証

この記事では、Data Lake Storage Gen1 に対してエンド ユーザーとしてログインする比較的単純な認証方法を使用します。 その後、Data Lake Storage Gen1 アカウントとファイル システムに対するアクセス レベルは、そのログイン ユーザーのアクセス レベルで管理されます。 ただし、Data Lake Storage Gen1 には他の認証方法も存在します (エンド ユーザー認証サービス間認証)。 認証方法の詳細については、エンドユーザー認証またはサービス間認証に関するページを参照してください。

Azure サブスクリプションにログイン

  1. Azure サブスクリプションにログインします。

     az login
    

    使用するコードは次の手順で示します。 Web ブラウザーを使用して https://aka.ms/devicelogin ページを開き、コードを入力して認証を行います。 資格情報を使用してログインするように求めるメッセージが表示されます。

  2. ログインすると、アカウントに関連付けられているすべての Azure サブスクリプションの一覧がウィンドウに表示されます。 次のコマンドを使用して、特定のサブスクリプションを使用します。

     az account set --subscription <subscription id> 
    

Azure Data Lake Storage Gen1 アカウントを作成する

  1. 新しいリソース グループを作成します。 次のコマンドで、使用するパラメーター値を指定します。 場所の名前にスペースが含まれる場合は、名前を引用符で囲みます。 たとえば、"East US 2" などとします。

     az group create --location "East US 2" --name myresourcegroup
    
  2. Data Lake Storage Gen1 アカウントを作成します。

     az dls account create --account mydatalakestoragegen1 --resource-group myresourcegroup
    

Data Lake Storage Gen1 アカウントでフォルダーを作成する

Data Lake Storage Gen1 アカウントにフォルダーを作成し、データを管理したり、保存したりできます。 次のコマンドを使用して、Data Lake Storage Gen1 アカウントのルートに mynewfolder という名前のフォルダーを作成します。

az dls fs create --account mydatalakestoragegen1 --path /mynewfolder --folder

Note

--folder パラメーターを指定すると、フォルダーが作成されます。 このパラメーターを指定しない場合、コマンドによって Data Lake Storage Gen1 アカウントのルートに mynewfolder という名前の空のファイルが作成されます。

Data Lake Storage Gen1 アカウントへのデータのアップロード

データは Data Lake Storage Gen1 のルート レベルで直接アップロードするか、アカウント内で作成したフォルダーにアップロードすることができます。 以下のスニペットは、前のセクションで作成したフォルダー (mynewfolder) にいくつかのサンプル データをアップロードする方法を示します。

アップロードするいくつかのサンプル データを探している場合は、 Azure Data Lake Git リポジトリ から Ambulance Dataフォルダーを取得できます。 ファイルをダウンロードし、コンピューター上のローカル ディレクトリ (C:\sampledata など) に保存します。

az dls fs upload --account mydatalakestoragegen1 --source-path "C:\SampleData\AmbulanceData\vehicle1_09142014.csv" --destination-path "/mynewfolder/vehicle1_09142014.csv"

Note

保存先として、ファイル名を含む完全なパスを指定する必要があります。

Data Lake Storage Gen1 アカウントのファイルを一覧表示する

Data Lake Storage Gen1 アカウントのファイルを一覧表示するには、次のコマンドを使用します。

az dls fs list --account mydatalakestoragegen1 --path /mynewfolder

この出力は次のように表示されます。

[
	{
		"accessTime": 1491323529542,
		"aclBit": false,
		"blockSize": 268435456,
		"group": "1808bd5f-62af-45f4-89d8-03c5e81bac20",
		"length": 1589881,
		"modificationTime": 1491323531638,
		"msExpirationTime": 0,
		"name": "mynewfolder/vehicle1_09142014.csv",
		"owner": "1808bd5f-62af-45f4-89d8-03c5e81bac20",
		"pathSuffix": "vehicle1_09142014.csv",
		"permission": "770",
		"replication": 1,
		"type": "FILE"
	}
]

Data Lake Storage Gen1 アカウントのデータの名前変更、ダウンロード、削除を行う

  • ファイルの名前を変更するには、次のコマンドを使用します。

      az dls fs move --account mydatalakestoragegen1 --source-path /mynewfolder/vehicle1_09142014.csv --destination-path /mynewfolder/vehicle1_09142014_copy.csv
    
  • ファイルをダウンロードするには、次のコマンドを使用します。 既に存在するパスをダウンロード先として指定してください。

      az dls fs download --account mydatalakestoragegen1 --source-path /mynewfolder/vehicle1_09142014_copy.csv --destination-path "C:\mysampledata\vehicle1_09142014_copy.csv"
    

    Note

    対象フォルダーが存在しない場合は、作成されます。

  • ファイルを削除するには、次のコマンドを使用します。

      az dls fs delete --account mydatalakestoragegen1 --path /mynewfolder/vehicle1_09142014_copy.csv
    

    フォルダー mynewfolder とファイル vehicle1_09142014_copy.csv を 1 つのコマンドでまとめて削除する場合は、--recurse パラメーターを使用します。

      az dls fs delete --account mydatalakestoragegen1 --path /mynewfolder --recurse
    

Data Lake Storage Gen1 アカウントのアクセス許可と ACL を操作する

このセクションでは、Azure CLI を使用して ACL とアクセス許可を管理する方法について説明します。 Azure Data Lake Storage Gen1 で ACL がどのように実装されているかについては「Azure Data Lake Storage Gen1 のアクセス制御」に説明があります。そちらをご参照ください。

  • ファイルまたはフォルダーの所有者を更新するには、次のコマンドを使用します。

      az dls fs access set-owner --account mydatalakestoragegen1 --path /mynewfolder/vehicle1_09142014.csv --group 80a3ed5f-959e-4696-ba3c-d3c8b2db6766 --owner 6361e05d-c381-4275-a932-5535806bb323
    
  • ファイルまたはフォルダーのアクセス許可を更新するには、次のコマンドを使用します。

      az dls fs access set-permission --account mydatalakestoragegen1 --path /mynewfolder/vehicle1_09142014.csv --permission 777
    
  • 特定のパスの ACL を取得するには、次のコマンドを使用します。

      az dls fs access show --account mydatalakestoragegen1 --path /mynewfolder/vehicle1_09142014.csv
    

    出力は次のようになります。

      {
      	"entries": [
      	"user::rwx",
      	"group::rwx",
      	"other::---"
      	],
      	"group": "1808bd5f-62af-45f4-89d8-03c5e81bac20",
      	"owner": "1808bd5f-62af-45f4-89d8-03c5e81bac20",
      	"permission": "770",
      	"stickyBit": false
      }
    
  • ACL のエントリを設定するには、次のコマンドを使用します。

      az dls fs access set-entry --account mydatalakestoragegen1 --path /mynewfolder --acl-spec user:6360e05d-c381-4275-a932-5535806bb323:-w-
    
  • ACL のエントリを削除するには、次のコマンドを使用します。

      az dls fs access remove-entry --account mydatalakestoragegen1 --path /mynewfolder --acl-spec user:6360e05d-c381-4275-a932-5535806bb323
    
  • 既定の ACL エントリ全体を削除するには、次のコマンドを使用します。

      az dls fs access remove-all --account mydatalakestoragegen1 --path /mynewfolder --default-acl
    
  • 既定でない ACL エントリ全体を削除するには、次のコマンドを使用します。

      az dls fs access remove-all --account mydatalakestoragegen1 --path /mynewfolder
    

Data Lake Storage Gen1 アカウントの削除

Data Lake Storage Gen1 アカウントを削除するには、次のコマンドを使用します。

az dls account delete --account mydatalakestoragegen1

確認を求めるメッセージが表示されたら、「 Y 」と入力して、アカウントを削除します。

次のステップ