1. 15

  2. 4

    For anyone just skimming the top:

    • Written in Go
    • Uses Raft for consensus
    • Data is stored in RocksDB
    • They mention Spanner
    1. 3

      That sounds like the data store a lot of people would want! I’m curious to know who is behind this project, because it cannot be just a hobby project.

      1. 1

        See https://github.com/cockroachdb/cockroach/graphs/contributors.

        FWIW one of my coworkers identified one of those as a former googler.

        1. 1

          I’m under the impression this comes from Poptip, but it’s just my impression :)

          1. 4

            andybons from Poptip, here. You may have seen me in the contributor list as the top committer, but if you look closely at the stats, Spencer has written the most code and wrote the original design document linked to in the README. He is the mad scientist behind Cockroach.

            Poptip has been supportive, but it was not born within our walls and I do not work on it full-time.

            From the list of authors, everyone works at Square, Inc. now and we are all ex-Google (except for one person). It is more than a side-project, but I, personally, don’t have the domain expertise that the other authors have within this space, so it has largely been a fun learning experience for me.

            I hope this clarifies things a bit. I don’t want to speak for the other authors regarding some of the questions raised, but I can say they are brilliant people who I am lucky to work with.

            1. 2

              Thanks Andrew: yes, it clarifies things a lot! This is an ambitious project: kudos for tackling this. Now that I know most authors work at Square, I understand better the emphasis on the ACID properties which, I guess, are quite useful to them.

      2. 2

        This looks interesting, but I take issue with their inclusion of “schema” under cons for relational and relational sharding in their marketing image at the bottom. Every database has a schema; what makes existing relational databases difficult to manipulate in the way that non-relational databases aren’t is the requirement to make the schema explicit. I fully admit to being a relational bigot, so go ahead and take this with the appropriate grain of salt, but I don’t think this explicitness makes relational models worse; just difficult to use in certain contexts.

        1. 1

          The design docs briefly mention Calvin (“This is another great paper.”), but without a close comparison. I’d be interested[1] in hearing the Cockroach team’s views on the tradeoffs they make differently etc. Are the replication and consistency guarantees the same? Throughput and latency?

          [1] Since I’m speaking on Calvin next week: http://www.meetup.com/papers-we-love-too/events/171291972.

          1. 2

            You are welcome to ask any clarifying questions on the list – cockroach-db@googlegroups.com

            To be honest we’re at such an early stage that we may not have answers for you, but there’s no harm in asking.