您的位置 首页 elasticsearch

es 自定义词典

es 自定义词典

有些词,可能是我们自己定义的, 像ia分词器 自己识别不了,怎么办?

亚索贼6德玛西亚艾欧尼亚上号带你飞

这个时候就需要我们自定义词典了

我们就按照上一篇,的IK 分词器来配置一下:https://www.baimeidashu.com/10112.html

步骤1:创建词典

cd /baimei/softwares/elasticsearch-7.17.5/plugins/ik/config

mkdir baimedic
[root@baimeidashu-elk111 /baimei/softwares/elasticsearch-7.17.5/plugins/ik/config/baimedic]#cat baimei.dic 
亚索
贼6
德玛西亚
艾欧尼亚
上号
带你飞

 

步骤2: 修改配置文件

 

[root@baimeidashu-elk111 /baimei/softwares/elasticsearch-7.17.5/plugins/ik/config]#cat IKAnalyzer.cfg.xml


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
	<comment>IK Analyzer 扩展配置</comment>
	<!--用户可以在这里配置自己的扩展字典 -->
	<entry key="ext_dict">baimedic/baime.dic</entry>
	 <!--用户可以在这里配置自己的扩展停止词字典-->
	<entry key="ext_stopwords"></entry>
	<!--用户可以在这里配置远程扩展字典 -->
	<!-- <entry key="remote_ext_dict">words_location</entry> -->
	<!--用户可以在这里配置远程扩展停止词字典-->
	<!-- <entry key="remote_ext_stopwords">words_location</entry> -->
</properties>

 

(3)  分发到集群

chown -R es.es ik
scp -r ik  10.0.0.113:/`pwd`

重启 服务:

systemctl restart es7

 


curl 10.0.0.113:19200/_cat/nodes

(4)测试一下:

 

直接测试分词器-可跳过上述步骤,测试成功后,也可任务IK分词器的自定义词典部署成功.
GET http://10.0.0.112:19200/_analyze
{
"analyzer": "ik_smart",
"text": "嗨,兄弟,上号!我德玛西亚和艾欧尼亚都有号,我亚索贼6,带你飞~"
}

 

 

上边没问题,说明自定义分词器成功

 

5 测试中文分词器:

(1)创建索引

http://10.0.0.112:19200/baimei-news
{
    "mappings" :{
        "properties": {
           "content": {
                "type": "text",
                "analyzer": "ik_max_word",
                "search_analyzer": "ik_smart"
            }
        }
    },
	"settings": {
		"number_of_shards":3,
		"number_of_replicas":0
	}
}

(2)批量添加数据

POST http://10.0.0.111:19200/_bulk

{"create":{"_index":"baimei-news"}}
{"content":"美国留给伊拉克的是个烂摊子吗"}
{"create":{"_index":"baimei-news"}}
{"content":"公安部:各地校车将享最高路权"}
{"create":{"_index":"baimei-news"}}
{"content":"中韩渔警冲突调查:韩警平均每天扣1艘中国渔船"}
{"create":{"_index":"baimei-news"}}
{"content":"中国驻洛杉矶领事馆遭亚裔男子枪击 嫌犯已自首"}
{"create":{"_index":"baimei-news"}}
{"content":"嗨,兄弟,上号!我德玛西亚和艾欧尼亚都有号,我亚索贼6,带你飞~"}

(3)查询包含亚索的相关新闻

POST http://10.0.0.111:19200/baimei-news/_search

 

{
    "query": {
        "match": {
            "content": "亚索"
        }
    },
    "highlight": {
        "pre_tags": [
            "<span>"
        ],
        "post_tags": [
            "</span>"
        ],
        "fields": {
            "content": {}
        }
    }
}

 

 

(4)查询中国相关的新闻

POST http://10.0.0.111:19200/baimei-news/_search

 

{
    "query": {
        "match": {
            "content": "中国"
        }
    },
    "highlight": {
        "pre_tags": [
            "<span>"
        ],
        "post_tags": [
            "</span>"
        ],
        "fields": {
            "content": {}
        }
    }
}

 


欢迎来撩 : ELK集群汇总

欢迎来撩 : zabbix汇总

欢迎来撩 : ansible汇总

欢迎来撩 : shell 编程从0到1

欢迎来撩 : devops cicd持续集成全程(汇总)

欢迎来撩 : 汇总all

 

欢迎来撩 : 汇总all

白眉大叔

关于白眉大叔linux云计算: 白眉大叔

热门文章