Este é um exemplo de um aplicativo ETL (Extract, Transform, Load) desenvolvido com PySpark e SQLAlchemy, onde foram aplicados conceitos de SOLID, Hexagonal Architecture, Clean Architecture, DDD, TDD e design patterns.
O objetivo deste projeto é demonstrar uma estrutura robusta e modular para a construção de um aplicativo ETL em Python, utilizando ferramentas populares como PySpark para processamento de big data e SQLAlchemy para interação com banco de dados.
- PySpark: PySpark é uma biblioteca Python para processamento de big data, construída sobre o Apache Spark. Utilizamos o PySpark para realizar a extração, transformação e carregamento de grandes volumes de dados.
- SQLAlchemy: SQLAlchemy é uma biblioteca Python popular para mapeamento objeto-relacional (ORM) e interação com banco de dados SQL. Utilizamos o SQLAlchemy para conectar e interagir com o banco de dados.
- Clone este repositório para o seu ambiente local.
- Instale as dependências do projeto.
- Execute os testes do projeto.
- Execute o aplicativo ETL.
Contribuições são bem-vindas! Sinta-se à vontade para abrir uma issue ou enviar um pull request com sugestões, correções ou novas funcionalidades.