Optimizing comdb2 for running TPCC (OLTP) benchmark
- Dominant language
- C
- Stars
- 1.5k
- Forks
- 243
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 37
Description
Hello, currently we are runnig comdb2 on AWS and we are trying to figure out a way of optimizing the performance of the comdb2 running on TPCC (OLTP) benchmark. Our goal is to complete as many transactions as possible within 300 seconds.
### Workload
1. We are using TRANSACTION_READ_COMMITTED isolation. We are limited to use no more than 15 worker threads (otherwise there will be errors on our end, not comdb2 end).
2. The scale factor is 16 (Scale factor is the number of warehouses in TPCC).
3. Each worker is able to send another transaction immediately after one transaction completes.
4. Total Time for testing: 300 seconds.
5. Percent of transactions within above 300 seconds:
1. 45% NewOrder
2. 43% Payment
3. 4% OrderStatus
4. 4% Delivery
5. 4% StockLevel
### Cluster Config
One instance of [c4.4xlarge](https://aws.amazon.com/ec2/instance-types/), thus there is only one node in the cluster.
### Initial thoughts
Here are some of our initial thoughts:
1. increase cache size (64 mb -> 128 mb)
2. increase # of threads
3. increase log-sync-time
4. enable init_with_bthash
May I ask could you please provide some suggestions/hints on 1) what configs should we optimize 2) what value range of a specific config should we conduct experiment on ?
Thank you very much!
Contributor guide
Assessment
This issue has not been assessed yet.