← all repositories
matrixorigin/matrixone

A database that commits, branches, and rolls back like Git

MatrixOne fuses HTAP, vector search, and version control into one MySQL-compatible engine so you can stop duct-taping four databases together.

1.8k stars Go RAG · SearchData Tooling
matrixone
Velocity · 7d
+1.0
★ / day
Trend
steady
star history

What it does MatrixOne is a single Go-based database that runs OLTP, OLAP, full-text search, and vector search under one roof. It speaks MySQL wire protocol, so existing ORMs and tools plug in without rewrites. The pitch is simple: one system instead of the usual MySQL → ClickHouse → Elasticsearch → Pinecone pipeline, with no ETL jobs or data lag.

The interesting bit The standout feature is “Git for Data” — zero-copy snapshots, time-travel queries, branching, and instant rollback built into the storage engine. The design is backed by an arXiv paper, and in practice it means you can snapshot a database in milliseconds, test a migration on a branch, and merge or discard it. For AI workloads, vector indexes (IVF and HNSW) and full-text search are native, not bolted-on sidecars.

Key highlights

  • MySQL-compatible wire protocol; drop-in replacement for existing apps
  • Built-in vector search with IVF and HNSW indexes, plus boolean/natural full-text search
  • Git-style versioning: snapshots, branches, time travel, and rollback
  • Cloud-native architecture with storage-compute separation and Kubernetes support
  • Python SDK with SQLAlchemy-style ORM for vector and fulltext operations

Caveats

  • The README claims “zero storage explosion” for snapshots, but doesn’t quantify deduplication ratios or branch limits
  • “Production-ready” is stated, yet the project carries a modest ~1,800 stars; enterprise battle scars aren’t documented in the sources

Verdict Worth a look if you’re building RAG or agent apps and tired of syncing data across a half-dozen stores. Skip it if you need a battle-tested, narrowly specialized OLAP or vector database with deep ecosystem maturity.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.