0

我能够成功使用 sphinx rt 索引,但我有两个问题。第一个是如何在 rt 索引中为 ID 使用自动增量?

第二个是如何获取文本字段?文档说“您应该明确枚举所有文本字段”,我不知道该怎么做?我正在使用 PHP 来查询 rt 索引,我可以看到除文本字段之外的结果,我在 sphinx 文档中使用相同的索引。

index rt
{
    type = rt
    path = /usr/local/sphinx/data/rt
    rt_field = title
    rt_field = content
    rt_attr_uint = gid
}
4

1 回答 1

1

Sphinx 没有“自动增量”ID。您可以运行查询以查找最大 id,然后添加一个。但如果有多个客户端插入,它就不“安全”。没有锁索引。

字段不存储在索引中。所以你不能让他们回来。它们被标记和索引,但不被存储。

“枚举”注释是您需要列出索引定义中的所有字段。(不像磁盘索引,如果它没有被定义为一个属性,它会自动把一个列变成一个字段。)

另一方面,属性被存储,并且可以被检索。如果希望能够使列可搜索和可检索,则需要将其插入两次,一次作为字段,然后再次作为属性。

(注意 sphinx 并不是真的打算成为一个“数据库”——而只是一个索引。所以它围绕它“镜像”数据的情况进行设计)

于 2013-06-23T21:00:29.497 回答