sphinx/coreseek及时更新删除索引数据

发表时间:2014-08-15     分类:sphinx    标签: coreseek 全文检索 spinx 

当我们删除数据时,sphinx需要等到更新索引文件时,才会更新。而我们的索引文件不可能实时更新的。所以就造成搜索出来的数据经常不存在的了。解决这个问题,除了实时索引外,其实我们还可以利用一个小技巧就可以实现:方法一:具体就是:建立数据表的时候就多一个字段,字段名为deleted 当php操作删除数据的时候,同时对索引进行更新,使用UpdateAttributes 然后当你查询的时候设置过滤SetFilter,将deleted为1的排除就可以了当然,上面只是一个方法方法二:不改变搜索实体的情况下,我们可以利用UpdateAttributes来把某个筛选项弄成永远不可能在正常范围之内的值。这样也可以起到删除临时数据的方法的了。注意:以上二种方法,使用UpdateAttributes只是在内存中删除的了。可以在配置文件searchd中# UpdateAttributes() 调用时候更新是否隔一......

阅读全文»

  • 1 篇文章 1/1 页