Arvenza DB
Find by meaning, by words and by connection, in one query.
Arvenza DB is an AI-native document database. Vector search, full-text search and graph traversal run over the same records, and one query can combine them into a single ranking. Its text search understands Arabic as well as English, however a word is written.
One binary. Encrypted at rest, replicated across three or five nodes, and usable from any language over HTTP.
Fast, measured with the accuracy it bought
A search can be made as fast as you like by returning worse answers, so every figure below is quoted with the recall it was measured at.
Measured on 15 September 2026 on one 32-core server, with 128-dimensional vectors from a clustered corpus and recall checked against an exact search. The multi-hop result uses a public benchmark of 1,000 questions over 6,119 passages, with a two-hop graph walk, at a median of 5.4 ms a question. These figures are a baseline for comparison, not a promise for every machine.
Every kind of retrieval, in one engine
Each document is stored once. Every index is built from the same records, and one identifier addresses a document in all of them.
Search
- Vector search
- Graph, inverted-file, disk-resident and exact indexes over ten element types, from 32-bit floats down to single bits, with L2, inner-product, cosine and Hamming distance.
- Compression without guesswork
- Scalar, product and binary quantisation shrink the index. An exact re-rank on the original vectors decides the final order.
- Full-text search
- BM25 ranking with phrases, required and excluded terms, boosts and highlighting. Text indexes can live on disk, keeping only a small block index in memory.
- Arabic, properly
- Diacritics, tatweel and letter variants are normalised and Arabic-Indic digits folded, so a word matches however it was typed. Arabic and English stemming included.
- Sparse and multi-vector
- Learned sparse vectors with exact pruning, and per-token late-interaction scoring, either as an index or as a re-ranking step.
- Hybrid in one query
- Reciprocal-rank, weighted and max-score fusion. Filters run inside every retriever, so a narrow filter still returns a full page of results.
Connections
- Graph traversal
- Walk relationships stored as documents for several hops in one call, choosing which edges may be crossed. The walk stays on the server.
- Nested documents
- Schema-checked JSON with nested fields, upserts by your own keys, conditional updates, facets and cursor paging.
Operations
- Durable by default
- Writes reach the disk before they are acknowledged. Online backups produce a database you can open, and restores can stop at a chosen moment.
- Replicated
- Clusters of three or five nodes, each serving reads and writes, with automatic failover.
- Secure
- Encryption at rest, TLS and mutual TLS, API keys scoped by role and collection, OIDC sign-in and an audit log.
- Quick to restart
- Index checkpoints are read back instead of rebuilt: 60,000 vectors reopen in 0.11 seconds rather than 11.4.
- A cache that can't go stale
- Cached results carry the version of the data they came from, so an answer stops being served the moment it stops being true.
Access
- HTTP and JSON
- A plain JSON API you can call from any language or from the command line, with no client library required.
- For AI agents
- A built-in MCP server lets agents search collections and walk the graph directly.
- Web console
- Browse collections, try text, vector and hybrid searches, explore the graph, and work through runnable examples. The console never stores credentials.
Three kinds of search in one request
This request searches the text index for documents that mention "database" but not "slow", searches the vector index by meaning, keeps only Arabic documents, and fuses the two rankings into one.
The second request starts from one service and walks two hops out to everything connected to it, in a single round trip.
- Filters are applied inside each retriever, not afterwards.
- Late-interaction re-ranking can be added to the same request.
- Every search can come back with the matching text highlighted.
{
"size": 10,
"text": [{ "index": "text", "query": "+database -slow" }],
"vector": [{ "index": "semantic", "query": [ … ], "ef_search": 64 }],
"filter": { "op": "eq", "field": "lang", "value": "ar" },
"fusion": { "method": "rrf", "rrf_k": 60 }
}
{ "seeds": ["svc-checkout"], "hops": 2 }
Simple to run, inside your walls
One binary
The server, shell, backup, restore and MCP server are one program with one configuration file. It can also be embedded directly in a native application.
Container or service
Run it as a container image or as a hardened system service, alone or as a replicated cluster.
Nothing to get wrong on restore
A backup is a directory that is itself a database. Archived logs let you restore to a chosen moment rather than to the last backup.
Works with the rest of Arvenza
See it on your own documents
A proof of concept on a sample of your content shows what fused retrieval changes.
Arrange a Conversation