Active Vs Replica copy status


I have few questions around couchbase replication and backup.

  1. Is there any way to find the node who is hosting replica copy for given active partition/copy ?

  2. Is there any way to compare / find if replica and active copies of all nodes in cluster are in sync ?

  3. What is difference between cbtransfer and cbbackup tools ? they work per node or on entire cluster ?



Regarding your first question: By definition all active copies are in sync, as couchbase is strongly consistent. Each Bucket is partitioned into 1024 partitions referred to as vBuckets, distributed evenly across the cluster. Unlike typical AP systems, there is only one active copy of the data across the cluster. There is no quorum or voting on copies to compare and or return results. Replicas (with a Maximum of 3) are partitioned in the identical manner, and are updated asynchronously in the identical manner active partitions are updated. Within each replica, there is only copy of the data, which also lends to the strong consistency model.

Regarding your second question, from the docs: In addition to transferring data between clusters and to/from files, the cbtransfer tool can also be used to create a copy of data from a node that is no longer running. This tool is the underlying, generic data transfer tool upon which cbbackup and cbrestore are built.