【问题标题】:How to index text files using apache solr如何使用 apache solr 索引文本文件
【发布时间】:2026-01-19 15:15:01
【问题描述】:

我想索引文本文件。经过大量搜索后,我了解了 Apache tika。现在在我研究 Apache tika 的一些站点中,我了解到 Apache tika 将文本转换为 XML 格式,然后将其发送到 solr。但是在转换它时只创建一个标签示例 ………… 现在我希望索引的文本文件是一个 tomcat 本地主机访问文件。此文件以 GB 为单位。我无法存储它和单个索引。我希望每一行都有 line-id ………… 这样我就可以轻松检索匹配的行。

这可以在 Apache Tika 中完成吗?

【问题讨论】:

    标签: solr lucene apache-tika


    【解决方案1】:

    Solr with Tika 支持从多种文件格式中提取数据。
    支持的文件格式的完整列表可以找到@link

    您可以提供上述任何文件格式作为输入,Tika 将能够自动检测文件格式并从文件中提取文本并将其提供给 Solr 以进行索引。

    编辑:-
    在将文本文件发送到 Solr 之前,Tika 不会将文本文件转换为 XML。 Tika 只会根据定义的映射提取元数据和文件内容并在 Solr 中填充字段。

    您必须将整个文件作为输入提供给 solr,这将作为单个文档进行索引,或者您必须逐行读取文件并将其作为单独的文档提供给 Solr。
    Solr 和 Tika 不会为您处理这个问题。

    【讨论】:

    • 抱歉更改问题。搜索后我知道你的建议是什么,所以我稍微修改了这个问题。你知道答案吗?
    • "你要么必须将整个文件作为输入提供给 solr" 你能用一个如何做到这一点的例子来更新你的问题吗?
    【解决方案2】:

    您可能希望查看DataImportHandler 以将文件解析为行或条目。这比在已经有内部结构的东西上运行 Tika 更好。

    【讨论】: