0

如何从 solr 获取结果的 docID?

我目前正在做的是,

我在 solr 中进行搜索请求。

我得到了某些记录(比如说 10)。

solrurl/start=0&rows=10

现在,我再次使用以下搜索请求

solrurl/start=10&rows=10

所以我得到了接下来的 10 条记录。

现在新记录被插入到 solr 中(比如 10 条记录)。现在如果我再次请求 solrurl/start=20&rows=10

所以我可能会得到重复的记录。

因此,如果我的 docID 比我可以通过小于该 docID 进行查询。

那么有可能获得docID吗?

4

2 回答 2

0

需要唯一键的用例

逐步添加文档。您不会从头开始重建索引,而是希望定期添加新文档。您可以添加两次相同的文档,它只会被存储一次。

这看起来像你的情况。您可能已经有一个可以用作唯一标识符的字段(例如:urlRSS 文章),否则请查看 Solr 生成的 UUID 字段(它在 Solr 4.x 中以不同方式声明)

于 2013-06-14T08:43:56.337 回答
0

根据此链接,Solr 不需要唯一的 id。您想要的是 Lucence 文档 ID。但是,泄露内部 Lucene 实现细节是不好的,尤其是当索引发生突变时 Lucene doc id 会发生变化。

您可以做的是,在输入数据时,您可以添加一个递增字段,您可以使用它来执行您想要的操作。

于 2013-06-13T15:30:11.543 回答