Descrizione del progetto
TradottoIl lavoro principale è una pipeline ETL che estrae dati da MySQL, li pulisce e aggrega, e li carica in PostgreSQL, con tabelle di fatti e dimensioni ben progettate per analizzare eventi, utenti e ricavi. Inoltre, abbiamo bisogno di lavori programmati — aggregazioni giornaliere e orarie tramite cron o Airflow — e di un dashboard in Grafana o Metabase collegato a PostgreSQL. Le metriche che ci interessano sono DAU, MAU, retention, ARPU e conversione del funnel, e abbiamo anche bisogno di controlli automatici sulla qualità dei dati (conteggi delle righe e validazione dei null) in modo da poter fidarci del dashboard.
Lo stack è orientato verso Python, e tutto dovrebbe essere avviato tramite Docker Compose per un ambiente locale pulito, in modo che dopo il passaggio possiamo eseguire ed estendere la pipeline noi stessi.
Componenti:
— 1. ETL — estrazione da MySQL, trasformazione (pulizia, aggregazione), caricamento in PostgreSQL
— 2. Modelli di dati — tabelle di fatti/dimensioni per analizzare eventi, utenti, ricavi
— 3. Scheduler — aggregazioni giornaliere/orarie (cron o Airflow)
— 4. Dashboard — Grafana o Metabase collegato a PostgreSQL
— 5. KPI — DAU, MAU, retention, ARPU, conversioni del funnel
— 6. Controllo qualità dei dati — conteggi delle righe e controlli sui null
Stack:
— Python 3 (pandas, SQLAlchemy, psycopg2)
— PostgreSQL
— Grafana o Metabase
— Docker Compose per distribuzione locale