Dolt and DoltLite are both version-controlled databases using Prolly Trees and content-addressed chunk stores, but their storage engines are completely independent implementations. Dolt is written in Go, descended from Noms, runs as a server with a directory-based multi-file layout, uses SHA-512 hashing, Snappy/zStandard compression, and has generational online GC. DoltLite is written in C, grafted under SQLite's B-tree interface, lives in a single file, uses BLAKE3 hashing, no compression, and stop-the-world GC via VACUUM. They share the same Prolly Tree math, chunk boundary algorithm (xxHash32 with Weibull distribution targeting 4KB), and 20-byte content addresses — but differ in language, lineage, file layout, concurrency model, compression, and maturity. Dolt is production-stable since 2023; DoltLite is alpha with a rapidly evolving storage format.

10m read timeFrom dolthub.com
Post cover image
Table of contents
Language #Lineage #Base Data Structure #Chunk Boundaries #Content Addresses #Chunk Compression #On Disk #Durability #Concurrency #Garbage Collection #Remotes #Maturity #Same Blueprint, Different Buildings #
413 Impressions