Partager via


Utilisation de l’interface CLI HDFS avec Data Lake Storage Gen2

Vous pouvez accéder aux données et les gérer dans votre compte de stockage à l’aide d’une interface de ligne de commande comme vous le feriez avec un Système de fichiers DFS Hadoop (HDFS). Cet article fournit quelques exemples qui vous aideront à démarrer.

HDInsight permet d’accéder au conteneur distribué connecté localement aux nœuds de calcul. Ce conteneur est accessible à l’aide de l’interpréteur de commandes qui interagit directement avec HDFS et d’autres systèmes de fichiers pris en charge par Hadoop.

Pour plus d’informations sur l’interface de ligne de commande HDFS, voir la documentation officielle et le Guide des autorisations HDFS.

Notes

Si vous utilisez Azure Databricks au lieu de HDInsight, et souhaitez interagir avec vos données à l’aide d’une interface de ligne de commande, vous pouvez utiliser celle de Databricks pour interagir avec le système de fichiers Databricks. Voir Interface de ligne de commande Databricks.

Utiliser l’interface CLI HDFS avec un cluster HDInsight Hadoop sur Linux

Tout d’abord, établissez l’accès à distance aux services. Si vous choisissez SSH, l’exemple de code PowerShell se présente comme suit :

#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

La chaîne de connexion se trouve dans la section « Connexion SSH + Cluster » du panneau du cluster HDInsight dans le portail Azure. Les informations d’identification SSH ont été spécifiées au moment de la création du cluster.

Important

La facturation du cluster HDInsight démarre après la création du cluster et s’arrête à sa suppression. La facturation est effectuée au prorata des minutes écoulées. Par conséquent, vous devez toujours supprimer votre cluster lorsqu’il n’est plus utilisé. Pour découvrir comment supprimer un cluster, consultez notre article à ce sujet. Toutefois, les données stockées dans un compte de stockage avec Azure Data Lake Storage Gen2 persistent même après la suppression du cluster HDInsight.

Créez un conteneur.

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

  • Remplacez l’espace réservé <container-name> par le nom que vous souhaitez donner à votre conteneur.

  • Remplacez la valeur d’espace réservé <storage-account-name> par le nom de votre compte de stockage.

Obtenir la liste des fichiers ou répertoires

hdfs dfs -ls <path>

Remplacez l’espace réservé <path> par l’URI du conteneur ou du dossier du conteneur.

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

Créer un répertoire

hdfs dfs -mkdir [-p] <path>

Remplacez l’espace réservé <path> par le nom du conteneur racine ou par un dossier de votre conteneur.

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

Supprimer un fichier ou répertoire

hdfs dfs -rm <path>

Remplacez l'espace réservé <path> par l'URI du fichier ou du dossier à supprimer.

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

Afficher les listes de contrôle d’accès (ACL) des fichiers et répertoires

hdfs dfs -getfacl [-R] <path>

Exemple :

hdfs dfs -getfacl -R /dir

Voir getfacl

Définir les listes ACL des fichiers et répertoires

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

Exemple :

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

Voir setfacl

Changer le propriétaire des fichiers

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

Voir chown

Changer l’association de groupe des fichiers

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

Voir chgrp

Changer les autorisations des fichiers

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

Voir chmod

Vous pouvez voir la liste complète des commandes en accédant au site web Apache Hadoop 2.4.1 File System Shell Guide.

Étapes suivantes