dllb

A multi-model NoSQL database built from scratch in Rust: documents, graphs, full-text search and vector embeddings in one engine

Active RustredbTantivyHNSWElixir client 1 2486
dllb

is a multi-model NoSQL database engine written from scratch in Rust, natively supporting documents, graphs, full-text search and vector embeddings in a single unified keyspace, rather than stitching together separate databases for each model.

Storage is built on pure-Rust redb (ACID, MVCC, copy-on-write B-trees), full-text search on Tantivy (BM25 scoring), and vector similarity on an HNSW index; a single query can combine a graph traversal, a full-text match and a vector-similarity search. The runtime itself is structured as a joerl supervision tree, an Erlang/OTP-inspired actor model in Rust, giving stateful subsystems (storage, indexing) automatic crash recovery.

dllb is designed as a first-class store for AST and MetaAST code embeddings: each AST node is a document, structural relationships (call graphs, imports) are graph edges, and code embeddings are vectors, all queryable with a SurrealQL-inspired language. It reached its 1.0.0 GA release with stable APIs, and ships an Elixir client (the dllb package, from the dllb_ex repository) alongside the Rust server.