【问题标题】:Lucene: Indexing a stream (not available in a buffer)Lucene:索引流(在缓冲区中不可用)
【发布时间】:2016-03-22 02:58:59
【问题描述】:

我想在读取流时使用 Lucene 对其进行索引。由于数据的大小和有限的 RAM,我无法将整个内容放入缓冲区;相反,我希望 Lucene 从流中消费,索引,等待更多数据可用,消费更多,直到 EOF。

Lucene 应该只缓冲它需要的内容:即部分令牌,直到获得足够的字符来结束令牌。

我可以用 Lucene 做到这一点吗?怎么样?

【问题讨论】:

    标签: stream lucene buffer


    【解决方案1】:

    您应该能够将Reader 传递给您的字段构造函数,而不是String。我相信这不需要将整个字段读入内存(我还没有对此进行大量测试)。您将无法将字段 存储,但如果您无论如何都无法将其加载到内存中,您为什么要这样做?

    但是,我不相信有任何方法可以一次只读取部分令牌。我相信您需要能够以绝对最小值将每个令牌加载到内存中。如果您的令牌太大以至于溢出可用内存,您可能需要重新考虑您的分析方案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-05
      • 2011-02-11
      • 2013-11-01
      相关资源
      最近更新 更多