【问题标题】:Index setup for Search Attribute table in MySQL databaseMySQL数据库中搜索属性表的索引设置
【发布时间】:2012-12-14 22:04:29
【问题描述】:

我有一个包含许多表的数据库。在此数据库中,有一个表子集存储相似(但不同)数据行的信息,还有一个表包含可应用于每个表的常见搜索属性。

有 18 列可搜索变量,我不确定哪种方法是设置索引的最佳方式。我是为所有相关列创建一个Index,还是为每个列创建一个Index

【问题讨论】:

  • 你使用搜索索引引擎,比如 SOLR,而不是 MySQL
  • @ItayMoav 遗憾的是,这不是一个选择。不是我的服务器,所以不能做任何花哨的事情:(

标签: mysql indexing


【解决方案1】:

因为你不能使用 SOLR 或类似的。
您需要使用 MySQL 来模拟这一点。
为此,您创建一个表,您将所有其他表反规范化到其中。请注意,此表不会替换其他表。将其视为 VIEW。
举个简单的例子。我有一个产品,该产品可以有多种颜色代码。
规范化要求我有 3 个表。一张用于产品,一张用于颜色(名称|代码),一张用于链接它们的表格。

将其反规范化为一张表:产品代码(pk)|名称|颜色代码 1|颜色名称 1|颜色代码 2 |颜色名称 2 ..... 不,我相信您很容易决定索引什么(实际上基于您对该表执行的查询)。

显然这不是最佳选择,但是,您需要玩自己拥有的玩具。

其他需要考虑的,非常相似的,是使用星型模式

【讨论】:

    猜你喜欢
    • 2019-01-08
    • 1970-01-01
    • 2013-03-03
    • 1970-01-01
    • 1970-01-01
    • 2019-10-22
    • 2014-06-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多