LogoLogo
v0.27-branch
v0.27-branch
  • Introduction
  • Community & getting help
  • Roadmap
  • Changelog
  • Getting started
    • Quickstart
    • Concepts
      • Overview
      • Data ingestion
      • Entity
      • Feature view
      • Feature retrieval
      • Point-in-time joins
      • Registry
      • [Alpha] Saved dataset
    • Architecture
      • Overview
      • Registry
      • Offline store
      • Online store
      • Batch Materialization Engine
      • Provider
    • Third party integrations
    • FAQ
  • Tutorials
    • Sample use-case tutorials
      • Driver ranking
      • Fraud detection on GCP
      • Real-time credit scoring on AWS
      • Driver stats on Snowflake
    • Validating historical features with Great Expectations
    • Using Scalable Registry
    • Building streaming features
  • How-to Guides
    • Running Feast with Snowflake/GCP/AWS
      • Install Feast
      • Create a feature repository
      • Deploy a feature store
      • Build a training dataset
      • Load data into the online store
      • Read features from the online store
      • Scaling Feast
      • Structuring Feature Repos
    • Running Feast in production (e.g. on Kubernetes)
    • Upgrading for Feast 0.20+
    • Customizing Feast
      • Adding a custom batch materialization engine
      • Adding a new offline store
      • Adding a new online store
      • Adding a custom provider
    • Adding or reusing tests
  • Reference
    • Codebase Structure
    • Type System
    • Data sources
      • Overview
      • File
      • Snowflake
      • BigQuery
      • Redshift
      • Push
      • Kafka
      • Kinesis
      • Spark (contrib)
      • PostgreSQL (contrib)
      • Trino (contrib)
      • Azure Synapse + Azure SQL (contrib)
    • Offline stores
      • Overview
      • File
      • Snowflake
      • BigQuery
      • Redshift
      • Spark (contrib)
      • PostgreSQL (contrib)
      • Trino (contrib)
      • Azure Synapse + Azure SQL (contrib)
    • Online stores
      • Overview
      • SQLite
      • Snowflake
      • Redis
      • Datastore
      • DynamoDB
      • Bigtable
      • PostgreSQL (contrib)
      • Cassandra + Astra DB (contrib)
      • MySQL (contrib)
    • Providers
      • Local
      • Google Cloud Platform
      • Amazon Web Services
      • Azure
    • Batch Materialization Engines
      • Bytewax
      • Snowflake
      • AWS Lambda (alpha)
      • Spark (contrib)
    • Feature repository
      • feature_store.yaml
      • .feastignore
    • Feature servers
      • Python feature server
      • [Alpha] Go feature server
      • [Alpha] AWS Lambda feature server
    • [Beta] Web UI
    • [Alpha] On demand feature view
    • [Alpha] Data quality monitoring
    • Feast CLI reference
    • Python API reference
    • Usage
  • Project
    • Contribution process
    • Development guide
    • Backwards Compatibility Policy
      • Maintainer Docs
    • Versioning policy
    • Release process
    • Feast 0.9 vs Feast 0.10+
Powered by GitBook
On this page
  • Getting started
  • Do you have any examples of how Feast should be used?
  • Concepts
  • Do feature views have to include entities?
  • How does Feast handle model or feature versioning?
  • What is the difference between data sources and the offline store?
  • Is it possible to have offline and online stores from different providers?
  • Functionality
  • How do I run get_historical_features without providing an entity dataframe?
  • Does Feast provide security or access control?
  • Does Feast support streaming sources?
  • Does Feast support feature transformation?
  • Does Feast have a Web UI?
  • Does Feast support composite keys?
  • How does Feast compare with Tecton?
  • What are the performance/latency characteristics of Feast?
  • Does Feast support embeddings and list features?
  • Does Feast support X storage engine?
  • Does Feast support using different clouds for offline vs online stores?
  • What is the difference between a data source and an offline store?
  • How can I add a custom online store?
  • Can the same storage engine be used for both the offline and online store?
  • Does Feast support S3 as a data source?
  • Is Feast planning on supporting X functionality?
  • Project
  • How do I contribute to Feast?
  • Feast 0.9 (legacy)
  • What is the difference between Feast 0.9 and Feast 0.10+?
  • How do I migrate from Feast 0.9 to Feast 0.10+?
  • What are the plans for Feast Core, Feast Serving, and Feast Spark?

Was this helpful?

Edit on GitHub
Export as PDF
  1. Getting started

FAQ

PreviousThird party integrationsNextSample use-case tutorials

Last updated 2 years ago

Was this helpful?

Don't see your question?

We encourage you to ask questions on or . Even better, once you get an answer, add the answer to this FAQ via a !

Getting started

Do you have any examples of how Feast should be used?

The is the easiest way to learn about Feast. For more detailed tutorials, please check out the page.

Concepts

Do feature views have to include entities?

No, there are .

How does Feast handle model or feature versioning?

Feast expects that each version of a model corresponds to a different feature service.

Feature views once they are used by a feature service are intended to be immutable and not deleted (until a feature service is removed). In the future, feast plan and feast apply will throw errors if it sees this kind of behavior.

What is the difference between data sources and the offline store?

The data source itself defines the underlying data warehouse table in which the features are stored. The offline store interface defines the APIs required to make an arbitrary compute layer work for Feast (e.g. pulling features given a set of feature views from their sources, exporting the data set results to different formats). Please see and for more details.

Is it possible to have offline and online stores from different providers?

Yes, this is possible. For example, you can use BigQuery as an offline store and Redis as an online store.

Functionality

How do I run get_historical_features without providing an entity dataframe?

Does Feast provide security or access control?

Feast currently does not support any access control other than the access control required for the Provider's environment (for example, GCP and AWS permissions).

It is a good idea though to lock down the registry file so only the CI/CD pipeline can modify it. That way data scientists and other users cannot accidentally modify the registry and lose other team's data.

Does Feast support streaming sources?

Does Feast support feature transformation?

There are several kinds of transformations:

    • These transformations are Pandas transformations run on batch data when you call get_historical_features and at online serving time when you call `get_online_features.

    • Note that if you use push sources to ingest streaming features, these transformations will execute on the fly as well

    • These will include SQL + PySpark based transformations on batch data sources.

  • Streaming transformations (RFC in progress)

Does Feast have a Web UI?

Does Feast support composite keys?

A feature view can be defined with multiple entities. Since each entity has a unique join_key, using multiple entities will achieve the effect of a composite key.

How does Feast compare with Tecton?

What are the performance/latency characteristics of Feast?

Does Feast support embeddings and list features?

Yes. Specifically:

  • Simple lists / dense embeddings:

    • BigQuery supports list types natively

    • Redshift does not support list types, so you'll need to serialize these features into strings (e.g. json or protocol buffers)

  • Sparse embeddings (e.g. one hot encodings)

Does Feast support X storage engine?

Does Feast support using different clouds for offline vs online stores?

Yes. Using a GCP or AWS provider in feature_store.yaml primarily sets default offline / online stores and configures where the remote registry file can live (Using the AWS provider also allows for deployment to AWS Lambda). You can override the offline and online stores to be in different clouds if you wish.

What is the difference between a data source and an offline store?

The data source and the offline store are closely tied, but separate concepts. The offline store controls how feast talks to a data store for historical feature retrieval, and the data source points to specific table (or query) within a data store. Offline stores are infrastructure-level connectors to data stores like Snowflake.

Additional differences:

  • Data sources may be specific to a project (e.g. feed ranking), but offline stores are agnostic and used across projects.

  • A feast project may define several data sources that power different feature views, but a feast project has a single offline store.

  • Feast users typically need to define data sources when using feast, but only need to use/configure existing offline stores without creating new ones.

How can I add a custom online store?

Can the same storage engine be used for both the offline and online store?

Yes. For example, the Postgres connector can be used as both an offline and online store (as well as the registry).

Does Feast support S3 as a data source?

Yes. There are two ways to use S3 in Feast:

  • Using the s3_endpoint_override in a FileSource data source. This endpoint is more suitable for quick proof of concepts that won't necessarily scale for production use cases.

Is Feast planning on supporting X functionality?

Project

How do I contribute to Feast?

Feast 0.9 (legacy)

What is the difference between Feast 0.9 and Feast 0.10+?

How do I migrate from Feast 0.9 to Feast 0.10+?

What are the plans for Feast Core, Feast Serving, and Feast Spark?

Feast does not provide a way to do this right now. This is an area we're actively interested in contributions for. See

Yes. In earlier versions of Feast, we used Feast Spark to manage ingestion from stream sources. In the current version of Feast, we support . Feast also defines a that allows a deeper integration with stream sources.

On demand transformations (See )

Batch transformations (WIP, see )

Yes. See .

Please see a detailed comparison of Feast vs. Tecton . For another comparison, please see .

Feast is designed to work at scale and support low latency online serving. See our for details.

Feast's implementation of online stores serializes features into Feast protocol buffers and supports list types (see )

One way to do this efficiently is to have a protobuf or string representation of

The list of supported offline and online stores can be found and , respectively. The indicates the stores for which we are planning to add support. Finally, our Provider abstraction is built to be extensible, so you can plug in your own implementations of offline and online stores. Please see more details about customizing Feast .

Please follow the instructions .

Using Redshift as a data source via Spectrum (), and then continuing with the guide. See a we did on this at our apply() meetup.

Please see the .

For more details on contributing to the Feast community, see and this .

Feast 0.10+ is much lighter weight and more extensible than Feast 0.9. It is designed to be simple to install and use. Please see this for more details.

Please see this . If you have any questions or suggestions, feel free to leave a comment on the document!

Feast Core and Feast Serving were both part of Feast Java. We plan to support Feast Serving. We will not support Feast Core; instead we will support our object store based registry. We will not support Feast Spark. For more details on what we plan on supporting, please see the .

GitHub issue
push based ingestion
stream processor
docs
RFC
documentation
here
here
benchmark blog post
reference
https://www.tensorflow.org/guide/sparse_tensor
here
here
roadmap
here
here
AWS tutorial
Running Feast with Snowflake/GCP/AWS
presentation
roadmap
here
here
document
document
roadmap
Slack
GitHub
pull request
quickstart
tutorials
data sources
offline store
feature views without entities