Operações de gestão de contas no Azure Data Lake Storage Gen1 com Python
Saiba como utilizar o SDK python para Azure Data Lake Storage Gen1 para realizar operações básicas de gestão de contas, como criar uma conta Data Lake Storage Gen1, listar as contas Data Lake Storage Gen1, etc. Para obter instruções sobre como efetuar operações de sistema de ficheiros em Data Lake Storage Gen1 com o Python, veja Operações do sistema de ficheiros em Data Lake Storage Gen1 com Python.
Pré-requisitos
Python. Pode transferir o Python aqui. Este artigo utiliza a versão Python 3.6.2.
Uma subscrição do Azure. Consulte Obter versão de avaliação gratuita do Azure.
Um grupo de recursos do Azure. Para obter instruções, veja Criar um grupo de recursos do Azure.
Instalar os módulos
Para trabalhar com Data Lake Storage Gen1 com o Python, tem de instalar três módulos.
- O módulo
azure-mgmt-resource
, que inclui módulos do Azure para o Active Directory, etc. - O
azure-mgmt-datalake-store
módulo, que inclui as operações de gestão de contas Azure Data Lake Storage Gen1. Para obter mais informações sobre este módulo, veja Azure Data Lake Storage referência do módulo Gestão gen1. - O
azure-datalake-store
módulo, que inclui as operações de sistema de ficheiros Azure Data Lake Storage Gen1. Para obter mais informações sobre este módulo, veja referência do módulo azure-datalake-store filesystem.
Utilize os comandos seguintes para instalar os módulos.
pip install azure-identity
pip install azure-mgmt-resource
pip install azure-mgmt-datalake-store
pip install azure-datalake-store
Criar uma aplicação Python nova
No IDE à sua escolha, crie uma aplicação Python nova, como, por exemplo, mysample.py.
Adicione o fragmento seguinte para importar os módulos necessários:
# Acquire a credential object for the app identity. When running in the cloud, # DefaultAzureCredential uses the app's managed identity (MSI) or user-assigned service principal. # When run locally, DefaultAzureCredential relies on environment variables named # AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, and AZURE_TENANT_ID. from azure.identity import DefaultAzureCredential ## Required for Data Lake Storage Gen1 account management from azure.mgmt.datalake.store import DataLakeStoreAccountManagementClient from azure.mgmt.datalake.store.models import CreateDataLakeStoreAccountParameters ## Required for Data Lake Storage Gen1 filesystem management from azure.datalake.store import core, lib, multithread # Common Azure imports import adal from azure.mgmt.resource.resources import ResourceManagementClient from azure.mgmt.resource.resources.models import ResourceGroup # Use these as needed for your application import logging, getpass, pprint, uuid, time
Guarde as alterações a mysample.py.
Autenticação
Nesta secção, falamos sobre as diferentes formas de autenticar com Microsoft Entra ID. As opções disponíveis são:
- Para autenticação do utilizador final para a sua aplicação, veja Autenticação do utilizador final com Data Lake Storage Gen1 com Python.
- Para autenticação serviço a serviço para a sua aplicação, veja Autenticação serviço a serviço com Data Lake Storage Gen1 com Python.
Criar cliente e Data Lake Storage Gen1 conta
O fragmento seguinte cria primeiro o cliente de conta Data Lake Storage Gen1. Utiliza o objeto de cliente para criar uma conta Data Lake Storage Gen1. Por fim, o fragmento cria um objeto de cliente do sistema de ficheiros.
## Declare variables
subscriptionId = 'FILL-IN-HERE'
adlsAccountName = 'FILL-IN-HERE'
resourceGroup = 'FILL-IN-HERE'
location = 'eastus2'
credential = DefaultAzureCredential()
## Create Data Lake Storage Gen1 account management client object
adlsAcctClient = DataLakeStoreAccountManagementClient(credential, subscription_id=subscriptionId)
## Create a Data Lake Storage Gen1 account
adlsAcctResult = adlsAcctClient.accounts.begin_create(
resourceGroup,
adlsAccountName,
CreateDataLakeStoreAccountParameters(
location=location
)
)
Listar as contas de Data Lake Storage Gen1
## List the existing Data Lake Storage Gen1 accounts
result_list_response = adlsAcctClient.accounts.list()
result_list = list(result_list_response)
for items in result_list:
print(items)
Eliminar a conta Data Lake Storage Gen1
## Delete an existing Data Lake Storage Gen1 account
adlsAcctClient.accounts.begin_delete(resourceGroup, adlsAccountName)