2011-06-12 94 views
1

对我的应用程序使用Sphinx感兴趣。计划安装他们的最新版本是2.x.然后使用Sphinx php api。我的问题是,我看到如何安装sphinx并设置配置文件,但我如何设置索引器来更新sphinx的索引?我正在读不同的东西,不知道究竟该做什么。我读了设置一个cron作业来运行索引器 - 所有这些都是为了每5分钟更新一次索引,我已经阅读了有关delta索引和实时索引的内容。我不知道要做哪些或者甚至有关系。我阅读了手册,但仍然困惑于如何更新狮身人面像索引。任何人都可以帮助更好地解释它或指向其他文档,可以帮助我更好地理解这一点?狮身人面像,如何确定更新索引的方法?

* 编辑 * 所以做一些额外的研究后,我会假设增量将是要走的路。数据库中有很多条目,并且还有很多对数据库的插入和更新。但仍然困惑如何设置这一点,三角洲是这种情况的答案?

回答

2

所以答案是你提到的所有的组合。在最简单的设置中,你只需要一个索引,并且每n分钟通过一个cron更新它。对于较少数量的数据,这是很好的。

如果你有大量的数据,这个解决方案不能很好地工作,因为索引变得非常慢(想象一下,在具有大量行的表上选择全部)。要解决此问题,请使用增量索引。一个三角洲指数基本上说,“给我从我最后索引的id开始的新行”(与主索引相反,“给我所有在这个表中的行)”。然后你有两个crons - 一个用来每n分钟更新一次增量索引,另一个用来“合并”这两个索引(频率更低)。

看到这个网址的更多信息和更详细的操作方法:http://vocecommunications.com/blog/2010/09/extending-wordpress-search-with-sphinx-part-iii/