Featureform supports Redis as an Inference Store and a Vector DB

Implementation

In the inference store configuration, one Redis hash is created per feature. It maps entities to their feature value. A metadata hash is also stored in Redis that allows Redis to maintain its own state. This is used in conjunction with Featureform’s Etcd service to achieve consistency between the two.

Configuration

First we have to add a declarative Redis configuration in Python. In the following example, only name is required, but the other parameters are available.

redis_config.py
import featureform as ff

ff.register_redis(
    name = "redis",
    description = "Example inference store",
    team = "Featureform",
    host = "0.0.0.0",
    port = 6379,
    password = "",
    db = 0,
)

client.apply()

Once our config file is complete, we can apply it to our Featureform deployment. Afterwards we can set it as the Inference Store or Vector DB when defining a feature or embedding respectively.

We can re-verify that the provider is created by checking the Providers tab of the Feature Registry or via the CLI.