作者归档: Axel Schwenke
几天前,MariaDB、MySQL 和 Percona 都发布了 5.5 服务器的新版本。所以我决定是时候再次运行 sysbench 并比较 OLTP 性能了。测试对象如下:
- MariaDB-5.5.24,使用 XtraDB(默认)或 InnoDB
- MySQL-5.5.25
- Percona Server 5.5.24-26.0
对于这些基准测试,我使用了我们可靠的老 pitbull 机器,它有 24 个 CPU 核、24G 内存以及由 3 块 SAS SSD 组成的不错的 RAID-0。
基准测试是 sysbench-0.5 多表 OLTP,使用 8 个表,总共 10G 数据。InnoDB 缓冲池为 16G,InnoDB 日志组容量为 4G(MySQL 的最大值)。…
当我发布了MariaDB-5.3.4 sysbench 结果时,我说 “如果你的工作负载包含复杂的(子)查询,那么你可能会从 MariaDB 的新优化器功能中受益更多”。今天我将展示一些针对复杂工作负载的基准测试结果。
该基准测试是 DBT3,它是 TPC-H 规范的一个实现。DBT3 是用 C 语言编写的,并托管在 Sourceforge 上。
DBT3 基准测试可以运行在不同的规模因子下 - 定义数据库的大小。我使用了规模因子 30,这产生了约 30GB 原始数据和约 48GB 的磁盘占用空间。运行基准测试的机器有 16G 内存。…
MariaDB-5.5.21-beta 是第一个包含新线程池的 MariaDB 版本。Oracle 为 MySQL Enterprise 提供了商业线程池插件,但现在 MariaDB 为社区带来了线程池实现!
如果你不熟悉这个术语,请阅读关于它的知识库文章。
线程池的主要设计目标是提高 MariaDB 服务器在大量并发连接下的可伸缩性。为了测试和演示这一点,我使用多达 4096 个线程运行了 sysbench OLTP 只读基准测试,以比较新的 pool-of-threads 和传统的 thread-per-connection 调度器
基准测试描述
- sysbench 多表 OLTP,只读
- 16 个表,总计 4000 万行(约 10G 数据)
- 16G 缓冲池 – 结果不受磁盘性能影响
- mysqld 绑定到 16 个 CPU 核,sysbench 绑定到另外 8 个
读写 OLTP 基准测试结果可用后将立即发布。…
上周末,来自 Percona 的 Vadim 发表了他的MariaDB 5.3.4 基准测试结果。作为 Monty Program 新负责基准测试的人,我借此机会添加一些我自己的更多结果。
对 Vadim 评论中的一个问题是,将 MariaDB-5.3 与 MySQL-5.5 比较是否公平,或者是否应该与 MySQL-5.1 进行比较。答案是:这不太重要。MySQL-5.5 和 MySQL-5.1 在 Sysbench OLTP 基准测试中显示出非常相似的结果。
所以我创建了一个与 Vadim 的环境非常相似的 Sysbench 环境,并测试了以下版本的 MySQL 服务器:
- MariaDB-5.3.4 – Monty Program 的候选发布版,同时使用 XtraDB 和 InnoDB 插件
- Percona-Server 5.1.61,因为它基于与 MariaDB-5.3 相同的 XtraDB 版本
- Percona-Server 5.5.20 – 当前 Percona 的旗舰版本
- MySQL-5.5.20 – 当前 Oracle 的旗舰版本
结果
确实,MariaDB-5.3.4 的可伸缩性明显差于 MySQL-5.5.20。…