es同时支持中文拼音分词(9)

ES如何支持拼音和中文分词 

1. 自定义分词器 支持拼音和中文分词

 

DELETE  /goods

PUT /goods

{

   "settings": {

        "analysis": {

            "analyzer": {

                "ik_smart_pinyin": {

                    "type": "custom",

                    "tokenizer": "ik_smart",

                    "filter": ["my_pinyin", "word_delimiter"]

                },

                "ik_max_word_pinyin": {

                    "type": "custom",

                    "tokenizer": "ik_max_word",

                    "filter": ["my_pinyin", "word_delimiter"]

                }

            },

            "filter": {

                "my_pinyin": {

                    "type" : "pinyin",

                    "keep_separate_first_letter" : true,

                    "keep_full_pinyin" : true,

                    "keep_original" : true,

                    "limit_first_letter_length" : 16,

                    "lowercase" : true,

                    "remove_duplicated_term" : true

                }

            }

        }

  }

  

}

 

 

重新指定文档类型映射拼音分词类型

POST /goods/_mapping/goods

{

   

  

      "goods": {

        "properties": {

          "@timestamp": {

            "type": "date"

          },

          "@version": {

            "type": "text",

            "fields": {

              "keyword": {

                "type": "keyword",

                "ignore_above": 256

              }

            }

          },

          "attribute_list": {

            "type": "text",

            "fields": {

              "keyword": {

                "type": "keyword",

                "ignore_above": 256

              }

            }

          },

          "category_id": {

            "type": "long"

          },

          "created_time": {

            "type": "date"

          },

          "detail": {

            "type": "text",

             "analyzer":"ik_smart_pinyin",

            "search_analyzer":"ik_smart_pinyin"

 

          },

          "id": {

            "type": "long"

          },

          "main_image": {

            "type": "text",

            "fields": {

              "keyword": {

                "type": "keyword",

                "ignore_above": 256

              }

            }

          },

          "name": {

            "type": "text",

            "analyzer":"ik_smart_pinyin",

            "search_analyzer":"ik_smart_pinyin"

 

          },

          "revision": {

            "type": "long"

          },

          "status": {

            "type": "long"

          },

          "sub_images": {

            "type": "text",

            "fields": {

              "keyword": {

                "type": "keyword",

                "ignore_above": 256

              }

            }

          },

          "subtitle": {

            "type": "text",

          "analyzer":"ik_smart",

         "search_analyzer":"ik_smart"

 

          },

          "updated_time": {

            "type": "date"

          }

        }

      }

}

 =================效果演示==========================

1、拼音搜索

 2、中文搜索

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值