This project demonstrates an end-to-end streaming data pipeline built on Databricks Free Edition using the Medallion Architecture (Bronze โ Silver โ Gold).
GitHub Events are collected through the GitHub REST API, stored as JSON files in Databricks Volumes, automatically ingested with Auto Loader, processed with Structured Streaming and PySpark, transformed into analytical datasets, and finally exposed as business KPIs through Gold tables and dashboards.
The project follows modern Data Engineering best practices including:
- Incremental ingestion
- Delta Lake
- Unity Catalog
- Databricks Workflows
- Structured Streaming
- Auto Loader
- Layered Lakehouse Architecture
Raw GitHub Events are ingested from the GitHub REST API.
Responsibilities:
- Raw JSON storage
- Incremental ingestion
- Auto Loader
- Streaming ingestion
Data cleaning and transformation.
Responsibilities:
- Parse nested JSON
- Extract useful fields
- Standardize columns
- Data preparation
Business-ready analytical tables.
KPIs include:
- Top Event Types
- Top GitHub Users
- Top Repositories
- Daily Activity
| Category | Technology |
|---|---|
| Platform | Databricks Free Edition |
| Language | Python |
| Processing | PySpark |
| Streaming | Structured Streaming |
| Storage | Delta Lake |
| Ingestion | GitHub REST API |
| Governance | Unity Catalog |
| Storage Layer | Databricks Volumes |
| Workflow | Databricks Jobs |
| Visualization | Databricks Dashboard |
| Version Control | Git & GitHub |
databricks-streaming-project/
โ
โโโ notebooks/
โ โโโ 00_config
โ โโโ 01_ingestion
โ โโโ 02_bronze
โ โโโ 03_silver
โ โโโ 04_gold
โ โโโ 05_dashboard
โ
โโโ architecture/
โ
โโโ screenshots/
โ
โโโ docs/
โ
โโโ README.md
The pipeline is orchestrated using Databricks Workflows.
Execution Order:
- GitHub API Ingestion
- Bronze Streaming
- Silver Transformation
- Gold KPI Generation
The workflow automatically executes tasks according to their dependencies.
The project generates business-ready analytical tables:
- Top Event Types
- Top GitHub Users
- Top Repositories
- Daily Activity
These tables can be directly consumed by dashboards or BI tools.
The dashboard displays:
- GitHub Event Distribution
- Most Active Users
- Most Active Repositories
- Daily GitHub Activity
(Dashboard screenshots will be added in the screenshots folder.)
- Unity Catalog
- Catalogs
- Schemas
- Volumes
- Auto Loader
- Structured Streaming
- Delta Tables
- Databricks Jobs
- Workflows
- Dashboards
โ GitHub REST API Integration
โ Incremental Data Ingestion
โ Databricks Auto Loader
โ Structured Streaming
โ Delta Lake
โ Unity Catalog
โ Bronze / Silver / Gold Architecture
โ Workflow Orchestration
โ Dashboard Reporting
โ End-to-End Data Pipeline
- Delta Live Tables (DLT)
- MERGE INTO Incremental Processing
- Data Quality Expectations
- CI/CD Deployment
- Terraform Infrastructure
- Azure DevOps / GitHub Actions
- Monitoring & Alerts
Noureddine RIDA
Data Engineer | Python | PySpark | Databricks | SQL
GitHub: https://github.com/NouriRD
LinkedIn: https://www.linkedin.com/in/noureddine-rida-6b482195/
Please consider giving it a โญ on GitHub.











