Lucene-使用docValue获取docId或文档

Lucene-使用docValue获取docId或文档,lucene,Lucene,假设某个特定字段的值是已知的。是否可以从索引中获取与docValue匹配的docId列表 我使用的是Lucene 4.6.0。这可以通过对docvalue进行顺序搜索(在磁盘或内存中)来实现。这与FieldCache中的值类似,但实现方式不同 在Lucene 4.6中,您必须查看FunctionValue的具体实现: 在Lucene 4.0中,API如下所示: getDirectSource()返回可用于基于磁盘的访问的源。用于基于内存的访问的DocValues.getSource()。源类和特

假设某个特定字段的值是已知的。是否可以从索引中获取与docValue匹配的docId列表


我使用的是Lucene 4.6.0。

这可以通过对docvalue进行顺序搜索(在磁盘或内存中)来实现。这与FieldCache中的值类似,但实现方式不同

Lucene 4.6中,您必须查看
FunctionValue
的具体实现:

在Lucene 4.0中,API如下所示:
getDirectSource()返回可用于基于磁盘的访问的源。用于基于内存的访问的DocValues.getSource()。源类和特定子类提供了访问值的方法。

@groverboy抱歉,这是DocValues。列跨距字段。你能给我指一下包含getEnum()的JavaDocs的链接吗。我想在Lucene 4.6.0的JavaDocs中找到它。对不起,api更改了。我修改了我的回答。对不起,我仍然找不到类DocValues的JavaDocs。你能把链接贴出来吗。谷歌搜索会抛出Lucene 4.1.0的搜索结果。我使用的是Lucene 4.6.0。对不起,在文档值周围发生了很多api更改。我给我的答案添加了实际的参考。看起来顺序搜索可能是唯一的选择。是否可以对DocValues使用筛选器并执行搜索?