Couchbase Ephemeral Bucket support

Case IDInternal IDComponentPackage

MZ-32810Couchbase

couchbase_8.2.0.0.mzp


Ephemeral buckets support

Couchbase Server uses buckets to group collections of keys and values logically. There are three bucket types: Couchbase, Memcached, and Ephemeral. For more information, see the official Couchbase documentation.

Couchbase does not allow to change bucket type after the creation, so if you want to use Ephemeral buckets you must create them before running the workflow. 

Note!

You do not need to change anything in  couchbase profile and settings to use Ephemeral buckets. 


However,  uses Couchbase secondary indexes, so if you use Ephemeral buckets the Index Storage Mode should be set to memory-optimized. 

A secondary index can be saved in either of the two ways: memory-optimized or standard, otherwise the following error will be thrown when trying to create a secondary index:

Error example

{"msg":"GSI CreateIndex() - cause: Ephemeral Buckets Must Use MOI Storage\n","code":5000}


Memory-optimized index-storage is only available in Couchbase Server Enterprise Edition.

Ephemeral buckets are not saved to disk, they are retained in RAM only, however the Couchbase buckets stores data both in memory and on disk.
The following settings are different for Ephemeral buckets in Couchbase:

  • Replicas: The Replicate view indexes option is not available for Ephemeral buckets. It is available for Couchbase buckets only.
  • Bucket Priority: Background tasks exclude disk I/0, since this is not applicable to Ephemeral buckets.
  • Ejection Method: For Ephemeral buckets the options are: 

    • No ejection

    • NRU ejection

      Note!

      Ejection when applied to an Ephemeral bucket means removal of bucket-data from memory without persistence (since ephemeral buckets have no presence on disk).

  • Metadata Purge Interval.

See also https://docs.couchbase.com/server/6.0/learn/buckets-memory-and-storage/buckets.html#couchbase-vs-ephemeral-buckets