es如何使用拼音分词器

把下载到的拼音分词器放到es的配置目录下 重新启动es 在创建索引库时,在settings中设置三部分 character filter 分词前对文本的处理

把下载到的拼音分词器放到es的配置目录下

重新启动es

  1. 在创建索引库时,在settings中设置三部分

character filter 分词前对文本的处理

tokenizer 对文本分词 用ik分词

filter 分词后的处理 用拼音分词处理

  1. 注意在创建索引时使用拼音分词器,而在搜索时使用其他分词器,避免在搜索时发生同音不同字的搜索结果

"analyzer": "i_analyzer": 使用自定义分词器,如果未设置会使用默认分词器

"search_analyzer": "ik_smart": 搜索时使用的分词器,如果不设置会使用“analyzer”设置的分词 器,都没设置则使用默认分词器

PUT /test
{"settings": {"analysis": {"analyzer": {"i_analyzer": {"tokenizer": "ik_max_word","filter": "py"}},"filter": {"py": {"type": "pinyin","keep_full_pinyin": false,   //设置是否使用单个拼音一个一个分词处理"keep_joined_full_pinyin": true,  //设置是否使用全拼音一起分词处理"keep_original": true,       //设置是否保留中文分词处理"limit_first_letter_length": 16,"remove_duplicated_term": true,"none_chinese_pinyin_tokenize": false}}}},"mappings": {"properties": {"name": {"type": "text","analyzer": "i_analyzer", "search_analyzer": "ik_smart"}}}
}