优化 MySQL 表以满足频繁使用

优化 MySQL 表以满足频繁使用

我有一张表。由于网站的性质,在该表中,如果我有 400 多个用户左右,它将每小时插入 100,000 个新行。

如果我有接近 4000 条记录,那么在 2 小时左右的时间里,我将至少插入 500,000 行。这意味着每秒插入约 800-1000 条记录,甚至可能更多。

我该如何为如此频繁的使用做好准备?我说的是每秒在表中插入相当多的内容,我不希望它被锁定或变慢。

表引擎是 MyISAM,但可以进行修改以适应任何变化

答案1

这一切都取决于您的使用模式 - 您是否需要在此表中进行高性能查找?查找会均匀分布在整个表中还是仅分布在最新数据中?如果选择主要命中最近插入的行 - 考虑分区 - 检查

myisam 几乎 + 重度写入负载对我来说听起来是个坏主意。转到 innodb。了解该引擎的调整,使用快速磁盘,拥有足够的内存/缓冲池配置以至少容纳 RAM 中的索引。

查看帖子mysql性能博客- 您会在那里找到很多好的建议。

花费大量时间进行基准测试 - 观察系统在长时间负载下的表现(你可能会看到由于以下原因导致的性能下降检查点- 可以接受吗?或者你需要5.5 或 xtradb解决这个问题?

相关内容