1

我对 InnoDB 和 MyISAM 进行了很多搜索,我想我现在了解了它们的优缺点。但我正在寻找有关 InnoDB 的特定缺点的更多详细信息。我读过这对于有大量写入和更新的表来说非常有用,但在大表上选择速度较慢(我的表将是 +-10 百万)。

考虑到我的表将处理大量写入和更新(+-100/秒),但选择的发生频率较低(每天最多只有 500 次),总是由parent_id行选择。我在问自己;

InnoDB 在大表上有多慢?我还能期待在精选上的出色表现吗?

我找不到任何适合我的问题的基准。感谢您的帮助。

4

1 回答 1

2

我在任何地方都没有看到 InnoDB 在大选择时速度较慢,但​​我想这是可能的,因为这不是最高优先级。

尽管如此,既然您说您的系统将是大量写入,很明显 MyISAM 会在那里受到严重影响,因为它只能同时执行多个读取器或每个表的单个写入器。另一方面,InnoDB 管理行级锁,即使这样,它也允许多个读取器读取之前的版本COMMIT,它会原子地替换新版本的数据。

一个相关的问题是 ACID 合规性。没有这些,你真的有可能把你的数据变成一个无可救药的不一致的混乱;特别是大桌子和大量更新。

最后,即使您可以通过某种方式管理 MyISAM,使其性能优于 InnoDB,但这并不意味着 InnoDB 完全不合适。在极端情况下,您只需将几个 SSD 放入 RAID1,它就会愉快地处理每秒数千次更新。

于 2012-11-20T21:10:21.830 回答