Converter um projeto Delta Live Tables pipeline em um projeto Databricks ativo Bundle
Este artigo mostra como converter um Delta Live Tables (DLT) pipeline existente em um projeto de pacote. Os pacotes permitem que o senhor defina e gerencie sua configuração de processamento de dados do Databricks em um único arquivo YAML controlado por fonte, o que facilita a manutenção e permite a implementação automatizada em ambientes de destino.
Visão geral do processo de conversão
As etapas que o senhor executa para converter um pipeline existente em um pacote são:
Verifique se o senhor tem acesso a um pipeline configurado anteriormente que deseja converter em um pacote.
Crie ou prepare uma pasta (de preferência em uma hierarquia controlada pela fonte) para armazenar o pacote.
Gerar uma configuração para o pacote a partir do pipeline existente, usando a CLI do Databricks.
Revise a configuração do pacote gerado para garantir que ela esteja completa.
Vincule o pacote ao pipeline original.
Implante o pipeline em um workspace de destino usando a configuração do pacote.
Requisitos
Antes de começar, o senhor deve ter:
A CLI da Databricks instalada em sua máquina de desenvolvimento local. Databricks CLI versão 0.218.0 ou acima é necessário para usar o Databricks ativo Bundles.
A ID de um pipeline DLT existente que o senhor gerenciará com um pacote. Para saber como o senhor obtém essa ID, consulte Obter uma definição de pipeline existente usando a interface do usuário.
Autorização para o Databricks workspace onde o DLT existente pipeline execução. Para configurar a autenticação e a autorização para suas chamadas Databricks CLI , consulte Autenticar o acesso ao recurso Databricks .
Etapa 1: configure uma pasta para seu projeto de pacote
O senhor deve ter acesso a um repositório Git que esteja configurado no Databricks como uma pasta Git. O senhor criará o seu projeto de pacote nesse repositório, que aplicará o controle de origem e o disponibilizará para outros colaboradores por meio de uma pasta Git no Databricks workspace correspondente. (Para obter mais detalhes sobre as pastas Git, consulte Integração do Git para pastas Git da Databricks).
Vá para a raiz do repositório Git clonado em seu computador local.
Em um local apropriado na hierarquia de pastas, crie uma pasta específica para seu projeto de pacote. Por exemplo:
mkdir - p ~/source/my-pipelines/ingestion/events/my-bundle
Altere seu diretório de trabalho atual para essa nova pasta. Por exemplo:
cd ~/source/my-pipelines/ingestion/events/my-bundle
Inicialize um novo pacote executando
databricks bundle init
e respondendo às solicitações. Após a conclusão, o senhor terá um arquivo de configuração de projeto chamadodatabricks.yml
na nova pasta de origem do seu projeto. Esse arquivo é necessário para implantar o site pipeline a partir da linha de comando. Para obter mais detalhes sobre esse arquivo de configuração, consulte Databricks ativo Bundle configuration.
Etapa 2: gerar a configuração do pipeline
A partir desse novo diretório na árvore de pastas do repositório Git clonado, execute o seguinte comando Databricks CLI e forneça o ID do seu DLT pipeline como <pipeline-id>
:
databricks bundle generate pipeline --existing-pipeline-id <pipeline-id> --profile <profile-name>
Quando o senhor executa o comando generate
, ele cria um arquivo de configuração de pacote para o seu pipeline na pasta resources
do pacote e downloads todos os artefatos referenciados na pasta src
. O sinalizador --profile
(ou -p
) é opcional, mas se o senhor tiver um perfil de configuração Databricks específico (definido no arquivo .databrickscfg
criado quando instalou o Databricks CLI) que prefira usar em vez do perfil default, forneça-o nesse comando. Para obter informações sobre os perfis de configuração do site Databricks, consulte Databricks configuration profiles.
Etapa 3: Revise os arquivos do projeto do pacote
Quando o comando bundle generate
for concluído, ele terá criado duas novas pastas:
resources
is é o subdiretório do projeto que contém os arquivos de configuração do projeto.src
é a pasta do projeto em que os arquivos de origem, como consultas e Notebook, são armazenados.
O comando também cria alguns arquivos adicionais:
*.pipeline.yml
no subdiretórioresources
. Esse arquivo contém a configuração e as definições específicas para seu pipeline DLT.Arquivos de origem, como consultas SQL no subdiretório
src
, copiados do pipeline DLT existente.
├── databricks.yml # Project configuration file created with the bundle init command
├── resources/
│ └── {your-pipeline-name.pipeline}.yml # Pipeline configuration
└── src/
└── {SQl-query-retrieved-from-your-existing-pipeline}.sql # Your pipeline's declarative query
Etapa 4: vincule o pipeline do pacote ao pipeline existente
O senhor deve vincular ou associar a definição do pipeline no pacote ao pipeline existente para mantê-lo atualizado à medida que fizer alterações. Para fazer isso, execute o seguinte Databricks CLI comando:
databricks bundle deployment bind <pipeline-name> <pipeline-ID> --profile <profile-name>
<pipeline-name>
é o nome do pipeline. Esse nome deve ser igual ao valor de strings prefixado do nome do arquivo para a configuração pipeline em seu novo diretório resources
. Por exemplo, se o senhor tiver um arquivo de configuração de pipeline chamado ingestion_data_pipeline.pipeline.yml
na pasta resources
, deverá fornecer ingestion_data_pipeline
como nome do pipeline.
<pipeline-ID>
é o ID do seu pipeline. É o mesmo que você copiou como parte dos requisitos dessas instruções.
Etapa 5: Implante o site pipeline usando o novo pacote
Agora, implante o pacote pipeline em seu destino workspace usando o comando bundle deploy
Databricks CLI :
databricks bundle deploy --target <target-name> --profile <profile-name>
O sinalizador --target
é obrigatório e deve ser definido como uma cadeia de caracteres que corresponda a um nome de destino workspace configurado, como development
ou production
.
Se esse comando for bem-sucedido, o senhor agora tem a configuração do DLT pipeline em um projeto externo que pode ser carregado em outro espaço de trabalho e executado, e facilmente compartilhado com outros usuários do Databricks em seu account.
Solução de problemas
Problema |
soluções |
---|---|
Erro “ |
Atualmente, o comando |
As configurações existentes do pipeline não correspondem aos valores da configuração YAML do pipeline gerado |
A ID do pipeline não aparece no arquivo YML de configuração do pacote. Se você notar alguma outra configuração ausente, poderá aplicá-la manualmente. |
Dicas para o sucesso
Sempre use o controle de versão. Se não estiver usando as pastas Git do Databricks, armazene os subdiretórios e arquivos do projeto em um Git ou outro repositório ou sistema de arquivos controlado por versão.
Teste o site pipeline em um ambiente que não seja de produção (como um ambiente de "desenvolvimento" ou "teste") antes de implantá-lo em um ambiente de produção. É fácil introduzir uma configuração incorreta por acidente.
Outros recursos
Para obter mais informações sobre o uso de pacotes para definir e gerenciar o processamento de dados, consulte:
Desenvolva o pipeline Delta Live Tables com o Databricks ativo Bundles. Este tópico aborda a criação de um pacote para um novo pipeline em vez de um existente, com um Notebook controlado por fonte para processamento fornecido pelo senhor.