iiBench Contest Results

Posted on:



Share Button

At OpenSQL Camp in November we presented a challenge to insert one billion rows, maintaining indexes, into a MySQL table. The best results we have seen are:

WhoEngineTotal TimeTerminal RateNotes
Mark CallaghanInnoDB106.2 hours~1,800Google Patches
Tuned my.cnf parameters
10 disk SW RAID 0
Fake AmeliaMyISAM31.5 hoursavg 8,800400 Partitions
Devananda vdvInnoDB22 hours10,000128GB Memory*
Devananda vdvInnoDB10 hours~16,000128GB Memory*
4 parallel iiBench.exe

We intended iiBench to stress I/O bound indexed insertion workloads, and to produce useful indexes.

  • Mark Callaghan matched our intent the best, and his hardware configuration is close enough to the challenge that I’ll declare it
    within bounds. Mark achieved the highest InnoDB performance.

  • Fake Amelia got the best performance on MyISAM, and although I am concerned that spreading indexes across 400 partitions may provide poor query performance, query performance wasn’t explicitly part of the challenge. Fake Amelia achieved the highest MyISAM performance.
  • Although Devananda employed of 128GB (well above the contest limit of 16GB), his results provide an interesting measure of what
    happens when disk I/O is not the bottleneck.

We have received some excellent suggestions for how to improve iiBench. My two favorite suggestions are

  • to include deletions in the workload, and
  • to include periodic queries in the workload.

As of today, the iiBench tarball has been downloaded over 70 times. We hope you find this benchmark tool useful and we welcome suggestions for improvements.

Share Button

Tokutek, TokuView


Leave a Reply

Your email address will not be published. Required fields are marked *