Transformar dados executando uma atividade do Azure Databricks
A atividade do Azure Databricks no Data Factory para Microsoft Fabric permite orquestrar os seguintes trabalhos do Azure Databricks:
- Notebook
- Jar
- Python
Este artigo fornece um passo a passo que descreve como criar uma atividade do Azure Databricks usando a interface do usuário do Data Factory.
Pré-requisitos
Para começar, você deve concluir os seguintes pré-requisitos:
- Uma conta de locatário com uma assinatura ativa. Crie uma conta gratuitamente.
- Um workspace é criado.
Configurando uma atividade do Azure Databricks
Para usar uma atividade do Azure Databricks em um pipeline, conclua as seguintes etapas:
Configurando a conexão
Crie um pipeline no seu workspace.
Clique em adicionar uma atividade de pipeline e pesquise o Azure Databricks.
Como alternativa, você pode pesquisar o Azure Databricks no painel Atividades do pipeline e selecioná-lo para adicioná-lo à tela do pipeline.
Selecione a nova atividade do Azure Databricks na tela se ela ainda não estiver selecionada.
Consulte as diretrizes de Configurações Geraispara definir a guia Configurações Gerais.
Configurando os clusters
Selecione a guia Cluster. Em seguida, você pode escolher uma conexão existente ou criar uma nova conexão do Azure Databricks e, em seguida, escolher um novo cluster de trabalho, um cluster interativo existente ou um pool de instâncias existente.
Dependendo do que você escolher para o cluster, preencha os campos correspondentes conforme apresentado.
- Em novo cluster de trabalho e pool de instâncias existente, você também tem a capacidade de configurar o número de trabalhadores e habilitar instâncias spot.
Você também pode especificar configurações de cluster adicionais, como Política de cluster, Configuração do Spark, Variáveis de ambiente do Spark e marcas personalizadas, conforme necessário para o cluster ao qual você está se conectando. Os scripts de inicialização do Databricks e o caminho de destino do Log de Cluster também podem ser adicionados nas configurações adicionais de cluster.
Observação
Todas as propriedades de cluster avançadas e expressões dinâmicas com suporte no serviço vinculado do Azure Data Factory Azure Databricks agora também têm suporte na atividade do Azure Databricks no Microsoft Fabric na seção 'Configuração de cluster adicional' na interface do usuário. Como essas propriedades agora estão incluídas na interface do usuário de atividade, elas podem ser facilmente usadas com um conteúdo dinâmico expresso sem a necessidade da especificação JSON avançada no serviço vinculado Azure Data Factory Azure Databricks.
A atividade do Azure Databricks agora também oferece suporte à Política de Cluster e ao Catálogo Unity.
- Em configurações avançadas, você tem a opção de escolher aPolítica de Cluster para poder especificar quais configurações de cluster são permitidas.
- Além disso, em configurações avançadas, você tem a opção de configurar o Modo de Acesso ao Catálogo Unity para maior segurança. Os tipos de modo de acesso disponíveis são:
- Modo de Acesso para Usuário Único Esse modo foi projetado para cenários em que cada cluster é usado por um único usuário. Ele garante que o acesso aos dados no cluster seja restrito apenas a esse usuário. Esse modo é útil para tarefas que exigem isolamento e tratamento individual de dados.
- Modo de Acesso Compartilhado Nesse modo, vários usuários podem acessar o mesmo cluster. Ele combina a governança de dados do Unity Catalog com as listas de controle de acesso (ACLs) de tabelas herdadas. Esse modo permite o acesso colaborativo a dados, mantendo protocolos de governança e segurança. No entanto, ele tem certas limitações, como não oferecer suporte ao Databricks Runtime ML, a trabalhos de envio do Spark e a APIs e UDFs específicas do Spark.
- Sem Modo de Acesso Esse modo desabilita a interação com o Unity Catalog, o que significa que os clusters não têm acesso aos dados gerenciados por ele. Esse modo é útil para cargas de trabalho que não exigem os recursos de governança do Unity Catalog.
Definindo as configurações
Selecionando a guia Configurações, você pode escolher entre três opções do tipo de Azure Databricks que deseja orquestrar.
Orquestrando o tipo Notebook na atividade do Azure Databricks:
Na guia Configurações, você pode escolher o botão de opção Notebook para executar um Notebook. Você precisará especificar o caminho do notebook a ser executado no Azure Databricks, os parâmetros base opcionais a serem passados para o notebook e as bibliotecas adicionais a serem instaladas no cluster para executar o trabalho.
Orquestrando o tipo Jar na atividade do Azure Databricks:
Na guia Configurações, você pode escolher o botão de opção Jar para executar um Jar. Você precisará especificar o nome da classe a ser executada no Azure Databricks, parâmetros base opcionais a serem passados para o Jar e quaisquer bibliotecas adicionais a serem instaladas no cluster para executar o trabalho.
Orquestrando o tipo Python na atividade do Azure Databricks:
Na guia Configurações, você pode escolher o botão de opção Python para executar um arquivo Python. Você precisará especificar o caminho no Azure Databricks para um arquivo Python a ser executado, os parâmetros opcionais a serem passados e as bibliotecas adicionais a serem instaladas no cluster para executar o trabalho.
Bibliotecas com suporte para a atividade do Azure Databricks
Na definição da atividade do Databricks acima, você especifica esses tipos de biblioteca: jar, egxg, whl, maven, pypi, cran.
Para obter mais informações, consulte a documentação do Databricks para tipos de biblioteca.
Passando parâmetros entre a atividade do Azure Databricks e os pipelines
Você pode passar os parâmetros para notebooks usando a propriedade baseParameters na atividade do databricks.
Em alguns casos, talvez seja necessário passar determinados valores do notebook de volta para o serviço, que pode ser usado para o fluxo de controle (verificações condicionais) no serviço ou ser consumido por atividades downstream (o limite de tamanho é de 2 MB).
No notebook, por exemplo, você pode chamar dbutils.notebook.exit("returnValue") e o "returnValue" correspondente será retornado para o serviço.
Você pode consumir a saída no serviço usando expressão como
@{activity('databricks activity name').output.runOutput}
.
Salvar e executar ou agendar o pipeline
Após configurar quaisquer outras atividades exigidas pelo pipeline, alterne para a guia Página Inicial na parte superior do editor do pipeline e selecione o botão Salvar para salvar o pipeline. Selecione Executar para executá-lo diretamente ou Agendar para agendá-lo. Você também pode exibir o histórico de execuções aqui ou definir outras configurações.