Skip to content

[Integration]: Valkey Vector Store #12457

@daric93

Description

@daric93

Is there an existing integration?

  • I have searched the existing integrations.

Use Case

Valkey is a high-performance, open-source in-memory data store (community-driven fork of Redis) that includes a native Search module with vector similarity search capabilities. Adding Valkey as a vector store integration would allow MindsDB users to:

  • Store and query embeddings directly in Valkey for RAG (Retrieval-Augmented Generation) pipelines
  • Perform KNN vector similarity search using COSINE, L2, or Inner Product distance metrics
  • Leverage Valkey's sub-millisecond latency for real-time semantic search workloads
  • Use metadata filtering alongside vector search for hybrid queries
  • Build AI applications backed by a fully open-source vector database with no licensing restrictions

This is particularly valuable for users who already run Valkey/Redis infrastructure and want to avoid adding a separate vector DB to their stack.

Motivation

Imagine a MindsDB user who wants to build a semantic search system. With a Valkey vector store integration, they could:

-- Connect to their Valkey instance
CREATE DATABASE valkey_store
WITH ENGINE = 'valkey',
PARAMETERS = {
  "host": "localhost",
  "port": 6379
};

-- Store embeddings from a model
CREATE TABLE valkey_store.my_embeddings (
  SELECT embeddings, content, metadata FROM model_output
);

-- Query by vector similarity
SELECT * FROM valkey_store.my_embeddings
WHERE search_vector = (SELECT embeddings FROM model WHERE text = 'search query')
LIMIT 10;

The integration would implement the VectorStoreHandler interface, supporting full CRUD operations (create_table, insert, select, delete, drop_table) and KNN search via Valkey's FT.CREATE / FT.SEARCH commands.

Implementation

The handler would use the valkey-glide client library (official Valkey client) and support:

  • Connection parameters: host, port, password, SSL/TLS options
  • Index configuration: vector dimensions, distance metric (COSINE/L2/IP), index algorithm (FLAT/HNSW)
  • Operations: Full VectorStoreHandler interface — create_table, insert, select (with KNN), delete, drop_table, get_tables, get_columns
  • Filter expressions: Metadata-based filtering combined with vector search
  • Data storage: Hash-based document storage with JSON-serialized metadata fields

The handler would be registered as engine type 'valkey' in the MindsDB plugin system.

Anything else?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions