Feature store

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.

Note
A Domino admin must enable and set up this feature globally before you can enable it in your project.

Enable the feature store in a 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.

  1. Make sure you have added your Git credentials to Domino for the feature store’s Git repository.

  2. In your project, go to Data > Feature Store and click Enable Feature Store.

  3. 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 storeRequired credentialsEnvironment 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 storeRequired credentialsEnvironment 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

    Tip
    You can view these environment variables at Account Settings > Environment variables.
    Note
    Offline 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.
  4. 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.

Add your credentials as a project collaborator

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:

  1. In the project, to go Data > Feature Store.

  2. Click Add Credentials.

You must also register your Git credentials with the feature store Git repository as follows:

  1. Go to Files > Git repositories.

  2. Select the Git credentials from the dropdown menu.