Skip to content

brsavii/data-engineering-project

Repository files navigation

Desenvolvimento de uma Pipeline de Dados utilizando Azure Synapse

License

Este projeto abrange todo o processo de construção de uma robusta pipeline de dados, desde a criação inicial do banco de dados MongoDB até a apresentação dos dados em Power BI. As principais etapas incluem:

  • Criação do Banco de Dados MongoDB: Configuração e implementação de um banco de dados MongoDB, incluindo a elaboração de scripts para a população inicial dos dados.

  • Ingestão de Dados: Importação dos dados brutos para o sistema, garantindo a integridade e a qualidade das informações desde a origem.

  • Data Lake: Armazenamento dos dados em um Data Lake, utilizando as melhores práticas para organização e acessibilidade dos dados.

  • Transformações de Dados: Aplicação de transformações nos dados através do Apache Spark, utilizando a arquitetura de medalhão para estruturar os dados em camadas (bronze, silver e gold).

  • Integração com Power BI: Conexão e visualização dos dados transformados no Power BI, permitindo a criação de dashboards interativos e relatórios detalhados.

Este trabalho visa não apenas a construção de uma pipeline eficiente e escalável, mas também a garantia de que cada etapa do processo seja executada com precisão e alinhada às melhores práticas da engenharia de dados.

Documentação do projeto

Essas instruções permitirão que você obtenha uma cópia do projeto em operação na sua máquina local para fins de desenvolvimento e teste.

Clique aqui para saber como implantar o projeto.

Visão geral

  • O ambiente relacional – origem – tem 7 tabelas, 10.000 linhas para cada tabela principal.
  • Foi utilizado a biblioteca Faker do Python, para gerar as massas de dados e popular o ambiente relacional.
  • A ingestão dos dados foi feita através do Azure Synapse Analytics
  • O Data Lake foi criado em cima de um object storage (cloud) usando a arquitetura medalhão (Camadas Landing, Bronze, Silver e Gold).
  • Os dados serão gravados no object storage no formato Delta Lake nas camadas Bronze, Silver e Gold. A transformação será feita através do Apache Spark (Python/pyspark).
  • As funções de ingestão, transformação e movimentação dos dados entre as camadas são orquestradas e agendadas através da ferramenta Azure Synapse Analytics.
  • Os dados serão disponibilizados na camada Gold no formato dimensional (OBT).
  • Foram utilizadas 4 KPIs e 2 métricas para compor o dashboard no PowerBi.
  • O dashboard consome os dados do modelo OBT, direto da camada gold.
  • A documentação completa do trabalho está publicada no MkDocs.

Ferramentas utilizadas

  • Azure - é a plataforma de computação em nuvem da Microsoft que oferece uma ampla gama de serviços, incluindo computação, armazenamento, bancos de dados, redes e inteligência artificial, para desenvolver, gerenciar e hospedar aplicativos e serviços de maneira escalável e segura.
  • Power BI - é uma ferramenta de business intelligence da Microsoft que permite a visualização interativa de dados e a criação de relatórios e dashboards dinâmicos, ajudando as empresas a transformar dados brutos em insights acionáveis de forma fácil e intuitiva.
  • MongoDB - é um banco de dados NoSQL orientado a documentos que armazena dados em formato JSON-like, conhecido por sua flexibilidade, escalabilidade e facilidade de uso, sendo amplamente utilizado para aplicações modernas que exigem alta performance e gerenciamento eficiente de grandes volumes de dados não estruturados.

Colaboração

Se desejar publicar suas modificações em um repositório remoto no GitHub, siga estes passos:

  1. Crie um novo repositório vazio no GitHub.
  2. No terminal, navegue até o diretório raiz do projeto.
  3. Execute os seguintes comandos:
git remote set-url origin https://github.com/seu-usuario/nome-do-novo-repositorio.git
git add .
git commit -m "Adicionar minhas modificações"
git push -u origin master

Isso configurará o repositório remoto e enviará suas modificações para lá.

Collaborators

Você também pode ver a lista de todos os colaboradores que participaram deste projeto.

Licença

Este projeto está sob a licença (sua licença) - veja o arquivo LICENSE para detalhes.

Referências

ChatGPT DatasideCommunity Datasen