Repositório contendo atividades da disciplina Pipelines de Dados, CI/CD e Streaming
Para concluir essa atividade, você deverá realizar os seguintes passos, levando em consideração que para cada atividade, você poderá optar por incluir cada ponto em commits separados, ou criar branches específicas.
O arquivo em PDF contém os enunciados da atividade, e abaixo está pontuado conforme cada enunciado.
Os materiais complementares abaixo são para dar uma guiada em sua busca, demais dúvidas podem ser direcionadas no grupo de dúvidas do WhatsApp :)
Faça o clone (ou fork) do presente repositório. Todas as modificações efetuadas das seguintes atividades deverão ocorrer em branches que não a main/master.
A forma de avaliação desse item será dada de acordo com o fork realizado. Sem fork, sem avaliação :O
Será preciso criar um diretório IaC contendo os manifestos Terraform.
Para cada provedor de numem pública, existem maneiras de conectar o Terraform com as credenciais necessárias. Consulte documentação do provedor e siga as orientações.
Nesse diretório você deverá documentar sua solução, contendo diagramas indicando da arquitetura arquitetura na nuvem do seu provedor escolhido.
Crie também um arquivo README.md igual esse resumindo sua jornada no desenvolvimento da arquitetura.
Nesse diretório você deve incluir os workflows necessários para seu fluxo CI/CD, aos quais serão executados pelo Github Actions.
Consulte Como criar workflows CI/CD no Github Actions para ter um melhor entendimento.
O conceito de Pipeline de Dados, na sua forma atual, é uma extensão de ETL, recebendo algumas características "próprias". Os materiais a seguir dão uma visão introdutória, mas também dos componentes de um pipeline de dados.
Cada item da atividade final possui métodos específicos e formas de se realizar. Algumas dessas Referências irão te ajudar a estruturar sua solução final \o/
Micro-Batch Architecture - III
Nathan Marz, James Warren - Big Data
Joe Reis, Matt Housley - Fundamentals of Data Engineering: Plan and Build Robust Data Systems
Martin Kleppmann - Designing Data-Intensive Applications
Tyler Akidau, Slava Chernyak, Reuven Lax - Streaming Systems
James Densmore - Data Pipelines Pocket Reference