This project evolved from a traditional NYC Taxi Data Pipeline into a complete Data Engineering, MLOps, and Observability Platform.
The platform demonstrates the full lifecycle of a modern data and machine learning ecosystem, including data ingestion, transformation, orchestration, model serving, monitoring, distributed tracing, and cloud-native deployment.
The objective is to simulate a production-grade architecture commonly used by Data Engineers, MLOps Engineers, Platform Engineers, and Site Reliability Engineering (SRE) teams.
- End-to-End Data Engineering Pipeline
- Production-Style ML Inference API
- Kubernetes Deployment
- Distributed Tracing with OpenTelemetry
- Log-Trace Correlation
- Model Drift Detection
- Centralized Observability Stack
- Automated Alerting
- Multi-Service Architecture
- Cloud-Native Deployment
flowchart TD
Client[Client / User] --> API[FastAPI Prediction API]
API --> FeatureService[Feature Service]
API --> MLflow[MLflow Model Artifact]
FeatureService --> API
MLflow --> API
API --> Prediction[Prediction Response]
API --> Prometheus[Prometheus Metrics]
API --> Loki[Loki Logs]
API --> Tempo[Tempo Traces]
FeatureService --> Prometheus
FeatureService --> Tempo
Prometheus --> Grafana[Grafana Dashboards]
Loki --> Grafana
Tempo --> Grafana
Grafana --> Alerts[Alerts & Monitoring]
classDef app fill:#e3f2fd,stroke:#1565c0,stroke-width:2px;
classDef observability fill:#fff3e0,stroke:#ef6c00,stroke-width:2px;
classDef dashboard fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px;
class Client,API,FeatureService,MLflow,Prediction app;
class Prometheus,Loki,Tempo observability;
class Grafana,Alerts dashboard;
- Kestra
- Google Cloud Storage (GCS)
- BigQuery
- dbt
- Looker Studio
- FastAPI
- MLflow
- Feature Service
- Model Versioning
- Prediction Monitoring
- Drift Detection
- Prometheus
- Grafana
- Loki
- Tempo
- OpenTelemetry
- Docker
- Kubernetes
- Google Cloud Run
- GitHub Actions
CSV Files
↓
Google Cloud Storage (Bronze)
↓
BigQuery (Silver)
↓
dbt Models (Gold)
↓
Looker Studio
Client Request
↓
FastAPI Prediction API
↓
Feature Service
↓
MLflow Model
↓
Prediction Response
Metrics → Prometheus → Grafana
Logs → Loki → Grafana
Traces → Tempo → Grafana
OpenTelemetry → Tempo
Provides business insights such as:
- Revenue Trends
- Total Trips
- Passenger Metrics
- Revenue per Passenger
- Rolling Averages
- KPI Scorecards
Monitors:
- API Health
- Request Rate
- API Latency
- Prediction Volume
- Prediction Errors
- Drift Percentage
- Kubernetes Resources
- CPU Usage
- Memory Usage
Monitors:
- Traces per Minute
- Logs per Minute
- Trace Errors
- Correlated Logs
- Distributed Tracing
- Log ↔ Trace Correlation
Grafana dashboard definitions are available in:
dashboard/operations_mlops_dashboard.jsondashboard/end_to_end_observability_dashboard.json
Current stable release:
v1.0.0 — NYC Taxi Data Platform
Published on GitHub Releases.
- Designed and deployed an end-to-end machine learning prediction platform using FastAPI and MLflow.
- Implemented distributed tracing using OpenTelemetry and Grafana Tempo.
- Built a centralized observability stack with Prometheus, Loki, Grafana, and Tempo.
- Created production-style dashboards for metrics, logs, traces, and model monitoring.
- Implemented model drift detection and automated alerting workflows.
- Deployed cloud-native workloads using Docker, Kubernetes, and Google Cloud Run.
- Established log-to-trace correlation for faster incident investigation and troubleshooting.
Python • FastAPI • MLflow • Docker • Kubernetes • Prometheus • Grafana • Loki • Tempo • OpenTelemetry • Kestra • BigQuery • dbt • Looker Studio • Google Cloud Run • GitHub Actions
- Terraform Infrastructure as Code
- Service Graph Visualization
- Trace-to-Logs Navigation
- Feature Store Integration
- Data Quality Monitoring
- SLO / SLI Dashboards
- Multi-Environment Deployment Strategy
Ricardo Sanches
Data Engineer | MLOps Enthusiast | Cloud & Observability Practitioner


