SphinxSearch的rt索引可以这样理解吗?假设前提:一个微博平台,帖子都是存入到Mysql,搜索时候使用sphinx搜索。1)rt索引是什么情况下会进行使用,是否可以这样理解,发布微博的时候,程序写入到Mysql的同时,插入到Sphinx的rt索引中?还是说 程序只负责写入MYSQL,然后crontab定时执行 indexer --all --rotate更新到Sphinx索引中?但这样rt索引一直都用不上?2)rt索引中的数据是什么进行清除,是否需要清除?还是每次重启Sphinx会自动清除rt索引内容?3)当MySQL有新记录数据写入的时候,是如何更新到Sphinx中。只能执行indexer --all --rotate进行把MySQL的数据更新到Sphinx中吗?但这样会有很大延迟,导致数据延迟。还是说相反,先写入到Sphinx rt索引,再用脚本读取再写入到MySql?
2 回答
www说
TA贡献1775条经验 获得超8个赞
rt索引应该不会在启动的时候清除,需要自己执行 TRUNCATE RTINDEX rt_index
可以参考stackoverflow
第三个问题应该是关于增量索引的问题。一般每天更新一个全量索引,然后当天的数据变化的更新通过增量索引实现。比如数据表有一个update_time字段(假设删除只是软删除),则每次获取 update_time大于最后创建全量索引的时间 的数据更新增量索引。
- 2 回答
- 0 关注
- 621 浏览
添加回答
举报
0/150
提交
取消