在使用tika索引某些文档后,如何从solr关键字搜索中获取段落结果?

问题描述 投票:0回答:1

我使用TIKA索引文档。然后我想从段落开始到包含关键词的段落结尾。我尝试使用HighlightFragsize,但它不起作用。例如:有一个如下文档:

  • 当我很小的时候,我的父母带我去了很多地方,因为他们希望我更多地了解这个世界。多亏了他们,我亲眼目睹了世界的多样性和许多美丽的风景。
  • 但无论我走到哪里,在我心中,风景最美的地方都是我的家乡。

上面有两段。如果我搜索“我的父母”,我希望我能得到整段“当我很小的时候,我的父母.......很多美丽的风景”。不仅是本段的一部分。我使用HighlightFragsize来限制句子,但结果不是我想要的。请帮忙。提前致谢

solr solrj apache-tika
1个回答
0
投票

你还没有提供很多信息,但我假设你正在使用荧光笔,所以这里有一些你应该检查的东西:

  1. 保存解析数据的字段 - 是否存储?你能看到整个内容吗?
  2. 如果(1),文本是否长于51200个字符?默认的突出显示器配置有一个设置为maxAnalyzedChars的设置51200。这意味着突出显示器不会从匹配文档中突出显示的字段处理超过51200个字符以查找突出显示。如果是这种情况,请增加此值,直到获得所需结果。

突出显示极大的字段可能会导致显着的性能损失,在选择配置之前应注意这一点。有关详细信息,请参阅this

UPDATE

我不认为有任何名为HighlightFragsize的参数,但有一个名为hl.fragsize,可以在设置为零时执行您想要的操作。

尝试以下查询,看看它是否适合您:q=my+parents&hl=true&hl.fl=my_field&hl.fragsize=0

此外,在任何情况下,您都应该注意我在上面发布的前2个点。

更新2我认为没有直接的方法来做你想要的。您可以将字段拆分为多值字段,每个段落都存储为单独的值。

然后你可以使用hl.preserveMultihl.maxMultiValuedToExaminehl.maxMultiValuedToMatch来实现你所需要的。

© www.soinside.com 2019 - 2024. All rights reserved.