Använda HDFS CLI med Data Lake Storage Gen2

Du kan komma åt och hantera data i ditt lagringskonto med hjälp av ett kommandoradsgränssnitt precis som med ett Hadoop Distributed File System (HDFS). Den här artikeln innehåller några exempel som hjälper dig att komma igång.

HDInsight ger åtkomst till den distribuerade containern som är lokalt kopplad till beräkningsnoderna. Du kan komma åt den här containern med hjälp av gränssnittet som direkt interagerar med HDFS och andra filsystem som Hadoop stöder.

Mer information om HDFS CLI finns i den officiella dokumentationen och HDFS-behörighetsguiden

Anteckning

Om du använder Azure Databricks i stället för HDInsight och vill interagera med dina data med hjälp av ett kommandoradsgränssnitt kan du använda Databricks CLI för att interagera med Databricks-filsystemet. Se Databricks CLI.

Använda HDFS CLI med ett HDInsight Hadoop-kluster i Linux

Först upprättar du fjärråtkomst till tjänster. Om du väljer SSH ser PowerShell-exempelkoden ut så här:

#Connect to the cluster via SSH.
ssh sshuser@clustername-ssh.azurehdinsight.net
#Execute basic HDFS commands. Display the hierarchy.
hdfs dfs -ls /
#Create a sample directory.
hdfs dfs -mkdir /samplefolder

Anslutningssträngen finns i avsnittet "SSH + Klusterinloggning" på HDInsight-klusterbladet i Azure Portal. SSH-autentiseringsuppgifter angavs när klustret skapades.

Viktigt

HDInsight-klusterfakturering startar när ett kluster har skapats och stoppas när klustret tas bort. Debiteringen görs i förväg per minut, så du ska alltid ta bort ditt kluster när det inte används. Mer information om hur du tar bort ett kluster finns i vår artikel om ämnet. Data som lagras i ett lagringskonto med Data Lake Storage Gen2 aktiverade sparas dock även när ett HDInsight-kluster har tagits bort.

Skapa en container

hdfs dfs -D "fs.azure.createRemoteFileSystemDuringInitialization=true" -ls abfs://<container-name>@<storage-account-name>.dfs.core.windows.net/

  • <container-name> Ersätt platshållaren med det namn som du vill ge containern.

  • Ersätt platshållaren <storage-account-name> med namnet på ditt lagringskonto.

Hämta en lista över filer eller kataloger

hdfs dfs -ls <path>

<path> Ersätt platshållaren med URI:n för containern eller containermappen.

Exempelvis: hdfs dfs -ls abfs://my-file-system@mystorageaccount.dfs.core.windows.net/my-directory-name

Skapa en katalog

hdfs dfs -mkdir [-p] <path>

<path> Ersätt platshållaren med rotcontainerns namn eller en mapp i containern.

Exempelvis: hdfs dfs -mkdir abfs://my-file-system@mystorageaccount.dfs.core.windows.net/

Ta bort en fil eller katalog

hdfs dfs -rm <path>

<path> Ersätt platshållaren med URI:n för filen eller mappen som du vill ta bort.

Exempelvis: hdfs dfs -rmdir abfs://my-file-system@mystorageaccount.dfs.core.windows.net/my-directory-name/my-file-name

Visa Access Control listor (ACL: er) för filer och kataloger

hdfs dfs -getfacl [-R] <path>

Exempel:

hdfs dfs -getfacl -R /dir

Se getfacl

Ange ACL:er för filer och kataloger

hdfs dfs -setfacl [-R] [-b|-k -m|-x <acl_spec> <path>]|[--set <acl_spec> <path>]

Exempel:

hdfs dfs -setfacl -m user:hadoop:rw- /file

Se setfacl

Ändra ägare till filer

hdfs dfs -chown [-R] <new_owner>:<users_group> <URI>

Se chown

Ändra gruppassociation för filer

hdfs dfs -chgrp [-R] <group> <URI>

Se chgrp

Ändra behörigheter för filer

hdfs dfs -chmod [-R] <mode> <URI>

Se chmod

Du kan visa den fullständiga listan med kommandon på apache Hadoop 2.4.1-webbplatsen för filsystemgränssnittsguiden .

Nästa steg