MySQL查询优化---你的想法

时间:2011-01-14 10:23:06

标签: mysql

我知道这是一个非常广泛的问题,但这是我的情况: 1)我有一个启用了hibernate的java程序,它每15分钟将日志转储到MySQL(innoDB)中。它自己的日志数据是巨大的(100k-500k行日志)。

2)目前,根据时间戳,在前端,搜索和报告方面提供了两件事。

3)查询需要花费很长的时间(10-15分钟)来获得结果,即使我已经放置了索引并且已经使用EXPLAIN来研究它的花费时间等。

4)在MySQL服务器级别,我增加了查询缓存等。

我跪下来解决这个问题。我需要知道有什么办法可以提高查询速度。

提前致谢。 博

1 个答案:

答案 0 :(得分:0)

将全文搜索引擎与mysql结合使用。

例如狮身人面像。在每个插入周期后,让sphinx更新它的缓存。 你可以使用sphinxse(使用sphinx作为mysql中的存储引擎)来获得结果。 http://www.howtoforge.com/sphinx-as-mysql-storage-engine-sphinxse

对于500000个插页,也需要10到15分钟。 您应该使用MyISAM作为日志表的存储引擎,而不是使用INSERT DELAYED而不是INSERT(我不知道如何使用hybernate)。