我是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;
}
}
我认为会有更好(更快?)的方式,不需要得分等......
答案 0 :(得分:4)
使用不具有任何评分的过滤查询,而不是搜索id equals,而不是使用fieldcache
SolrQuery query = new SolrQuery();
query.addFilterQuery("id:"+id);