in Systems

A few more MariaDB/ZFS Benchmark Results

In a previous article I reported some sysbench results for MariaDB running on bare metal vs different types of VM using ZFS. Before finalizing for deployment, I ran a few more tests after applying various optimizations to both ZFS and MariaDB. Most of these settings came from Let’s Encrypt’s lovely ZFS + MariaDB tuning guide.

The graph includes data from 2 of the previous configs: bare-metal with extt4, and LXC + NVMe SLOG drives. The other configs are the same as Config J, plus various further tweaks, as noted.

  • Config A: Debian on bare metal, ext4 fs
  • Config J: Debian LXC, ZFS, NVMe SLOG, LSI HBA
  • Config K: ZFS setting: atime=off
  • Config L: ZFS settings: logbias=throughput and redundant_metadata=most

The results:


To be honest, I’m not very happy with the quality of these results. I’ve tried hard to control all the factors I could. For example the same physical machines were used in every test, there were no other significant processes running on either the sysbench or mariadb machine, etc. But often several days and multiple reboots passed between test runs. And yet, the results seem to vary in surprising ways.

For example, looking at K, L, and M on the QPS Results 2 graph, it’s surprising to me that L reduced the speed somewhat, and M increateased it more than K and L both. To really isolate that further I would need to do multiple test runs (although each test run chugs away for 5 minutes on each of the 10 test elements, and then the average is taken). Also, I would need to say, undo the changes of config K and re-run to see how that affects things.

Also, and I should have included this info in the previous article, I was surprised by the difference when I replaced the HP RAID card (running in non-RAID mode) with a true NON-RAID HBA. In particular, the latency numbers (worse on the HBA) made me think that the HP RAID card had been caching in spite of being told not to. That sort of caching is undesirable so I’m willing to accept some reduced performance for that. But I’m really just guessing at this point because I don’t have time to re-install that card and run that test again.