An open API service indexing awesome lists of open source software.

https://github.com/varsha-vraj/airport_parking_toolkit

This toolkit is designed to simulate and manage airport parking events. It provides a command-line interface (CLI) for managing vehicles, zones, and parking events. It includes full integration with PostgreSQL for data storage, SQL for advanced queries, and Apache Spark for big data batch processing of parquet logs.
https://github.com/varsha-vraj/airport_parking_toolkit

big-data cli dataengineering hadoop java parquet-files poetry postgresql pyspark python3 spark sqlalchemy

Last synced: about 2 months ago
JSON representation

This toolkit is designed to simulate and manage airport parking events. It provides a command-line interface (CLI) for managing vehicles, zones, and parking events. It includes full integration with PostgreSQL for data storage, SQL for advanced queries, and Apache Spark for big data batch processing of parquet logs.

Awesome Lists containing this project

README

          


๐Ÿš— Airport Parking Management Toolkit

Author: varshaa112003@gmail.com


Project Type: Python CLI Toolkit + PostgreSQL + Apache Spark


๐Ÿ“– Description


This toolkit is designed to simulate and manage airport parking events. It provides a command-line interface (CLI) for managing vehicles, zones, and parking events. It includes full integration with PostgreSQL for data storage, SQL for advanced queries, and Apache Spark for big data batch processing of parquet logs.



๐Ÿ› ๏ธ Technologies Used



TechnologyPurpose
PythonCore programming
CLICommand Line Interface
PostgreSQLDatabase backend
SQLAlchemyDatabase ORM
Apache Spark - PySparkETL on parquet data
PoetryDependency management


๐Ÿ“ Folder Structure



airport_parking_project_demo/
โ”‚
โ”œโ”€โ”€ airport_parking_toolkit/
โ”‚ โ”œโ”€โ”€ cli_tool.py
โ”‚ โ”œโ”€โ”€ spark_jobs.py
โ”‚
โ”œโ”€โ”€ output_parquet/
โ”‚ โ”œโ”€โ”€ vehicles.parquet
โ”‚ โ”œโ”€โ”€ parking_zones.parquet
โ”‚ โ””โ”€โ”€ parking_events.parquet
โ”‚
โ”œโ”€โ”€ tests/
โ”‚ โ”œโ”€โ”€ test_cli.py
โ”‚
โ”œโ”€โ”€ queries/
โ”‚ โ”œโ”€โ”€ queries.sql
โ”‚ โ””โ”€โ”€ advanced_sql/
โ”‚ โ””โ”€โ”€ triggers.sql
โ”‚
โ”œโ”€โ”€ logs/
โ”‚ โ””โ”€โ”€ parking_etl.log
โ”‚
โ”œโ”€โ”€ load_parquet_to_db.py
โ”œโ”€โ”€ pyproject.toml
โ””โ”€โ”€ README.html


๐Ÿš€ How to Run



  1. ๐Ÿ“ฆ Install dependencies:
    poetry install


  2. ๐Ÿงน Clean old logs (if needed):
    rm -rf logs/parking_etl.log


  3. โ–ถ๏ธ Run the CLI:
    python -m airport_parking_toolkit.cli_tool


  4. ๐Ÿ“ฅ Load parquet data to PostgreSQL:
    python load_parquet_to_db.py


  5. ๐Ÿ”ฅ Run Apache Spark jobs:
    python airport_parking_toolkit/spark_jobs.py




๐Ÿ“ธ Images


1. Vehicle Entry/Exit LoggingVehicle Entry/Exit Logging

Validate Parking RecordsValidate Parking Records

Analyze Zone UtilizationAnalyze Zone Utilization

Track Frequent ParkersTrack Frequent Parkers

Data Quality IssuesDetect Data Quality Issues

Compare Parking Zone Performance Compare Parking Zone Performance

Schema DiagramSchema diagram









๐Ÿ“š Advanced SQL Features



  • Trigger to log insertions into parking_events

  • Stored Functions for computing durations

  • Views for summarised parking statistics



๐Ÿ“ฆ Logs


ETL logs are written to logs/parking_etl.log after every Spark job run.



โœจ Thank You