我有一个包含近300万条记录的产品数据库。我正在编写一个web服务来查询db。输出将被分配给客户端中的数组以进行字符串匹配(表现类似于您在Google搜索框中启动类型ipod)。有关如何优化查询或缓存它的建议,只有在产品刷新时才创建新缓存。产品数据库将每周刷新一次新产品,这意味着记录数量将随着时间的推移而增长。
答案 0 :(得分:1)
如果您需要在字符串的任何部分(LIKE'%string%'查询)中按产品说明进行搜索,我建议您使用FULL TEXT INDEX将唯一描述存储在另一个表中,每周更新一次(如果需要的话)。因此,当用户开始输入时,我们使用此表来输出建议。
当用户点击一个描述时,我们会在产品表中搜索此描述 - >所以我们需要在产品表中的描述栏中添加INDEX。
如果您只需要通过开始短语匹配(LIKE' string%' query),您只需将INDEX放在product table的description列上即可。