Skip to content

Latest commit

 

History

13 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Weather Data Engineering Pipeline

An end-to-end Weather Data Engineering Pipeline built using Python, Docker, Databricks, PySpark, Delta Lake, and Streamlit.

The pipeline ingests weather data from the OpenWeather API, processes it through a Medallion Architecture (Bronze, Silver, Gold), performs data quality checks, and serves analytical insights through an interactive Streamlit dashboard.

Architecture

Tech Stack

  • Python
  • Docker
  • OpenWeather API
  • Databricks
  • PySpark
  • Delta Lake
  • Streamlit
  • GitHub

Pipeline Flow

OpenWeather API → Python Ingestion → Raw JSON Storage → Databricks Volume → Bronze Layer → Silver Layer → Gold Layer → CSV Export → Streamlit Dashboard

Bronze Layer

Stores raw API responses without transformation.

Silver Layer

  • Flattens nested JSON
  • Converts timestamps
  • Standardizes schema

Gold Layer

Business-ready aggregations:

  • Average Temperature by City
  • Average Humidity by City
  • Maximum Temperature by City

Data Quality

Implemented validation checks for:

  • Temperature range validation
  • Humidity range validation
  • Null city validation

Dashboard

Dashboard

Future Enhancements

  • Databricks Workflow Automation
  • Auto Loader
  • Kafka Streaming
  • Airflow Orchestration
  • Real-Time Weather Analytics

About

Developed a Dockerized end-to-end weather data platform processing hourly weather data from multiple cities using PySpark and Delta Lake, implementing medallion architecture and analytical SQL models.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages