ElasticSearch映射非可搜索字段

时间:2017-01-10 20:24:01

标签: php python elasticsearch indexing lucene

我是弹性搜索新手。

在我的users类型的profiles索引中,我有字段

properties : {
    name : {type : string},
    picture : {
                  url_small : {}
                  url_big : {}   
         } 
}

在此索引中,picture仅用于存储/获取数据,并且永远不会用于执行任何查询,但只能使用匹配的匹配检索。

那么如何创建picture的映射?我应该使用typeanalyzer字段?

1 个答案:

答案 0 :(得分:0)

概念:

你在这里处理两件事:

  1. 如何存储数据
  2. 如何将数据编入索引
  3. 要定义数据的存储方式,请使用type

    要定义数据的索引方式(直接,在分析之后,或者在您的情况下,未编入索引),您可以使用index

    如果您想定义如何分析数据以进行索引,则必须使用analyzer

    在您的情况下:

    您希望存储字符串,但不要将其编入索引,因此您使用:

    {
        type: string,
        index: no
    }
    

    这给了你:

    properties : {
        name : {"type": "string"},
        picture : {
            url_small : {
                "type": "string",
                "index": "no"
            },
            url_big : {
                "type": "string",
                "index": "no"
            }   
        } 
    }
    

    有关索引字段的更多信息:

    https://www.elastic.co/guide/en/elasticsearch/reference/2.4/mapping-index.html

    希望很清楚