Introduce yourself: Tell us why you love CockroachDB

As we get closer to releasing our 1.0 product, we would love to hear about your experience with us! Sharing your story not only helps us optimize CockroachDB to meet your needs, but also provides the rest of our open source community with examples of what is possible with CockroachDB.

Here’s how you can help:

  1. What are you using CockroachDB for?
  2. What convinced you to use CockroachDB?
  3. What languages are you using in your application stack?
  4. Is this for a personal side project or for a project at work? Would you consider using us at work?
  5. What has been the most pleasant surprise with CockroachDB?
  6. What are some areas where CockroachDB was hard to use?
  7. What features would make your experience better? Which ones are must-have?

Thank you for your support thus far. We continue to work hard at building the best database possible for our users. Hopefully you will be able to connect with other CockroachDB users through this topic as well!

Thanks for CockroachDB.

  • What are you using CockroachDB for?

    For developing distributed telco project

  • What convinced you to use CockroachDB?

    PostreSQL compability, transaction support, and inter-datacenter replication support

  • What languages are you using in your application stack?

    Python & Golang

  • Is this for a personal side project or for a project at work? Would you consider using us at work?

    Project at work

  • What has been the most pleasant surprise with CockroachDB?

    Consistency with ACID transactions over SQL.

  • What are some areas where CockroachDB was hard to use?

    I haven’t faced that yet.

  • What features would make your experience better? Which ones are must-have?

    • Waiting for collate support for sorting.
    • Partitioning support for performance(Is SPLIT AT similar to partition?).
    • Client auto connection failover support.

Hey there,

Lefty.io is a content/influencers search engine. We use cockroachDB to persist millions of public profiles parsed from various social networks.

I had been curious of trying out cockroachDB for some time, mostly because of
the excellence of the team, the fact that it’s inspired by F1, and by watching some tech talks.

We were previously using google’s BigTable for this.

We’re persisting docs (protos) that are almost always accessed by id, but we occasionally need to
issue ad-hoc queries (eg: gimme users with more than n followers). We used to achieve that by exporting
BigTable data to bigquery. It’s pretty convenient to be able to query our data directly.

C++, Java.

work.

It was insanely easy to setup: download one file into each server, start it, it works. Never experienced this with any other open source project (we run them under http://supervisord.org/).

The developers on gitter are very friendly / useful (not that I was expecting otherwise so not really a surprise :)).

The java tutorial was lacking a bit (however uncool java might be, it’s probably relevant to have a rock solid java experience…).
Note that it was improved since then (which maps to the community being great).

Hadoop connector is a must have (for use with spark). We’re gonna bake our own “read all” solution for now but a dedicated hadoop connector could be much smarter (I’m assuming that cockroach’s ranges would map to hadoop tasks directly?).

Hibernate is a nice to have. For now we’ve written a protobuf plugin that generates mappings automatically (might opensource that if there’s any interest ping me).

What are you using CockroachDB for?

Exploring the feasibility of replacing a production system’s primary datastore with Cockroach (currently using Cassandra).

What convinced you to use CockroachDB?

I’ve been following the development of CockroachDB for several years, and have a strong interest in it as a scalable database system with strong consistency and referential integrity.

What languages are you using in your application stack?

Current language stack is Node.js, tho Go and Scala are also being explored as alternatives.

Is this for a personal side project or for a project at work? Would you consider using us at work?

Project at work, tho currently the exploration into Cockroach has been a personal endeavor. I’d love to try Cockroach at work, but it’s a hard sell before a v1 is released.

What has been the most pleasant surprise with CockroachDB?

Ease of deployment and maintenance, tho y’all really need to do fewer releases requiring a ‘stop the world’ deployment :stuck_out_tongue: (just kidding, I know that until the v1 is out there’s really no expectation of such behavior)

What are some areas where CockroachDB was hard to use?

I know there’s some pride in the auto-documentation of SQL using grammar diagrams, but I find the flow-chart style diagrams more confusing than actual real-world examples. Especially when it comes down to having to follow links several times to see what is a valid input for a particular command. For instance, if I want to see what privileges I can grant to a user, I first go to the grant_stmt documentation, then need to follow the privileges link, which contains part of the potential privilege options (ALL), otherwise I need to drill down into privilege_list, which is itself a (from a user persective) useless section, only used to get to privilege, which has the rest of the privileges I may want to grant someone.

GRANT isn’t meant to be a specific pain point, but rather just to illustrate the types documentation rabbit holes I’ve found myself digging through.

What features would make your experience better? Which ones are must-have?

Higher-order structured column types (equivalnts to Cassandra’s list, set and map, and Postgres’ xml and json/jsonb types. The latter (which can replace the behavior of the former) would be particularly helpful for some of the core use cases I have.

Exploring the possibility to replace a production MySQL system which is hard to scale when the data size grow up to Terabytes.

Open source, SQL interface, easy scale and manage.

C#

A personal side project for work.

Setup is easy, or maybe way too easy. Used to work with a config file with Mysql, but now everything is in the command line itself.

  • Coming from Mysql environment…Can I set default time zone for the server?
  • No available GUI tool to manage data on windows environment.
  • show processlist? kill process?
  • Store procedure/function, cursor, auto cast, xml, distributed query engine
  • Must have : join and subquery

Thanks for taking the time out to respond, @derkan. I’m glad CockroachDB has been easy to use so far!

Re collation support for sorting, as you probably know, we are working on improving support here as referenced in this issue: https://github.com/cockroachdb/cockroach/issues/2473

For partitioning support, split at is different from partitioning, although we are working on some really unique and differentiated functionalities to support fine-grained partitioning. This will be developed over the course of 2017.

On client auto connection failover support, you should be able to achieve what you’re looking for using a load balancer.

As always, let us know if you have any questions!

@christian Glad to hear that CockroachDB is so easy to set up. It’s something we strive hard to achieve, and also, like you said, pretty rare across other open source projects.

We are working on Hibernate compatibility and are very close! We should be in a good place with this towards the end of Q1.

On Hadoop - what are you hoping to achieve here? We are working on implementing distributed SQL, which will run jobs in a distributed fashion if possible so that you can take full advantage of cluster compute as well as experience faster queries. Would that meet your needs?

@leokwan Interesting note on using config files with MySQL - we are thinking of ways to make the user experience easier, and are exploring that further. We only support setting the time zone at the session level. We do not have any process management features yet, but will definitely work on this post our 1.0 release. We do support joins and subqueries, but as you know, both have similar scalability / performance limitations. We are working on improving this though, and you should expect them to be more fully supported by 1.0.

@twrobel We are hearing people considering CockroachDB for Cassandra use cases more and more often. Pretty exciting! We have JSONB on our roadmap. It’s not part of our 1.0 release, but will come after that.

On ‘stop the world’ deployments, we also want to do that less! Our proposer evaluated KV that is being developed should directly address that issue.

For SQL documentation, do you prefer the organization of this section https://www.cockroachlabs.com/docs/sql-statements.html? Perhaps we should surface the “SQL Statements” section and “SQL Grammar” section differently.

do you prefer the organization of this section https://www.cockroachlabs.com/docs/sql-statements.html ?

Yeah, as a user that section feels much more intuitive and useful. It’s difficult to get meaningful context out of the SQL grammar when it’s broken into sections as small as those on the grammar page. It feels like that’s much more advanced technical documentation than the majority of users would look for, and being so much harder to grok, it seems out of place to me to be surfaced at the same level on the documentation page as the other things in the ‘Develop’ section.

Everything else under ‘Develop’ has descriptions in plain language and examples, whereas the grammar page is just a blob of partial railroad diagrams. It almost feels more like it’s meant to be parsed by a script, rather than by a human. Just my two cents :slight_smile:

Point taken! Adding in @jesse so that he can incorporate this feedback.

Yes, thank you for this feedback, @twrobel. We definitely want to encourage users to reference the statement-specific pages first in most cases, although there are granular details about our grammar currently only reflected in that larger grammar doc.

As a quick fix, I’m going to add a tip to the top of the full grammar to make sure users who dive straight into the grammar know about the statement-specific pages.

In terms of understanding privileges in CockroachDB, we map them out on the GRANT doc, we have an overview on privileges in general, and we specify required privileges on the doc for each SQL statement. I suspect you may have found these resources already, but just want to make sure. Please let us know if anything’s unclear or missing.

Hi every, I’m new here.

Very happy to have found cockroach to build a cloud service for my application. I have successfully tested a script that creates droplets on digital ocean, installs cockroach. and joins them in a cluster (with SSL). It worked flawlessly. Having the confidence that our user’s data will be safe no matter how big we scale or how fast has a great deal of value for a pre-launch startup like ours.

Happy to be here, all the best with your projects.

Tom Glod

Thanks! Happy to hear that you were able to get up and running so quickly :slight_smile:

1 Like
  1. What are you using CockroachDB for?

Experimentally, we are collecting health check data from remote devices. Call it IoT if you like.

  1. What convinced you to use CockroachDB?

It’s familiar SQL. It promises consistency, reliability. The documentation is great. It’s simple to start with. OK, let’s give it a go.

Ever since I read Leslie Lamport’s paper on the Byzantine Generals problem in 1980 something I have been intrigued by the solutions to the fault tolerant systems problem. Then comes Paxos then Raft now Cockroach.

By the way, I was very much swayed by one Youtube video, sorry I forget who was presenting,which was very honest about the issues of stability with Cockroach some time ago and how they were addressed.

  1. What languages are you using in your application stack?

Currently C++ and Javascript under node.js. Perhaps Python is coming along.

  1. Is this for a personal side project or for a project at work? Would you consider using us at work?

This is for work. Not a mission critical project but my name is dirt if it does not work!

  1. What has been the most pleasant surprise with CockroachDB?

The developers.

If you have been following my posts on this forum you will see I’m quite inexperienced with SQL. Not having had to deal with it since working on a simple web shop back in 2000 or so. MySql that is.

Even so I very soon hit two or three problems that would be show stoppers.

No worries, those issues soon got recognized and fixed after chatting here.

Did I say somewhere here, you guys are hot?!

Makes me feel confident in the future of Cockroach.

  1. What are some areas where CockroachDB was hard to use?

No idea really. Installation and set up was easy enough. I have much confusion about the differences in SQL syntax betwwen MySql vs PostgreSQL vs Oracle vs Cockroach etc. But nothing major.

  1. What features would make your experience better? Which ones are must-have?

None I can think of just now…

Good luck all.

I’m glad to hear that you are having a good experience with us! Do let us know if there is anything we can do to make it better, and as always, feel free to reach out with questions (and ping us again if you don’t get a response fast enough, we tend to have a lot of inbound to sift through) :slight_smile: