【问题标题】:Solr: find groups containing a valueSolr:查找包含值的组
【发布时间】:2017-02-04 13:57:29
【问题描述】:

我有一个在 Solr 中索引的文档结构,这些文档按属性分组在一起。 假设我有一个由三个文件组成的组: A -> B -> C

我想通过属性值 V 执行查询,它将返回整个组,无论 A、B 还是 C 包含值 V。 例如 - 如果 B 包含值 V,查询将返回我的整个组 (A,B,C)。

这在 solr 中可行吗?

谢谢!

【问题讨论】:

    标签: search solr solrj solrcloud


    【解决方案1】:

    如果我理解正确,是的,这是可能的。您可以使用Graph query parser 来执行此操作:

    1. 您可以使用有关文档在某些字段中如何相互链接的正确信息来索引您的文档(请参阅文档中的示例)。
    2. 然后,您可以这样查询:

      q={!graph+from=in_edge+to=out_edge}id:A

    其中 id:A 是获取文档起始集的查询,而 {!graph ...} 是获取从起始集可访问的所有文档。

    一些注意事项:

    1. 仅适用于独立的 solr 或单个 Solrcloud 分片(尽管流式表达式中也提供了一些图形功能,但这些功能适用于所有分片,但目前功能较少)
    2. 取决于您想要访问的文档图表的外观(以及您如何索引边缘信息),工作情况下您可能需要运行两个查询,一个是从起始集获取文档,另一个是例如,让文档“到”起始集。

    【讨论】:

    • 是的,我想是的,你可以在 solr 的 jira 中追踪该信息
    猜你喜欢
    • 2022-01-01
    • 2012-11-20
    • 2017-05-01
    • 2014-12-16
    • 2019-08-04
    • 1970-01-01
    • 1970-01-01
    • 2019-05-24
    • 2020-04-19
    相关资源
    最近更新 更多