Hi Team,
Before using Magma as our backend storage engine, we ran a pillowfight test comparing couchstore and Magma with 128 vbuckets. Our CB cluster has three nodes (16 vCPUs, 32 GB RAM) with data and query services on all nodes.
We used the following command to populate data. The set-pct is 100 to ensure all six threads perform writes only.
date ; /opt/couchbase/bin/cbc-pillowfight -U couchbase://xx.xx.xx.xx/data2 -u cbadmin -P cbadmin -m 1000 -M 1000 -J --set-pct 100 --sequential -B 1 --start-at 0 -I 55000000 --populate-only -t 6 --rate-limit 30000 -p A -T ; date
We observed high disk reads during Magma (eviction policy full) bucket writes (verified via iostat till writes completes) on the data storage disk. The memory quota is 300MB, and the resident ratio is under 1%. For couchstore bucket (eviction policy value only) writes, we did not see such high reads; the resident ratio was 16%. As a result, CPU usage during writes is up to 38% higher with Magma than couchstore.
I am unable to interpret this load comparison. Could you please assist if anyone has observed a similar increase in CPU utilization when using Magma as backend storage, or if I am overlooking an aspect in my load test comparison?
Thanks,
Debasis