Início Rápido: Criar um Azure Data Factory usando a CLI do Azure
Este início rápido descreve como usar a CLI do Azure para criar um Azure Data Factory. O pipeline que você cria nesse data factory copia dados de uma pasta para outra em um Armazenamento de Blobs do Azure. Para obter informações sobre como transformar dados usando o Azure Data Factory, confira Transformar dados no Azure data Factory.
Para obter uma introdução do serviço do Azure Data Factory, consulte Introdução ao Azure Data Factory.
Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.
Pré-requisitos
Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, confira Início Rápido para Bash no Azure Cloud Shell.
Se preferir executar os comandos de referência da CLI localmente, instale a CLI do Azure. Para execuções no Windows ou no macOS, considere executar a CLI do Azure em um contêiner do Docker. Para saber mais, confira Como executar a CLI do Azure em um contêiner do Docker.
Se estiver usando uma instalação local, entre com a CLI do Azure usando o comando az login. Para concluir o processo de autenticação, siga as etapas exibidas no terminal. Para ver outras opções de entrada, confira Conectar-se com a CLI do Azure.
Quando solicitado, instale a extensão da CLI do Azure no primeiro uso. Para obter mais informações sobre extensões, confira Usar extensões com a CLI do Azure.
Execute az version para localizar a versão e as bibliotecas dependentes que estão instaladas. Para fazer a atualização para a versão mais recente, execute az upgrade.
Observação
Para criar instâncias de Data Factory, a conta de usuário usada para entrar no Azure deve ser um membro das funções colaborador ou proprietário, ou um administrador da assinatura do Azure. Para obter mais informações, confira funções do Azure.
Preparar um contêiner e um arquivo de teste
Este início rápido usa uma conta de Armazenamento do Azure, que inclui um contêiner com um arquivo.
Para criar um grupo de recursos chamado
ADFQuickStartRG
, use o comando az group create:az group create --name ADFQuickStartRG --location eastus
Crie uma conta de armazenamento usando o comando az storage account create:
az storage account create --resource-group ADFQuickStartRG \ --name adfquickstartstorage --location eastus
Crie um contêiner chamado
adftutorial
usando o comando az storage container create:az storage container create --resource-group ADFQuickStartRG --name adftutorial \ --account-name adfquickstartstorage --auth-mode key
No diretório local, crie um arquivo chamado
emp.txt
para ser carregado. Se estiver trabalhando no Azure Cloud Shell, você poderá encontrar o diretório de trabalho atual usando o comando de Bashecho $PWD
. Você pode usar comandos de Bash padrão, comocat
, para criar um arquivo:cat > emp.txt This is text.
Use Ctrl + D para salvar o novo arquivo.
Para carregar o novo arquivo em seu contêiner de armazenamento do Azure, use o comando az storage blob upload:
az storage blob upload --account-name adfquickstartstorage --name input/emp.txt \ --container-name adftutorial --file emp.txt --auth-mode key
Esse comando carrega em uma nova pasta chamada
input
.
Criar uma data factory
Para criar um data factory do Azure, execute o comando az datafactory create:
az datafactory create --resource-group ADFQuickStartRG \
--factory-name ADFTutorialFactory
Importante
Substitua ADFTutorialFactory
por um nome de data factory globalmente exclusivo, por exemplo, ADFTutorialFactorySP1127.
Você pode ver o data factory criado usando o comando az datafactory show:
az datafactory show --resource-group ADFQuickStartRG \
--factory-name ADFTutorialFactory
Criar um serviço vinculado e conjuntos de dados
Em seguida, crie um serviço vinculado e dois conjuntos de dados.
Obtenha a cadeia de conexão da conta de armazenamento usando o comando az storage account show-connection-string:
az storage account show-connection-string --resource-group ADFQuickStartRG \ --name adfquickstartstorage --key primary
No diretório de trabalho, crie um arquivo JSON com esse conteúdo, que inclui sua cadeia de conexão da etapa anterior. Dê ao arquivo o nome
AzureStorageLinkedService.json
:{ "type": "AzureBlobStorage", "typeProperties": { "connectionString": "DefaultEndpointsProtocol=https;AccountName=<accountName>;AccountKey=<accountKey>;EndpointSuffix=core.windows.net" } }
Crie um serviço vinculado chamado
AzureStorageLinkedService
usando o comando az datafactory linked-service create:az datafactory linked-service create --resource-group ADFQuickStartRG \ --factory-name ADFTutorialFactory --linked-service-name AzureStorageLinkedService \ --properties AzureStorageLinkedService.json
No diretório de trabalho, crie um arquivo JSON com esse conteúdo, chamado
InputDataset.json
:{ "linkedServiceName": { "referenceName": "AzureStorageLinkedService", "type": "LinkedServiceReference" }, "annotations": [], "type": "Binary", "typeProperties": { "location": { "type": "AzureBlobStorageLocation", "fileName": "emp.txt", "folderPath": "input", "container": "adftutorial" } } }
Crie um conjunto de dados de entrada chamado
InputDataset
usando o comando az datafactory dataset create:az datafactory dataset create --resource-group ADFQuickStartRG \ --dataset-name InputDataset --factory-name ADFTutorialFactory \ --properties InputDataset.json
No diretório de trabalho, crie um arquivo JSON com esse conteúdo, chamado
OutputDataset.json
:{ "linkedServiceName": { "referenceName": "AzureStorageLinkedService", "type": "LinkedServiceReference" }, "annotations": [], "type": "Binary", "typeProperties": { "location": { "type": "AzureBlobStorageLocation", "folderPath": "output", "container": "adftutorial" } } }
Crie um conjunto de dados de saída chamado
OutputDataset
usando o comando az datafactory dataset create:az datafactory dataset create --resource-group ADFQuickStartRG \ --dataset-name OutputDataset --factory-name ADFTutorialFactory \ --properties OutputDataset.json
Criar e executar o pipeline
Por fim, crie e execute o pipeline.
No diretório de trabalho, crie um arquivo JSON com esse conteúdo chamado
Adfv2QuickStartPipeline.json
:{ "name": "Adfv2QuickStartPipeline", "properties": { "activities": [ { "name": "CopyFromBlobToBlob", "type": "Copy", "dependsOn": [], "policy": { "timeout": "7.00:00:00", "retry": 0, "retryIntervalInSeconds": 30, "secureOutput": false, "secureInput": false }, "userProperties": [], "typeProperties": { "source": { "type": "BinarySource", "storeSettings": { "type": "AzureBlobStorageReadSettings", "recursive": true } }, "sink": { "type": "BinarySink", "storeSettings": { "type": "AzureBlobStorageWriteSettings" } }, "enableStaging": false }, "inputs": [ { "referenceName": "InputDataset", "type": "DatasetReference" } ], "outputs": [ { "referenceName": "OutputDataset", "type": "DatasetReference" } ] } ], "annotations": [] } }
Crie um pipeline chamado
Adfv2QuickStartPipeline
usando o comando az datafactory pipeline create:az datafactory pipeline create --resource-group ADFQuickStartRG \ --factory-name ADFTutorialFactory --name Adfv2QuickStartPipeline \ --pipeline Adfv2QuickStartPipeline.json
Execute o pipeline usando o comando az datafactory pipeline create-run:
az datafactory pipeline create-run --resource-group ADFQuickStartRG \ --name Adfv2QuickStartPipeline --factory-name ADFTutorialFactory
Esse comando retorna uma ID de execução. Copie-a para uso no próximo comando.
Verifique se a execução de pipeline foi bem-sucedida usando o comando az datafactory pipeline-run show:
az datafactory pipeline-run show --resource-group ADFQuickStartRG \ --factory-name ADFTutorialFactory --run-id 00000000-0000-0000-0000-000000000000
Você também pode verificar se o pipeline foi executado conforme o esperado usando o portal do Azure. Para obter mais informações, confira Examinar recursos implantados.
Limpar recursos
Todos os recursos neste início rápido fazem parte do mesmo grupo de recursos. Para remover todos eles, use o comando az group delete:
az group delete --name ADFQuickStartRG
Se estiver usando esse grupo de recursos para alguma outra coisa, exclua os recursos individuais. Por exemplo, para remover o serviço vinculado, use o comando az datafactory linked-service delete.
Neste início rápido, você criou os seguintes arquivos JSON:
- AzureStorageLinkedService.json
- InputDataset.json
- OutputDataset.json
- Adfv2QuickStartPipeline.json
Exclua-os usando comandos de Bash padrão.