Features

Embeddable

Use as a library in your Rust app with zero network overhead. No separate process needed.

SQL Engine

A full relational engine beside the document engine: joins, DDL, GROUP BY/HAVING, secondary indexes, stored procedures, EF Core & ADO.NET providers. Beats PostgreSQL 15 on the reference workload.

OxiMem — Redis-class KV

RESP wire (works with redis-cli), sorted sets, pub/sub with patterns, MULTI/EXEC/WATCH transactions, Lua scripting (EVAL), blocking queues, keyspace notifications, snapshots. 93–101% of Redis single-command throughput.

MQTT Broker

Built-in MQTT 3.1.1: wildcards (+/#), retained messages, QoS 1/2, Last Will, keepalive, auth — sharing pub/sub channels with the RESP side, so IoT devices and Redis clients see the same messages.

AMQP — RabbitMQ protocol

AMQP 0-9-1 work queues: competing consumers, direct/fanout/topic exchanges, prefetch, publisher confirms, durable queues that survive SIGKILL. pika, amqplib, RabbitMQ.Client and amqp091-go work unmodified; bridged to MQTT via amq.topic.

Time-Series

$ohlcv tick→candle aggregation, range/time window functions, $densify gap generation and $fill (locf/linear) — a gapless candlestick pipeline in one aggregation.

Observability

Prometheus /metrics out of the box, query explain from the real planner, slow-query profiler with TTL’d capture, per-command latency histograms.

Raft Clustering

Replication with persistent state, database-aware DDL replication, partition-tested (no split-brain, quorum-acked writes survive failover).

Client/Server

Run as a TCP server with SCRAM-SHA-256 auth, TLS, RBAC, and audit logging. Connect from any language.

JSON document queries

MongoDB-style operators ($eq, $gt, $in, $regex, $or, $elemMatch, $expr) plus an aggregation pipeline (JOINs via $lookup, GROUP BY via $group).

ACID Transactions

Multi-collection transactions with optimistic concurrency control. 3-phase commit with WAL durability.

Indexes

Single-field, composite, unique, text, and vector indexes. Index-only counts. Index-backed sort.

Aggregation Pipeline

$match, $group, $sort, $project, $lookup, $unwind, $addFields, $skip, $limit, $count.

Full-Text Search

TF-IDF ranked search. Indexes HTML, XML, JSON, PDF, DOCX, XLSX, and images (OCR).

Vector Search

HNSW index with cosine, euclidean, and dot product distance metrics.

Blob Storage

S3-style bucket/object API. Store files with metadata, content types, and ETags.

Encryption at Rest

AES-256-GCM authenticated encryption. Transparent at the storage layer.

Change Streams

Watch collections for insert/update/delete events in real-time. Resumable with replay buffer.

Stored Procedures

Define named multi-step operations with parameter substitution. Call them by name.

Compression

Zstd compression (level 3) at the storage layer. Transparent per-document compression.

Backup & Restore

Compressed full backups. Restore to any directory. All data, indexes, and metadata included.

Multi-Database

Create isolated databases within a single server. Switch context at runtime.

Scheduled Tasks

Background job scheduling with enable/disable control and configurable intervals.

WebAssembly

Run OxiDB entirely in the browser via WASM. No server needed — in-memory mode with full query and aggregation support. ~1.5 MB gzipped.

Raft Replication v0.34.0

Multi-node replication via openraft consensus. Persistent state (raft_meta.json + append-only raft_log.jsonl) survives container restarts. Quorum-based commits, automatic catch-up on rejoin, verified at 1M records under mid-stream failover.

Sharding (oxipool) v0.25.x

Two-tier oxipool router: top-level CRC32 hash on configurable shard keys (e.g. customer_id) → 256 virtual chunks → N shards. Per-shard pool fronts master + replicas with read/write split + TX pinning. Scatter-gather for cross-shard queries. Reference deployment: ShardReplicaRealWorldTest/.

Report Issue