Coder Social home page Coder Social logo

data_pipeline_airflow's Introduction

Engenharia de Fluxos de Dados: Desvendando a Orquestração com Apache Airflow!

Ao iniciar a construção deste data pipeline, nos propusemos a estabelecer um processo fluido e automatizado, desde a coleta inicial de dados até a execução bem-sucedida das tarefas de ETL. Utilizando tecnologias como Docker, Apache Airflow, MySQL e PostgreSQL, delineamos uma abordagem eficiente para movimentar dados entre ambientes distintos.

Pré-requisitos para instalação

  • Docker
  • MySQL
  • PostgreSQL
  • Airflow
  • Python
  • VS Code

As configurações de execução destas aplicação encontram-se no artigo escrito na plataforma Medium que abranje em sua grande maiores o passo-a-passo de instalação

Metodologia

  • Configuração do Ambiente OLTP: Nesta etapa, focaremos na configuração do ambiente I (OLTP), estabelecendo as bases necessárias para a execução dos processos.

  • Configuração do Ambiente OLAP: Em seguida, procederemos com a configuração do ambiente II (OLAP), criando um ambiente analítico para suportar a transformação e análise de dados.

  • Processo de ETL (Extração, Transformação e Carga): Avançaremos para a etapa de ETL, na qual realizaremos a extração, transformação e carga de dados entre os ambientes OLTP e OLAP, garantindo a integridade e qualidade dos dados.

  • Implementação de Notificações por E-mail: Para aprimorar o monitoramento, adicionaremos a implementação de notificações por e-mail, permitindo uma gestão do processo em curso.

interface-airflow0web-dag

Resultados

Após iniciar o contêiner do Docker, o Airflow estará operacional em alguns instantes. Acesse o painel administrativo no navegador, digitando http://localhost:8080. A partir desse painel, você pode iniciar e monitorar o processamento em andamento. Explore as funcionalidades do Airflow para uma gestão eficiente dos fluxos de trabalho.

interface-airflow0web-dag

Concluídos esses passos, podemos acessar a função "Graph View". Essa funcionalidade permite acompanhar o fluxo das execuções de tarefas e verificar, se necessário, possíveis erros nos logs de cada tarefa.

interface-airflow0web-dag

Conforme evidenciado na imagem acima, o fluxo de tarefas de ETL foi concluído com sucesso, sem nenhum tipo de erro. Aguardamos agora a notificação por e-mail sobre o sucesso da aplicação. Para isso, podemos verificar a caixa de entrada no serviço da mailtrap.io e ler a mensagem de sucesso configurada na aplicação de ETL anteriormente.

mailtrap

Assim, alcançamos nosso objetivo, uma vez que os ambientes e tarefas foram concluídos com êxito em nossa aplicação.

Conclusão

Em resumo, a jornada do data pipeline abrangeu desde a coleta de dados até a execução bem-sucedida das tarefas de ETL. Utilizando Docker, Airflow, MySQL, PostgreSQL e serviços como Mailtrap.io, conseguimos construir um pipeline eficiente, automatizado e capaz de mover dados entre ambientes de forma confiável. A DAG no Airflow permitiu uma orquestração precisa, enquanto a notificação por e-mail ofereceu uma camada adicional de monitoramento. Este pipeline não apenas alcançou seu propósito inicial, mas também estabeleceu uma base sólida para futuras expansões e aprimoramentos em iniciativas de análise de dados.

data_pipeline_airflow's People

Contributors

gabrielbispo11 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.