Pular para o conteúdo principal

Desenvolva um trabalho com Databricks ativo Bundles

Databricks ativo Bundles, também conhecidos simplesmente como bundles , contêm os artefatos que o senhor deseja implantar e as configurações de Databricks recurso, como o Job, que deseja executar, e permitem que o senhor os valide, implante e execute de forma programática. Veja o que são Databricks ativo Bundles?

Esta página descreve como criar um pacote para gerenciar um Job programaticamente. Veja as vagas de empregoLakeFlow. O pacote é criado usando o Databricks Ativo Bundles default para Python Python, que consiste em um Notebook e a definição de um Job para executá-lo. Em seguida, você valida, implanta e executa o trabalho implantado em seu workspace Databricks .

dica

Se o senhor tiver trabalhos existentes que foram criados usando a interface de usuário LakeFlow Jobs ou API que deseja mover para pacotes, deverá defini-los nos arquivos de configuração de um pacote. A Databricks recomenda que o senhor crie primeiro um pacote usando as etapas abaixo e, em seguida, valide se o pacote funciona. Em seguida, o senhor pode adicionar outras definições de trabalho, Notebook e outras fontes ao pacote. Consulte Recuperar uma definição de trabalho existente usando a interface do usuário.

Se você quiser criar um pacote do zero, consulte Criar um pacote manualmente.

Requisitos

  • Databricks CLI versão 0.218.0 ou acima. Para verificar a versão instalada do site Databricks CLI, execute o comando databricks -v. Para instalar a CLI da Databricks, consulte Instalar ou atualizar a CLI da Databricks.
  • O uv é necessário para executar testes e instalar as dependências deste projeto a partir de uma IDE.
  • O site remoto Databricks workspace deve ter os arquivos workspace ativados. Consulte O que são arquivos workspace?
  • Um catálogo existente. Para criar um catálogo, consulte Criar catálogos.

Etapa 1: configurar a autenticação

Primeiro, configure a autenticação entre a CLI Databricks em sua máquina de desenvolvimento e seu workspace Databricks . Esta página pressupõe que você queira usar a autenticação OAuth de usuário para máquina (U2M) e um perfil de configuração Databricks correspondente chamado DEFAULT para autenticação.

nota

A autenticação U2M é adequada para testar essas etapas em tempo real. Para fluxo de trabalho totalmente automatizado, o site Databricks recomenda que o senhor use a autenticação máquina a máquina (M2M) OAuth. Consulte as instruções de configuração da autenticação M2M em Autorize o acesso da entidade de serviço a Databricks com OAuth.

  1. Use o comando Databricks CLI para iniciar o gerenciamento de tokens OAuth localmente, executando o seguinte comando para cada destino workspace.

    No comando a seguir, substitua <workspace-url> pelo Databricks workspace URL da instância, por https://1234567890123456.7.gcp.databricks.com exemplo,.

    Bash
    databricks auth login --host <workspace-url>
  2. O site Databricks CLI solicita que o senhor salve as informações inseridas como um Databricks perfil de configuração. Pressione Enter para aceitar o nome de perfil sugerido ou insira o nome de um perfil novo ou existente. Qualquer perfil existente com o mesmo nome é substituído pelas informações que o senhor inseriu. O senhor pode usar perfis para alternar rapidamente o contexto de autenticação em vários espaços de trabalho.

    Para obter uma lista de todos os perfis existentes, em um terminal separado ou prompt de comando, use o Databricks CLI para executar o comando databricks auth profiles. Para view as configurações existentes de um perfil específico, execute o comando databricks auth env --profile <profile-name>.

  3. No navegador da web, conclua as instruções na tela para fazer log in no workspace do Databricks.

  4. Para view o valor atual dos tokens OAuth de um perfil e o carimbo de data/hora da próxima expiração dos tokens, execute um dos seguintes comandos:

    • databricks auth token --host <workspace-url>
    • databricks auth token -p <profile-name>
    • databricks auth token --host <workspace-url> -p <profile-name>

    Se você tiver vários perfis com o mesmo valor --host, talvez seja necessário especificar as opções --host e -p juntas para ajudar a CLI do Databricks a encontrar as informações de token OAuth correspondentes corretas.

Etapa 2: inicializar o pacote

Inicialize um pacote usando o padrão default Python bundle project.

  1. Use o terminal ou o prompt do comando para alternar para um diretório em seu computador de desenvolvimento local que conterá o pacote gerado pelo padrão.

  2. Use o endereço Databricks CLI para executar o comando bundle init:

    Bash
    databricks bundle init
  3. Para Template to use, deixe o valor default de default-python pressionando Enter.

  4. Para Unique name for this project, deixe o valor default de my_project ou digite um valor diferente e pressione Enter. Isso determina o nome do diretório raiz desse pacote. Esse diretório raiz é criado em seu diretório de trabalho atual.

  5. Para Include a job that runs a notebook, selecione yes e pressione Enter.

  6. Para Include an ETL pipeline, selecione no e pressione Enter.

  7. Para Include a stub (sample) Python package, selecione no e pressione Enter.

  8. Para Use serverless, selecione yes e pressione Enter. Isso instrui o Databricks CLI a configurar seu pacote para execução em serverless compute.

  9. Para Default catalog for any tables created by this project [hive_metastore], insira o nome de um catálogo existente do Unity Catalog.

  10. Para Use a personal schema for each user working on this project., selecione yes.

Etapa 3: explore o pacote

Para acessar view os arquivos gerados pelo padrão, vá para o diretório raiz do pacote recém-criado. Os arquivos de interesse particular incluem o seguinte:

  • databricks.ymlEste arquivo especifica o nome programático do pacote, inclui referências aos arquivos do pacote, define variáveis de catálogo e esquema e especifica as configurações para o espaço de trabalho de destino.
  • resources/sample_job.job.ymlEste arquivo especifica as configurações do Job, incluindo uma tarefa default de Notebook. Para obter informações sobre configurações de trabalho, consulte Trabalho.
  • src/Esta pasta contém os arquivos de origem do trabalho.
  • src/sample_notebook.ipynbEste Notebook lê uma tabela de exemplo.
  • tests/Esta pasta contém exemplos de testes unitários.
  • README.md: Este arquivo contém informações adicionais sobre como começar e usar este pacote padrão.
dica

Você pode definir, combinar e substituir as configurações de novos clusters de tarefas em pacotes usando as técnicas descritas em Substituir com configurações de destino.

o passo 4: Validar a configuração do pacote

Agora verifique se a configuração do pacote é válida.

  1. A partir do diretório raiz, use a CLI Databricks para executar o comando bundle validate :

    Bash
    databricks bundle validate
  2. Se um resumo da configuração do pacote for retornado, a validação foi bem-sucedida. Se algum erro for retornado, corrija-o e repita essa etapa.

o passo 5: implantou o pacote no workspaceremoto

Em seguida, implante o Job no seu workspace remoto Databricks e verifique o Job dentro do seu workspace.

  1. A partir da raiz do pacote, use a CLI Databricks para executar o comando bundle deploy :

    Bash
    databricks bundle deploy --target dev
  2. Confirme se o Notebook foi implantado:

    1. Na barra lateral do seu workspace Databricks , clique em espaço de trabalho .
    2. Clique na pasta Users > <your-username> > .bundle > <project-name> > dev > files > src . O Notebook deve estar nessa pasta.
  3. Verifique se a tarefa foi criada:

    1. Na barra lateral do seu workspace Databricks , clique em "Tarefas e pipeline" .
    2. Opcionalmente, selecione os filtros "Empregos" e "De minha propriedade" .
    3. Clique em [dev <your-username>] sample_job .
    4. Clique na tab de tarefas . Deverá haver uma única tarefa notebook .

Se você fizer alguma alteração no pacote após essa etapa, repita as etapas 4 a 5 para verificar se a configuração do pacote ainda é válida e, em seguida, reimplantar o projeto.

o passo 6: execução do Job implantado

Agora, inicie a execução da tarefa em seu workspace a partir da linha de comando.

  1. A partir do diretório raiz, use a CLI Databricks para executar o comando bundle run :

    Bash
    databricks bundle run --target dev sample_job
  2. Copie o valor de Run URL que aparece em seu terminal e cole esse valor em seu navegador da Web para abrir o site Databricks workspace. Ver, visualizar e executar um trabalho criado com Databricks ativo Bundles

  3. Em seu site Databricks workspace, depois que a tarefa do trabalho for concluída com êxito e mostrar uma barra de título verde, clique na tarefa do trabalho para ver os resultados.

Se fizer alguma alteração no pacote após essa etapa, repita as etapas de 4 a 6 para verificar se a configuração do pacote ainda é válida, reimplante o projeto e execute o projeto reimplantado.

o passo 7: testes de execução

Por fim, use pytest para executar testes localmente:

uv run pytest

o passo 8: Limpar

Nesta etapa, o senhor exclui o Notebook implantado e o Job do site workspace.

  1. A partir do diretório raiz, use a CLI Databricks para executar o comando bundle destroy :

    Bash
    databricks bundle destroy --target dev
  2. Quando solicitado a excluir permanentemente todos os arquivos e diretórios workspace , digite y e pressione Enter.

  3. Se você também quiser excluir o pacote do seu computador de desenvolvimento, agora pode excluir o diretório local do projeto.