2014-02-19 14 views
1

說明docValue已知的特定字段。是否有可能從索引中獲得與docValue匹配的docId列表?Lucene - 通過使用docValue獲取docId或文檔

我正在使用Lucene 4.6.0。

+0

什麼是_docValue_? – groverboy

+0

@groverboy對不起,這是DocValues aka。列步幅字段。 [DocValues](http://www.lucenerevolution.org/sites/default/files/Willnauer%20Simon%20-%20DocValues%20Column%20Stride%20Fields%20in%20Lucene.pdf) – manal

回答

0

這可以通過在DocValues上進行順序搜索(在磁盤或內存上)來實現。這與FieldCache中的值類似,但實現是不同的。

的Lucene 4.6你必須看看FunctionValue具體實現:http://lucene.apache.org/core/4_6_0/queries/org/apache/lucene/queries/function/FunctionValues.html

的Lucene 4.0的API是這樣的: 的DocValues.getDirectSource()返回,你可以使用源基於磁盤的訪問。 DocValues.getSource()用於基於內存的訪問。 Source類和特定的子類提供訪問這些值的方法。

+0

你能指點我的鏈接嗎?包含getEnum()的JavaDocs。我非常想在Lucene 4.6.0 – manal

+0

的JavaDocs中找到它,對不起,api發生了變化。我調整了我的迴應。 – fatih

+0

請原諒我,但我仍然無法找到類DocValues的JavaDocs。您能否請張貼鏈接。谷歌搜索引發了Lucene 4.1.0的結果。我正在使用Lucene 4.6.0。 – manal