【问题标题】:Install a Solr patch for TermVectors为 TermVectors 安装 Solr 补丁
【发布时间】:2019-11-29 09:37:32
【问题描述】:

我正在使用 Solr 8.0,我需要在我的代码中获取 TermsVectors 的结果,但我不能在我的 SolrQuery 中使用“tvrh”。我看到我需要在我的 Solr 上安装一个补丁,但我不知道该怎么做。

补丁链接:https://issues.apache.org/jira/browse/SOLR-949

有人可以帮我吗?

非常感谢

亚历克斯

【问题讨论】:

  • 该补丁适用于 2009 年的 Solr 版本。它已有十多年的历史,如果不进行大量编辑和采用,它不可能应用于 Solr 8。您必须自己完成它,或者更好的是,询问您实际需要 Solr 来返回什么。可能还有其他方法可以返回您正在查找的信息。
  • 好的,所以补丁是个坏主意。目标是从术语向量中获取 tf 和 df。我在一个字段中有一些文档内容,其想法是获取文档的每个术语及其 tf(术语频率)和 df(文档频率)
  • 然后您可以要求将结果作为 JSON 返回并将该响应解析为一个对象。有关示例,请参见 opensourceconnections.com/blog/2015/01/08/… - 如果它满足您的需要,我会将其添加为答案。
  • 我不确定您所说的“在 Solr 的响应之外”是什么意思 - 从服务器返回的 任何内容,无论内容如何,​​只要它是有效的 JSON,都会被返回通过将响应直接解析为 JSON。但是您的发现似乎很完美;它应该是 SolrJ 主要发行版的一部分。如果票证还没有,请添加一个链接,以便其他人知道。
  • 正确,我认为返回的 JSON 将是整个请求,而不仅仅是 response 部分。我可能错了

标签: java solr lucene solrj


【解决方案1】:

最后,我找到了另一种方法来解决我的问题。 我使用下面的代码来获取术语向量并将它们放入一个对象中,它工作得很好。

非常感谢您的帮助。

https://github.com/ColinHebert/Sakai-Solr/blob/master/impl/src/main/java/org/sakaiproject/search/solr/response/TermVectorExtractor.java

【讨论】:

    猜你喜欢
    • 2015-10-30
    • 2019-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多