默认分析器是否与Elasticsearch中的自定义分析器重叠?

时间:2017-09-05 08:24:32

标签: elasticsearch analyzer

我想在某些领域使用自定义分析器,对其他领域使用默认分析器,所以我这样写:

{
   "settings": {
       "analysis":{                                                                                                                                             
           "analyzer": {                                                    
               "default": {                                             
                   "type": "keyword"                                    
                },                                                     
                "my_lowercase":{                                       
                   "type": "custom",                                      
                   "tokenizer": "whitespace",                             
                   "filter":[ "lowercase"]                                
               }                                                        
            }           
        }                                                               
    },                                                                   
    "mappings":{                                                         
        "test_string":{                                                      
            "_all":{                                                     
                "enabled":false                                            
            },                                                           
            "properties":{                                               
                "title":{                                                  
                    "type":"string",                                         
                    "analyzer":"my_lowercase"                                
                },                                                         
                "content":{                                                
                    "type":"string",                                         
                    "analyzer":"my_lowercase"                                
                }                                                          
            }                                                              
        }                                                                
    }
}

字段长度"内容"超过32766.当我像上面这样写时,它返回错误,如下所示: Document contains at least one immense term。 如果我删除默认分析器,它运行良好。 因此,自定义分析器似乎与默认分析器重叠,并且两个字段使用默认分析器。有人知道原因吗?非常感谢。

1 个答案:

答案 0 :(得分:0)

您的设置不正确,您错过了analysis部分

"settings": { 
  "analysis": {                 <--- add this                                                                                                                                            
   "analyzer": {                                                    
       "default": {                                             
           "type": "keyword"                                    
        },                                                     
        "my_lowercase":{                                       
           "type": "custom",                                      
           "tokenizer": "whitespace",                             
           "filter":[ "lowercase"]                                
       }                                                        
   }      
  }                                                         
},