结果序列的Elasticsearch字段首选项

时间:2018-05-08 19:05:29

标签: elasticsearch

我使用以下映射在elasticsearch中创建了索引:

{
    "test": {
        "mappings": {
            "documents": {
                "properties": {
                    "fields": {
                        "type": "nested",
                        "properties": {
                            "uid": {
                                "type": "keyword"
                            },
                            "value": {
                                "type": "text",
                                "copy_to": [
                                    "fulltext"
                                ]
                            }
                        }
                    },
                    "fulltext": {
                        "type": "text"
                    },
                    "tags": {
                        "type": "text"
                    },
                    "title": {
                        "type": "text",
                        "fields": {
                            "raw": {
                                "type": "keyword"
                            }
                        }
                    },
                    "url": {
                        "type": "text",
                        "fields": {
                            "raw": {
                                "type": "keyword"
                            }
                        }
                    }
                }
            }
        }
    }
}

搜索时我想设置字段的首选项,例如,如果在title或url中找到搜索文本,则该文档首先出现在其他文档中。

我们可以为搜索结果序列设置字段首选项(在我的情况下,首选项如title,url,tags,fields)?

请帮帮我这个?

1 个答案:

答案 0 :(得分:0)

这称为“助力”。在弹性搜索5.0.0之前 - 可以在索引阶段或查询阶段应用提升(作为字段映射的一部分添加)。现在不推荐使用此功能,并且在查询时应用5.0之后的所有映射。

目前的建议是使用查询时间提升。

请阅读此文档以获取有关如何使用助推器的详细信息:

1 - https://www.elastic.co/guide/en/elasticsearch/guide/current/_boosting_query_clauses.html

2 - https://www.elastic.co/guide/en/elasticsearch/guide/current/_boosting_query_clauses.html