低延迟如何不=高吞吐量?

时间:2015-04-24 17:35:38

标签: mysql mongodb innodb myisam database

Through vs latency graph

上图显示了读取和更新操作的延迟,而列显示了吞吐量(操作/秒)我不确定MyISAM如何以如此低的延迟执行操作但在吞吐量方面仍与InnoDB保持同等水平? MongoDB在吞吐量方面也占主导地位,但延迟时间比MyISAM高。

这些结果有何意义?

2 个答案:

答案 0 :(得分:6)

嗯,说你有一辆方程式赛车和一辆公共汽车。公式1将快速携带单个pasenger,而慢速公共汽车可以以较慢的速度表示40个乘客。总线肯定会实现更高的吞吐量,但延迟更高。但请注意,如果公共汽车一次只能运载一名乘客,公共汽车将失去其吞吐量优势。

答案 1 :(得分:0)

毫无疑问,您提供的令人困惑的图表来自单个基准。基准测试的一个优点是你可以设计出什么样的说法。

现在在“结论”中射出一些漏洞:

MyISAM,如果来自多个线程的争用,可能会有糟糕的,甚至可怕的延迟和吞吐量。这是由于表级锁定。 (听起来基准测试只有一个线程运行。)

引擎的更新延迟差异很大 - 取决于是存在单个线程还是多个线程。他们是否在竞争相同的牌桌。或者是相同的行。

基准测试的“吞吐量”方面可能是针对复杂查询和更简单的NoSQL查询。