Joh*_*nes 3 mysql memory heap innodb locking
我想用MySQL编写实时应用程序.
它需要一个小表(少于10000行),它将在重读(扫描)和写(更新和一些插入/删除)负载下.我说的是每秒10000次更新或选择.这些语句只在少数(少于10个)打开的mysql连接上执行.
该表很小,不包含任何需要存储在磁盘上的数据.所以我问哪个更快:InnoDB或MEMORY(HEAP)?
我的想法是:
两个引擎都可能直接从内存中提供SELECT,因为即使InnoDB也会缓存整个表.UPDATE怎么样?(的innodb_flush_log_at_trx_commit?)
我主要担心的是锁定行为:InnoDB行锁与MEMORY表锁.这是否会成为MEMORY实施的瓶颈?
谢谢你的想法!
如果你真的需要那么多的并发更新,几乎可以肯定innodb会表现得更好,因为HEAP表只有表级锁,而不是像Innodb那样的行级锁.
如果你从头开始我会调查使用MySQL 5.5或Percona的XtraDB,因为它们都包含了比MySQL 5.1更多的可扩展性改进.