大规模表中的查询优化

时间:2011-10-02 13:54:27

标签: mysql performance query-optimization

我有一张包含实体店的桌子。该表大约有1500万行,有30列。

现在,当用户输入商店名称时检索商店的查询时间大约是15到20秒(我们显示自动填充列表,以便用户可以直接从列表中选择)。

我想达到2-3秒的查询时间,这样用户就不会感到沮丧。

为实现这一目标,我应采取哪些措施? (我目前在Linode上使用MySql数据库......也许在Simple DB上会有帮助吗?)

1 个答案:

答案 0 :(得分:5)

如果您所做的只是在特定字段上进行简单的等搜索或前缀搜索,那么在该字段上添加索引应该可以解决问题。

如果您正在做比这更复杂的事情,那么您必须意识到在数据库性能调整方面没有银子弹。你需要了解两者:

  • 您的数据的性质(如何访问和修改)
  • 以及索引和其他数据库技术如何实际工作。

关于这个主题的介绍,我热烈建议阅读Use The Index Luke