cockroach VS yugabyte-db

Compare cockroach vs yugabyte-db and see what are their differences.


CockroachDB - the open source, cloud-native distributed SQL database. (by cockroachdb)
Our great sponsors
  • Nanos - Run Linux Software Faster and Safer than Linux with Unikernels
  • Scout APM - A developer's best friend. Try free for 14-days
  • SaaSHub - Software Alternatives and Reviews
cockroach yugabyte-db
23 16
22,567 5,836
1.1% 3.0%
10.0 9.9
4 days ago 5 days ago
Go C
GNU General Public License v3.0 or later GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.


Posts with mentions or reviews of cockroach. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-11-30.
  • Composing generic data structures in go
    3 projects | | 30 Nov 2021
    Recently a colleague, Nathan, reflecting on CockroachDB, remarked (paraphrased from memory) that the key data structure is the interval btree. The story of Nathan’s addition of the first interval btree to cockroach and the power of copy-on-write data structures is worthy of its own blog post for another day. It’s Nathan’s hand-specialization of that data structure that provided the basis (and tests) for the generalization I’ll be presenting here. The reason for this specialization was as much for the performance wins of avoiding excessive allocations, pointer chasing, and cost of type assertions when using interface boxing.
  • Stacked changes: how FB and Google engineers stay unblocked and ship faster
    12 projects | | 17 Nov 2021
    I'm surprised Reviewable[0] hasn't come up in this discussion. It does a great job of allowing stacked code reviews and even handles rebases nicely; the reviewer sees the diff between commit #1 and commit #1' (prime = after rebase).

    CockroachDB[1] has been using it since very early in the project.



  • 1 project | | 6 Nov 2021
    And even if you did want to run your database on a bunch of untrusted machines, a blockchain, being a linked list, is not a particularly efficient implementation. Its size increases linearly with the number of operations, which, for any rapid-fire application such as banking, means you have a tremendously inefficient marginal computational and storage cost per operation. You’d be considerably better off running something like Cockroach, or FoundationDB, or more ‘out-there’ offerings like Hypercore.
  • CockroachDB Grants and Schemas explained
    1 project | | 28 Aug 2021
    And here:
  • Design to Duty: How we make architecture decisions at Adyen
    1 project | | 28 Jul 2021
    As you now know, we do not want to achieve this by restricting payments of some merchants to certain machines, as this would mean the machines are no longer linearly scalable. The information needs to be available locally, so we eventually decided on integrating Cockroach, a distributed database, with our PALs.
  • go startpack
    8 projects | | 15 Jul 2021
    CockroachDB (label: E-easy) The Scalable, Survivable, Strongly-Consistent SQL Database
  • The start of my journey learning Go. Any tips/suggestions would greatly appreciated!
    6 projects | | 29 Jun 2021
  • What is Cost-based Optimization?
    4 projects | | 2 Jun 2021
    In CockroachDB, the cost is an abstract 64-bit floating-point scalar value.
  • #30DaysofAppwrite : Appwrite’s building blocks
    3 projects | | 3 May 2021
    Appwrite uses MariaDB as the default database for project collections, documents, and all other metadata. Appwrite is agnostic to the database you use under the hood and support for more databases like Postgres, CockroachDB, MySQL and MongoDB is currently under active development! 😊
  • I am building a Serverless version of Redis - written in Rust
    7 projects | | 2 May 2021
    For me, if you look back to when Redis has been designed - 11 years ago, it was before the Cloud was a thing. Since then, you have Cloud alternatives that are mostly proprietary. The idea of RedisLess is not competing against a product that is existing for 11 years but showing a new path of how we can build a system on top of an existing one. You can see RedisLess as experimentation. How to build Cloud-native databases by taking advantage of existing solutions? TiDB, Yugabyte, CockroachDB are great examples of being MySQL wire protocol compatible and providing a Cloud way of managing data.


Posts with mentions or reviews of yugabyte-db. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-10-21.
  • Query PostgreSQL, or any 🐘-compatible like Amazon Redshift, from YugabyteDB 🚀 thanks to Postgres FDW
    1 project | | 22 Nov 2021
    I've used import_collate 'false' because we don't support yet the COLLATE clause (see #1127)
  • Getting Started with Redis and RedisGraph
    13 projects | | 21 Oct 2021
    YugabyteDB provides a detail on how to represent and manipulate graph data using YugabyteDB
  • Ask HN: What could a modern database do that PostgreSQL and MySQL can't
    16 projects | | 5 Sep 2021
    May I suggest looking at YugabyteDB, which is a distributed SQL database built on actual PostgreSQL 11.2 engine? It's way ahead of CockroachDB in terms of feature support.

    YugabyteDB has UDFs, stored procedures, distributed transactions, the range types are working from what I can tell, at least the example from here: works right out of the box, just copy paste.

    YugabyteBD == Postgres. The query planner, analyzer and executor are all Postgres. Mind you, some features are not readily available because handling them properly in a distributed manner takes effort. Those unsupported features are disabled on the grammar level, before being worked on. But - unsupported features will not corrupt your data. Missing features are enabled very fast.

    For example, I have recently contributed foreign data wrapper support: (enables postgres_fdw at a usable level) and working on table inheritance now.

    Yugabyte is an amazing bit of technology and more people should know about it. By the way - it's Apache 2 with no strings attached.

  • Using YugabyteDB in Python App Development
    4 projects | | 28 Aug 2021
    $ yugabyted start Starting yugabyted... ✅ System checks +--------------------------------------------------------------------------------------------------+ | yugabyted | +--------------------------------------------------------------------------------------------------+ | Status : Running. Leader Master is present | | Web console : | | JDBC : jdbc:postgresql:// | | YSQL : bin/ysqlsh -U yugabyte -d yugabyte | | YCQL : bin/ycqlsh -u cassandra | | Data Dir : /home/bpdp/var/data | | Log Dir : /home/bpdp/var/logs | | Universe UUID : dabc3d28-6982-4585-8b10-5faa7352da02 | +--------------------------------------------------------------------------------------------------+ 🚀 yugabyted started successfully! To load a sample dataset, try 'yugabyted demo'. 🎉 Join us on Slack at 👕 Claim your free t-shirt at $
  • VisiData to read JSON, HTML and YugabyteDB
    1 project | | 2 Aug 2021
    The PGOPTIONS is a workaroud for issue #7745. Especially if you use my connection string above, which goes to a free VM of mine with limited resources. Visidata likes to count the columns for all tables and information_schema.columns is not yet optimized in YugabyteDB. It could be worse - a previous version of VisiData ran a count(*) on all tables thinking this is a fast operation... Anyway, don't panic, when reading data, VisiData is executing optimized queries with DECLARE CURSOR and FETCH FORWARD.
  • Arctype connects to YugabyteDB
    1 project | | 28 Jul 2021
    We are here to help and answer any questions you may have. Join us on our community Slack channel, and star us on GitHub.
  • Example database
    2 projects | | 26 Jul 2021
  • pg_hint_plan and single-table cardinality correction
    2 projects | | 5 Jul 2021
    In PostgreSQL you have to install the pg_hint_plan extension, and enable it. The PostgreSQL community fears that it is incorrectly used, and that people do not report, to the community that maintains the query planner, the issues encountered with bad optimizer estimations. And the risk is that people just workaround the issue with hints without addressing the root cause. Even if also Open Source, Yugabyte is in a different position. The users know that this database is new, in very active development, and interact with us though Slack or GitHub. Then, it is acceptable to test a different plan with hints, report the issue, leave the hints for a short term workaround until the issue is fixed. In addition to that, the fixed version will be easy to deploy without downtime as YugabyteDB is a distributed database which supports easy rolling upgrade.
  • Protecting reserved roles with PostgreSQL Hooks
    2 projects | | 2 Jul 2021
    > I wonder if this works with yugabyte

    It should work too! Check this line here[1]. That shows that Yugabyte also has the `ProcessUtility_hook`(same one used in the article). It would be a matter of loading the library.


  • Globally Distributed Postgres
    3 projects | | 30 Jun 2021
    It reminds of Yugabyte, which is Postgres compatible

    > YugabyteDB is the open source, distributed SQL database for global, internet- scale applications with low query latency, extreme resilience against failures. *

    However Fly is nicer from a developer's point of view, because it doesn't require you to learn a new query language, you can write good old Postgres.


What are some alternatives?

When comparing cockroach and yugabyte-db you can also consider the following projects:

tidb - TiDB is an open source distributed HTAP database compatible with the MySQL protocol

vitess - Vitess is a database clustering system for horizontal scaling of MySQL.

Trino - Official repository of Trino, the distributed SQL query engine for big data, formerly known as PrestoSQL (

citus - Distributed PostgreSQL as an extension

psycopg2 - PostgreSQL database adapter for the Python programming language

dgraph - Native GraphQL Database with graph backend

InfluxDB - Scalable datastore for metrics, events, and real-time analytics

rqlite - The lightweight, distributed relational database built on SQLite

go-memdb - Golang in-memory database built on immutable radix trees

prometheus - The Prometheus monitoring system and time series database.

go-mysql - a powerful mysql toolset with Go

Redis - Redis is an in-memory database that persists on disk. The data model is key-value, but many different kind of values are supported: Strings, Lists, Sets, Sorted Sets, Hashes, Streams, HyperLogLogs, Bitmaps.