搜索引擎Elasticsearch,瞭解一下?

ElasticSearch介紹

ElasticSearch是一個全文搜索服務器,也能夠做爲NoSql數據庫,存儲任意格式的文檔和數據,同時能夠作大數據的分析。ElasticSearch具備如下特色:node

  1. 全文搜索引擎,ES是簡歷在Lucebe上的開元索索引擎,能夠用來進行全文搜索、地理信息搜索git

  2. 文檔存儲和查詢,能夠向NoSql那樣存儲任意格式的文檔,並能根據條件查詢文檔github

  3. 大數據分析,ES號稱能準確實時地進行大數據分析,數據量從TB到PB數據庫

  4. ES提供了REST API,用來簡化對ES的操做,所以可使用任何語言的哭護短,同時也提供了Java API,Spring Boot對REST API進行了封裝,簡化了開發npm

  5. ES經常配合傳統數據庫一塊兒使用,ES用來負責大數據的查詢、搜索、統計分析等。windows

ElasticSearch中的基本概念

掌握ES中的基本概念是理解ES的第一步瀏覽器

  1. Index: index是文檔(Document)的集合,index下面包含了Type,用於對文檔進一步分類,能夠理解爲ES中的Index至關於數據庫,Type至關於數據庫中的表,Es中能夠輕易地聯合Index和Type來搜索數據,數據庫卻不能。服務器

  2. Type:用來進一步組織Document,一個Index下能夠有多個Type,好比用戶信息是一個Type,用戶的支付記錄是一個Typeapp

  3. Document:文檔是ES可以存儲和搜索的基本信息,相似數據庫錶行數據,Document爲Json格式,文檔屬於Typeelasticsearch

  4. Node:節點是集羣裏的一臺ES Server,用於文檔的存儲和查詢。應用能夠只有一個節點,也能夠是由多個節點組成的集羣來存儲和搜索數據。每一個節點都有一個節點名字,以及所屬集羣的名字。

  5. 集羣:一樣集羣名的節點將組合爲ES集羣,用來聯合完成數據的存儲和搜索。默認的集羣名字是elasticsearch。

  6. Shards(分區)和Replicas(複製):每一個Index理論上均可以包含大量的數據,超過了單個節點的存儲限制,並且單個節點處理那麼大的數據,將明顯限制存儲和搜索性能,爲了解決這個問題,ES會進一步將Index在物理上細分爲多個分區,並且這些分區會按照配置賦值到多個節點,Index的分區稱爲主分區,複製的分區稱爲複製分區,這樣的好處是保證數據不丟失,且提升了查詢性能。

Windows下ElasticSearch環境安裝

  1. 下載ElasticSearch

進入ElasticSearch官網: https://www.elastic.co/downloads/elasticsearch,下載windows版安裝包zip,下載當前最新的版本 6.4.0的。

  2. 安裝ElasticSearch以前確認系統已經安裝了JDK1.8以上的版本,ElasticSearch的運行依賴JDK語言環境,解壓安裝包到指定的目錄,此處我放在C盤。

  3. 啓動elasticsearch:進入安裝目錄C:\elasticsearch-6.4.0\bin執行elasticsearch.bat,正確啓用後顯示以下:

瀏覽器中打開正常顯示:

  4. 安裝ElasticSearch-head插件

Elasticsearch Head是一款集羣管理、數據可視化、增刪改查、查詢語句可視化工具。

    4.1 elasticsearch-head插件依賴node環境,因此咱們還得先安裝node環境:

進去官網https://nodejs.org/en/download/ 下載Windows版安裝包,此處下載的是最新版8.11.4,默認安裝,一直next.

安裝完成後dos窗口輸入 node –v 命令驗證一下是正確安裝:

    4.2 安裝grunt構建工具:安裝grunt工具的做用是經過該工具來氣功head插件

在dos窗口進入node安裝目錄,經過npm命令來安裝grunt:npm install -g grunt-cli, 安裝完成後經過grunt –version顯示版本號則正常安裝

    4.3 安裝elasticsearch-head插件

 進入github地址下載插件https://github.com/mobz/elasticsearch-head,此處我將安裝包解壓到C:\elasticsearch-head-master

修改服務器監聽地址: 修改C:\elasticsearch-head-master目錄下Gruntfile.js文件,增長hostname屬性增長 hostname:’*’ 配置

修改head鏈接elasticsearch的地址:修改C:\elasticsearch-head-master\_site目錄下的app.js文件,將localhost修改成es的IP地址

把localhost修改爲elasticsearch服務器地址,如:114.aaa.bb.cc:9200,我這邊作的是本機測試,因此不用修改,就使用localhost。

修改一下elasticsearch配置文件:編輯C:\elasticsearch-6.4.0\config/elasticsearch.yml文件,增長以下兩行配置

安裝heah插件:

  在dos窗口切換到C:\elasticsearch-head-master目錄下執行npm命令: npm install,這個過程我安裝的時候耗時比較久。

訪問瀏覽器,正常顯示以下:

OK,到此須要安裝的軟件已經安裝徹底了,須要注意的是必須在elasticsearch-head目錄下啓動服務才能成功,由於grunt工具會讀取目錄下的Gruntfile.js文件中的配置,另外elasticsearch和elasticsearch-head插件都是前臺啓動,若是終端即dos窗口關閉,那麼elasticsearch和head服務也會隨之中止服務。

 

 

參考:《Spring Boot2 精髓》-- 李家智

相關文章
相關標籤/搜索