Hi, maybe some body can suggest how scale cluster.
I have cluster with config:
- 14 VM with 2 CPU, 10GB RAM, 200Gb (limits 5.5K IOPS 100Mb/s per VCPU)
- 4 VM with transaction + stateless
- 10 VM with storage + stateless, by 5VM each zone
- redundancy mode = double
- 5 coordinators, 1 GRV, 3 commit proxy
For performance I lauch test like this:
; This file is used by the Atlas Load Generator
testTitle=RandomReadWriteTest
testName=ReadWrite
testDuration=300.0
allowedLatency=0.025
transactionsPerSecond=20000
writesPerTransactionA=0
readsPerTransactionA=5
writesPerTransactionB=1
readsPerTransactionB=1
; Fraction of transactions that will be of type B
alpha=1
nodeCount=10000000
valueBytes=3800
minValueBytes=3400
discardEdgeMeasurements=false
warmingDelay=20.0
timeout=300000.0
databasePingDelay=300000.0
I receive result with 12K TPS. When run test all log & storages have 98% disk IO. But they used only 3 from 4 log instances. By monitoring logs and storage are used all quote for CPU.
How can I improve write performance? Maybe I can add transaction instances for sharding write workload?