📈 GH Trending Explorer 🎲 Surprise me

← all repos

kividbio / kividb

git clone https://github.com/kividbio/kividb.git v1.1.0 · 4d ago

A fast, multi-threaded Redis® and Valkey alternative written in Rust: drop-in compatible, with full-text and vector search built in

—
stars, 24h
+325
stars, 7 days · #178
+325
stars, 30 days · #812
325
★ total · +325% this week
10
forks · 22 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageRust
LicenseAGPL-3.0
Created2026-10-16 (4d ago)
Last pushtoday
Watchers5
OwnerOrganization

GitHub topics

Links

README excerpt
# KiviDB
**KiviDB** is a fast, multi-threaded alternative to Redis® and Valkey, written in Rust. It
speaks the Redis protocol (RESP2 and RESP3), so existing Redis clients, `redis-cli` and
libraries work unchanged, and it has full-text and vector search built in. It runs every
core on a sharded in-memory key-value design, and persists to snapshots and an optional
append-only file.
On the same 32 cores, KiviDB serves **21 million pipelined GETs per second: about 9× Redis 8
and 2.3× Dragonfly**, with under half Dragonfly's p99 latency (benchmarks).
 [code] 
KiviDB listens on **6380**, not Redis's 6379, so the two can run side by side; point your
client at that port, or pass `--port 6379`.
- **Protocol**: Redis-compatible command surface (see COMMANDS.md for the supported commands)
- **Search and vectors**: Redis Stack–style `FT.*` commands for full-text, tag, numeric and vector (FLAT / HNSW) search
- **Lua scripting**: optional Cargo feature. `EVAL`, `SCRIPT`, `FUNCTION`, `FCALL` and related commands are available in builds with `--features lua` (see Scripting commands (Lua))
- **TLS**: optional Cargo feature (`--features tls`)
- **Default listen address**: `0.0.0.0:6380`, with protected mode on
- **License**: GNU Affero General Public License v3 (AGPL-3.0-only), open source; using KiviDB does not put your application under the AGPL; see License
Repository: github.com/kividbio/kividb · Website: kividb.io
### How it compares
| | KiviDB | Redis 8 | Valkey 8 | Dragonfly | KeyDB |
|---|---|---|---|---|---|
| License | AGPL-3.0 | RSALv2, SSPLv1 or AGPL-3.0 | BSD-3-Clause | BSL 1.1 | BSD-3-Clause |
| Language | Rust | C | C | C++ | C++ |
| Commands run on | every core (sharded) | one thread (I/O threads) | one thread (I/O threads) | every core (shared-nothing) | several threads |
| Full-text and vector search (`FT.*`) | built in | built in (Query Engine) | separate module | built in | no |
| Lua scripting | `lua` build | yes | yes | yes | yes |
As of October 2026. Something out of date or wrong? Please open an issue.
## Performance
*Throughput, latency, vector search and vector ingest. Click for the full-resolution video.*
All figures below are from one session in October 2026 on AWS Graviton3 bare metal: the
server on a `c7gn.metal` (64 vCPU), confined to 32 cores, and the load generator on a
second `c7gn.metal` in the same placement group. Each engine ran alone on the server,
one after another.
### Key-value
memtier_benchmark through kivi-benchmark's `run-matrix.sh`: 10 million keys, 100-byte
values, 30 s a scenario, mean of two rounds; 300 connections pipelined, 1,200 without
pipelining.
| ops/s | KiviDB 1.1.0 | Dragonfly 2.0.2 | Redis 8.10 | Redis Cluster (32 shards) |
|---|------:|------:|------:|------:|
| GET, pipeline 16 | **21.2M** | 9.1M | 2.4M | 4.7M |
| SET, pipeline 16 | **19.2M** | 8.5M | 2.0M | 4.7M |
| GET, no pipelining | 3.07M | **3.35M** | 1.32M | 1.46M |
| SET, no pipelining | 3.12M | **3.38M** | 1.54M | 1.46M |
| p99 latency, GET / SE