Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/teomewhy/change-data-loyalty
https://github.com/teomewhy/change-data-loyalty
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/teomewhy/change-data-loyalty
- Owner: TeoMeWhy
- Created: 2024-07-22T12:14:13.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-07-22T19:50:06.000Z (6 months ago)
- Last Synced: 2024-07-23T16:24:24.548Z (6 months ago)
- Language: Python
- Size: 4.88 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Change Data loyalty
Uma lib simples para você poder criar arquivos de CDC a partir de um dataset no Kaggle.
## Sobre
Com base nos dados do kaggle (que você encontra [aqui](https://www.kaggle.com/datasets/teocalvo/teomewhy-loyalty-system)), criamos os arquivos de Change Data Capture (CDC).
A ideia é comprar os dois databases:
- _database.db_: Dados da versão atual do banco de dados do nosso sistema de pontos
- _database_old.db_: Dados da versão anterior do nosso sistema de pontosCom bases nos arquivos criados, voc6e pode realizar ingestão de dados utilizando esses arquivos _.parquet_s.
- Playlist sobre consumo do CDC no datalake com Spark Streaming + Upsert: [Lago do Mago](https://www.youtube.com/playlist?list=PLvlkVRRKOYFTcLehYZ2Bd5hGIcLH0dJHE)
## Setup
1. Crie um ambiente novo com ajuda do anaconda:
```bash
conda create --name cdc-loyalty python=3.12
```2. Instale as bibliotecas necessárias:
```bash
pip install -r requirements.txt
```3. Configure a autenticação da api do Kaggle:
Confira esse artigo disponível no Kaggle para você criar sua API key [www.kaggle.com/docs/api](https://www.kaggle.com/docs/api)
## Execução
Para executar CDC, basta executar o comando abaixo:
```bash
cd src; python main.py
```Este comando executará os seguintes passos:
1. Download dos dados do Kaggle
2. Identificação das mudanças existentes em cada tabela, gerando os arquivos de CDC no seguinte caminho: `data/cdc/nome_tabela.arquivo_com_data.parquet`