day88-ElasticSearch-分詞- 自定義擴充套件詞庫

我才是真的封不覺發表於2020-12-21

1.為了nginx容器配置,執行如下程式碼,若沒有nginx容器會從遠端拉取

docker run -p 80:80 --name nginx \
-v /mydata/nginx/html:/usr/share/nginx/html  \
-v /mydata/nginx/logs:/var/log/nginx \
-v /mydata/nginx/conf/:/etc//nginx \
-d nginx:1.10 POST _analyze

 

2.如下記憶體不太夠,調大點

virtualbox上調整下

 3.訪問http://192.168.56.10/出現如下說明nginx配置遷移成功

4.在nginx的html資料夾下新增index.html並新增 <h1>gulimall</h1> 再次訪問會出現如下

 5.新增自定義分詞檔案

[root@localhost html]# mkdir es
[root@localhost html]# ls
es  index.html
[root@localhost html]# cd es
[root@localhost es]# ls
[root@localhost es]# vi fenci.txt
尚矽谷
喬碧蘿

~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~

我在輸入中文的時候亂碼了,所以在CRT中先調整了編碼格式

6.修改配置上面自定義配置生效 

[root@localhost elasticsearch]# ls
config  data  plugins
[root@localhost elasticsearch]# cd plugins/
[root@localhost plugins]# ls
ik
[root@localhost plugins]# cd ik
[root@localhost ik]# ls
commons-codec-1.9.jar    config                               httpclient-4.5.2.jar  plugin-descriptor.properties
commons-logging-1.2.jar  elasticsearch-analysis-ik-7.4.2.jar  httpcore-4.4.4.jar    plugin-security.policy
[root@localhost ik]# cd config/
[root@localhost config]# ls
extra_main.dic         extra_single_word_full.dic      extra_stopword.dic  main.dic         quantifier.dic  suffix.dic
extra_single_word.dic  extra_single_word_low_freq.dic  IKAnalyzer.cfg.xml  preposition.dic  stopword.dic    surname.dic
[root@localhost config]# vi 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"></entry>
         <!--使用者可以在這裡配置自己的擴充套件停止詞字典-->
        <entry key="ext_stopwords"></entry>
        <!--使用者可以在這裡配置遠端擴充套件字典 -->
         <entry key="remote_ext_dict">http://192.168.56.10/es/fenci.txt</entry>
        <!--使用者可以在這裡配置遠端擴充套件停止詞字典-->
        <!-- <entry key="remote_ext_stopwords">words_location</entry> -->
</properties>
~
~
~

7.重啟es並設定自啟動

[root@localhost config]# cd /
[root@localhost /]# docker start elasticsearch
elasticsearch
[root@localhost /]# docker update elasticsearch --restart=always

8.測試,發現我們新新增的倆詞彙:喬碧蘿,尚矽谷生效了,成功分詞

 

相關文章