Benchmarks vs. InnoDB – Flash

Links to the various benchmarks can be found here:

Additional details on the software settings for each test can also be found in the Appendix at the end of this page.


iiBench — Over 9x Faster Insertions back to top

iiBench is a popular open-source benchmark developed by Tokutek. It measures how fast a storage engine can insert rows while maintaining secondary indexes. This is often a critical performance measurement since maintaining the right indexes will dramatically improve query performance. The schema consists of short rows that model a retail point-of-sale transaction system. The results below show the insertion of 1 billion rows into a table while maintaining three multicolumn secondary indexes. At the end of the test, TokuDB’s insertion rate remained at 14,532 inserts/second whereas InnoDB had dropped to 1,607 inserts/second. That’s a difference of over 9x.

MySQL Performance

Platform: Centos 5.6; 2x Xeon L5520; 72GB RAM; LSI MegaRaid 9285; 2x 256GB Samsung 830 in RAID0.

Interested in more? Read about TokuDB for MySQL performance, or download TokuDB for MySQL performance today.


Compression — Highest Compression back to top

Compression is an always-on feature of TokuDB. We tested InnoDB compression with two values of key_block_size (4k and 8k) and with compression disabled. To find the maximum compression, we loaded some web application performance data (log style data with stored procedure names, database instance names, begin and ending execution timestamps, duration row counts, and parameter values). TokuDB achieved up to 26x compression, far more than InnoDB. In addition, in the second chart, you can see that even with compression, TokuDB performance remains superior, as indicated by the load speeds for each run.

MySQL Compression

Platform: Centos 5.6; 2x Xeon L5520; 72GB RAM; LSI MegaRaid 9285; 2x 256GB Samsung 830 in RAID0.

Interested in more? Read about TokuDB for MySQL compression, or download TokuDB for MySQL compression today.


Wear Life — Extended Wear Life back to top

B-trees write small blocks, resulting in more writes and increased wear. Fractal Tree indexes write fewer and larger blocks, reducing wear. In this example, TokuDB (avg block size 215k) is performing 25x more writes than InnoDB (avg block size 23k).

Platform: Centos 5.6; 2x Xeon L5520; 72GB RAM; LSI MegaRaid 9285; 2x 256GB Samsung 830 in RAID0.

Hot Schema — Schema Changes in Seconds, not Hours back to top

You can add or delete columns from an existing table with minimal downtime — just the time for MySQL itself to close and reopen the table. The total downtime is seconds to minutes.

MySQL Schema Change

Platform: Centos 5.6; 2x Xeon L5520; 72GB RAM; LSI MegaRaid 9285; 2x 256GB Samsung 830 in RAID0.

Interested in more? Read about TokuDB and MySQL schema change, or download TokuDB with MySQL schema change support today.


Appendix – Software Configuration Details back to top

I. iiBench

Each data point is the average insertion rate for the last 2 million rows. Details on the iiBench benchmark can be found here.

II. Compression

Details on the compression benchmarks can be found here.

III. Wear Life

IO data from iiBench benchmark (on this page).

IV. Hot Schema

Ran iiBench for 20 minutes, added a column to iiBench table, ran iiBench for 20 minutes. Hot Column Addition and Deletion (HCAD) details can be found here.