0

我感兴趣的建议,当一个产品是建立索引产品的高效和稳健的结构,新的数据库,我建立(我使用MySQL)策略在关系数据库中

构建一个搜索索引通过表单输入有三个部分,我感兴趣的是用于搜索目的的索引。

  1. 产品称号
  2. 产品说明
  3. 标签

最重要的是冠军,其次是标签,随后描述。

我想使用以下结构

CREATE TABLE `searchindex` (
`id` INT NOT NULL , 
`word` VARCHAR(255) NOT NULL , 
`weighting` INT NOT NULL , 
`product_id` INT NOT NULL , 
PRIMARY KEY ( `id`) 
) 

然后,每一个产品被创建我会裂开的标题,描述和标记时间(除去公共字)的和给予奖励的加权。

然后,选择单词和相应的产品并通过加权来排序它是微不足道的。

有没有更好的方法来做到这一点?我会担心这个策略会随着时间的推移而减慢,并且数据库已经填满。

回答

1

对于标题,您可能只是索引第一对字符以在匹配时获得较小的子集,但对于描述,您应该真正考虑fulltext索引。这可以自动加权并找到最佳匹配