liveBook · Manning

Feast

As explained in Machine Learning Platform Engineering

An open-source feature store for managing and serving machine learning features consistently across training and inference.

Feast is an open-source feature store for sharing and serving prepared machine-learning features. Instead of rebuilding feature joins separately for training and inference, teams register feature definitions and retrieve features through a common interface. This helps limit training-serving skew and keeps feature generation separate from modeling. section 1.3.3 section 4.2

Figure 4.10 Feast feature store design involves a feature pipeline populating the offline store and periodically Feast materializes the offline features to the online store. The feature registry holds feature definitions along with online and offline store information. The Feast SDK provides methods to retrieve features from online and offline stores, which can be used for training and inference purposes.
A diagram of a website

AI-generated content may be incorrect.

The architecture separates feature computation from retrieval: a pipeline fills an offline store, Feast materializes features to an online store, and a registry holds the definitions used by the SDK. section 4.2

Historical retrieval must select the feature value available at the requested time. If a user's values were recorded on January 7, May 21, and December 4, a request for May 22 should use May 21—not the later value. Feast provides point-in-time feature sets rather than requiring a separately maintained join query. A feature view's time to live (TTL) limits how far back that lookup can search. section 4.2 section 4.2.1

A practical setup has three parts:

  • Define an entity such as `user_id`, then group related fields in FeatureViews with a source and TTL. Demographic, relationship, and occupation features can be separate views. section 4.2.1
  • Point FileSources at prepared Parquet files in MinIO. Configure the registry, a file-based offline store, and a Redis online store in `feature_store.yaml`; run `feast apply` to register the definitions. section 4.2.1
  • Use offline features for historical training data and materialize them to the online store for low-latency inference. Run `feast ui` to inspect registered entities, views, sources, and tags. section 4.2 section 4.2.4
Listing 4.11 Feature store configuration
project: my_feature_repo
registry: s3://feature-registry/registry_local.db    #1
provider: local    #2
offline_store:
  type: file    #3
online_store:
  type: redis    #4
  connection_string: "localhost:6379"

The configuration listing shows the concrete store split: an S3-path registry, a file offline store, and a Redis online store. section 4.2.1

Registration and serving are only part of the workflow. New feature data and model retraining still need automation; Kubeflow pipelines are used to orchestrate that work alongside Feast and MLflow. section 4.2.4 section 4.0

How Machine Learning Platform Engineering covers it

How deep it goes
Works through entities, FileSources, FeatureViews, TTL, store configuration, registration, and UI inspection; pipeline automation follows separately.
Examples
Uses dated user features, demographic Parquet files in MinIO, a Redis online store, and `feast apply`.
What it assumes
Starts with prepared feature files and defines entities and FeatureViews before registering them.
What you can do after
Operate/configure it with FeatureViews, `feature_store.yaml`, `feast apply`, and `feast ui` to register and inspect features.
How it connects
Connects feature engineering and point-in-time joins to offline stores, online stores, MLflow, and Kubeflow Pipelines.

This explainer was generated by Manning's knowledge graph from the text of Machine Learning Platform Engineering. The section links point to the parts of the book it draws on.