Filesystems
comparison using sql-bench and mySQL (InnoDB)
Some loops in test scripts have been changed to have more accurate values:
| Script |
$opt_loop_count
old value |
$opt_loop_count
new value |
| test-ATIS |
100 |
500 |
| test-big-tables |
1000 |
20000 |
| test-connect |
10000 |
200000 |
| test-insert |
100000 |
10000 |
| test-wisconsin |
10 |
20 |
Raw results
can be found here.
Summary of the results
Because the scale the of the results is different for JFS/XFS,
There are two graphes for each test, one without JFS/XFS and one with JFS/XFS
(click on thumbnail to zoom)
JFS is 2 times slower and XFS 1.5 time slower than other filesystems.
Best filesystem is ext3 with delayed allocation.
JFS is 2.1 times slower and XFS 1.6 time slower than other filesystems.
All filesystems are very close, but ext2 and reiserfs seems more efficient.
The data=writeback and mballoc options should be not used in this case (slower).
JFS is 3.3 times slower and XFS 2.5 times slower than other filesystems.
Best filesystem is reiserfs. ext3 writeback + mballoc option can improve performances.
ext3 seems faster, but, remember, this is a test for testing the speed of connections and sending data to the client.
JFS is 4.5 times slower and XFS 2.1 times slower than other filesystems.
ReiserFS is the best filesystem.
JFS is 3 times slower and XFS 2.2 times slower than other filesystems.
ReiserFS is the best filesystem.
Patches are not really usefull to improve performances.
JFS is 1.3 times slower and XFS 1.2 time slower than other filesystems.
ReiserFS is the best filesystem.
Using patched ext3 generates worst results.
JFS is 3.5 times slower and XFS 2.5 time slower than other filesystems.
ReiserFS is the best filesystem.
Patches have no really impacts on results.
Results
|
alter-table |
ATIS |
big-tables |
connect |
create |
insert |
select |
wisconsin |
| ext2_defaults | 833.00 | 124.00 | 430.00 | 467.00 | 383.00 | 603.00 | 483.00 | 192.00 |
| ext3_data=ordered | 882.00 | 125.00 | 432.00 | 458.00 | 390.00 | 608.00 | 487.00 | 195.00 |
| ext3_data=ordered,extents | 852.00 | 125.00 | 431.00 | 460.00 | 389.00 | 607.00 | 481.00 | 194.00 |
| ext3_data=ordered,mballoc,delalloc,extents | 818.00 | 125.00 | 429.00 | 463.00 | 384.00 | 607.00 | 487.00 | 195.00 |
| ext3_data=ordered,mballoc,extents | 858.00 | 125.00 | 430.00 | 463.00 | 390.00 | 608.00 | 486.00 | 195.00 |
| ext3_data=writeback | 861.00 | 125.00 | 432.00 | 469.00 | 384.00 | 608.00 | 478.00 | 195.00 |
| ext3_data=writeback,extents | 833.00 | 125.00 | 429.00 | 459.00 | 383.00 | 609.00 | 485.00 | 195.00 |
| ext3_data=writeback,mballoc,delalloc,extents | 819.00 | 126.00 | 428.00 | 464.00 | 382.00 | 609.00 | 479.00 | 196.00 |
| ext3_data=writeback,mballoc,extents | 829.00 | 126.00 | 428.00 | 466.00 | 383.00 | 607.00 | 492.00 | 195.00 |
| jfs_defaults | 1502.00 | 268.00 | 1396.00 | 464.00 | 1715.00 | 1773.00 | 635.00 | 661.00 |
| reiserfs_defaults | 830.00 | 124.00 | 426.00 | 464.00 | 378.00 | 600.00 | 475.00 | 191.00 |
| xfs_defaults | 1215.00 | 198.00 | 1065.00 | 476.00 | 1028.00 | 1343.00 | 578.00 | 483.00 |
Without JFS and XFS
|
|
With JFS and XFS
|
Without JFS and XFS
|
|
With JFS and XFS
|
Without JFS and XFS
|
|
With JFS and XFS
|
Without JFS and XFS
|
|
With JFS and XFS
|
Without JFS and XFS
|
|
With JFS and XFS
|
Without JFS and XFS
|
|
With JFS and XFS
|
Without JFS and XFS
|
|
With JFS and XFS
|
Without JFS and XFS
|
|
With JFS and XFS
|