Pular para o conteúdo principal

Desenvolver Databricks pacotes ativos

Este artigo descreve o desenvolvimento e o ciclo de vida de um Databricks ativo Bundle . Para obter informações gerais sobre Databricks ativo Bundles, consulte O que são Databricks ativo Bundles?

Ciclo de vida de um pacote

Para entender como usar pacotes de forma eficaz, você precisa entender o ciclo de vida básico de um pacote:

  1. O esqueleto do pacote é criado com base em um projeto.
  2. O projeto do pacote é desenvolvido localmente. Um pacote contém arquivos de configuração que definem a infraestrutura e as configurações do workspace, como alvos de implantação, configurações para o recurso Databricks, como Job e pipeline, bem como arquivos de origem e outros artefatos.
  3. O projeto do pacote foi validado. A validação verifica as configurações e definições de recurso na configuração do pacote em relação aos esquemas de objeto correspondentes para garantir que o pacote possa ser implementado em Databricks.
  4. O feixe é implantado em um alvo workspace. O mais comum é que um pacote seja implantado primeiro no site de desenvolvimento pessoal de um usuário workspace para testes. Quando o teste do pacote estiver concluído, ele poderá ser implantado em alvos de preparação e, em seguida, de produção.
  5. O fluxo de trabalho recurso definido no pacote implantado pode ser executado. Por exemplo, o senhor pode executar um trabalho.
  6. Se o pacote não estiver mais sendo usado, ele poderá ser destruído permanentemente.

Use o comandoDatabricks CLI bundle para criar, validar, implantar, executar e destruir bundles, conforme descrito nas seções a seguir.

Etapa 1: criar um pacote

Há três maneiras de começar a criar um pacote:

  1. Use o padrão default bundle.
  2. Use um padrão de pacote personalizado.
  3. Crie um pacote manualmente.

Use um padrão default bundle

Para utilizar um pacote padrão Databricks default para criar um pacote inicial que poderá personalizar posteriormente, utilize a versão 0.218.0 ou superior para executar o comando , que permite selecionar a partir de uma lista de padrões Databricks CLI a versão 0.218.0 ou superior para executar o comando bundle init, que permite escolher entre uma lista de pacotes padrão disponíveis. Veja databricks bundle init.

Bash
databricks bundle init

O senhor pode view o código-fonte do pacote default padrão nos repositórios públicos do Github databricks/CLI e databricks/mlops-stacks.

Vá para a Etapa 2: Preencha os arquivos de configuração do pacote.

Usar um padrão de pacote personalizado

Para usar um pacote padrão diferente do pacote padrão Databricks default , o senhor deve conhecer o caminho local ou o URL do local do pacote padrão remoto. Use a Databricks CLI versão 0.218.0 ou superior para executar o comando bundle init da seguinte forma:

Bash
databricks bundle init <project-template-local-path-or-url>

Para obter mais informações sobre esse comando, consulte Databricks ativo Bundle project padrão. Para obter informações sobre um padrão de pacote específico, consulte a documentação do fornecedor do padrão de pacote.

Vá para a Etapa 2: Preencha os arquivos de configuração do pacote.

Crie um pacote manualmente

Para criar um pacote manualmente em vez de usar um pacote padrão, crie um diretório de projeto em seu computador local ou um repositório vazio com um provedor Git de terceiros.

No seu diretório ou repositório, crie um ou mais arquivos de configuração do pacote como entrada. Esses arquivos são expressos no formato YAML. Deve haver no mínimo um (e somente um) arquivo de configuração de pacote chamado databricks.yml. Arquivos adicionais de configuração do pacote devem ser referenciados no mapeamento include do arquivo databricks.yml.

Para criar com mais facilidade e rapidez arquivos YAML que estejam em conformidade com a sintaxe de configuração do Databricks ativo Bundle, o senhor pode usar uma ferramenta como o Visual Studio Code, PyCharm Professional ou IntelliJ IDEA Ultimate que ofereça suporte a arquivos YAML e arquivos de esquema JSON, como segue:

  1. Adicione suporte ao servidor de linguagem YAML ao Visual Studio Code, por exemplo, instalando a extensão YAML do Visual Studio Code marketplace.

  2. Gere o arquivo de esquema de configuração do pacote ativo Databricks JSON usando a Databricks CLI versão 0.218.0 ou superior para executar o comando bundle schema e redirecionar a saída para um arquivo JSON. Por exemplo, gere um arquivo chamado bundle_config_schema.json no diretório atual, da seguinte forma:

    Bash
    databricks bundle schema > bundle_config_schema.json
  3. Use o Visual Studio Code para criar ou abrir um arquivo de configuração de pacote no diretório atual. Esse arquivo deve ter o nome databricks.yml.

  4. Adicione o seguinte comentário ao início do arquivo de configuração do pacote:

    YAML
    # yaml-language-server: $schema=bundle_config_schema.json
nota

No comentário anterior, se o arquivo de esquema Databricks ativo Bundle configuration JSON estiver em um caminho diferente, substitua bundle_config_schema.json pelo caminho completo do arquivo de esquema.

  1. Use o recurso de servidor de linguagem YAML que o senhor adicionou anteriormente. Para obter mais informações, consulte a documentação do seu servidor de linguagem YAML.

Etapa 2: Preencher os arquivos de configuração do pacote

Os arquivos de configuração do pacote definem seu fluxo de trabalho Databricks especificando configurações como detalhes do workspace, nomes de artefatos, locais de arquivos, detalhes do trabalho e detalhes do pipeline. Normalmente, a configuração do pacote também contém metas de desenvolvimento, preparação e implantação de produção. Para obter informações detalhadas sobre os arquivos de configuração do pacote, consulte Databricks ativo Bundle configuration.

É possível utilizar o comando ` bundle generate ` para gerar automaticamente a configuração do pacote para um recurso existente no ` workspace` e, em seguida, utilizar ` bundle deployment bind ` para vincular a configuração do pacote ao recurso no ` workspace ` para mantê-los sincronizados. Veja databricks bundle generate e databricks bundle deployment bind.

Etapa 3: Validar os arquivos de configuração do pacote

Antes de implantar artefatos ou executar um trabalho ou um pipeline, é necessário verificar se as definições nos arquivos de configuração do pacote estão válidas. Para realizar isso, execute o comando “ bundle validate ” a partir do diretório raiz do projeto bundle. Consulte a validação do pacote databricks.

Bash
databricks bundle validate

Se a validação for bem-sucedida, um resumo da identidade do pacote e uma mensagem de confirmação serão retornados. Para gerar o esquema, utilize o comando ` databricks bundle schema `. Veja o esquema do pacote databricks.

Etapa 4: implantar o feixe

Antes de implantar o pacote, certifique-se de que o site remoto workspace tenha os arquivos workspace ativados. Consulte O que são arquivos workspace?

Para implantar um pacote em um workspace remoto, execute o comando bundle deploy a partir da raiz do pacote, conforme descrito em databricks bundle implantado. O Databricks CLI implantado no destino workspace que é declarado nos arquivos de configuração do pacote. Veja os alvos.

Bash
databricks bundle deploy

A identidade exclusiva de um pacote é definida por seu nome, destino e identidade do implantador. Se esses atributos forem idênticos em pacotes diferentes, a implantação desses pacotes interferirá entre si. Para obter mais detalhes, consulte o pacote databricks implantado.

dica

O senhor pode executar o comando databricks bundle fora da raiz do pacote, definindo a variável de ambiente BUNDLE_ROOT. Se essa variável de ambiente não for definida, o databricks bundle comando tentará localizar a raiz do pacote pesquisando no diretório de trabalho atual.

Etapa 5: execução do pacote

Para executar um trabalho específico ou um pipeline, execute o comando bundle run a partir da raiz do pacote, especificando o trabalho ou o pipeline key declarado nos arquivos de configuração do pacote, conforme descrito em execução do pacote databricks. O recurso “ key ” é o elemento de nível superior do bloco YAML do recurso. Se não especificar um Trabalho ou um pipeline key, será solicitado que selecione um recurso para execução a partir de uma lista de recursos disponíveis. Se a opção " -t " não for especificada, será utilizado o destino " default " declarado nos arquivos de configuração do pacote. Por exemplo, para executar um trabalho com o key hello_job dentro do contexto do default target:

Bash
databricks bundle run hello_job

Para executar um trabalho com key hello_job no contexto de um destino declarado com o nome dev:

Bash
databricks bundle run -t dev hello_job

Etapa 6: Destrua o pacote

atenção

A destruição de um pacote exclui permanentemente o trabalho, o pipeline e os artefatos implantados anteriormente no pacote. Essa ação não pode ser desfeita.

Se você concluiu seu pacote e deseja excluir o trabalho, o pipeline e os artefatos que foram implantados anteriormente, execute o comando bundle destroy na raiz do pacote. Este comando exclui todos os trabalhos, pipelines e artefatos previamente implantados que estão definidos nos arquivos de configuração do pacote. Veja databricks bundle destroy.

Bash
databricks bundle destroy

Em default, o senhor é solicitado a confirmar a exclusão permanente do Job, do pipeline e dos artefatos implantados anteriormente. Para ignorar esses avisos e realizar a exclusão permanente automática, adicione a opção --auto-approve ao comando bundle destroy.