ES中怎么添加 IK 分词器
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,ES中怎么添加 IK 分词器,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1.下载IK分词器,一定要注意和ES的版本一致
千家信息网最后更新 2025年12月03日ES中怎么添加 IK 分词器
ES中怎么添加 IK 分词器,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
1.下载IK分词器,一定要注意和ES的版本一致
2 .下载之后放到 ES 的 \plugins 目录下面去 重启 ES 服务
测试:http://localhost:9200/blog1/_analyze
{ "text":"中华人民共和国MN","tokenizer": "ik_max_word"}结果:
{ "tokens": [ { "token": "中华人民共和国", "start_offset": 0, "end_offset": 7, "type": "CN_WORD", "position": 0 }, { "token": "中华人民", "start_offset": 0, "end_offset": 4, "type": "CN_WORD", "position": 1 }, { "token": "中华", "start_offset": 0, "end_offset": 2, "type": "CN_WORD", "position": 2 }, { "token": "华人", "start_offset": 1, "end_offset": 3, "type": "CN_WORD", "position": 3 }, { "token": "人民共和国", "start_offset": 2, "end_offset": 7, "type": "CN_WORD", "position": 4 }, { "token": "人民", "start_offset": 2, "end_offset": 4, "type": "CN_WORD", "position": 5 }, { "token": "共和国", "start_offset": 4, "end_offset": 7, "type": "CN_WORD", "position": 6 }, { "token": "共和", "start_offset": 4, "end_offset": 6, "type": "CN_WORD", "position": 7 }, { "token": "国", "start_offset": 6, "end_offset": 7, "type": "CN_CHAR", "position": 8 }, { "token": "mn", "start_offset": 7, "end_offset": 9, "type": "ENGLISH", "position": 9 } ]}ik_max_word 和 ik_smart 什么区别?
ik_max_word: 会将文本做最细粒度的拆分,比如会将"中华人民共和国国歌"拆分为"中华人民共和国,中华人民,中华,华人,人民共和国,人民,人,民,共和国,共和,和,国国,国歌",会穷尽各种可能的组合,适合 Term Query;
ik_smart: 会做最粗粒度的拆分,比如会将"中华人民共和国国歌"拆分为"中华人民共和国,国歌",适合 Phrase 查询。
# 测试分词器GET _analyze{ "analyzer": "ik_smart", "text": "我爱你中国"}GET _analyze{ "analyzer": "ik_max_word", "text": "我爱你中国"}# 存储数据PUT /test3/_doc/1{ "name":"施爷", "age":13, "birth":"2020-07-05"}# 修改数据 (全部修改,birth没有会被删除)PUT /test3/_doc/1{ "name":"施爷222", "age":13}# 修改数据,只会修改name这个属性,别的不会变POST /test3/_doc/1/_update{ "doc":{ "name":"我是用post方式进行了修改" }}# 获取对象结构GET /test3# 通过id来获取文档GET /test3/_doc/1# 查看数据库中全部存储的统计信息GET _cat/indices?v# 删除数据DELETE /test3/_doc/1# 存储,跟新数据PUT /shiye/user/6{ "name":"shiye施爷成绩好", "age":30, "desc":"一看操作猛如虎,一战战绩0-5", "tags":["靓仔","旅游","爬山"]}# 通过id来查询数据GET /shiye/user/A001 # 通过名称搜索 GET /shiye/user/_search?q=name:shiye # 通过构建复杂查询,查询指定属性_source GET /shiye/user/_search { "query": { "match": { "name": "shiye" } }, "_source":["name","desc","age"] }# must查询 相当于 andGET /shiye/user/_search{ "query": { "bool": { "must": [ { "match": { "name": "shiye" } },{ "match": { "name": "施爷" } } ] } }}# should 查询,相当于orGET /shiye/user/_search{ "query": { "bool": { "should": [ { "match": { "name": "shiye" } },{ "match": { "name": "施爷" } } ] } }}# 加上 must+filter GET /shiye/user/_search{ "query": { "bool": { "must": [ { "match": { "name": "shiye" } } ], "filter": { "range": { "age": { "gte": 20, "lte": 40 } } } } }}# 查询 tags 中匹配到山的GET /shiye/user/_search{ "query": { "match": { "tags": "山" } }}#############测试 text,keyword ################ text 可以分词# keyword 不分词# 指定索引各个字段的创建规则PUT testdb{ "mappings": { "properties":{ "name":{ "type":"text" }, "desc":{ "type": "keyword" } } }}# 添加数据PUT testdb/_doc/2{ "name":"武松", "desc":"打老虎"}# 查询GET testdb/_search{ "query": { "match": { "desc": "军事" } }}#查询+高亮GET testdb/_search{ "query": { "match": { "name": "施" } }, "highlight": { "pre_tags": "", "post_tags": "
", "fields": {"name":{}} }}看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
人民
共和国
中华
查询
数据
中华人民共和国
国歌
共和
存储
测试
人民共和国
华人
属性
我爱
我爱你
粒度
中华人民
中国
帮助
复杂
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库管理工具linux
自动聊天机器人软件开发
云南省电信服务器是哪种服务器
docker 国产化服务器
镇江网络安全找工作
电脑服务器地址登录不上去
禅道怎么清除数据库
c4top网络技术挑战赛
数据库服务器硬盘满了
服务器串口通信原理动画图
pb数据库数据导入
mc国际版服务器1.18.1
辽宁网络安全大讲堂直播
遵守保密及网络安全要求
公益诉讼和网络安全知识
司法局参与网络安全宣传活动
怎么解除服务器的安全连接
淘宝购物车 数据库
安徽网络技术咨询价值
谷歌国外服务器
水墨网络安全
本地电脑服务器管理
证华网络技术
火绒服务器控制中心地址
中小型企业网络技术
网络安全生产宣传月活动
文山计算机网络技术费用
网络技术 面试题
ipad建立服务器
好口碑微信小程序服务器托管