TrustRadius: an HG Insights company

Couchbase Server

Score8.7 out of 10

204 Reviews and Ratings

What is Couchbase Server?

Couchbase Server is a cloud-native, distributed database that fuses the strengths of relational databases such as SQL and ACID transactions with JSON flexibility and scale that defines NoSQL. It is available as a service in commercial clouds and supports hybrid and private cloud deployments.

Top Performing Features

  • Availability

    Availability is the probability that the NoSQL database will be available to preform its function when called upon.

    Category average: 8.9

  • Scalability

    NoSQL databases are inherently more stable than relational databases and have built-in support for replication and partitioning of data to support scalability.

    Category average: 9.4

  • Security

    Security features include authentication against external security mechanisms liker LDAP, Windows Active Directory, and authorization or privilege management. Some NoSQL databases also support encryption.

    Category average: 8.9

Areas for Improvement

  • Performance

    How fast the database performs under data load

    Category average: 9.2

  • Concurrency

    Concurrency is the ability for multiple processes to access or change shared data simultaneously. The greater the number of concurrent user processes that can execute without blocking each other, the greater the concurrency of the database system.

    Category average: 9

  • Deployment model flexibility

    Can be deployed on-premise or in the cloud.

    Category average: 8.9

Couchbase: Blistering performance at scale for enterprises

Use Cases and Deployment Scope

Couchbase is being used across our entire organization as the primary database for our platform. It addresses the need for sub-millisecond db transactions at hundreds of thousands of high-availability transactions per second[.]

Pros

  • Couchbase performance is exceptional both for in-memory and persisted transactions.
  • Handling of node failures and cluster rebalancing (high availability).
  • Enterprise support from Couchbase themselves
  • Good documentation
  • Streaming of bucket (database) level mutations via their Database Change Protocol (DCP).
  • Replication of datasets between native clients and Couchbase buckets
  • Handling of simultaneous writes to the same record with performance penalties

Cons

  • SDK examples are not always clear enough and don't cover enough scenarios.
  • Setting up and managing a large, high performance cluster is not easy without significant assistance from Couchbase themselves. There needs to be more tutorials \ documentation for enterprise scenarios.
  • Full text search, while not a primary feature, is not sufficiently performant in Couchbase, so Elasticsearch is still needed. Couchbase has a good integration for moving data to Elasticsearch so this is not very painful. It's possible that the performance has improved in the latest version as we have not yet tested it for FTS.
  • Poor performance and support for synchronization of web based apps (PWA's etc)

Return on Investment

  • Massive concurrency enabling an enormous scale for our platform
  • Super-fast transactions enabling a real-time experience across multiple clients

Alternatives Considered

Amazon DynamoDB, MongoDB, Amazon Elasticsearch Service and Elasticsearch

Other Software Used

Amazon Managed Streaming for Apache Kafka (Amazon MSK), Amazon Aurora, Amazon CloudFront, Amazon Elastic Container Service (Amazon ECS), Amazon DynamoDB

Couchbase to the Rescue!

Use Cases and Deployment Scope

We are using Couchbase for web application development. Our main focus is public safety and disaster management. We have web and mobile platform presence. We had to solve the syncing issue between mobile and web and Couchbase sync gateway was a great help in this scenario. Also, creating custom document id was another big help for filtering data. Using SDK we perform micro data manipulation processes which is faster comparatively.

Pros

  • Synchronization between web and mobile platform using sync gateway
  • Custom document id to reduce data filter
  • SDK to update specified document or document fragments

Cons

  • Documentation was quite hard for me to understand at the beginning. I think that needs to be improved for newbies.
  • Updating multiple document keys were possible before v6.5, but now not anymore. For me that was a great help. I think that needs to be back.

Return on Investment

  • We did not have to use any other solution for synchronisations
  • We did not have to use different db/service for elastic search
  • Recommended cluster configuration is expensive for small companies or start-ups

Alternatives Considered

MongoDB and PostgreSQL

Other Software Used

MongoDB, MySQL, Microsoft Teams

Couchbase the database of ease

Use Cases and Deployment Scope

Couchbase is used by teams in our organization to store and manage customer data. Couchbase allows huge scalability and performance which is why it is the database of choice for many teams within our organization. Couchbase is also very easy to configure and deploy to various teams. This allows my team, to just be on stand-by for any upgrades.

Pros

  • Scalability
  • Highly available
  • Easy to use

Cons

  • Cost
  • number of buckets
  • performance with larger datasets

Return on Investment

  • ROI
  • Reduced TOIL
  • Easy migration

Alternatives Considered

MongoDB and Apache Cassandra

Other Software Used

MongoDB, Docker, GitHub

Fantastic database management and data analysis product

Use Cases and Deployment Scope

Couchbase connects us to reliable network sources that can effectively manage our data. It is highly scalable and ensures that all data from our customers is effectively managed for better planning. It provides cloud services that customize all data and saves the most useful data that transform our company.

Pros

  • Data storage management.
  • Monitoring data entering our company from all sources.

Cons

  • The platform performance has been awesome.
  • I am conversant with all the features.

Return on Investment

  • The performance has enhanced positive Returns on Investment.
  • It has been able to control and manage all our databases.

A good tool for the right problem

Use Cases and Deployment Scope

Couchbase was originally selected to be the OLTP database to be used with "the experience engine" to hold the guest information, messaging, activity records, tags/classifications and related information pertaining to the guest experience. We initially used Couchbase prior to the creation of N1QL, and have used its core data services, views (now deprecated), N1QL, and XDCR and SyncGateway functionality. (Our use of couch-base included multi-instance replication). More recently, we've also worked with its event functionality and transactional support (a relatively new addition to its SDK).

Pros

  • As a sharded key/value store for json documents, its both performant and scalable.

Cons

  • The N1QL engine performs poorly compared to SQL engines due to the number of interactions needed, so if your use case involves the need for a lot of SQL-like query activity as opposed to the direct fetch of data in the form of a key/value map you may want to consider a RDBMS that has support for json data types so that you can more easily mix the use of relational and non-relational approaches to data access.
  • You have to be careful when using multiple capabilities (e.g. transactions with Sync Gateway) as you will typically run into problems where one technology may not operate correctly in combination with another.
  • There are quality problems with some newly released features, so be careful with being an early adopter unless you really need the capability. We somewhat desperately adopted the use of transactions, but went through multiple bughunt cycles with Couchbase working the kinks out.

Return on Investment

  • There have been several areas of our application [that] really needed an ACID compliant database (e.g. strong transactional guarantees) that we thought we could work around while using Couchbase. [In my opinion] that turned out to be a poor bet. You need to be certain that the specific characteristics of a NoSQL database fit your problem.
  • Couchbase does eliminate the need for schema upgrades completely. I.e no downtime or conversion windows as you migrate your data model, adding attributes, etc. This helped with the deployment timeframe associated with DB changes.
  • The database is (apparently) a bit more of a space/memory consumer than originally anticipated. During deployments, we received constant pressure from Couchbase consulting teams to eliminate/reduce the number of indexes, and this was because any mutations to docs in a bucket must check for impact against all indexes. More recent years have started to address this with their "collections" features, which helps isolate indexes to specific sub-groupings of documents.

Other Software Used

Oracle Java SE, Kubernetes, PostgreSQL