Opis projektu
PrzetłumaczonePodstawowa praca to pipeline ETL, który wyciąga dane z MySQL, oczyszcza i agreguje je, a następnie ładuje do PostgreSQL, z dobrze zaprojektowanymi tabelami faktów i wymiarów do analizy zdarzeń, użytkowników i przychodów. Oprócz tego potrzebujemy zaplanowanych zadań — codziennych i godzinowych agregacji za pomocą cron lub Airflow — oraz dashboardu w Grafana lub Metabase połączonego z PostgreSQL. Metryki, które są dla nas istotne, to DAU, MAU, retencja, ARPU i konwersja w lejku, a także potrzebujemy automatycznych kontroli jakości danych (liczba wierszy i walidacja nulli), aby móc ufać dashboardowi.
Stos jest ukierunkowany na Pythona, a wszystko powinno być uruchamiane za pomocą Docker Compose dla czystego lokalnego środowiska, aby po przekazaniu mogliśmy sami uruchomić i rozszerzyć pipeline.
Komponenty:
— 1. ETL — ekstrakcja z MySQL, transformacja (oczyszczanie, agregacja), ładowanie do PostgreSQL
— 2. Modele danych — tabele faktów/wymiarów do analizy zdarzeń, użytkowników, przychodów
— 3. Harmonogram — codzienne/godzinowe agregacje (cron lub Airflow)
— 4. Dashboard — Grafana lub Metabase połączone z PostgreSQL
— 5. KPI — DAU, MAU, retencja, ARPU, konwersje w lejku
— 6. Kontrola jakości danych — liczba wierszy i kontrole nulli
Stos:
— Python 3 (pandas, SQLAlchemy, psycopg2)
— PostgreSQL
— Grafana lub Metabase
— Docker Compose do lokalnego wdrożenia