Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Neste artigo, você aprenderá a usar APIs REST WebHDFS e APIs REST do Data Lake Storage Gen1 para executar operações do sistema de arquivos no Azure Data Lake Storage Gen1. Para obter instruções sobre como executar operações de gerenciamento de conta no Data Lake Storage Gen1 usando a API REST, consulte Operações de gerenciamento de conta no Data Lake Storage Gen1 usando a API REST.
Pré-requisitos
Uma assinatura do Azure. Veja Obter versão de avaliação gratuita do Azure.
conta do Azure Data Lake Storage Gen1. Siga as instruções em Introdução ao Azure Data Lake Storage Gen1 usando o portal do Azure.
cURL. Este artigo usa cURL para demonstrar como fazer chamadas de API REST em uma conta do Data Lake Storage Gen1.
Como faço para autenticar usando o Microsoft Entra ID?
Você pode usar duas abordagens para autenticar usando o Microsoft Entra ID.
- Para autenticação de usuário final para seu aplicativo (interativo), consulte Autenticação de usuário final com o Data Lake Storage Gen1 usando o SDK do .NET.
- Para autenticação de serviço a serviço para seu aplicativo (não interativo), consulte Autenticação de serviço a serviço com o Data Lake Storage Gen1 usando o SDK do .NET.
Criar pastas
Esta operação é baseada na chamada WebHDFS REST API definida aqui.
Utilize o seguinte comando cURL. Substitua <yourstorename> pelo nome da conta do Data Lake Storage Gen1.
curl -i -X PUT -H "Authorization: Bearer <REDACTED>" -d "" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/?op=MKDIRS'
No comando anterior, substitua <REDACTED
> pelo token de autorização recuperado anteriormente. Este comando cria um diretório chamado mytempdir na pasta raiz da sua conta do Data Lake Storage Gen1.
Se a operação for concluída com êxito, você verá uma resposta como o seguinte trecho:
{"boolean":true}
Listar pastas
Esta operação é baseada na chamada WebHDFS REST API definida aqui.
Utilize o seguinte comando cURL. Substitua <yourstorename> pelo nome da conta do Data Lake Storage Gen1.
curl -i -X GET -H "Authorization: Bearer <REDACTED>" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/?op=LISTSTATUS'
No comando anterior, substitua <REDACTED
> pelo token de autorização recuperado anteriormente.
Se a operação for concluída com êxito, você verá uma resposta como o seguinte trecho:
{
"FileStatuses": {
"FileStatus": [{
"length": 0,
"pathSuffix": "mytempdir",
"type": "DIRECTORY",
"blockSize": 268435456,
"accessTime": 1458324719512,
"modificationTime": 1458324719512,
"replication": 0,
"permission": "777",
"owner": "<GUID>",
"group": "<GUID>"
}]
}
}
Carregar dados
Esta operação é baseada na chamada WebHDFS REST API definida aqui.
Utilize o seguinte comando cURL. Substitua <yourstorename> pelo nome da conta do Data Lake Storage Gen1.
curl -i -X PUT -L -T 'C:\temp\list.txt' -H "Authorization: Bearer <REDACTED>" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/list.txt?op=CREATE'
Na sintaxe anterior -T parâmetro é o local do arquivo que você está carregando.
A saída é semelhante ao seguinte trecho:
HTTP/1.1 307 Temporary Redirect
...
Location: https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/list.txt?op=CREATE&write=true
...
Content-Length: 0
HTTP/1.1 100 Continue
HTTP/1.1 201 Created
...
Ler dados
Esta operação é baseada na chamada WebHDFS REST API definida aqui.
A leitura de dados de uma conta do Data Lake Storage Gen1 é um processo de duas etapas.
- Primeiro, envia uma solicitação GET para o ponto de extremidade
https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=OPEN
. Esta chamada retorna um local para o qual enviar a próxima solicitação GET. - Em seguida, você envia a solicitação GET em relação ao ponto de extremidade
https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=OPEN&read=true
. Esta chamada exibe o conteúdo do arquivo.
No entanto, como não há diferença nos parâmetros de entrada entre a primeira e a segunda etapa, você pode usar o -L
parâmetro para enviar a primeira solicitação.
-L
opção essencialmente combina duas solicitações em uma e faz cURL refazer a solicitação no novo local. Finalmente, a saída de todas as chamadas de solicitação é exibida, como mostrado no trecho a seguir. Substitua <yourstorename> pelo nome da conta do Data Lake Storage Gen1.
curl -i -L GET -H "Authorization: Bearer <REDACTED>" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=OPEN'
Você deverá ver uma saída semelhante ao seguinte trecho:
HTTP/1.1 307 Temporary Redirect
...
Location: https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/somerandomfile.txt?op=OPEN&read=true
...
HTTP/1.1 200 OK
...
Hello, Data Lake Store user!
Renomear um arquivo
Esta operação é baseada na chamada WebHDFS REST API definida aqui.
Use o seguinte comando cURL para renomear um arquivo. Substitua <yourstorename> pelo nome da conta do Data Lake Storage Gen1.
curl -i -X PUT -H "Authorization: Bearer <REDACTED>" -d "" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile.txt?op=RENAME&destination=/mytempdir/myinputfile1.txt'
Você verá uma saída semelhante ao seguinte trecho:
HTTP/1.1 200 OK
...
{"boolean":true}
Eliminar um ficheiro
Esta operação é baseada na chamada WebHDFS REST API definida aqui.
Use o seguinte comando cURL para excluir um arquivo. Substitua <yourstorename> pelo nome da conta do Data Lake Storage Gen1.
curl -i -X DELETE -H "Authorization: Bearer <REDACTED>" 'https://<yourstorename>.azuredatalakestore.net/webhdfs/v1/mytempdir/myinputfile1.txt?op=DELETE'
Verá um resultado como o seguinte:
HTTP/1.1 200 OK
...
{"boolean":true}