大规模表中的查询优化

jul*_*enp -4 mysql performance query-optimization

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

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

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

我应该采取什么行动来实现这一目标?(我目前在Linode上使用MySql数据库......也许在Simple DB上会有帮助吗?)

Bra*_*vic 5

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

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

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

关于这个主题的介绍,我热烈推荐阅读使用指数卢克.