Sphinx,如何确定更新索引的方式?

问题描述

| 有兴趣在我的应用程序中使用Sphinx。计划安装其最新版本为2.x。然后使用Sphinx PHP API。我的问题是,我看到如何安装sphinx并设置配置文件,但是如何设置索引器来更新sphinx的索引?我在阅读不同的内容,不知道该怎么做。我阅读了设置cron作业以使用--all运行索引器以每5分钟更新一次索引的信息,我已经阅读了有关增量索引,实时索引的信息。我不知道该做什么,甚至是否相关。我阅读了手册,但仍然对如何更新狮身人面像的索引感到困惑。谁能帮助更好地解释它,或指向可以帮助我更好地理解这一点的其他文档? *编辑* 因此,在进行了一些额外的研究之后,我认为要走三角洲路要走。数据库中有很多条目,并且数据库也有很多插入和更新。但是仍然困惑如何设置,三角洲将是这种情况的答案吗?     

解决方法

        因此答案是您提到的所有内容的结合。在最简单的设置中,您只有一个索引,每n分钟通过一次cron更新一次。这适用于较少的数据量。 如果您有大量数据,则此解决方案将无法很好地工作,因为索引会变得非常慢(想象一下,在具有大量行的表上全部选择)。要解决此问题,请使用增量索引。增量索引基本上说“从上次索引的ID开始给我新行”(与主索引相反“给我表中的所有行”)。那么您就有了两个问题-一个可以每n分钟更新一次此增量索引,另一个可以“合并”两个索引(频率要低得多)。 有关更多信息和更详细的操作方法,请参见此url:http://vocecommunications.com/blog/2010/09/extending-wordpress-search-with-sphinx-part-iii/     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...