CockroachDB in Comparison

This page shows you how the key features of CockroachDB stack up against other databases. Hover over the features for their intended meanings.

CockroachDB
Database horizontal scale tooltip icon Manual Sharding Add on configuration Node based, automated read scale, limited write Node based, automated for both reads and writes Manual Sharding Add on configuration Node based, automated read scale, limited write Node based, automated for both reads and writes Node based, automated for both reads and writes
Database load balancing (internal) tooltip icon Manual - not part of database None and full copies across regions Even distribution to optimize storage Manual - not part of database None and full copies across regions Even distribution to optimize storage Detailed options to optimize storage, compute, and latency
Failover tooltip icon Manual - not part of database Automated for reads, limited for writes to one region Automated for reads, limited guarantees for writes Fully automated for both reads and writes Manual - not part of database Automated for reads, limited for writes to one region Automated for reads, limited guarantees for writes Fully automated for both reads and writes Fully automated for both reads and writes
Automated repair and RPO(Recovery Point Objective) tooltip icon Manual repair RPO ~1-60 mins Automated RPO ~1 -5 mins Manual & automated repair RPO <1 min "Automated repair RPO <10 sec" Manual repair RPO ~1-60 mins Automated RPO ~1 -5 mins Manual & automated repair RPO <1 min "Automated repair RPO <10 sec" Automated repair RPO = 0 sec
Distributed reads tooltip icon Manual - asynchronous Yes Manual - asynchronous Yes Yes
Distributed transactions tooltip icon No Lightweight transactions only Multi-document Yes No Lightweight transactions only Yes Yes
Database isolation levels tooltip icon Single region consistent default - Snapshot highest - Serializable Eventual consistent default - Read uncommitted highest - Snapshot read Eventual consistent - No transaction isolation guarantees Default - Snapshot highest - Serializable Single region consistent default - Snapshot highest - Serializable Eventual consistent default - Read uncommitted highest - Snapshot read Eventual consistent - No transaction isolation guarantees Default - Snapshot highest - Serializable Guaranteed consistent default - Serializable highest - Serializable
Potential data issues (default) tooltip icon Phantom reads, non-repeatable reads, write skew Dirty reads, phantom reads, non-repeatable reads, write skew Dirty reads, phantom reads, non-repeatable reads, write conflicts None Phantom reads, non-repeatable reads Phantom reads, non-repeatable reads, write skew Dirty reads, phantom reads, non-repeatable reads, write skew Dirty reads, phantom reads, non-repeatable reads, write conflicts None Phantom reads, non-repeatable reads None
SQL tooltip icon Yes No Yes - with limitations Yes No Yes - with limitations Yes - wire compatible with PostgreSQL
Database schema change tooltip icon Yes Offline Online, Active and Dynamic Yes Offline Online, Active, and Dynamic Online, Active, and Dynamic
Cost based optimization tooltip icon Yes No ? No Yes No ? No Yes
Data Geo-partitioning tooltip icon No Yes, object level Yes No No Yes, object level Yes No Yes, row level
Upgrade method tooltip icon Offline Online, rolling Offline Online, rolling Online, rolling
Multi-region tooltip icon Yes - manual Yes, but not for writes Yes, for both reads and writes Yes - manual Yes, but not for writes Yes, for both reads and writes Yes for both reads and writes
Multi-cloud tooltip icon No Yes No Yes Yes

Yes No