1. 程式人生 > >[Success]Elasticsearch介紹和安裝+ik

[Success]Elasticsearch介紹和安裝+ik

一.Elasticsearch介紹和安裝

SprignBoot整合Spring Data Elasticsearch 以及使用

在這裡插入圖片描述

1.1.簡介

1.1.1.Elastic

Elastic官網:https://www.elastic.co/cn/

在這裡插入圖片描述

Elastic有一條完整的產品線:Elasticsearch、Kibana、Logstash等,前面說的三個就是大家常說的ELK技術棧。

在這裡插入圖片描述

1.1.2.Elasticsearch

Elasticsearch官網:https://www.elastic.co/cn/products/elasticsearch

在這裡插入圖片描述

如上所述,Elasticsearch具備以下特點:

  • 分散式,無需人工搭建叢集(solr就需要人為配置,使用Zookeeper作為註冊中心)
  • Restful風格,一切API都遵循Rest原則,容易上手
  • 近實時搜尋,資料更新在Elasticsearch中幾乎是完全同步的。

1.1.3.版本

目前Elasticsearch最新的版本是6.2.4,我們就使用這個版本

需要JDK1.8及以上

1.2.安裝和配置

1.2.1 下載

在這裡插入圖片描述

下載地址:https://www.elastic.co/downloads/past-releases

在這裡插入圖片描述
在這裡插入圖片描述

1.2.2 安裝

elasticsearch無需安裝,解壓即用。

在這裡插入圖片描述

1.3.執行

進入elasticsearch/bin目錄,可以看到下面的執行檔案:

在這裡插入圖片描述

雙擊執行

在這裡插入圖片描述

可以看到綁定了兩個埠:

  • 9300:java程式訪問的斷就
  • 9200:瀏覽器、postman訪問介面

我們在瀏覽器中訪問:http://127.0.0.1:9200

在這裡插入圖片描述

1.4.安裝Head外掛

1.4.1.什麼是Head

ealsticsearch只是後端提供各種api,那麼怎麼直觀的使用它呢?elasticsearch-head將是一款專門針對於elasticsearch的客戶端工具

elasticsearch-head配置包,下載地址:

https://github.com/mobz/elasticsearch-head

1.4.2.安裝

  • es5以上版本安裝head需要安裝node和grunt

第一步:從地址:https://nodejs.org/en/download/ 下載相應系統的msi,雙擊安裝。

在這裡插入圖片描述

第二步:安裝完成用cmd進入安裝目錄執行 node -v可檢視版本號

在這裡插入圖片描述

第三步:執行 npm install -g grunt-cli 安裝grunt ,安裝完成後執行grunt -version檢視是否安裝成功,會顯示安裝的版本號

在這裡插入圖片描述

1.4.3.配置執行

第一步:進入es安裝目錄下的config目錄,修改elasticsearch.yml檔案.在檔案的末尾加入以下程式碼

http.cors.enabled: true 
http.cors.allow-origin: "*"
node.master: true
node.data: true

然後去掉network.host: 192.168.0.1的註釋並改為network.host: 0.0.0.0,去掉cluster.namenode.name;http.port的註釋(也就是去掉#)

第二步:雙擊elasticsearch.bat重啟es

第三步:在https://github.com/mobz/elasticsearch-head中下載head外掛,選擇下載zip

第四步:解壓到指定資料夾下,D:\environment\elasticsearch-head-master 進入該資料夾,修改D:\environment\elasticsearch-head-master\Gruntfile.js 在對應的位置加上hostname:’*’、

在這裡插入圖片描述

第五步:在D:\environment\elasticsearch-head-master 下執行npm install 安裝完成後執行grunt server 或者npm run start 執行head外掛,如果不成功重新安裝grunt。成功如下

1.4.4.成功

在這裡插入圖片描述

1.5.安裝ik分詞器

ElasticSearch 預設採用分詞器, 單個字分詞 ,效果很差

搜尋【IK Analyzer 3.0】

http://www.oschina.net/news/2660

在這裡插入圖片描述

在這裡插入圖片描述

Lucene的IK分詞器早在2012年已經沒有維護了,現在我們要使用的是在其基礎上維護升級的版本,並且開發為Elasticsearch的整合外掛了,與Elasticsearch一起維護升級,版本也保持一致,最新版本:6.2.4

1.5.1. 下載

原始碼下載地址:https://github.com/medcl/elasticsearch-analysis-ik/tree/6.2.x

jar包下載地址:https://github.com/medcl/elasticsearch-analysis-ik/releases

在這裡插入圖片描述

在這裡插入圖片描述

1.5.1.安裝

無需安裝,解壓即可使用

我們將其改名為ik,並複製到elasticsearch的解壓目錄,如下圖所示

在這裡插入圖片描述

然後重啟elasticsearch:

在這裡插入圖片描述

1.5.2.擴充套件詞和停用詞

擴充套件詞和停用詞檔案:

在這裡插入圖片描述

在這裡插入圖片描述

###1.5.4 測試

在這裡插入圖片描述

SprignBoot整合Spring Data Elasticsearch 以及使用