Realizado

Desenvolvimento de Data Lake em Vm Azure usando docker, Python, Spark, Minio, dagster, Openmetadata e Trino

Publicado em 26 de Setembro de 2024 dias na TI e Programação

Sobre este projeto

Aberto

Objetivo do Projeto:
Implementar um Data Lake em uma VM Azure, utilizando um conjunto de tecnologias modernas que possibilitem a ingestão, processamento, armazenamento e consulta de grandes volumes de dados de forma eficiente e segura.

Tecnologias a serem utilizadas:

Docker - Para a criação e gestão de containers, garantindo isolamento e escalabilidade dos serviços.
Apache Spark - Para o processamento distribuído de grandes volumes de dados.
MINio - Para armazenamento de dados de forma eficiente, sendo uma alternativa ao S3.
Python - Para automação e transformação dos dados, incluindo scripts para orquestrar processos.
Dagster - Para orquestração de pipelines ETL.
OpenMetadata - Para catalogação e gerenciamento dos metadados.
Trino - Para consultas SQL distribuídas nos dados armazenados, facilitando análise em tempo real.
Escopo Detalhado:
Provisionamento da Infraestrutura:

Criação da VM no Azure com especificações ajustadas às necessidades de processamento e armazenamento.
Instalação e configuração do Docker para o gerenciamento de containers dos componentes do Data Lake.
Camadas do Data Lake:

Bronze: Dados brutos, não processados, em seu formato original, armazenados no MINio.
Silver: Dados processados e limpos após transformações iniciais.
Gold: Dados prontos para consumo analítico, otimizados para consultas e integrações com ferramentas de BI.
Ingestão de Dados:

Configurar pipelines de ingestão com Dagster, garantindo que os dados sejam coletados e armazenados corretamente nas camadas Bronze e Silver.
Processamento de Dados:

Utilização do Apache Spark para realizar transformações e processamento em larga escala dos dados, movendo-os das camadas Bronze para Silver e, eventualmente, para Gold.
Armazenamento e Catalogação:

Configuração do MINio como storage principal, em conformidade com os padrões do Data Lake.
Implementação do OpenMetadata para garantir que os metadados dos dados sejam catalogados e acessíveis de forma organizada.
Consultas Distribuídas:

Utilizar Trino para consultas SQL distribuídas nos dados, possibilitando análises de alta performance, mesmo em grandes volumes de dados.
Segurança e Acesso:

Configurar regras de acesso e segurança para garantir que cada cliente possa acessar apenas seus dados.
Implementação de mecanismos de auditoria e logs para monitorar o acesso ao Data Lake.
Entrega de Insights:

Integração com ferramentas de visualização de dados como Power BI para fornecer dashboards e relatórios baseados na camada Gold do Data Lake.

Entregáveis:
- Infraestrutura da VM com todos os componentes em containers Docker.
- Pipelines de ingestão e transformação de dados (Dagster + Spark).
- Data Lake funcional com camadas Bronze, Silver e Gold.
- Sistema de catalogação de metadados implementado (OpenMetadata).
- Ferramenta de consulta distribuída configurada (Trino).
- Documentação técnica detalhada.
- Testes de desempenho e segurança realizados.

Considerações Finais:
O Data Lake será escalável, podendo integrar novos pipelines e fontes de dados conforme necessário. Ferramentas como Trino e Spark garantirão que grandes volumes de dados possam ser processados e analisados com eficiência.

Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Alteração média
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho especificações
Disponibilidade requerida Conforme necessário
Funções necessárias Desenvolvedor, Outro
Outras funções necessárias Engenheiro(a) de Dados

Prazo de Entrega: Não estabelecido

Habilidades necessárias

Outro projetos publicados por E. A. D. S.