elastic search配置ik分词及pinyin分词使搜索同时支持中文和拼音搜索
1、先下载ik分词和pinyin分词,并放到esplugins相应目录中
2、定义ik分词后的pinyin分词器,即定义一个自定义分词器ik_pinyin_analyzer
#删除索引 DELETE common_poi #创建索引 PUT common_poi { "settings": { "number_of_shards": 1, "number_of_replicas": 0 } } #关闭索引 POST common_poi/_close #自定义分词器(ik分器词和拼音分词) PUT common_poi/_settings { "settings": { "index": { "analysis": { "analyzer": { "ik_pinyin_analyzer": { "type": "custom", "tokenizer": "ik_max_word", "filter": ["my_pinyin"] } }, "filter": { "my_pinyin": { "type": "pinyin", "keep_separate_first_letter": false, "keep_full_pinyin": true, "keep_original": false, "limit_first_letter_length": 10, "lowercase": true, "remove_duplicated_term": true } } } } } } #字段映射 PUT common_poi/_mappings { "dynamic":false, "properties":{ "id":{ "type":"long" }, "name":{ "type":"text", "index":true, "analyzer":"ik_pinyin_analyzer" }, "longitude":{ "type":"double" }, "latitude":{ "type":"double" }, "address":{ "type":"text", "index":true, "analyzer":"ik_max_word" }, "phone":{ "type":"text", "index":true }, "type":{ "type":"text", "index":true, "analyzer":"ik_max_word" }, "realType":{ "type":"text", "index":true, "analyzer":"ik_max_word" } } } #打开索引 POST common_poi/_open #条件搜索 GET common_poi/_search { "query": { "match": { "name": "can饮" } } }
分类:
Elasticsearch
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析