Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo mostra como converter um pipeline existente em um projeto de Pacotes de Ativos do Databricks . Os pacotes permitem que você defina e gerencie sua configuração de processamento de dados do Azure Databricks em um único arquivo YAML controlado pela origem que fornece uma manutenção mais fácil e permite a implantação automatizada para ambientes de destino.
Visão geral do processo de conversão
As etapas que você executa para converter um pipeline existente em um pacote são:
- Verifique se você tem acesso a um pipeline previamente configurado que quer converter em um pacote.
- Crie ou prepare uma pasta (de preferência em uma hierarquia com controle de versão) para armazenar o pacote.
- Gere uma configuração para o pacote do pipeline existente usando a CLI do Azure Databricks.
- Examine a configuração do pacote gerado para garantir que ela esteja concluída.
- Vincule o pacote ao pipeline original.
- Implante o pipeline em um workspace de destino usando a configuração do pacote.
Requirements
Antes de começar, você deve ter:
- A CLI do Databricks instalada no computador de desenvolvimento local. A CLI do Databricks versão 0.218.0 ou superior é necessária para usar pacotes de ativos do Databricks.
- O ID de um pipeline declarativo existente que você gerenciará com um pacote. Para saber como obter essa ID, consulte Obter uma definição de pipeline existente usando a interface do usuário.
- Autorização para o espaço de trabalho do Azure Databricks onde o pipeline existente é executado. Para configurar a autenticação e a autorização para suas chamadas da CLI do Azure Databricks, consulte Autorizar o acesso aos recursos do Azure Databricks.
Etapa 1: Configurar uma pasta para seu projeto de pacote
Você deve ter acesso a um repositório Git configurado no Azure Databricks como uma pasta Git. Você criará seu projeto de pacote neste repositório, que aplicará o controle do código-fonte e o disponibilizará a outros colaboradores por meio de uma pasta Git no workspace do Azure Databricks correspondente. (Para obter mais detalhes sobre pastas Git, consulte pastas git do Azure 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 especificamente para seu projeto de pacote. Por exemplo:
mkdir - p ~/source/my-pipelines/ingestion/events/my-bundleAltere o diretório de trabalho atual para esta nova pasta. Por exemplo:
cd ~/source/my-pipelines/ingestion/events/my-bundleInicialize um novo pacote executando:
databricks bundle initResponda às instruções. Após a conclusão, você terá um arquivo de configuração de projeto chamado
databricks.ymlna nova pasta inicial do projeto. Esse arquivo é necessário para implantar o pipeline na linha de comando. Para obter mais detalhes sobre esse arquivo de configuração, consulte a configuração do Pacote de Ativos do Databricks.
Etapa 2: gerar a configuração do pipeline
Neste novo diretório na árvore de pastas do repositório Git clonado, execute o comando de geração de pacote da CLI do Azure Databricks, fornecendo a ID do pipeline como <pipeline-id>:
databricks bundle generate pipeline --existing-pipeline-id <pipeline-id> --profile <profile-name>
Quando você executa o comando generate, ele cria um arquivo de configuração de pacote para seu pipeline na pasta resources e baixa todos os artefatos referenciados para a pasta src. O --profile (ou -p sinalizador) é opcional, mas se você tiver um perfil de configuração específico do Databricks (definido no .databrickscfg arquivo criado quando instalou a CLI do Azure Databricks) que você prefere usar em vez do perfil padrão, forneça-o neste comando. Para obter informações sobre perfis de configuração do Databricks, consulte os perfis de configuração do Azure Databricks.
Etapa 3: Examinar os arquivos de projeto do pacote
Quando o comando bundle generate for concluído, ele terá criado duas novas pastas:
-
resourcesé o subdiretório do projeto que contém arquivos de configuração de projeto. -
srcé a pasta do projeto em que os arquivos de origem, como consultas e notebooks, são armazenados.
O comando também cria alguns arquivos adicionais:
-
*.pipeline.ymldentro do subdiretórioresources. Este arquivo contém as configurações específicas do seu pipeline. - Arquivos de origem, como consultas SQL no
srcsubdiretório, copiados do pipeline existente.
├── databricks.yml # Project configuration file created with the bundle init command
├── resources/
│ └── {your-pipeline-name.pipeline}.yml # Pipeline configuration
└── src/
└── {source folders and files...} # Your pipeline's declarative queries
Etapa 4: associar o pipeline de pacote ao pipeline existente
Você deve vincular ou associar a definição de pipeline no pacote ao pipeline existente para mantê-la atualizada à medida que fizer alterações. Para fazer isso, execute o comando bundle deployment bind da CLI do Azure Databricks.
databricks bundle deployment bind <pipeline-name> <pipeline-ID> --profile <profile-name>
<pipeline-name> é o nome do pipeline. Esse nome deve ser o mesmo que o valor prefixado no nome do arquivo de configuração do pipeline dentro do novo diretório resources. Por exemplo, se você tiver um arquivo de configuração de pipeline chamado ingestion_data_pipeline.pipeline.yml na pasta resources, deverá fornecer ingestion_data_pipeline como o nome do pipeline.
<pipeline-ID> é a ID do seu pipeline. É a mesma ID que você copiou como parte dos requisitos para estas instruções.
Etapa 5: implantar seu pipeline usando seu novo pacote
Agora, implante seu pacote de pipeline no workspace de destino usando o comando bundle deploy da CLI do Azure Databricks:
databricks bundle deploy --target <target-name> --profile <profile-name>
O sinalizador --target é necessário e deve ser definido como uma cadeia de caracteres que corresponda a um nome de workspace de destino configurado, como development ou production.
Se esse comando for bem-sucedido, agora você terá sua configuração de pipeline em um projeto externo que pode ser carregado em outros workspaces e executado e facilmente compartilhado com outros usuários do Azure Databricks em sua conta.
Resolução de problemas
| Questão | Solução |
|---|---|
Erro "databricks.yml não encontrado" ao executar bundle generate |
Atualmente, o bundle generate comando não cria o arquivo de configuração do pacote (databricks.yml) automaticamente. Você deve criar o arquivo usando databricks bundle init ou manualmente. |
| As configurações de pipeline existentes não correspondem aos valores na configuração YAML de pipeline gerada. | A ID do pipeline não aparece no arquivo YML de configuração do pacote. Se você observar outras configurações ausentes, poderá aplicá-las manualmente. |
Dicas para o sucesso
- Sempre use o controle de versão. Se você não estiver usando pastas Git do Databricks, armazene seus subdiretórios e arquivos de projeto em um Git ou em outro repositório ou sistema de arquivos controlado por versão.
- Teste seu pipeline em um ambiente de não 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.
Recursos adicionais
Para obter mais informações sobre como usar pacotes para definir e gerenciar o processamento de dados, consulte:
- O que são pacotes de ativos do Databricks?
- Desenvolva pipelines declarativos do Lakeflow Spark com pacotes de ativos do Databricks. O tópico aborda a criação de um pacote específico para um novo pipeline, ao invés de um já existente, com arquivos de origem com controle de versão que você fornece.