[英]Solr 4.8 faceting on nested documents
使用“ JSON Facet API” http://yonik.com/solr-nested-objects/可以在solr 5.3中对嵌套文档进行构面
我使用的是Solr 4.8版,因此无法使用“ JSON Facet API”。
我通过使用“阻止联接查询”获得了父级和子级文档: https : //cwiki.apache.org/confluence/display/solr/Other+Parsers#OtherParsers-BlockJoinQueryParsers
如您在文档中所看到的,我需要使用' Block Join Children Query Parser '来获取子文档:q = {!child of =“ content_type:parentDocument”} title:lucene
并使用“ 阻止连接父查询解析器 ”获取父文档:q = {!parent which =“ content_type:parentDocument”}评论:SolrCloud
我想使用“阻止联接父查询解析器”,并将子字段用作构面过滤器。
换句话说,用户使用搜索短语搜索父文档,并将子字段用作构面过滤器以过滤文档。
有什么办法吗?
根据文档https://cwiki.apache.org/confluence/display/solr/JSON+Request+API
json api看起来像是一种以json对象的形式呈现参数的方法,而不是点缀.variable.names分配列表:
(引自上面链接的页面)
方面示例
实际上,您甚至不需要以JSON主体开始,智能合并就非常有用。 考虑以下完全由请求参数组成的请求: curl http://localhost:8983/solr/techproducts/query -d 'q=*:*&rows=1& json.facet.avg_price="avg(price)"& json.facet.top_cats.terms={field:"cat",limit:5}'
这等效于具有以下JSON正文或json参数:
{
facet: {
avg_price: "avg(price)",
top_cats: {
terms: {
field: "cat",
limit:5
}
}
}
}
(编辑:代码的固定标记)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.