有兴趣将Sphinx用于我的应用程序。计划安装最新版本2.x.然后使用Sphinx php api。我的问题是,我看到如何安装sphinx并设置配置文件,但如何设置索引器来更新sphinx的索引?我正在阅读不同的东西,不知道到底要做什么。我读了设置一个cron作业来运行索引器--all以每5分钟更新一次索引,我读过有关delta索引,实时索引的内容。我不知道要做哪些或者它们是否相关。我阅读了手册,但仍然对如何更新sphinx的索引感到困惑。任何人都可以帮助解释它更好或指向可以帮助我更好地理解这一点的其他文档吗?
*的 修改 * 因此,在做了一些额外的研究之后,我会假设delta是可行的方法。数据库中有很多条目,并且还有很多对数据库的插入和更新。但是仍然混淆了如何设置它,delta会成为这种情况的答案吗?
答案 0 :(得分:2)
所以答案是你提到的所有内容的组合。在最简单的设置中,您只需要一个索引,并且每隔n分钟通过一个cron更新它。这适用于较少量的数据。
如果您有大量数据,此解决方案无法正常工作,因为索引变得非常慢(想象一下,在具有大量行的表中选择所有数据)。要解决此问题,请使用增量索引。一个delta索引基本上说,“给我从最后一个索引的id开始的新行”(与主索引相反,它表示“给我这个表中的所有行”)。然后你有两个crons - 一个用来每n分钟更新一次delta索引,另一个用来“合并”两个索引(频率低得多)。
请参阅此网址以获取更多信息和更详细的操作方法:http://vocecommunications.com/blog/2010/09/extending-wordpress-search-with-sphinx-part-iii/