Dolt

★ New
assess
Database open-source Apache-2.0 open-source

What It Does

Dolt is a SQL database with git-style version control built in. You can fork, clone, branch, merge, push, and pull data just like a git repository, while querying it via a MySQL-compatible wire protocol. Every write is tracked in a commit graph, enabling efficient diffs between any two commits and three-way merges between branches. The commercial entity behind Dolt is DoltHub, which also provides a web-based collaboration platform for Dolt databases.

Dolt exposes version control operations as SQL system tables (for reads) and stored procedures (for writes), meaning existing MySQL clients and ORMs can interact with versioning features without special tooling. The project also has spin-offs: DoltgreSQL (PostgreSQL-compatible, beta quality) and DoltLite (SQLite-compatible, announced March 2026).

Key Features

  • Git semantics for SQL data: Branch, commit, merge, diff, push, pull on structured data
  • MySQL wire protocol compatibility: Drop-in replacement for MySQL in many scenarios; use existing clients, ORMs, and tools
  • Cell-level merge: Three-way merge at the individual cell level, not just row-level, reducing merge conflicts
  • Commit graph and audit trail: Every data change tracked with author, timestamp, and message
  • Embedded and server modes: Run in-process (embedded) or as a standalone MySQL-compatible server
  • DoltHub collaboration: Web UI for pull requests, code review of data changes, and hosting
  • Conflict resolution: Schema and data conflicts surfaced as queryable system tables
  • Replication: Push/pull between remotes, similar to git remotes

Use Cases

  • Data versioning and audit: Regulated industries needing complete data lineage and the ability to roll back to any point in time
  • Collaborative data editing: Multiple contributors editing shared datasets with branch/merge workflows and pull request review
  • AI/ML data pipelines: Version training datasets, track data drift, reproduce experiments from specific data snapshots
  • Embedded database for tools: Used by Beads (bd) as a version-controlled backend for AI agent issue tracking
  • Testing with data branches: Create branches for test data without affecting production, merge validated changes

Adoption Level Analysis

Small teams (<20 engineers): Fits for niche use cases where data versioning is the primary requirement. The embedded mode is lightweight. However, operational knowledge of both SQL and git semantics is required, which is a steeper learning curve than plain SQLite or PostgreSQL.

Medium orgs (20-200 engineers): Fits if data versioning is a core workflow requirement (e.g., ML teams, data collaboration). DoltHub provides hosting and collaboration UI. Performance overhead vs. PostgreSQL/MySQL is a real consideration for high-throughput workloads.

Enterprise (200+ engineers): Uncertain. DoltHub offers commercial hosting, but Dolt lacks the ecosystem maturity, tooling breadth, and battle-tested production track record of PostgreSQL or MySQL. The PostgreSQL-compatible variant (DoltgreSQL) is still in beta. No major enterprise adoption case studies found.

Alternatives

AlternativeKey DifferencePrefer when…
PostgreSQL + temporal tablesMature, massive ecosystem, append-only auditYou need audit trail but not branch/merge semantics
Git LFS + CSV/ParquetSimple file versioning, no SQLDatasets are files, not relational tables
LakeFSGit-like ops for data lakes (S3/GCS)Your data lives in object storage, not SQL
DVC (Data Version Control)ML-focused data/model versioningYou need experiment tracking alongside data versioning
SQLite + manual backupsZero complexity, widely supportedYou don’t need branching or collaboration

Evidence & Sources

Notes & Caveats

  • Performance gap: Dolt is reported to be approximately 26x slower than PostgreSQL/MySQL in some benchmark scenarios (GitHub issue #6536). The Dolt team has been closing this gap but it remains a concern for high-throughput workloads.
  • Server mode database dropping: Documented issue where migrating from embedded to server mode can cause databases to silently disappear from SHOW DATABASES despite existing on disk. Critical for production deployments.
  • MySQL-only wire protocol: The main Dolt only speaks MySQL protocol. PostgreSQL compatibility requires DoltgreSQL, which is still beta quality as of early 2026.
  • Niche adoption: Dolt solves a genuinely unique problem (version-controlled SQL) but the intersection of users who need both SQL and git semantics is small. Most teams needing data audit use temporal tables or append-only patterns.
  • Build complexity for embedded use: Embedding Dolt in Go applications requires CGO and C toolchain dependencies, which complicates cross-compilation and CI/CD.
  • DoltHub commercial model: The open-source database is Apache-2.0, but DoltHub (the collaboration platform) is commercial. Standard open-core model with associated vendor dependency risks.