对于 MySQL 性能,在其他条件相同的情况下,单线程处理器性能更重要还是整体性能更重要?

对于 MySQL 性能,在其他条件相同的情况下,单线程处理器性能更重要还是整体性能更重要?

假设我有两台服务器,都具有相同的 RAID 10 SSD HDD、128GB Ram 等。我想知道该买哪台服务器。以下两种设置之间的价格差异很大,我不想为 MySQL 可能不会使用或技术上会降级的资源支付大约两倍的价格?

服务器 1:单处理器 Intel Xeon E3-1270 v3 @ 3.50GHz,单线程 PassMark 得分为 2212

对阵

服务器 2:四核 Intel Xeon E5-4650 @ 2.70GHz,单线程 PassMark 得分为 1483

现在 4650 是价格更昂贵的 CPU,因为它是四核处理器,八核,而 1270 是单核处理器。我的直觉告诉我服务器 2 的性能要强大得多,但从单线程性能来看,服务器 1 实际上要好得多。

这让我很疑惑,对于 MySQL 性能,我是否应该只关注单线程性能,即选择服务器 1 以获得双赢?还是我的看法错了?

编辑: 附加信息(服务器 1 和服务器 2 之间相同)

1)CentOS 7 64位

2)一个非常大的数据库

3)数据库几乎全部是 MyISAM

答案1

你问的这个问题很有指向性。为什么?

你没有误解这个问题。我希望有更多人问这样的问题。

不管你信不信,在极少数情况下,旧版本的 MySQL 可以胜过新版本的 MySQL。什么时候?在单线程环境中。

我几年前写过一篇文章,其中引用了 MySQL Performance Blog

Percona 按照您的说法进行了全面比较,所有条件都相同。这适用于硬件和 my.cnf 配置。

带有 InnoDB 插件的 MySQL 4.1 和 MySQL 5.1(MySQL 5.1.38 引入了 InnoDB 插件(参见MySQL 5.1 文档The InnoDB Storage Engine标题为Additional Resources)) 似乎比“其他条件相同”的较新版本的 MySQL 速度更快。

当谈到“所有条件都相同”并寻求最佳性能时,您真正剩下的就是扩展硬件(添加更多 CPU、添加 RAM、获得更好的磁盘等)。使用旧版本的 MySQL 可能会有所帮助,但您只能听天由命,因为旧版本的 MySQL 仍然存在错误。

此时无需进行任何更改,只需使用服务器 1。

如果您决定使用更多 CPU,那么请升级 MySQL。必须正确调整 MySQL 对 InnoDB 的使用

相关内容