devloop icon
Metastores

database performance: Java Linux Databases: MySQL


mysql logo
MySQL version 5.0

JDKs

IBM's JDK 1.5 is marginally faster than the others on x86_64 but it also generates more load on the system.
Overall all JDKs and kernels performed similarily:

Hardware Impact

As expected, the improved hardware (faster Opterons with more RAM) performs around 20% better on the multi-threaded test.
More interrestingly the load average (shown as a dotted line) stays much lower as the number of threads is increased.
The load average is much lower for the i686 architecture than even on the upgraded setup (albeit with lower performance).

Architecture: 32-bit vs 64-bit

In single-threaded inserts (but strangely enough, not for updates), the i686 architecture shows a considerable lead for which we have no explanation:

Kernels

Apart from the architecture blip mentioned above, there is very little difference between kernel releases:


MySQL Engines Compared

All the other pages in this report cover only MySQL's MyISAM engine (as it is the default engine), but for good measure we also compared it with InnoDB and BerkeleyDB:

Insert Performance

For Inserts MyISAM is much faster than InnoDB, with BerkeleyDB very far behind:

Update Performance

Updates are also much faster with MyISAM than InnoDB, with BerkeleyDB again doing very poorly:

Select Performance

But for Selects, InnoDB and BerkeleyDB have the lead, although the gap is much smaller and it is eroded as the size of the table is increased:

It is worth noting that the load is consistently higher with BerkeleyDB - this even prevented some of the other tests from running.


For multi-threaded tests, the differences are not as extreme:

Multi-Threaded Select

Select is now faster with BerkeleyDB for up to 70 threads, InnoDB is more consistent and scales better than MyISAM:

Especially with more threads (BerkeleyDB was not tested due to high system load):

Multi-Threaded Update

Updates are faster with MyISAM, and the load is also lower (BerkeleyDB was not tested enough):

Multi-Threaded Combined Test

Overall, when running the combined test (concurrent insert, update, select & delete), the engines produced equal performance (this result is suspicious and will need to be confirmed):

Jump to page:

Databases