Couchbase Enterprise vs. Community Edition vs.
Couchbase Capella : Which Is Right for Me?
Compare the latest generally available features across the Couchbase product line
Couchbase Server
Data Access Service | Community Edition | Enterprise Edition | ![]() |
---|---|---|---|
Key-value interface (read/write) | | | |
High-density storage | | | |
Scopes and collections | | | |
Distributed ACID transactions | | | |
Tunable query consistency | | | |
Consistent metadata | | | |
Tunable durability Couchbase Server provides tunable durability for mutations coming into the system. Couchbase Server core data operations can ask for disk-based or replication-based durability of data during writes. Both Enterprise and Community Editions come with full support for tuning durability. | | | |
Ephemeral buckets Ephemeral buckets provide a highly consistent in-memory performance without disk-based fluctuations. They eliminate the disk component of your buckets and thus reduce the total cost of ownership (TCO). Ephemeral buckets are designed to be used as an alternative to Couchbase buckets whenever persistence is not required, for example, when repeated disk access involves too much overhead. You also get faster node warmups, rebalances, and restarts, as well as cheaper geo-replication. | | | |
Query Service | Community Edition | Enterprise Edition | ![]() |
---|---|---|---|
Query Service via SQL++ (SQL-based queries) SQL++ (SQL for JSON) for Couchbase Server provides full support for SQL-like queries. Couchbase is a reference implementation of SQL++. Both Enterprise and Community Editions come with full support for SQL++ for applications. Couchbase’s implementation includes ACID transactions in SQL++, simplifying their implementation. | | | |
Support for scopes and collections | | | |
Support for ACID transactions in SQL++ | | | |
Graphical explain plan Each time a query is executed, an explain command is automatically run in the background to retrieve the graphical query plan for that query. | | | |
Built-in query editor The Query Editor is where you build and run queries. Enterprise Edition includes syntax coloring, auto-completion, and support for N1QL INFER statements. | | | |
Built-in schema browser | | | |
SQL++ common table exression (CTE) | | | |
ANSI joins support in SQL++ | | | |
Unlimited query concurrency | | | |
Cost-based optimizer (CBO) | | | |
Window functions | | | |
SQL++ request auditing | | | |
SQL++ aggregate pushdown | | | |
Query monitoring Couchbase Server Enterprise Edition contains a UI that allows you to monitor the current state of the Query Service. The monitoring and profiling of SQL++ queries, query service engines, and corresponding system resources is very important for smoother operational performance and efficiency of the system. In fact, it’s often vital for diagnosing and troubleshooting issues such as query performance, resource bottlenecks, and overloading of various services. | | | |
Query User Defined Functions (UDF) with inline functions | | | |
Query User Defined Functions (UDF) with JavaScript functions | | | |
Index Service | Community Edition | Enterprise Edition | ![]() |
---|---|---|---|
Index Service – Global Secondary Indexes (GSI) Global Secondary Indexes (GSI) is a powerful solution that enables secondary lookup queries for interactive applications that require low latencies. GSIs are created and attached to collections, making them fast and portable during replication, sharding, and rebalancing. | | | |
Index Service failover | | | |
Support for scopes and collections | | | |
Index pushdown Index pushdowns are performance optimizations where the query engine leverages the indexer functionality as much as possible by pushing down the operations to indexer as part of the index scan. Query Indexer not only indexes data, but also supports various operations such as point scans, range scans, array indexing, sort order, and pagination. This boosts the performance by minimizing the amount of data transferred from indexer nodes to query nodes and the amount of processing done at query nodes. | | | |
Composite Array indexes | | | |
Adaptive indexes Adaptive indexes are a special type of GSI array index that can index all or specified fields of a document. They are generic in nature and can efficiently index and look up any of the index-key values. This enables efficient ad hoc queries (that may have WHERE clause predicates on any of the index-key fields) without having to create various composite indexes for different combinations of fields. Adaptive indexes enable you to simply load data and start querying using a single secondary index without the need to create appropriate secondary indexes for each query. | | | |
Flex Index using FTS indexing Flex Index enables a single index to incorporate data from multiple fields of a document, allowing for a dramatic increase in performance across a range of SQL++ queries. This is the first ever database implementation to exploit the flexibility of indexes based on full-text search for queries that are looking for multiple combinations of search criteria. | | | |
Index partitioning | | | |
Index advisor The index advisor eliminates the guesswork in index creation and recommends changes to existing indexes wherever applicable. By providing recommendations for a specific query, or a set of queries from the Couchbase server log, it helps you create optimum indexes for your queries. The index advisor feature is available in the Enterprise Edition. Additionally, the index advisor is made available to all users as a hosted service: https://index-advisor.couchbase.com/. | | | |
Plasma – high-performance storage engine for indexes Plasma is the underlying storage engine for the standard global secondary indexes. This highly scalable and performant key-value storage engine uses lock-free data structures to effectively utilize multi-core CPUs and a memory-first architecture that persists only when required. This helps to create a system that scales almost linearly and exploits the current trends in SSD and flash storage. | | | |
Index replicas and swap rebalance | | | |
Memory-optimized indexes | | | |
Index auto-move | | | |
Analytics Service | Community Edition | Enterprise Edition | ![]() |
---|---|---|---|
Analytic Service via SQL++ for analytics SQL++ for Analytics is a Couchbase reference implementation of Apache SQL++ (focused on parallel data analysis). SQL++ for Analytics has much in common with SQL, but there are differences due to the data model that this language is designed to serve. (SQL was designed in the 1970s to interact with the flat, schematic world of relational databases, while SQL++ is designed for the nested, schemaless, or schema-optional JSON data model. | | | |
Fault-tolerance for Analytics Service | | | |
Native Tableau connector to visualize JSON data | | | |
Remote Links to consolidate data from multiple Couchbase clusters Remote links allow for the deployment of an independent Analytics cluster fed by one or more Couchbase data clusters to consolidate data for analysis. Remote links work across datacenters too. This essentially transforms an Analytics cluster into a real-time NoSQL data mart. | | | |
Include External Datasets from AWS S3 data lakes for use in analytics External datasets enable Analytics queries to incorporate data that resides in AWS S3 storage buckets, allowing users to combine data from both inside and outside their Couchbase cluster(s). Supported formats include JSON, CSV, and TSV. | | | |
External dataset access from Google Cloud Storage and Microsoft Azure Data Lake | | | |
Support for scopes and collections | | | |
Analytics User Defined Functions (UDF) with inline functions | | | |
Analytics User Defined Functions (UDF) with JavaScript functions | | | |
Full-Text Search Service | Community Edition | Enterprise Edition | ![]() |
---|---|---|---|
Full-Text Search (FTS) Service Maximize ROI on your existing Couchbase investment by immediately enabling Couchbase Full-Text Search (FTS) access to your operational data. This out-of-the-box data access mode delivers enhanced capabilities from the database, increases productivity, simplifies maintenance, and features centrally managed role-based security from database to search. Get started easily with the integrated web UI for building indexes, then deploy your application to production using REST APIs and SDKs. Full-Text Search supports both free-form and geo-location searches of JSON documents. | | | |
SQL++ and FTS integration | | | |
Support for scopes and collections | | | |
FTS Index replica | | | |
Eventing Service | Community Edition | Enterprise Edition | ![]() |
---|---|---|---|
Eventing Service | | | |
Support for scopes and collections | | | |
Serverless compute | | | |
Distributed DCP consumer | | | |
Data Service integration | | | |
Query Service integration SQL++ Statements Top-level SQL++ keywords, such as SELECT, UPDATE, INSERT, and DELETE, are available as inline keywords in handlers. Operations that return values such as SELECT are accessible through a returned Iterable handle. SQL++ query results, via a SELECT, are streamed in batches to the Iterable handle as the iteration progresses through the result set. | | | |
External REST integration | | | |
Backup Service | Community Edition | Enterprise Edition | ![]() |
---|---|---|---|
Backup Service Simplify the management of Couchbase cluster backups and restores with the Backup Service. The integrated web UI allows easy setup of scheduled, automated backups of the Couchbase cluster. As well as being able to backup and restore data, you can also view info about the backups, task histories, and examine data in the backups. All of the Backup Service functionality is also available through REST APIs. | | | |
Development and Administration Tools | Community Edition | Enterprise Edition | ![]() |
---|---|---|---|
Web-based UI Couchbase Web Console provides a graphical user interface for the management of a Couchbase cluster. | | | |
Robust SDKs for Node.js, .NET, Python, Java, Scala, Go, PHP, C, and Ruby | | | |
Import and export tools | | | |
REST API The Couchbase Server REST API enables you to manage a Couchbase Server deployment and perform operations such as storing design documents and querying for results. | | | |
Command line tools Couchbase Server command-line interface (CLI) tools are provided to manage and monitor clusters, servers, vBuckets, XDCR, and so on. | | | |
Web-based Data Import UI | | | |
Actionable alerts | | | |
Non-root install and upgrade Most enterprises have strict security regulations that do not allow an application to run as root access within their production environment. With Couchbase Server 6.6, we now standardize the non-root install and upgrade for RPM packages to match the root install and upgrade procedure. This will now allow customers to easily install, upgrade, and maintain Couchbase Server as non-root. This adds an extra layer of security and complies with the de facto standard in containerized environments. | | | Not applicable |
OpenShift integration | | | Not applicable |
High Availability and Disaster Recovery | Community Edition | Enterprise Edition | ![]() |
---|---|---|---|
Intra-cluster replication Intra-cluster replication provides protection against node failures within the cluster. Replication between Couchbase Server nodes is included in both Enterprise and Community Editions. | | | |
Automatic failover The smart cluster manager built into Couchbase Server detects and recovers from node failures using auto-failover. Manual and auto-failover between Couchbase Server nodes is included in both Enterprise and Community Editions. | | | |
Online rebalancing Online rebalance redistributes the load across nodes as the Couchbase Server cluster expands and shrinks by adding and removing nodes. The ability to add or remove nodes and rebalance the cluster data distribution among Couchbase Server nodes is included in both Enterprise and Community Editions. | | | |
High-performance enterprise backup and restore tools Big data applications store many TBs of data, and backup and restore operations can be time consuming. With the Couchbase high-performance, enterprise backup and restore tool, administrators can back up and restore data efficiently, minimizing downtime, and improving business continuity and disaster recovery. As of 7.0, the enterprise backup and restore tool is available in both the Community Edition and the Enterprise Edition. However, the EE features can only be used with EE Couchbase Server or Couchbase Capella. | | | |
Bucket-level backup and restore | | | |
Collection-level backup and restore | | | |
Backup to AWS S3 For enterprise architects and developers who want to leverage cloud-based object stores for their disaster recovery or archival use cases, or who want to build containerized applications, Couchbase’s support for object store provides the ability to directly back up to and restore from AWS S3 or any S3-compatible interface. | | | |
Automatic failover of disk failures, multi-nodes, and server group | | | |
Rack/availability zone awareness Administrators can use rack and zone awareness (server groups) in a Couchbase Server deployment to ensure smart placements of replicas across racks and availability zones. Rack and zone awareness with Couchbase Server places replicas to protect against rack or availability zone failures in public or private cloud deployment. This protection is available only in the Enterprise Edition. | | | |
Cross Datacenter Replication | Community Edition | Enterprise Edition | ![]() |
---|---|---|---|
Cross datacenter replication (XDCR) Globally distributed applications use XDCR to replicate their Couchbase Server data across multiple datacenters. The ability to replicate data across datacenters between multiple Couchbase Server clusters is included in both Enterprise and Community Editions. | | | |
XDCR filtering and throttling | | | |
XDCR advanced filtering | | | |
XDCR timestamp-based conflict resolution Couchbase Server comes with a new option to resolve conflicts with XDCR using timestamps. With this option, conflicts are resolved by comparing timestamps of conflicting documents. This option is available only in Enterprise Edition. | | | |
XDCR – prioritization of replication | | | |
Security | Community Edition | Enterprise Edition | ![]() |
---|---|---|---|
Single sign-on | | | |
Authentication | | | |
Authorization | | | |
Role-based access control (RBAC) Administrators in Couchbase Server can be restricted to specific roles to manage nodes, buckets, security administration, and more. Only the Enterprise Edition comes with role-based access control. | | | |
LDAP integration Couchbase Server can be integrated with central account management systems within the enterprise through LDAP. Only Enterprise Edition comes with integration for LDAP. | | | |
LDAP group support | | | |
LDAP support for client certificates | | | |
Encrypted network access To comply with security requirements, Couchbase Server administrators can use encrypted communication for managing public and private cloud deployments . Only Enterprise Edition comes with encrypted communication capabilities for cluster administration. | | | |
Encrypted Private Keys | | | |
Multiple certificate authorities within cluster | | | Not applicable |
x.509 CA certificates for TLS | | | |
x.509 CA certificates for data service authentication | | | |
Integration to key management systems for TLS private key passphrase | | | |
Auditing | | | |
Log redactions | | | |
Client-side field-level encryption | | | |
Node-to-node encryption | | | |
Cipher management | | | Not applicable |
Performance and Scaling | Community Edition | Enterprise Edition | ![]() |
---|---|---|---|
Automated scaling | | | |
Homogeneous scaling (by node) | | | |
Multi-Dimensional Scaling (MDS) (by service) | | | |
Fast failover | | | |
Multi-node, concurrent failover protection | | | |
End-to-end compression (client to server and XDCR) | | | |
ARM processor support | | | Not applicable |
Couchbase Autonomus Operator
Couchbase Lite
Data Access Service | Community Edition | Enterprise Edition |
---|---|---|
Support for iOS, Android, Java (desktop/server), C, and .NET (UWP and Xamarin) The Couchbase Lite embedded database is supported on all the major mobile platforms, including iOS, Android, and .NET. And it supports all major languages, including Swift, Objective-C, Java, and C# (C sharp). The .NET framework supports desktop and mobile UWP apps as well as cross-platform Xamarin apps. The Java framework is supported on desktop and server environments. | | |
Asynchronous Event Notifications To facilitate the development of reactive applications, Couchbase Lite can be asynchronously notified of changes to the database, of replication status at the granularity of an individual document, or of updates to the results of a query. | | |
Query (QueryBuilder and SQL++) Couchbase Lite supports an extensive query interface with SQL extended to support JSON data . The query API includes support for joins, functions, aggregates, filters, pagination, math functions, parameterized queries, pattern matching, string manipulation, and more. | | |
Full-Text Search (FTS) Couchbase Lite’s Full-Text Search capabilities enable natural language querying locally within your mobile or embedded desktop and server apps. This enhances the pattern matching capability by enabling support for stemming, relevance-based ranking, and locale-specific natural language processing. | | |
Peer-to-peer synchronization Peer-to-peer sync allows devices running Couchbase Lite to directly sync data with each other without a centralized entity. Couchbase Lite is responsible for storing the data and sync protocol. Applications can send and receive data using any third-party peer-to-peer framework. | | |
Predictive queries Predictive queries allow applications to run prediction queries against Couchbase Lite data using pretrained machine learning (ML) models bundled along with the apps. The new prediction functions allow apps to combine real-time predictions made on real-time app input against data stored in the database. | | |
High Availability and Disaster Recovery | Community Edition | Enterprise Edition |
---|---|---|
Automatic conflict resolution Document conflicts are automatically handled at the time of save using a predefined set of conflict resolution policies. The database is thus conflict free. This functionality removes the hassle of dealing with conflicts and saves disk space because conflicting revisions will no longer be stored in the database. | | |
Custom conflict resolution As an enhancement to automatic conflict resolution, Couchbase Lite apps have the option of overriding the default conflict resolution policy by defining their own custom conflict resolver. If a custom resolver is not defined, the platform will fall back to the default policy. | | |
Device-side replicas Device-side replicas support on-device failover by supporting replication between two local databases. This allows a Couchbase Lite replicator to store data on secondary storage, which is especially useful in scenarios where a user’s device is damaged and the data needs to be moved to a different device. | | |
Security | Community Edition | Enterprise Edition |
---|---|---|
Data transport over TLS All communication between Couchbase Lite clients and Sync Gateway is encrypted using transport layer security (TLS, also known as HTTPS or SSL). This not only encrypts data (including passwords and login tokens) against eavesdroppers, but also protects against man-in-the-middle attacks by verifying to the client that it’s connecting to the real server, not an impostor. | | |
On-device data encryption In addition to securing data in transit, Couchbase Lite offers enterprise-grade security by allowing Couchbase Lite clients to encrypt local databases. | | |
Client side field-level encryption Using the client-side encryption capability, Couchbase Lite C clients can encrypt fields in documents prior to replicating data over the wire to Couchbase Server. Only clients with access to the correct encryption keys can decrypt and read the protected data. | | |
Sync | Community Edition | Enterprise Edition |
---|---|---|
Sync via WebSockets Our sync protocol is implemented as a messaging protocol layered over WebSockets. The protocol enables full-duplex message passing between hosts. The same protocol is used for edge to cloud replication between Couchbase Lite and Sync Gateway, peer-to-peer replication between Couchbase Lite clients, and database to database replication. | | |
Delta sync Delta sync is the ability to replicate only the parts of the document that have changed. This can result in significant savings in bandwidth consumption along with throughput improvements, especially when network bandwidth is constrained. | | |
Sync Gateway
Configuration | Community Edition | Enterprise Edition |
---|---|---|
Centralized Persistent Configuration Modular, “cluster-aware” approach to configuring Sync Gateway nodes in a cluster. Configuration updates can be made in a modular fashion through a REST endpoint. Changes made against one Sync Gateway node are automatically propagated to all or a user-defined subset of Sync Gateway nodes in the cluster. | | |
Database Configuration Groups At a high level, a database config group specifies the subset of sync gateway nodes to which a database config will apply. By default, all the nodes belong to a default config group and users can define config groups to narrow the scope of the database config. | | |
Data Access Service | Community Edition | Enterprise Edition |
---|---|---|
Data integration APIs, including REST, stream, batch, and event Sync Gateway’s public and admin REST APIs allow you to develop web applications that interface directly with Sync Gateway, or to integrate with data from other external systems. | | |
High Availability and Disaster Recovery | Community Edition | Enterprise Edition |
---|---|---|
Built-in high availability of import processing Enterprise customers can designate multiple Sync Gateway nodes to process writes coming in from Couchbase Server (aka “import processing”) without incurring the overhead of duplicate processing of the data stream by every designated node. That way, even if a node goes down the other nodes can take over the import shard without incurring any downtime. | | |
High availability of Sync Gateway replications The system supports built-in high availability of Inter Sync Gateway replications to ensure that replications are uninterrupted even if the replicating node goes down. When a node goes down, the replication is automatically scheduled on an available node. | | |
Security | Community Edition | Enterprise Edition |
---|---|---|
User authentication in Sync Gateway Sync Gateway supports OpenID Connect. This allows your application to delegate the authentication to a third-party authentication provider. | | |
Fine-grained access control for client access Sync Gateway is the primary data access enforcement point for connected clients. Every document write gets processed by a user-defined JavaScript sync function that can be used to define the rules for data validation, data routing, and access control. This ensures that users can only access document(s) they have been granted access to. | | |
Fine-grained RBAC controls for Sync Gateway Admin Access Different applications have different purposes and different users. User-level access restrictions offer more flexibility than network-level firewalls. WIth fine grained RBAC controls, only users with a specific Sync Gateway role will be able to administer the Sync Gateway through the admin REST. | | |
User Defined Extended Attributes (XATTRs) for storing access grants With this option, users can specify Sync Gateway access grant information such as channels and roles within user-defined Extended Attributes(XATTRs) outside of the document body. The separation of access grant metadata from document body is logical and offers several benefits. | | |
Data transport over TLS for Client Access All communication between Couchbase Lite clients and Sync Gateway and between Sync Gateway and Couchbase Server is encrypted using transport layer security (TLS, also known as HTTPS or SSL). This not only encrypts data (including passwords and login tokens) against eavesdroppers, but also protects against man-in-the-middle attacks by verifying to the client that it’s connecting to the real server, not an impostor. | | |
Data transport over TLS for Server Access | | |
Sync Gateway log redactions Logs are critical for the supportability of the platform. However, logs may contain sensitive or personally identifiable information (PII), which would make it a challenge to share logs with the support team. WIth the log redaction capability, sensitive data is redacted during post-processing of the logs before it is uploaded to support. | | |
Sync | Community Edition | Enterprise Edition |
---|---|---|
Sync via WebSockets Our sync protocol is implemented as a messaging protocol layered over WebSockets. The protocol enables full-duplex message passing between hosts. The same protocol is used for replication between Couchbase Lite and Sync Gateway, peer-to-peer replication between Couchbase Lite clients, database to database, and Inter Sync Gateway replication. | | |
Delta sync Delta sync is the ability to replicate only the parts of the document that have changed. This capability is available for data synced between Couchbase Lite clients and Sync Gateway as well as data synced between Sync Gateway clusters using inter-Sync Gateway replication. This can result in significant savings in bandwidth consumption along with throughput improvements, especially when network bandwidth is constrained. | | |
Inter-Sync Gateway replication (aka “SG-Replicate”) Inter-Sync Gateway replication supports resilient, secure, scalable, bidirectional synchronization of data between cloud datacenters and between cloud and edge datacenters. | | |
Automatic conflict resolution Document conflicts are automatically handled at the time of save using a predefined set of conflict resolution policies. This capability is available for data synced between Couchbase Lite clients and Sync Gateway as well as data synced between Sync Gateway clusters using inter-Sync Gateway replication. This functionality removes the hassle of dealing with conflicts and saves disk space because conflicting revisions will no longer be stored in the database. | | |
Advanced conflict resolution support in inter-Sync Gateway replication For handling document conflicts in inter-Sync Gateway replications, users can override the default conflict resolution policy by using out-of-the-box resolver functions or defining their own custom conflict resolver as a JavaScript function. | | |
Performance and Scaling | Community Edition | Enterprise Edition |
---|---|---|
Advanced Sync Gateway cache configuration Enterprise customers can tune the Sync Gateway channel cache and revs cache settings that will best meet the needs of large-scale deployments. | | |
Linear scaling of import processing Enterprise customers can designate multiple Sync Gateway nodes to shard the processing of writes (aka “import processing”) coming in from Couchbase Server. The throughput of the import writes linearly scale with the additional nodes. Enterprise customers can also fine-tune the configuration to optimize import processing for the size of their deployment. | | |
Enhanced write scaling Enterprise customers with large-scale concurrent writes can reap the benefits of a series of write processing enhancements in the Sync Gateway. These include optimizations for marshaling and unmarshaling of JSON document body and configurable options for caching of the documents in revision cache. | | |
Load balancing of Sync Gateway replications Inter-Sync Gateway replications are uniformly distributed among all participating Sync Gateway nodes. This optimizes resource utilization and ensures that the replication load is uniform across the Sync Gateway nodes. | | |
Performance tuning of Sync Gateway replications Enterprise customers have configuration options that can be tuned in order to optimize the performance of inter-Sync Gateway replications. | | |
Couchbase Updates & Support
Software Updates and Support | Community Edition | Enterprise Edition | ![]() |
---|---|---|---|
Community contribution and GitHub repository access | | | |
Frequent releases with quality improvements Couchbase Server Enterprise Edition ships frequent product updates with the latest feature enhancements and quality improvements. Community Edition releases run behind Enterprise Edition by several months. | | | |
Worldwide 24x7 support Couchbase Server Enterprise Edition ships frequent product updates with the latest feature enhancements and quality improvements. Community Edition releases run behind Enterprise Edition by several months. | | | |
Patches and maintenance updates Couchbase Server Enterprise Edition ships frequent product updates with the latest feature enhancements and quality improvements. Community Edition releases run behind Enterprise Edition by several months. | | | |
Professional services Enterprise Edition customers can receive professional services from Couchbase for sizing and capacity planning for production deployments, for data models, and for code or architecture reviews for applications. | | | |