我们目前使用InnoDB存储引擎,速度约为1k / s。将记录插入数据库后,它将在报告中查询,这就是问题所在。我们添加了正确的索引并压缩了表格,但它只有很大帮助。
大多数情况下,只有前30天的记录才能得到严格的查询,其余的则无法获得访问权限。超过一岁的记录真的没有被查询。此外,我们的用户只能真正访问最新的数据/记录。
Mysql的分区功能是否适合我们?我们是否必须通过我们的应用程序实现自己的分区?
答案 0 :(得分:0)
MySQL查询缓存可以显着提高SELECT查询的性能。如果您还没有使用它,那么您肯定可以从中受益,它可能比分区更容易实现。
查询缓存将SELECT查询的结果存储在内存中,如果在表更改之前再次向服务器发送相同的SELECT查询,则使用它们提供即时响应。
以下是分配2GB服务器内存以缓存SELECT查询所需的my.ini配置项的示例:
#Query Cache
query_cache_size = 209715200
query_cache_limit = 10485740