5

我是 SolrJ 初学者,想了解确定是否存在具有唯一 ID 的文档的最快方法是什么?我不需要该文档,我只想找出它是否已经在索引中。

现在我在 SolrJ 中尝试这样的事情:

private boolean solrContainsId(final String id) {
    SolrQuery query = new SolrQuery("id:" + id);

    try {
        long count = server.query(query).getResults().getNumFound();
        return count > 0;
    } catch (SolrServerException e) {
        return false;
    }
}

我认为会有更好(更快?)不需要得分等的方法......

4

1 回答 1

4

不要搜索 id equals,而是使用没有任何评分的过滤器查询,也可以使用 fieldcache

SolrQuery query = new SolrQuery();
query.addFilterQuery("id:"+id);
于 2011-10-31T13:09:56.060 回答