作者:fionafongkaian | 来源:互联网 | 2014-05-29 08:43
上周末来自Percona的Vadim发布了一份MariaDB5.3.4benchmarkresults.而我做为MontyProgram的新成员,我想补充一些我自己的测试结果。在Vadim测试结果中有个评论说:拿MariaDB5.3.4和MySQL5.5来比较是否公平,应该是跟MySQL5.1进行比较
上周末来自 Percona 的 Vadim 发布了一份
MariaDB 5.3.4 benchmark results. 而我做为 Monty Program
的新成员,我想补充一些我自己的测试结果。
在 Vadim 测试结果中有个评论说:拿 MariaDB 5.3.4 和 MySQL 5.5 来比较是否公平,应该是跟
MySQL 5.1 进行比较,因为 MariaDB 5.3.4 是基于 MySQL 5.1 的。我想说这问题并不大,因为 MySQL
5.5 和 MySQL 5.1 在 Sysbench 的 OLTP 性能测试结果相差不大。
因此我创建了一个跟 Vadim 类似的 Sysbench 测试环境,包括如下几个测试版本:
MariaDB-5.3.4 ? Monty Program 的最新版本,包括 XtraDB 和 InnoDB 插件
Percona-Server 5.1.61 因为它也是和 MariaDB 5.3 一样基于相同的 XtraDB 版本
Percona-Server 5.5.20 ? 最新的 Percona Server 版本
MySQL-5.5.20 ? 最新的 MySQL 版本
下图是测试结果:
可看到 MariaDB-5.3.4 在性能上比 MySQL 5.5.20 差很多,而 Percona Server 5.1
和 5.5 之间相差也不大,但如果 MariaDB 5.3.4 使用 InnoDB 存储引擎而不是默认的 XtraDB
引擎的话,MariaDB 的性能将超过 Percona Server 5.5 很多。
因此在以后的 MariaDB 版本中我们将会一直提供 InnoDB 存储引擎支持,我们也正在研究为什么 MySQL 5.1
性能比 MariaDB 5.3 还要好,甚至它们使用的是相同的存储引擎。
另外 Sysbench
是一个综合的基准测试工具,真实环境下的负载受多方面的各种因素影响。另外此次测试使用的是固态硬盘,其达到饱和度比普通磁盘要早得多,这个可能也影响了一些测试结果。
如果我能下一个结论,那么我想说,如果你需要最高并发级别的那么请选择 MySQL 5.5 或者是等待 MariaDB
5.5.
如果你的应用包含非常复杂的查询和子查询,那你将会受益于 MariaDB 的
新的优化特性. 另外如果你需要数据库复制功能,那么 MariaDB 5.3 的
group-commit 将比任何一个版本的 MySQL 更强。
测试环境:
sysbench OLTP multi-table.
16 tables with 250K rows each.
20G InnoDB buffer pool.
Data and logs on SSD.
Dual socket hexacore Xeon with HT enabled (24 logical
cores).
你可以下载本次测试的脚本、配置以及测试结果:
sysbench-XL-2012-02-21.tar.gz