This repository demonstrates how to use Feast feature store for managing ML features in a flight delay prediction system. It shows how to set up a feature repository, define entities and feature views, and work with both historical and real-time features.
Launch the Docker containers for Jupyter in the SSH terminal :
docker-compose -f /home/cc/feast-artifact/docker/docker-compose-feast.yml jupyter up -dCheck the Jupyter server logs to get the access URL:
docker logs jupyterLook for a URL that looks like http://127.0.0.1:8888/?token=... in the output and open it in your browser.
Navigate to /work/workspace/feast_tutorial.ipynb in the Jupyter interface and follow along with the tutorial. The notebook includes:
- Setting up a Feast feature repository
- bringing up Feast infrastructure
- Defining entities and feature views
- Retrieving historical features for model training
- Serving real-time features for prediction
- Implementing a streaming pipeline for feature updates
-
workspace/feature_repo/: Contains Feast configuration and feature definitionsdata_sources.py: Defines data sources (file, push)entities.py: Defines the flight entityfeatures.py: Defines feature viewsfeature_services.py: Groups features for different modelsfeature_store.yaml: Main configuration file
-
workspace/feast_tutorial.ipynb: Step-by-step tutorial notebook -
dags/: Airflow DAGs for scheduled feature materialization -
docker/: Docker Compose configurations
When finished, stop all services:
docker-compose -f /home/cc/feast-artifact/docker/docker-compose-feast.yml down
docker-compose -f /home/cc/feast-artifact/docker/docker-compose-airflow.yml down