【问题标题】:Query optimization in massive tables海量表中的查询优化
【发布时间】:2011-11-29 10:01:14
【问题描述】:

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

目前,当用户输入商店名称时检索商店的查询时间约为 15 到 20 秒(我们显示一个自动完成列表,以便用户直接从列表中选择)。

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

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

【问题讨论】:

  • 顺便说一句,1500 万行无论如何都不算​​大...
  • 查询工作量?索引?硬件?
  • 如果没有关于您的问题的任何信息,很难说些什么。
  • -1,您至少应该向我们展示缓慢的 select 语句。 那么你可以给你一个明智的答案,而不是“也许这个,试试那个....”
  • 你能显示你的查询吗?表结构?

标签: mysql performance query-optimization


【解决方案1】:

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

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

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

关于这个主题的介绍,我强烈推荐阅读Use The Index Luke

【讨论】:

    猜你喜欢
    • 2022-11-12
    • 1970-01-01
    • 2011-09-20
    • 2011-08-03
    • 1970-01-01
    • 1970-01-01
    • 2015-01-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多