Repositório do projeto final da disciplina de Python for Data Engineer do MBA em Data Engineering da faculdade Impacta.
O objetivo deste projeto é complementar o conhecimento técnico obtido ao longo desta disciplina em um projeto de engenharia e análise de dados que envolve ingestão, armazenamento e análise de dados.
- Ingestão de dados: Construir uma aplicação que ingere dados do CoinMarketCap, os transforma e os carrega em um armazenamento de dados.
- Modelagem de dados e design de banco de dados: Construir um modelo de dados e projetar um esquema de banco de dados para o armazenamento.
- Análise de dados:
Crie gráficos de apresentação de dados que respondam às seguintes perguntas:
- O preço do Bitcoin nos últimos 5 anos. Utilize a figura 1 como exemplo.
- Gráfico do tipo candlestick nos últimos 30 dias do Bitcoin. Utilize a figura 2 como exemplo.
Figura 1 |
Figura 2 |
A aplicação de ingestão de dados foi desenvolvida utilizando a linguagem Python. O objetivo da aplicação é extrair dados do site CoinMarketCap e armazená-los em um banco de dados sqlite.
A aplicação se aproveita de recursos assincronos da biblioteca httpx para realizar as requisições de forma rápida e eficiente, e inseri os dados através da biblioteca sqlite3.
- Clone o repositório para a sua máquina local:
git clone
- Instale as dependências:
cd projeto-final-python-for-data-engineer
pip install -r requirements.txt
- Execute a aplicação:
python main.py -id 1 -start 2016-01-01 --end 2021-01-01 --i 1d --c BRL
A aplicação aceita os seguintes parâmetros:
- id: ID da moeda a ser extraída na plataforma do CoinMarketCap.
- start: Data de início da extração. No formato YYYY-MM-DD.
- end: Data de fim da extração. No formato YYYY-MM-DD.
- i: Intervalo de tempo entre as requisições ex. 1d.
- c: Moeda de conversão ex. BRL.
Area reservada para detalhes técnicos do projeto.