Skip to content

Análise de Dados Abertos da Prova Brasil 2011 com Airflow, S3, Redshift e Metabase

Notifications You must be signed in to change notification settings

wellataide/analiseDadosAbertosProvaBrasil

 
 

Repository files navigation

Análise de Dados Abertos da Prova Brasil 2011

Importante: O projeto tem apenas a finalidade de estudar as ferramentas e servir como base de arquitetura para outras soluções.

A Prova Brasil é uma avaliação censitária das escolas públicas das redes municipais, estaduais e federal, com o objetivo de avaliar a qualidade do ensino. Participam desta avaliação as escolas que possuem, no mínimo, 20 alunos matriculados nas séries/anos avaliados, sendo os resultados disponibilizados por escola e por ente federativo.

Link dos dados abertos do Governo do Brasil: http://dados.gov.br/dataset/microdados-prova-brasil

Stack Tecnológica:

Decisões arquiteturais

O Airflow foi escolhido para orquestrar a pipeline de dados por ser flexível e permitir organizar os passos com facilidades, caso necessite de escolabilidade pode facilmente incoporar outros frameworks de processamento distribuido. O Redshift é totalmente gerenciado e oferece uma solução completa para montar o DataWarehouse. O S3 permite armazenar os dados e carregar através dele as tabelas do Redshift, se tornando uma stagging area. E o Metabase é uma solução de visualização de dados open source com recursos fáceis e eficientes para montar dashboards.

Modelagem Dimensional dos dados

alt text

Execução do Projeto

O projeto está totalmente baseado no Docker e Docker Compose, basta seguir os passos abaixo:

  1. Executar imagem do Airflow:
$ docker-compose -f docker-compose-airflow.yml up -d
  1. Executar imagem do Metabase:
$ docker-compose -f docker-compose-metabase.yml up -d
  1. Baixar os dados abertos:
$ ./baixar_dados_abertos.sh
  1. No painel web do Airflow cadastrar as connections do S3 com o nome aws_s3 e do Redshift com o nome aws_redshift.
  2. Criar as tabelas necessárias no Redshift utilizando o script criacao-tabelas-dw-redshift.sql deste repositório.
  3. Criar um bucket no S3 e alterar o nome do bucket no código para o criado neste passo.
  4. Executar a pipeline de dados no airflow.
  5. Configurar e criar as visualizações no Metabase.

Fluxo Completo no Airflow

alt text

Dashboard gerado no Metabase

alt text

About

Análise de Dados Abertos da Prova Brasil 2011 com Airflow, S3, Redshift e Metabase

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 96.2%
  • Shell 3.8%