ElasticSearch5.6.1 + 中文分詞(IK)

 

在安裝ElasticSearch 須要先安裝java 的 jdkphp

能夠經過  命令來確認是否已經安裝了html

java -version

若是沒有安裝可使用 yum 直接安裝經過。java

先經過命令查看yum源中的 jdk版本git

yum list |grep java |grep jdk

 

而後經過yum安裝github

yum install -y java-1.8.0-openjdk

ElasticSearch安裝vim

官網:https://www.elastic.coapp

1.ElasticSearch安裝curl

1.1.下載tar包安裝jvm

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.1.tar.gz
tar -xzf elasticsearch-5.6.1.tar.gz 

1.2.配置elasticsearch

先將解壓後的目錄文件移動到 /usr/share/elasticsearch 目錄

mkdir /usr/share/elasticsearch #創建目錄
mv ./elasticsearch-5.6.1/* /usr/share/elasticsearch/ 移動目錄

進入config

cd /usr/share/elasticsearch/config

先配置 jvm.options

vim ./jvm.options

有一項 

-Xms2g
-Xmx2g

這個設置  由於是虛擬機因此設置小一點 以下:

設置外網訪問  

 vim elasticsearch.yml

如圖 設置箭頭的兩個設置 爲  0.0.0.0

 

 1.3.啓動

cd /usr/share/elasticsearch/config
./elasticsearch

發現啓動失敗

由於elasticsearch默認是不容許經過root用戶啓動的

解決方式創建一個es用戶 經過es用戶啓動

useradd es
passwod es #設置密碼
cd /usr/share/
chown  -Rf es:es ./elasticsearch #設置所屬用戶
su es #切換用戶
./elasticsearch/bin/elasticsearch

啓動仍是失敗

錯誤提示:

解決方式 

切換回root用戶設置limits.conf  和 sysctl.conf

  這兩個配置

vim /etc/security/limits.conf 

在加入

* soft nofile 65536

* hard nofile 131072

* soft nproc 2048

* hard nproc 4096

編輯sysctl.conf 

vim /etc/sysctl.conf

在最後加入

vm.max_map_count=262144

再次切換回es用戶 啓動   -d 標示後臺運行

su es
/usr/share/elasticsearch/bin/elasticsearch -d

 

 

啓動後訪問curl  localhost:9200  獲得

{
"name" : "kfxmWFv",
"cluster_name" : "my-application",
"cluster_uuid" : "K04PdttQSpm1XCLRJIJXsA",
"version" : {
"number" : "5.6.1",
"build_hash" : "667b497",
"build_date" : "2017-09-14T19:22:05.189Z",
"build_snapshot" : false,
"lucene_version" : "6.6.1"
},
"tagline" : "You Know, for Search"
}

2 安裝ik中文分詞插件

2.1es5.5.1已上能夠直接經過命令就能夠安裝了

/usr/share/elasticsearch/bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v5.6.1/elasticsearch-analysis-ik-5.6.1.zip

 

 

 從新啓動 es   在安裝時es是要關閉的。

2.2 將ik 插件 安裝到 ElasticSearch中

建立索引m8:爲索引(m8)及類型(logs)下的字段(message)設置分詞器(分詞器可選ik_smart或ik_max_word):

 

http put localhost:9200/m8 -d '{
    "settings" : {
        "analysis" : {
            "analyzer" : {
                "ik" : {
                    "tokenizer" : "ik_smart"
                }
            }
        }
    },
    "mappings" : {
        "logs" : {
            "dynamic" : true,
            "properties" : {
                "message" : {
                    "type" : "string",
                    "analyzer" : "ik_smart"
                }
            }
        }
    }
}'

若是提示http put不存在看下面

案例

http://localhost:9200/m8/_analyze?analyzer=ik_max_word&text=南京市長江大橋

結果

參數說明:

ik_max_word: 會將文本作最細粒度的拆分,好比會將「中華人民共和國國歌」拆分爲「中華人民共和國,中華人民,中華,華人,人民共和國,人民,人,民,共和國,共和,和,國國,國歌」,會窮盡各類可能的組合;

ik_smart: 會作最粗粒度的拆分,好比會將「中華人民共和國國歌」拆分爲「中華人民共和國,國歌」。

 

http put不存在問題:

yum install httpie

 轉載請註明來源 http://www.cnblogs.com/phpshen/p/6085274.html

相關文章
相關標籤/搜索