1.2. GIT: Vantagens do versionamento em projetos de dados

Se você ainda não sabe o que é GIT, clique aqui e veja o post anterior: O que é GIT?

Existem muitas vantagens em se fazer o versionamento em projetos de dados, especialmente quando eles envolvem muitos scripts em python, consultas em SQL, ou Jupyter Notebooks complexos. Também é muito últil quando estamos estamos trabalhando em equipe e precisamos controlar o que cada pessoa está fazendo nos códigos.

Histórico completo das alterações

Deu algo errado? Volte para a última versão que estava funcionando.

Eu poderia parar por aqui, mas a verdade é que como o GIT registra todas as alterações feitas no projeto, podemos saber exatamente quem fez, que foi feito e quando foi feito. Isso facilita o processo de encontrar e corrigir erros, e a reversão para versões anteriores em caso de problemas. Imagine que um script de tratamento de dados parou de funcionar depois de uma alteração numa linha que alterava o tipo de dado.

Trabalhe em equipe: colaboração eficiente

Os membros do time podem trabalhar com versões locais dos arquivos, cada um com sua branch e depois esses códigos podem ser mesclados (merge) no reposítorio principal que vai para produção. Isso é organizado e permite a detecção de conflitos quando um mesmo arquivo é alterado por mais de uma pessoa.

Backup e Segurança

O repositório do git funciona como um backup do projeto, justamente porque cada desenvolvedor ou analista de dados tem uma cópia local da últma versão do código. E, ao usar um repositório remoto como GitHub, sempre é possível recuperar o código do projeto de lá.

Reprodutibilidade

Com o GIT podemos recriar qualquer versão anterior do nosso projeto. Isso é relevante quando previsamos testar experimentos e análises de dados para garantir que conseguiremos reproduzir os mesmos resultados.

Braches para experimentos

Quer testar uma nova ideia sobre o projeto, sem comprometer o que já está rodando na produção? Crie uma branch para este teste. Isto permite que exploremos as diferentes soluções e abordagens nos problemas de dados, para que possamos escolher a que melhor responde às perguntas de negócio sem comprometer o código principal.

Facilidade de aprendizado

Aprender GIT é muito fácil. Aqui no DataNIMIA eu criei este roteiro de estudos para registrar o que encontrei sobre o tema e organizar as ideias.

Exisem muitos tutoriais, casos de uso e explicações pela internet que certamente vão te ajudar.

Integração com outras ferramentas e deploy autmatizado

CI/CD (Integração Contínua/Entrega Contínua ou Implantação Contínua) é a automação de etapas no desenvolvimento e entrega de um projeto de dados. O Git se integra com ferramentas de CI/CD permitindo que, a cada alteração no código (commit no Git), sejam disparados processos automatizados como:

  • Execução de testes: Garantindo a qualidade do código e dos dados.
  • Geração de relatórios: Automatizando a criação de relatórios sobre o estado do projeto.
  • Implantação de modelos: Facilitando a atualização de modelos de aprendizado de máquina ou outras ferramentas de análise de dados.

Por exemplo, imagine um projeto de aprendizado de máquina. A cada alteração no código do modelo, o pipeline de CI/CD pode ser configurado para:

  1. Executar testes unitários no código.
  2. Treinar o modelo com os dados mais recentes.
  3. Avaliar o desempenho do modelo.
  4. Implantar o modelo atualizado em um ambiente de produção.

Tudo isso de forma automatizada, a partir de um commit no repositório Git. Isso acelera o desenvolvimento, reduz erros manuais e garante a consistência do projeto.

Veja mais: git, guia de estudo git

Clique para ver o Guia de Estudos Completo de GIT que preparamos.

Próximo post: 1.3 Instalando o GIT

Post anterior: 1.1 O que é GIT

Rolar para cima