O que é CI/CD na 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 em Databricks, consulte Como Databricks oferece suporte a CI/CD para machine learning?
O que há em um pipeline de CI/CD na 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 Os trabalhos são compostos por trabalhos que permitem 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.
os passos para CI/CD on Databricks
Um fluxo típico para um Databricks CI/CD pipeline inclui os seguintes passos:
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. Consulte as técnicas de CI/CD com pastas Git e Databricks Git (Repos) e as configurações de Git do pacote.
Código: Desenvolva códigos e testes de unidade em um Notebook Databricks 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.
Construir: Use as configurações do Databricks ativo Bundles para criar automaticamente determinados artefatos durante as implementações. Veja artefatos. Além disso, o Pylint estendido com o plug-in pylint doDatabricks Labs ajuda a reforçar os padrões de codificação e a detectar bugs no Notebook Databricks e no código do aplicativo.
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.
Testes: Desenvolver e executar testes automatizados para validar as alterações no código usando ferramentas como pytest. Para testar suas integrações com APIs de workspace, o plug-in pytest da Databricks Labs permite que o senhor crie objetos de workspace e os limpe após a conclusão dos testes.
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.
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.
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.