O que é CI/CD no Databricks?

Este artigo é uma introdução ao site CI/CD em Databricks. integração contínua (CI) e entrega contínua (CD) (CI/CD) refere-se ao processo de desenvolvimento e entrega de software em ciclos curtos e frequentes por meio do uso de pipeline de automação. A CI/CD é comum no desenvolvimento de software e está se tornando cada vez mais necessária para a engenharia de dados e a ciência de dados. Ao automatizar a criação, o teste e a implementação do código, as equipes de desenvolvimento podem entregar versões de forma mais confiável do que com os processos manuais ainda comuns às equipes de engenharia e ciência de dados.

Databricks recomenda o uso do Databricks ativo Bundles for CI/CD, que permite o desenvolvimento e a implantação de análises de dados complexas, e de projetos ML para a plataforma Databricks. Os pacotes permitem que o senhor gerencie facilmente muitas configurações personalizadas e automatize compilações, testes e implementações de seus projetos no espaço de trabalho de desenvolvimento, preparação e produção do Databricks.

Para obter uma visão geral de CI/CD para projetos machine learning no Databricks, consulte Como o Databricks oferece suporte a CI/CD para machine learning?.

O que há em um pipeline de CI/CD no Databricks?

O senhor pode usar Databricks ativo Bundles para definir e gerenciar programaticamente sua implementação Databricks CI/CD , que geralmente inclui:

  • Notebook: Databricks Os notebooks costumam ser uma key parte da engenharia de dados e da ciência de dados fluxo de trabalho. O senhor pode usar o controle de versão do Notebook e também validá-lo e testá-lo como parte de um CI/CD pipeline. O senhor pode executar testes automatizados no Notebook para verificar se eles estão funcionando conforme o esperado.

  • biblioteca: gerenciar as dependências da biblioteca necessárias para a execução do código implantado. Use o controle de versão na biblioteca e inclua-o em testes e validação automatizados.

  • fluxo de trabalho: Databricks Workflows são compostos de tarefas que permitem ao senhor programar e executar tarefas automatizadas usando o Notebook ou o Spark Job.

  • pipeline de dados: O senhor também pode incluir o pipeline de dados na automação do CI/CD, usando o Delta Live Tablesa estrutura em Databricks para declarar o pipeline de dados.

  • Infraestrutura: A configuração da infraestrutura inclui definições e informações de provisionamento para clusters, espaço de trabalho e armazenamento para ambientes de destino. As alterações na infraestrutura podem ser validadas e testadas como parte de um pipeline de CI/CD, garantindo que sejam consistentes e livres de erros.

passos para CI/CD em Databricks

Um fluxo típico para um Databricks CI/CD pipeline inclui os seguintes passos:

  1. Armazenar: Armazene o código Databricks e o Notebook em um sistema de controle de versão como o Git. Isso permite que o senhor acompanhe as alterações ao longo do tempo e colabore com outros membros da equipe. Veja as técnicas de CI/CD com pastas Git e Databricks Git (Repos) e as configurações de Git do pacote.

  2. Código: Desenvolva código e testes de unidade em um Databricks Notebook no workspace ou localmente usando um IDE externo. Databricks fornece uma extensão do Visual Studio Code que facilita o desenvolvimento e a implantação de alterações no espaço de trabalho do Databricks.

  3. Construir: Use as configurações do Databricks ativo Bundles para criar automaticamente determinados artefatos durante as implementações. Veja os artefatos.

  4. implantado: alterações implantadas no Databricks workspace usando Databricks ativo Bundles em conjunto com ferramentas como Azure DevOps, Jenkins ou GitHub Actions. Consulte Databricks ativo Bundle deployment modes.

  5. Testes: Desenvolver e executar testes automatizados para validar as alterações no código usando ferramentas como pytest.

  6. execução: Use o Databricks CLI em conjunto com o Databricks ativo Bundles para automatizar a execução em seu espaço de trabalho Databricks. Veja execução a bundle.

  7. Monitorar: Monitore o desempenho de seu código e o fluxo de trabalho em Databricks usando ferramentas como Azure Monitor ou Datadog. Isso ajuda o senhor a identificar e resolver quaisquer problemas que surjam em seu ambiente de produção.

  8. Iterar: Faça iterações pequenas e frequentes para melhorar e atualizar seu projeto de engenharia de dados ou de ciência de dados. Pequenas alterações são mais fáceis de reverter do que as grandes.