Live data from Hacker News

CockroachDB: A Scalable, Geo-Replicated, Transactional Datastore

github.com

21–30 of 57 posts

Re: CockroachDB: A Scalable, Geo-Replicated, Transactional Datastore

#21

Riak, when you use LevelDB behind it, certainly has indexes. As many as you want (within reason), through secondary indexes[0]. While it doesn't have joins specifically, you can link data blobs and walk the links[1]. For when that isn't quite enough, you can always perform a compiled erlang map reduce across a given dataset[2]. I don't quite see how CockroachDB offers anything Riak doesn't. Riak, while not offering t…

Fully ACID transactions is a big deal.

Re: CockroachDB: A Scalable, Geo-Replicated, Transactional Datastore

#22
post #9

Earlier quoted context omitted.

I have to agree - maybe 'RoachDB' would be better

I prefer "CockDB".

It reminds me of a female programmer that I once worked with. By mistake she had originally named one of our busiest databases "ClickCuntDB"

It was a database for counting the clicks on our website :-)

Re: CockroachDB: A Scalable, Geo-Replicated, Transactional Datastore

#23
post #21

Riak, when you use LevelDB behind it, certainly has indexes. As many as you want (within reason), through secondary indexes[0]. While it doesn't have joins specifically, you can link data blobs and walk the links[1]. For when that isn't quite enough, you can always perform a compiled erlang map reduce across a given dataset[2]. I don't quite see how CockroachDB offers anything Riak doesn't. Riak, while not offering t…

Fully ACID transactions is a big deal.

They're based on Raft--that's not a consensus protocol that's designed for multi-datacenter operations. I suspect you'll have reliability and throughput issues fairly quickly, just as you see with multi-datacenter zookeeper.

The solution Google uses for this kind of problem: multidatacenter transactions are rare, so they're not optimized for latency (instead for reliability), and they tend to use 2PC, as it's easier to get right with unpredictable WAN latencies.

Re: CockroachDB: A Scalable, Geo-Replicated, Transactional Datastore

#24

Riak, when you use LevelDB behind it, certainly has indexes. As many as you want (within reason), through secondary indexes[0]. While it doesn't have joins specifically, you can link data blobs and walk the links[1]. For when that isn't quite enough, you can always perform a compiled erlang map reduce across a given dataset[2]. I don't quite see how CockroachDB offers anything Riak doesn't. Riak, while not offering t…

What is your comment on the "No availability or weak consistency with datacenter failure" part?

Is that referring to Riak's cross data center replication (enterprise feature). I guess for regular case (non-enterprise version) it is true, as it is not possible to specifically assign ring sections to data centers?

Re: CockroachDB: A Scalable, Geo-Replicated, Transactional Datastore

#25
post #20

As for the name, which I agree is problematic as is, how about EntomoDB for entomos (insect)? Edit: It's not problematic if success is not an objective. But if it is, choosing a name with such strong established negative connotations is not wise.

How is the name problematic? I knew exactly what they were saying and why when I saw it. If it were me I would have shortened it to RoachDB, but that's just marketing.

I agree it would probably be a good idea to chop off the cock.

Re: CockroachDB: A Scalable, Geo-Replicated, Transactional Datastore

#26
post #10

How would one communicate with this DB? I'd love to see some API examples.

Here's the transactional key/value store API: http://godoc.org/github.com/cockroachdb/cockroach/kv

And an RDBMS-like layer on top of it: http://godoc.org/github.com/cockroachdb/cockroach/structured

Re: CockroachDB: A Scalable, Geo-Replicated, Transactional Datastore

#28
post #21

Riak, when you use LevelDB behind it, certainly has indexes. As many as you want (within reason), through secondary indexes[0]. While it doesn't have joins specifically, you can link data blobs and walk the links[1]. For when that isn't quite enough, you can always perform a compiled erlang map reduce across a given dataset[2]. I don't quite see how CockroachDB offers anything Riak doesn't. Riak, while not offering t…

Fully ACID transactions is a big deal.

Riak will have strongly consistent buckets in 2.0+, which pretty much takes care of the cases in which I'd need guarantees for data in this storage model.

Re: CockroachDB: A Scalable, Geo-Replicated, Transactional Datastore

#30

That's a funny name for a database. At least you'll know that whoever uses it does not use it for its buzzword value. How will this handle partitioning of the network? The readme has a lot of info about bits of the far-flung cluster failing but nothing about how it would deal with the whole cluster being chopped up into roughly equal halves. That's one of the harder problems to deal with for solutions aimed at this s…

Cockroaches are resilient and hard to kill.
Post reply on HN