Roadmap
Strategy: Close SQL gaps → Speak Postgres fluently → Make it fast → Harden for enterprise → Scale out → Own the niche.
TensorDB is under active development. This roadmap is driven by a comprehensive enterprise evaluation that tested TensorDB against Oracle, PostgreSQL, Redis, and SQLite across 50 functional tests, 3 benchmark suites, and 800+ unit tests.
Current Status: v0.46+
TensorDB is a fully functional bitemporal ledger database with all 6 roadmap phases shipped:
Core Engine: LSM storage (WAL + memtable + SSTables + L0-L6 compaction), fast write path (1.9 µs / 384K writes/s), direct read path (263 ns / 3.8M reads/s), MVCC snapshot isolation, epoch-based PITR.
SQL Engine: DDL, DML, JOINs (inner/left/right/cross/full outer), CTEs (including recursive), window functions, set operations (UNION/INTERSECT/EXCEPT), aggregate functions, CASE expressions, LIKE/ILIKE, ORDER BY + LIMIT + OFFSET, subqueries, upsert (ON CONFLICT), prepared statements, cost-based planner with index scan, EXPLAIN ANALYZE.
Multi-Model: Full-text search (BM25, HIGHLIGHT), vector search (HNSW, IVF-PQ, cosine/euclidean/dot, temporal vectors, hybrid search), time-series (TIME_BUCKET, gap-fill, interpolation), event sourcing with aggregate projections, CDC with durable cursors, graph queries (BFS/DFS).
Security: Authentication, RBAC, row-level security (CREATE POLICY), audit log with tamper detection (hash chaining), GDPR erasure (FORGET KEY), AES-256-GCM encryption at rest, encryption key rotation, column-level encryption, TLS/mTLS.
Operations: 8 SHOW diagnostic commands, VACUUM, VERIFY BACKUP, SUGGEST INDEX, plan guides, compaction scheduling, WAL management, per-query resource limits, structured error codes (T1xxx-T6xxx) with “Did you mean?” suggestions.
Distributed: Raft consensus, object store backend, WAL replication, C FFI.
Interfaces: Rust API, PostgreSQL wire protocol (pgwire v3), CLI, Python (PyO3), Node.js (napi-rs).
What’s Already Shipped
These items appeared in previous roadmaps and are now complete:
| Feature | Version | Status |
|---|---|---|
| Secondary indexes (B-tree, composite, unique) | v0.28 | Shipped |
| DECIMAL / Numeric type | v0.30 | Shipped |
| AES-256-GCM encryption at rest | v0.30 | Shipped |
| Backup & restore (full + incremental + VERIFY) | v0.30 | Shipped |
| Index scan execution (point, range, secondary) | v0.28 | Shipped |
| CREATE VIEW | v0.30 | Shipped |
| Disk-based vector indexes (HNSW + IVF-PQ) | v0.30 | Shipped |
| Temporal vector search | v0.30 | Shipped |
| Hybrid search (RRF) | v0.30 | Shipped |
| Columnar storage, zone maps, dictionary encoding | v0.20 | Shipped |
| Audit log, RLS, GDPR erasure | v0.32 | Shipped |
| Structured error codes + suggestions | v0.32 | Shipped |
| Online DDL (DROP/RENAME COLUMN) | v0.32 | Shipped |
| Plan guides, VACUUM, compaction scheduling | v0.32 | Shipped |
| Multi-value INSERT, OFFSET, IF EXISTS, subqueries | v0.33 | Shipped |
| FULL OUTER JOIN, upsert, RETURNING on UPDATE/DELETE | v0.33 | Shipped |
| Persistent transaction sessions | v0.33 | Shipped |
| Recursive CTEs, foreign keys, materialized views | v0.34–v0.35 | Shipped |
| Generated columns, triggers, UDFs | v0.34–v0.35 | Shipped |
| Native date/time types, JSON/JSONB operations | v0.34–v0.35 | Shipped |
| Query parallelism, batch writes, external merge sort | v0.36–v0.38 | Shipped |
| Expression compilation, Zstd compression | v0.36–v0.38 | Shipped |
| TLS/mTLS, encryption key rotation | v0.39–v0.41 | Shipped |
| Column-level encryption, audit log tamper detection | v0.39–v0.41 | Shipped |
| Raft consensus, object store backend | v0.42–v0.45 | Shipped |
| WAL replication, C FFI | v0.42–v0.45 | Shipped |
| Learned cost model, anomaly detection, graph queries | v0.46+ | Shipped |
Performance Targets
Tracked benchmarks with current measurements and targets.
| Benchmark | Current (v0.32) | Target (v0.36) | Target (v1.0) |
|---|---|---|---|
| Point read | 263 ns | 200 ns | 150 ns |
| Point write (fast path) | 2.6 µs | 1.5 µs | 1.0 µs |
| Batch write (100 rows) | 1,610 µs | 400 µs | 200 µs |
| SQL SELECT 100 rows | 51 µs | 30 µs | 15 µs |
| Prefix scan 1000 keys | 247 µs | 150 µs | 80 µs |
| Mixed 80r/20w | 17.3 µs | 8 µs | 4 µs |
v1.0 Criteria
TensorDB v1.0 will be tagged when all of the following are met:
Secondary indexes— Done (B-tree, composite, unique, planner integration)DECIMAL type— Done (exact arithmetic for financial workloads)Encryption at rest— Done (AES-256-GCM)Backup & restore— Done (full + incremental + VERIFY BACKUP)SQL completeness— Done (multi-value INSERT, subqueries, OFFSET, IF EXISTS, upsert, persistent sessions)TLS— Done (TLS/mTLS for pgwire)Encryption key rotation— Done (online rotation with versioned keys)- Stable on-disk format — Forward-compatible SSTable and WAL format with migration tooling
- Jepsen testing — Formal verification of consistency under network partitions
- TPC-H benchmarks — Published results on standard analytical benchmarks
- YCSB benchmarks — Published results on standard OLTP benchmarks
- Published packages — Stable releases on crates.io, PyPI, and npm
Version History
| Version | Milestone |
|---|---|
| v0.46+ | Learned cost model, anomaly detection, graph queries |
| v0.42–v0.45 | Raft consensus, object store backend, WAL replication, C FFI |
| v0.39–v0.41 | TLS/mTLS, encryption key rotation, column-level encryption, audit tamper detection |
| v0.36–v0.38 | Query parallelism, batch writes, external merge sort, expression compilation, Zstd compression |
| v0.34–v0.35 | Recursive CTEs, foreign keys, materialized views, triggers, UDFs, date/time, JSON/JSONB |
| v0.33 | SQL completeness (multi-value INSERT, subqueries, OFFSET, IF EXISTS, upsert, sessions) |
| v0.32 | Structured errors, security & audit (RLS, audit log, GDPR), operational maturity |
| v0.31 | Observability & diagnostics (8 SHOW commands, /health endpoint, cache tracking) |
| v0.30 | Vector search (HNSW, IVF-PQ, temporal, hybrid), horizontal scaling, Python/Node.js |
| v0.28 | Fast write engine (1.9 µs, lock-free path), secondary indexes, DECIMAL type |
| v0.27 | Raft consensus, WAL shipping, scatter-gather distributed queries |
| v0.26 | Schema evolution with migrations |
| v0.25 | Monitoring, metrics, slow query log |
| v0.24 | Connection pooling with idle eviction |
| v0.23 | Authentication and RBAC |
| v0.22 | Event sourcing with aggregate projections |
| v0.21 | Change data capture with consumer groups |
| v0.20 | Columnar storage, zone maps, dictionary encoding |
| v0.19 | Vectorized execution engine (1024-row batches) |
| v0.18 | Parquet, CSV, JSON data interchange |
| v0.17 | SQL completeness (CASE, CAST, UNION, string/math/date functions) |
| v0.15 | PostgreSQL wire protocol (pgwire v3) |
| v0.14 | Time-series SQL (TIME_BUCKET, gap-fill, interpolation) |
| v0.13 | Full-text search with BM25 ranking |
| v0.11 | Temporal SQL:2011 compliance (SYSTEM_TIME, APPLICATION_TIME) |
| v0.10 | Cost-based query planner, EXPLAIN ANALYZE |
| v0.9 | LZ4 compression, adaptive compression |
| v0.1.0 | Initial release: bitemporal ledger, LSM storage, SQL engine |
See the full changelog in the GitHub repository.