Benchmarking is a tricky thing, especially when it comes to compression. Some data compresses quite well while other data does not compress at all. Storing jpeg images in a BLOB column produces 0% compression, but storing the string “AAAAAAAAAAAAAAAAAAAA” in a VARCHAR(20) column produces extremely high (and unrealistic) compression numbers.
This week I was assisting a TokuDB customer understand the insertion performance of TokuDB versus InnoDB and MyISAM for their actual data. The table contained a single VARCHAR(50), multiple INTEGER, one SET, one DECIMAL, and a surrogate primary key. To support a varied query workload they needed 6 indexes.
Here is an obfuscated schema of the table:
col1 varchar(50) NOT NULL, col2 int(40) NOT NULL DEFAULT '0', col3 int(10) NOT NULL DEFAULT '0', col4 int(10) NOT NULL DEFAULT '0', col5 int(10) NOT NULL DEFAULT '0', col6[Read more...]




