[Maria-developers] Need suggestions for benchmarking MDEV-6676 parallel replication
Hi Axel, I'd like to ask your advice on some benchmarking of MDEV-6676. MDEV-6676 is about extending in-order parallel replication to be significantly more aggressive, and potentially get a _lot_ more parallelism on the slave. The basic idea is to just try to run _everything_ in parallel. If there is a conflict, the code will roll back the erroneous transaction and retry it, this time not in parallel. I have run a basic sysbench 0.5 OLTP on my laptop, and results were promising. However, I need something better than that. My main problem is that often when I run write-load benchmarks, the bottleneck is InnoDB log write or purge, or something like that. So the load does not really scale with multiple threads, even on the master, and parallel replication is not really that useful even if perfectly implemented. So do you have a suggestion for a write-load benchmark that scales well for medium concurrency, like 8-32 threads or something like that? And for a machine on which to run it? The best benchmark I think would be one that is I/O bound on a working set that is not in memory, on a machine with a disk subsystem that has good throughput at high concurrency. Because this should resemble the real-world use cases where parallel replication is most needed. Do you have any experience on running such benchmarks, and do we have any machines that could be used? Often the benchmarks I see in blogs are in-memory... Or do you have another suggestion? Thanks, - Kristian.
participants (1)
-
Kristian Nielsen