Apache Tika 与 Apache Lucene

Apache Tika vs. Apache Lucene

我有一个关于分析文档的问题。 使用 Apache Tika,可以获取不同类型的不同文件的内容和元数据。

是否也可以使用 Tika 获取文件的关键字(即词干提取),或者我还需要 Lucene 吗?

我不知道这是否可行,但我建议在 lucene 中进行所有关键字分析。我的个人原因:

  • Tika 的主要目标是从文件中提取信息
  • Lucenes 定义了数据的分析和索引方式。如何分析数据对你的 Lucene 索引在搜索中的表现有很大影响(找到你期望找到的东西)
  • 这是一种关注点分离,Tika 只提取而 Lucene 关心搜索相关的东西

Tika 和 Lucene 做不同的事情。

Tika 的存在是为了从文件中获取数据。例如,您可以使用 Tika 从 PDF 中提取文本。

Lucene 是一个索引器。因此,当您向 Lucene 提供 Doc1.txt、Doc2.txt 和 Doc3.txt 时,它会为它们编制索引,以便稍后您可以搜索像 'hello' 这样的单词或短语,Lucene 会做出响应以及包含该词的文档列表,以及每个文档中的次数。

如果您要索引任意内容,您可以先使用 Tika 提取文本,然后使用 Lucene 对其进行索引。