Couchbase Data Platform is pretty great, but it's not all rainbows and unicorns
September 24, 2018

Couchbase Data Platform is pretty great, but it's not all rainbows and unicorns

Ryan J. Thompson | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User

Overall Satisfaction with Couchbase Data Platform

We use Couchbase as the main backend database for our mobile data collection SaaS platform. We need to be able to collect any data that is valuable to our customers, and the Couchbase platform enables us to do that without having to worry about relational tables and schemas.
  • Key/value data store. Couchbase is blazing fast at data access and retrieval when you know what keys you want to access.
  • Data querying with N1QL. If you have your indexes set up right, searching your unstructured data can be really fast too.
  • Management dashboard. The Couchbase platform has a great admin panel that provides tons of insights into how your cluster is performing.
  • The Couchbase mobile suite is great, in theory. In practice we have found the sync to be somewhat unreliable, to the point where we had to write our own logic to push data to the server. We have not had a chance to upgrade to the new 2.0 version of mobile yet, so these issues may have been resolved there.
  • 5 years later, the sync gateway component still isn't integrated into the main data platform. The Couchbase platform does a really great job at letting you independently scale services, but the sync gateway is still a standalone component. I get the feeling there is a rift between the Couchbase mobile team and Couchbase server team, or possibly that the Couchbase mobile product is just a side project or second-class citizen in the Couchbase world.
  • One of the reasons that initially drew us to Couchbase was their touted dedication to open source development. Over the past year or so, they have really backed off on that. At the 2018 Couchbase connect conference, I didn't even hear the phrase 'open source' mentioned once. If you really dig into the source code that is available, you'll find that pretty much all new features are being developed closed-source in private repositories. So while you can build the 'community edition' yourself, it's not even close to what the full platform offers. So if you do hear any mention of 'Couchbase is open source', be aware that it's a bit of a facade.
  • The Couchbase data platform has made our product possible. We flat out wouldn't be able to do what we're doing on a traditional RDBMS.
Couchbase has a built in multi-dimensional scaling tool that lets you independently scale the services you need. I'd give it a 10 if I could scale the sync gateway this way too.
If you have everything set up right, Couchbase is quite fast. We're handling millions of records with thousands of users querying the data simultaneously. Achieving this level of performance can be difficult and requires a deep understanding of the N1QL engine and how data indexing works. Traditional RDBMS systems figure out a lot of the indexing challenges for you, so if you go in to Couchbase expecting it to 'just work' at scale, you'll be disappointed. Spend the time to learn the product, and you can make it do some pretty amazing things.
When we began using Couchbase in 2014, nobody else provide a query engine for unstructured data. We haven't reevaluated competitors since.
If you're looking to store millions of data records for millions of users, where each user only accesses a couple of documents (auth, user profiles, private data store), you can't beat Couchbase for performance or scale.

If you want to store tons of data records with varying schemas or totally unstructured data, Couchbase is also a great fit. Their N1QL engine is pretty amazing and pretty fast, but don't expect SQL level performance.

If you're building a simple application with traditional relational data and on a tight budget, I'd say stick with something like Postgres.

Couchbase Server Feature Ratings

Performance
8
Availability
8
Concurrency
8
Security
8
Scalability
9
Data model flexibility
10
Deployment model flexibility
8