OpenViSTAI · Agents · Blockchain · Crypto
Menu
RAG & Knowledge Systems

Derainedb

DeraineDB is an embedded vector search engine for local RAG and edge applications. Its Zig core stores vectors in memory-mapped files and performs HNSW search, while Go provides network orchestration; 64-bit metadata masks support categorical filtering.

Independent OpenViST project profile, based on linked sources.

Derainedb — OpenViST project profile in RAG & Knowledge Systems.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use DeraineDB when an application needs an embedded or self-hosted vector retrieval layer, especially for local RAG or edge workloads where metadata filtering is part of the search.

Who it is for

  • Developers adding vector retrieval to local RAG applications.
  • Teams building edge-device semantic search or applications that need embedded vector storage.
  • Developers using the documented Python, Go, Rust or JavaScript/TypeScript clients.

Documented uses

  • Store embeddings for later retrieval.
  • Search for nearest vectors using HNSW.
  • Filter vector-search results using a 64-bit metadata mask.
  • Provide a self-hosted retrieval layer for local RAG or edge applications.
Before you choose

Requirements & limits

The repository declares an Apache-2.0 license. The README documents Docker deployment and client SDKs for Python, Go, Rust and JavaScript/TypeScript.

  • DeraineDB is a retrieval and storage component; the Python example uses Sentence Transformers separately to produce embeddings.
  • The documented Docker setup maps ports 50051 and 9090 and mounts a local directory for data.
  • Clients must use the server's API key; setting it explicitly avoids the server generating a different key after a restart.
  • The README reports benchmarks for a 1,000-vector, 1536-dimension stress test; these are project-reported figures.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Start DeraineDB with Docker

Launch the documented self-hosted server with persistent local data and a stable API key.

Before you start

  • Docker
  • A local data directory to mount
  • An API key value to use for the server and its clients

Steps

  1. Run the README's Docker command using image deraine-db:v2.0-stable, mapping ports 50051 and 9090 and mounting $(pwd)/data at /app/data.

  2. Set DERAINE_DB_API_KEY to the chosen key in the container environment.

  3. Configure clients to send the same API key when connecting to the server.

Expected outcome

The documented command starts the DeraineDB container with a mounted data directory and client-matched API key.

Guide limitations

  • If the key is omitted, the server generates a new random key at each start and prints it once to the logs.
Source-based practical guide

Write and retrieve a vector with the Python example

Store an embedding and search for a nearest match using a metadata filter.

Before you start

  • A running DeraineDB server
  • The documented Python SDK and Sentence Transformers
  • A client API key matching DERAINE_DB_API_KEY
  • A vector formatted for the example's 1536 dimensions

Steps

  1. Create a SentenceTransformer embedder using all-MiniLM-L6-v2 and connect with DeraineClient to the server on port 50051.

  2. Encode the example text and pad its 384-dimensional embedding to 1536 dimensions as shown.

  3. Write the vector with an ID and metadata mask 0x01.

  4. Encode a query, apply the same dimension padding, and call search with k=1 and filter mask 0x01.

Expected outcome

The documented example stores an embedding and requests the closest result matching the metadata mask.

Guide limitations

  • The README demonstrates one padded 1536-dimensional workflow; it does not document a general embedding-generation or dimension-conversion process.
COMPARE OPTIONS

Compare options for Vector search

These projects document a common task and share a project role. This is a source-based comparison, not an execution benchmark or a guarantee of interchangeability.

ProjectDocumented purposePlatformAccess and requirements
DerainedbStore embeddings for later retrieval.Self-hosted, ServerThe repository declares an Apache-2.0 license. The README documents Docker deployment and client SDKs for Python, Go, Rust and JavaScript/TypeScript.
MettisIndex text documents through an HTTP endpoint.Linux, Self-hosted, Server
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
15 October 2026
Original website title
RikardoBonilla/DeraineDB · Official homepage title · retained in its source language