Open substrate · BSL 1.1

stplr.

A self-managing, horizontally-scaling distributed key/value + set-ops store.

Rendezvous-hashed · replicated · zero-touch · durable.

The problem

Durable distributed stores are powerful — and a chore to run.

  • Cassandra / Scylla / etcd / FoundationDB: real durability + scale, but JVMs, multi-component clusters, snitches, repair, cluster files, tuning.
  • Redis / Memcached: trivial to run, but in-memory — durability and horizontal scale are bolt-ons.
  • The empty quadrant: durable + distributed + low operational burden.

What it is

One binary. Composable roles. No babysitting.

shard owns + serves a partition; the horizontal-scale unit, replicated R-ways.

coordinator routes, drives rebalancing + membership, holds the leader lease.

api stateless endpoint; run N behind a load balancer.

# one process, any combination of roles
stplrd --store lmdb --path /var/lib/stplr \
       --bind 0.0.0.0:8100 --bin-bind 0.0.0.0:8101

Rust + LMDB. The disk is the database. Starts in ~2s, no config.

Data model

Generic KV + server-side set ops.

POST /write   {coll,key,obj}        # object store
GET  /object?coll=&key=
POST /setAdd  {coll,key,member}     # posting-list sets
POST /setRemove · GET set members
# evaluated ON the shard, not pulled to the client

Plus the KV semantics users expect:

ttlMs per-key expiry   /cas compare-and-set   /incr atomic counters

Opaque JSON values — wire-identical across the memory + durable backends.

Self-managing

Zero-touch operations.

  • Online rebalance on membership change — no manual reshard, no downtime.
  • Graceful drain, auto-heal, crash-resume of interrupted migrations.
  • Live membership — add a node, it joins the rendezvous ring and pulls its share.

Rendezvous (HRW) hashing over a fixed bucket ring: deterministic placement, minimal data movement when the cluster changes.

High availability

HA the whole way down.

Data plane

Top-R replication (R≥2), auto-heal, crash-resume, rack/zone-aware placement.

Coordinator

TTL-lease leader election — run replicas, one drives. Fencing token.

Writes

Direct-to-shard client — the coordinator is off the data path.

Ingest

Durable write-ahead queue — crash-safe, at-least-once.

Benchmarked · durable tier

Throughput where durability usually costs it.

204kdurable reads / sec 129kdurable writes / sec ~2sone binary → first query

Per-shard, 4-vCPU node, LMDB-durable. Led the open durable field (Cassandra, Scylla, etcd, TiKV, FoundationDB) on read and write — at the lowest ops burden. Scale out by adding shards, not cores.

Production-ready

The boxes you check before prod.

  • ✓ Per-key TTL / expiry
  • ✓ Atomic CAS + counters
  • ✓ Bearer-token auth
  • ✓ Prometheus /metrics
  • ✓ Scheduled backups + verify
  • ✓ Replayable change feed
  • ✓ Rack/zone-aware replicas
  • ✓ Operator (Helm) for OpenShift/K8s

Scope — by design

Two things stplr is not.

Not a consensus coordinator

An HA data plane, not a Raft/Paxos config store. Strong per-shard (atomic CAS, counters, single-shard txns); the cluster keeps serving through node loss and partitions instead of stalling for a quorum. Cross-DC is async, last-writer-wins. Need a strict lock service for a handful of keys? That's etcd — and stplr runs leader election on top.

Not a vector database

Vectors find what's similar. stplr does the half they can't: exact, structured correlation — membership, AND/OR/NOT set algebra, deterministic joins with auditable provenance. The precise complement to similarity search — and what the Stitch engine is built on. Pair them; don't swap one for the other.

Open core

stplr is the substrate. Stitch is the engine.

  • stplr (BSL 1.1 → Apache 2.0 on a clock): the open, generic data plane — KV, sets, replication, zero-touch ops.
  • Stitch (proprietary, US Patent 11,151,112): schema-aware multi-table correlation, AND/OR/NOT set logic at scale, metering + SSO/RBAC/audit — runs on the same cluster.

Clean line: generic set-ops are FOSS; correlation is enterprise. The patent never enters the open tree.

Roadmap

What's next.

streaming + point-in-time restore log retention & compaction in-process TLS aggregate multi-load-gen benchmark

Recently shipped: per-key TTL · atomic CAS + counters · bearer auth · direct-to-shard writes · coordinator leader election · durable ingest queue · rack/zone-aware replicas · Prometheus /metrics · scheduled backups.

Meet the mascot

Vypr — the stplr mascot

Vypr — the staple-fanged viper.

Coiled, fast, and unreasonably good at holding your data together.

stplr.

Durable. Distributed. Zero-touch.

stplr.org · github.com/vondrakk/stplr · Stitch at joinyourdata.com

stplr — The Von Drakk Corporation · BSL 1.1