Partilhar via


Usando a CLI do HDFS com armazenamento Data Lake

Você pode acessar e gerenciar os dados em sua conta de armazenamento usando uma interface de linha de comando, assim como faria com um Hadoop Distributed File System (HDFS). Este artigo fornece alguns exemplos que o ajudarão a começar.

O HDInsight fornece acesso ao contêiner distribuído que está conectado localmente aos nós de computação. Você pode acessar esse contêiner usando o shell que interage diretamente com o HDFS e os outros sistemas de arquivos suportados pelo Hadoop.

Para obter mais informações sobre a CLI do HDFS, consulte a documentação oficial e o Guia de permissões do HDFS

Nota

Se você estiver usando o Azure Databricks em vez do HDInsight e quiser interagir com seus dados usando uma interface de linha de comando, poderá usar a CLI do Databricks para interagir com o sistema de arquivos Databricks. Consulte Databricks CLI.

Usar a CLI do HDFS com um cluster Hadoop do HDInsight no Linux

Primeiro, estabeleça o acesso remoto aos serviços. Se você escolher SSH , o código PowerShell de exemplo terá a seguinte aparência:

#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

A cadeia de conexão pode ser encontrada na seção "SSH + Logon de cluster" da folha de cluster HDInsight no portal do Azure. As credenciais SSH foram especificadas no momento da criação do cluster.

Importante

A cobrança do cluster HDInsight começa depois que um cluster é criado e para quando o cluster é excluído. A faturação é rateada por minuto, pelo que deve sempre eliminar o cluster quando deixar de ser utilizado. Para saber como excluir um cluster, consulte nosso artigo sobre o tema. No entanto, os dados armazenados em uma conta de armazenamento com o Armazenamento Data Lake habilitado persistem mesmo depois que um cluster HDInsight é excluído.

Criar um contentor

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

  • Substitua o espaço reservado <container-name> pelo nome que você deseja dar ao contêiner.

  • Substitua o espaço reservado <storage-account-name> pelo nome da sua conta de armazenamento.

Obter uma lista de arquivos ou diretórios

hdfs dfs -ls <path>

Substitua o espaço reservado <path> pelo URI do contêiner ou da pasta do contêiner.

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

Criar um diretório

hdfs dfs -mkdir [-p] <path>

Substitua o espaço reservado <path> pelo nome do contêiner raiz ou por uma pasta dentro do contêiner.

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

Excluir um arquivo ou diretório

hdfs dfs -rm <path>

Substitua o espaço reservado <path> pelo URI do arquivo ou pasta que você deseja excluir.

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

Exibir as ACLs (Listas de Controle de Acesso) de arquivos e diretórios

hdfs dfs -getfacl [-R] <path>

Exemplo:

hdfs dfs -getfacl -R /dir

Ver getfacl

Definir ACLs de arquivos e diretórios

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

Exemplo:

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

Ver setfacl

Alterar o proprietário dos ficheiros

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

Ver chown

Alterar a associação de grupo de arquivos

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

Ver chgrp

Alterar as permissões dos ficheiros

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

Ver chmod

Você pode visualizar a lista completa de comandos no site Apache Hadoop 2.4.1 File System Shell Guide .

Próximos passos