禁用动态字段的分析器

时间:2015-03-12 23:02:02

标签: elasticsearch

在我的弹性搜索索引中,我为特定对象启用了动态映射,这意味着默认情况下会分析添加到此对象的任何“字符串”字段。

有没有办法禁用动态字段分析?

1 个答案:

答案 0 :(得分:1)

您需要使用与您的字符串字段匹配的“动态模板”,并应用将字段设置为“not_analyzed”的映射

请参阅http://www.elastic.co/guide/en/elasticsearch/guide/current/custom-dynamic-mapping.html

这是一个使该字段可用于分析和未分析的示例

'dynamic_templates' : [
    {
     'string_template' : { 
       'match' : '*',
       'match_mapping_type' : 'string',
       'mapping' : { 
       'type'   : 'multi_field',
       'fields': { 
       '{name}' : {'type': 'string', 'index': 'analyzed', 'analyzer' : 'default'},
       'raw': { 'type': 'string', 'index': 'not_analyzed'}" 
       }
     }
   }
 }
]