前言
當前全文搜索需求日益增長,ElasticSearch作為一款開源的全文檢索引擎,是當前許多大公司如WikiPedia、Github、Stack Overflow等的首選,它能夠對數據進行快速存儲、搜索和分析。其底層則是開源庫Lucene,這也是方便我們的地方,只需要調用API接口,就能夠實現開箱即用。
下載
- ElasticSearch依賴於Java環境,所以在開始下載安裝前,請確保你的機器上已經安裝並配置好了JDK;
- 可以從官網直接下載對應安裝包,此處因為實在Windows,所以下載壓縮版即可,下載鏈接[1];
安裝
- 再次 強調 :安裝工作開始前,請確保 下載 步驟中的準備工作已經做好;
- 安裝 將我們剛才下載好的壓縮包解壓到我們需要的位置,解壓後文件如圖;
- 然後進入./elasticsearch/bin目錄下,用控制檯運行如下命令,啟動ElasticSearch;
<code>./elasticsearch.bat/<code>
- ElasticSearch默認開啟9200端口,所以此時在瀏覽器訪問localhost:9200即可獲取相關信息;
- 要停止時,直接使用Ctrl + C終止elasticsearch.bat的運行即可;
- 注意 :默認情況下ElastaicSearch只能在本機訪問,若要進行遠程訪問操作,則需要將 ./elasticsearch/config/elasticsearch.yml文件中的network:host註釋去掉,修改它的值為0.0.0.0,然後重新運行elaticsearch.bat腳本即可遠程訪問;
<code>network.host: 0.0.0.0/<code>
概念基本
- 節點(Node)與集群(Cluster) ElasticSearch本質上來說是一個分佈式的數據庫,能夠為多臺服務器提供服務,每臺服務器可以運行多個ElasticSearch實例;而 一個實例 叫做 一個節點 ,而 一組節點 就組成了 一個集群;
- 索引(Index) 要進行檢索,就會有索引。ElasticSearch會對所有字段進行索引,然後經過一系列處理後寫入一個 反向索引(Inverted Index) 。當我們進行檢索時,就會直接訪問該索引。因此,ElasticSearch 數據管理的頂層單位 叫做 索引 。注意 :每個索引(即數據庫)的命名必須小寫;
- 文檔(Document) 索引中每條記錄叫做 文檔 ,多個文檔則構成了一個 索引 ,每個文檔都是使用 JSON 格式表示。雖然 同一個索引中的文檔不強制要求結構相同 ,但為了確保檢索效率,最好保持相同;
- 分組(Type) 文檔也可以進行分組,是 一種虛擬的邏輯分組,用於過濾文檔 。不同分組應該有類似結構,即一個字段不能在這個組屬於int類型,但在另一個組中卻屬於String類型。
[1]下載鏈接: https://www.elastic.co/cn/downloads/elasticsearch
閱讀更多 村雨遙 的文章