Automated pipeline that ingests Lufthansa flight and airport data, transforms it through the medallion architecture, and serves it via a Databricks dashboard.
Bronze → Silver → Gold → Dashboard
- Bronze: Raw JSON from Lufthansa API stored as Delta tables with metadata
- Silver: Cleaned, typed, deduplicated tables per entity
- Gold: Aggregated flight statistics per airport per hour
- airports
- cities
- countries
- airlines
- aircrafts
- flights
- Reference data (airports, cities, countries, airlines, aircraft): monthly
- Flight status: every 4 hours
- Gold table rebuild: immediately after each silver flights run
- bronze.airports -> silver.airports
- bronze.flights -> silver.flights
- silver.airports + silver.flights -> gold.airports_daily_stats
- Null checks on primary keys
- Deduplication based on api's double entries
- Delay calculated only where both scheduled and actual times are present
- Add your Lufthansa API tokens to Databricks secrets
- Run reference data job manually once to populate bronze and silver
- Enable scheduled jobs in Databricks Jobs UI
- Open the dashboard in Databricks SQL
reference_data_pipeline: monthly, ingests and silverizes all reference dataflight_pipeline: every 4 hours, ingests and silverizes flight statusgold_rebuild: triggered after flight_pipeline completes