Domino’s feature store enables you to create, publish and share features to a global registry for others to discover and reuse. It leverages the Feast open-source feature store library with additional capabilities around ease of installation, feature cataloging, search and reuse. Feast is a code-first feature store, meaning that its source of truth for feature definitions is the entities described in Python files. It stores all the feature definition code in a Git repository.
-
As a project owner, you can enable the feature store in any of your projects.
-
As a project collaborator, you can add your credentials so that you can access the project’s feature store.
-
When the feature store is enabled and your credentials are entered, you can define and publish features.
-
Then, other Domino users can discover and reuse features.
-
The Feature Store Quickstart shows you how to materialize features from the offline store into the online store.
Note
| A Domino admin must enable and set up this feature globally before you can enable it in your project. |
Before you can use the feature store in a project, you must enable it. This mounts the feature store’s Git repository to the project for access by the project’s workspaces and executions. You must have valid credentials for that repository and the feature store’s offline data store.
-
Make sure you have added your Git credentials to Domino for the feature store’s Git repository.
-
In your project, go to Data > Feature Store and click Enable Feature Store.
-
Enter the credentials for the feature store’s configured offline store, depending on the data store type.
The credentials are stored as user-level environment variables:
Offline Data store Required credentials Environment variables Snowflake
-
username
-
password
-
FEAST_SNOWFLAKE_USER
-
FEAST_SNOWFLAKE_PASSWORD
Redshift
-
user
-
AWS access key ID
-
AWS secret access key
-
FEAST_REDSHIFT_USER
-
AWS_ACCESS_KEY_ID
-
AWS_SECRET_ACCESS_KEY
BigQuery
private key JSON
FEAST_BIGQUERY_KEY_JSON
Local files
N/A
N/A
Online Data store Required credentials Environment variables Snowflake
-
username
-
password
-
FEAST_SNOWFLAKE_ONLINE_USER
-
FEAST_SNOWFLAKE_ONLINE_PASSWORD
Redis
-
password
-
FEAST_REDIS_PASSWORD
DynamoDB
-
AWS access key ID
-
AWS secret access key
-
AWS_ACCESS_KEY_ID
-
AWS_SECRET_ACCESS_KEY
Datastore
private key JSON
FEAST_BIGQUERY_KEY_JSON
Bigtable
private key JSON
FEAST_BIGQUERY_KEY_JSON
SQLite
N/A
N/A
TipYou can view these environment variables at Account Settings > Environment variables. NoteOffline and online store credentials aren’t verified when you enter them. If credentials are incorrect, the publish feature views step will fail. To edit incorrect credentials, go to Account Settings > User environment variables, remove the incorrect variables, and add the user-level environment variables specified above with the correct credentials. -
-
Once enabled, the feature store is ready to use. You can view the mounted feature store Git repository in your project at Files > Git Repositories. You can also select which of your Git credentials to use with the Git repository.
If you are a collaborator on a project that already has the feature store enabled but your offline store credentials are not yet added, you can add them as follows:
-
In the project, to go Data > Feature Store.
-
Click Add Credentials.
You must also register your Git credentials with the feature store Git repository as follows:
-
Go to Files > Git repositories.
-
Select the Git credentials from the dropdown menu.