Architecture and concepts
Couchbase Server concepts include the different components and systems that make up an individual Couchbase Server instance and a Couchbase cluster including information and concepts needed to understand the fast and elastic nature, high availability, and high performance of the Couchbase Server database.
Cluster Manager The Cluster Manager is responsible for node and cluster management. Every node within a Couchbase cluster includes the Cluster Manager component.
Data storage Couchbase Server provides data management services using buckets , which are isolated virtual containers for data. A bucket is a logical grouping of physical resources within a cluster of Couchbase Servers.
RAM quotas RAM is allocated to Couchbase Server in the following configurable quantities: Server Quota and Bucket Quota .
vBuckets A vBucket is defined as the owner of a subset of the key space of a Couchbase cluster. These vBuckets are used to distribute information effectively across a cluster.
Caching layer Couchbase Server includes a built-in caching layer which acts as a central part of the server and provides very rapid reads and writes of data.
Disk storage Couchbase Server mainly stores and retrieves information for clients using RAM. At the same time, Couchbase Server eventually stores all data to disk to provide a higher level of reliability.
Shared thread pool A shared thread pool is a collection of threads which are shared across multiple buckets.
Disk I/O priority Disk I/O priority enables workload priorities to be set at the bucket level.
Tunable memory Tunable memory enables both value-only ejection and full metadata ejection from memory.
Expiration Each document stored in the database has an optional expiration value (TTL, Time To Live) that is used to automatically delete items.
Server warmup Whenever Couchbase Server is restarted, or data is restored to a server instance, the server undergoes a warmup process before data requests can be handled.
Replicas and replication Replicas are copies of data that are proved on another node in a cluster.
TAP The TAP protocol is an internal part of the Couchbase Server system that is used to exchange data throughout the system.
Database Change Protocol Database Change Protocol (DCP) is the protocol used to stream data changes to buckets.
Statistics and monitoring A complete set of statistical and monitoring information is provided through the Couchbase Web Console, CLI, and REST API.