我有一张桌子。 由于该网站的性质,在该表中,如果我有400多个用户,那么它每小时会插入10万个新的行。
如果我已经接近4000然后2个小时左右,我将有至less500,000行插入。 这意味着每秒约800-1000个插入,甚至可能比这更多。
我如何准备这样的激烈使用表? 我在表中讨论的是每秒插入次数很多,我不希望它被locking或放慢速度。
表引擎是MyISAM,但它可以改变,以适应任何变化
这一切都取决于你的使用模式 – 你需要高性能的查找在这张桌子? 将查询分布在整个表格上还是仅仅是最新的数据? 如果select将主要命中最近插入的行 – 考虑分区 – 检查这 一点 。
myisam几乎+重写的负载听起来像一个坏主意给我。 去innodb。 了解该引擎的调整,使用快速磁盘,有足够的内存/缓冲池configuration,以适应RAM至less指数。
检查在mysqlperformanceblog发布 – 你会发现很多好的build议。
花费大量时间进行基准testing – 了解系统在长时间负载下的performance如何(您可能会看到由于检查点引起的性能下降 – 是否可以接受? 或者你可能需要5.5或xtradb来解决这个问题?]