For the complete documentation index, see llms.txt. This page is also available as Markdown.

ScyllaDB

Description

ScyllaDB is a distributed real-time NoSQL database with vector search support. This integration uses the native scylla-driver Python driver for optimised performance and supports materializing feature values into a ScyllaDB Cloud cluster for real-time online feature serving.

Getting started

Install Feast with the scylladb extra, which pulls in scylla-driver automatically:

pip install feast[scylladb]

Example (ScyllaDB)

feature_store.yaml
project: scylla_feature_repo
registry: data/registry.db
provider: local
online_store:
    type: scylladb
    hosts:
        - 172.17.0.2
    keyspace: feast
    username: scylla
    password: password

Example (ScyllaDB Cloud)

Configuration options

Parameter
Type
Default
Description

hosts

list[str]

(required)

Contact-point host addresses.

port

int

9042

CQL port.

keyspace

str

feast_keyspace

Target ScyllaDB keyspace.

username

str

None

Auth username.

password

str

None

Auth password.

local_dc

str

None

Local datacenter name for DC-aware load balancing.

request_timeout

float

None

Driver request timeout in seconds.

read_concurrency

int

100

concurrency argument passed to the driver's execute_concurrent_with_args for reads. Controls how many CQL statements are in-flight at once.

write_concurrency

int

100

concurrency argument passed to the driver's execute_concurrent_with_args for writes. Controls how many CQL statements are in-flight at once.

vector_similarity_function

str

COSINE

Default similarity function for vector indexes. Supported: COSINE, DOT_PRODUCT, EUCLIDEAN. Can be overridden per-feature via the similarity_function Field tag.

Storage specifications can be found at docs/specs/online_store_format.md.

ScyllaDB Cloud supports approximate nearest-neighbour (ANN) vector search. To enable it for a feature view, tag the embedding Field with vector_index=true and specify the number of dimensions:

When feast apply runs, the store automatically creates the necessary tables and HNSW ANN index for any feature view with vector-tagged fields.

To query the top-k most similar documents:

Metadata filtering (OpenAI-compatible)

ScyllaDB supports vector similarity search, but OpenAI-style metadata filtering is not supported yet. Passing filters to retrieve_online_documents_v2 or the OpenAI-compatible search endpoint raises NotImplementedError.

For filtered vector search today, use one of the backends that implement metadata filters (for example Milvus, Elasticsearch, Postgres, SQLite, or MongoDB). See Alpha Vector Database.

Functionality Matrix

The set of functionality supported by online stores is described in detail here. Below is a matrix indicating which functionality is supported by the ScyllaDB online store.

ScyllaDB

write feature values to the online store

yes

read feature values from the online store

yes

update infrastructure (e.g. tables) in the online store

yes

teardown infrastructure (e.g. tables) in the online store

yes

generate a plan of infrastructure changes

no

support for on-demand transforms

yes

readable by Python SDK

yes

readable by Java

no

readable by Go

no

support for entityless feature views

yes

support for concurrent writing to the same key

no

support for ttl (time to live) at retrieval

yes

support for deleting expired data

yes

collocated by feature view

yes

collocated by feature service

no

collocated by entity key

no

To compare this set of functionality against other online stores, please see the full functionality matrix.

Resources

Last updated

Was this helpful?