有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

c#在lucene索引中加载一个字段


加载内存中lucene索引字段所有值的最快方法是什么, 我有一个很大的lucene索引(1.6GB),我需要将所有(ID)字段加载到内存中,内存开销最小。当我遍历所有项目并读取该字段时,我会遇到内存异常(这对于加载索引字段来说也是非常慢的,我需要一个性能更好的解决方案)


共 (1) 个答案

  1. # 1 楼答案

    您可能需要首先说明为什么需要将字段加载到内存中

    您是否尝试过使用TermQuery和只包含要加载的字段的术语进行搜索?e、 g.新术语(“ID”)

    这样,您就不需要将所有值加载到内存中来迭代它们。相反,使用FieldSelector确保在加载每个搜索结果时只加载一个字段

    否则,使用Lucene的FieldCache获取所有ID字段的值