NodeDB
A multi-model database written in Rust that runs document, key-value, columnar, timeseries, spatial, vector, and array engines in a single binary over shared storage, with graph and full-text search as cross-engine overlays on any collection. Its graph overlay uses a CSR adjacency index with 13 built-in algorithms and a Cypher-subset MATCH syntax, and fuses graph traversal with vector search in a single query for GraphRAG. Speaks SQL over a native MessagePack protocol and the PostgreSQL wire protocol, alongside HTTP/REST, WebSocket, RESP, and ILP.
- Overall rank
- #103
- First released
- April 2026
- License
- BUSL-1.1
- Built with
- Rust
Sources 9 references
Protocols PostgreSQL wire, HTTP/REST, WebSocket, Redis RESP, Native binary
Own docs confirm five vocabulary-matching wire protocols on distinct ports: pgwire (6432), HTTP/REST + WebSocket JSON-RPC (6480, plus a second WebSocket sync channel on 9090 for NodeDB-Lite/CRDT), RESP2 (6381), and a native MessagePack protocol (6433) with a proprietary versioned handshake (magic bytes, capability bitmask) that is not a re-use of any standard protocol, so it is 'Native binary'. Rejected pass_A's omission of the native protocol, which mistakenly claimed no matching vocabulary tag exists. ILP (InfluxDB line protocol) has no controlled-vocabulary match and is correctly omitted by both passes.
-
NodeDB speaks the PostgreSQL wire protocol on port 6432. Any tool that speaks Postgres works.
pgwire (PostgreSQL Protocol) - NodeDB · reviewed 2026-08-02 -
REST API on port 6480 for web clients and services.
HTTP API - NodeDB · reviewed 2026-08-02 -
JSON-RPC over WebSocket for SQL execution, live query delivery, and session management:
docs/real-time.md at main · NodeDB-Lab/nodedb · reviewed 2026-08-02 -
NodeDB speaks RESP2 for KV operations. Existing Redis clients work out of the box.
RESP (Redis Protocol) - NodeDB · reviewed 2026-08-02 -
Binary MessagePack over TCP (port 6433). Two message types:
Wire Protocol Specs - NodeDB · reviewed 2026-08-02
License BUSL-1.1
Confirms current value. This is an open-core split: the server binary and clustering/replication crates are BUSL-1.1 (converting to Apache-2.0 on 2030-05-01), while the engine libraries and NodeDB-Lite are Apache-2.0.
-
The server — [Business Source License 1.1](LICENSE).** Only four crates: `nodedb` (the server binary), `nodedb-bridge`, `nodedb-raft`, `nodedb-cluster` — the three-plane runtime and distribution layer.
NodeDB-Lab/nodedb README · reviewed 2026-08-02
Released 2026-04
Corrects current value (2026-03, which is the repo's creation date, not a release). The first tagged GitHub release, v0.0.0, was published 2026-04-12.
-
"tag_name":"v0.0.0","target_commitish":"main","name":"NodeDB 0.0.0","draft":false,"immutable":false,"prerelease":false,"created_at":"2026-04-12T02:36:02Z","updated_at":"2026-04-12T03:26:32Z","published_at":"2026-04-12T03:26:32Z"
NodeDB-Lab/nodedb releases (GitHub API) · reviewed 2026-08-02
Language Rust
Confirms current value. GitHub reports the repo as 99.9% Rust, and the project is built and installed via cargo.
-
"Rust":36403613,"Python":72927,"Shell":14836,"Dockerfile":3339
NodeDB-Lab/nodedb languages (GitHub API) · reviewed 2026-08-02 -
git clone https://github.com/NodeDB-Lab/nodedb.git cd nodedb cargo build --release cargo install cargo-nextest --locked # one-time cargo nextest run --all-features
NodeDB-Lab/nodedb README · reviewed 2026-08-02