如何解决如何在Elasticsearch中过滤后计算分数
我希望在应用过滤器后计算分数。 现在,将考虑索引中的所有文档来计算分数。其他实体文档干扰了我不希望的分数计算。 例如:我有多家商店,每个商店的商品都应独立评分。
我尝试了score_function,但是无法正常工作。 单独索引商店中的项目可以解决此问题,但商店可以成千上万。
每个存储区可以包含数千个-200000个文档。 商店最多。 10000。可以更多,客户可以根据需要创建任意数量。
{
"bool": {
"should": [{
"match": {
"normalized_tokens": {
"query": "Where can i find the chocolate","analyzer": "custom_analyzed_document_search","operator": "or"
}
}
},{
"match": {
"normalized_tokens": {
"query": "find chocolate",{
"term": {
"document": "Where can i find the chocolate"
}
}],"filter": [{
"bool": {
"should": [{
"terms": {
"department_id": []
}
},{
"terms": {
"store_id": [1,2,3]
}
}]
}
}]
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。