Architecture Overview

An overview of Couchbase Server’s architecture and core features.

Architecture and Core Features

This section provides descriptions of Couchbase Server’s architecture and core features. The descriptions are organized as follows:

  • Data: Couchbase Server stores data as items. Each item consists of a key, by which the item is referenced; and an associated value, which must be either binary or a JSON document.

    See Data for information.

  • Buckets, Memory, and Storage: Items are stored in named Buckets; being kept only in memory, others both in memory and on disk.

    See Buckets, Memory, and Storage for information.

  • Services and Indexes: Services can be deployed to support different forms of data-access: for example, the Data Service allows items to be retrieved by key; while the Query Service allows them to be retrieved by means of queries, designed in the N1QL query-language. Individual services can be configured to run across multiple cluster-nodes, allowing high-priority workloads to be distributed and scaled appropriately. Indexes support services, by enabling high-performance access to data.

    See Services and Indexes for information.

  • Clusters and Availability: A single node running Couchbase Server is considered a cluster of one node. As successive nodes are initialized, each can be configured to join the existing cluster.

    Across the nodes of each cluster, Couchbase data is evenly distributed and replicated: nodes can be removed, and node-failure handled, without data-loss. Data can be selected for replication across clusters residing in different data centers, to ensure high availability.

    See Clusters and Availability for information.

  • Security: Couchbase Server can be rendered highly secure, so as to preserve the privacy and integrity of data, and account for access-attempts. The security facilities provided cover areas including Authentication, Authorization, and Auditing.

    See Security for information.