【问题标题】:Elastic search map multiple fields to a single field弹性搜索将多个字段映射到单个字段
【发布时间】:2014-11-27 07:29:42
【问题描述】:

弹性搜索是否提供将不同字段映射到单个字段并使用该单个字段进行搜索的功能。

例如,_all 指的是文档中的所有字段。

类似地,我们是否有任何映射配置来定义一个引用多个字段的字段。

例如:我有一个名为 Brand,Name,Category 的字段。

我需要将品牌和名称映射到单个字段 custome_field。

我想要在映射期间而不是在查询期间。我知道跨字段在查询期间会这样做。

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    看看copy_to functionality。它就像一个自定义的_all。请参阅here 了解更多信息:

    在元数据:_all 字段中,我们解释了特殊的 _all 字段 将所有其他字段的值索引为一个大字符串。拥有一切 但是,索引到一个字段中的字段并不是非常灵活。它 最好有一个自定义的 _all 字段作为人名,并且 他们地址的另一个自定义 _all 字段。

    Elasticsearch 通过 copy_to 为我们提供此功能 字段映射中的参数:

    PUT /my_index {
        "mappings": {
            "person": {
                "properties": {
                    "first_name": {
                        "type":     "string",
                        "copy_to":  "full_name" 
                    },
                    "last_name": {
                        "type":     "string",
                        "copy_to":  "full_name" 
                    },
                    "full_name": {
                        "type":     "string"
                    }
                }
            }
        } }
    

    【讨论】:

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