ElasticSearch教程(一)——簡介與安裝
背景
公司一直在使用ES作為分散式的搜尋引擎,由於資料量的不斷升高,ES出現了效能瓶頸。公司決定進一步的優化ES配置,所以最近幾天在研究ES,最近會更新一系列ES的教程,希望大家持續關注。不多說了,Action。
簡介
ElasticSearch一個基於Lucene的搜尋伺服器。它提供了一個分散式多使用者能力的全文搜尋引擎,基於RESTful web介面。它是用Java開發的,是當前流行的企業級搜尋引擎。設計用於雲端計算中,能夠達到實時搜尋,穩定,可靠,快速,安裝使用方便。
ElasticSearch的特性:
對於ES的特性,我是從官網翻譯過來,如果有不妥的地方,希望大家提出寶貴的建議。
- 開源的(不解釋)
- 它是分散式和高度可用的搜尋引擎。
- 每個索引根據配置分片的數量完成完全分片。
- 每個碎片都可以有一個或多個副本。
- 讀/搜尋操作可以在任何複製分片上執行。
- 支援多租戶與多種型別。
- 支援一個以上的索引。
- 支援一個以上的每個索引型別。
- 指數級配置(數量的碎片,索引儲存,…)。
- 各種組api
- HTTP RESTful API
- 本地Java API。
- 所有api執行自動從路由節點操作。
- 面向文件的
- 可靠非同步寫操作長期持續。
- (附近)實時搜尋。
- 基於Lucene
- 每個碎片都是一個功能齊全的Lucene索引
- 所有Lucene通過簡單的配置/外掛非常容易的暴露出來。
- 每個操作的一致性
- 單文件級別操作都是原子的、一致的、孤立的和持久的。
對於ES瞭解一個大概情況就可以了。下面我們下載和安裝ES(我們以windows作業系統和Elasticsearch 2.3.1為例,其實在linux上安裝沒有區別):
下載
Elasticsearch的所有版本都有四種打包格式:ZIP、TAR、DEB、RPM,我們使用ZIP就可以了。
目錄結構
bin:可以執行檔案
config:配置檔案
data:es存放資料的檔案
lib:執行所需類庫
logs:日誌檔案
modules:載入模組列表(其實是必要外掛)
plugins:外掛檔案(需要自定義安裝)
注:剛解壓的ES並沒有這麼多目錄,只有bin、config、lib、modules,其他都是在第一次執行之後自動生成的。
安裝步驟
Download and unzip the latest Elasticsearch distribution
下載最新Elasticsearch版本,解壓到指定目錄。
Run
bin/elasticsearch
on Unix orbin\elasticsearch.bat
on Windows在Unix上執行
bin/elasticsearch
或者在Windows上執行bin\elasticsearch.bat
(命令列,進入 cd E:\ES\elasticsearch-2.3.1\bin 目錄或者直接雙擊elasticsearch.bat執行)
執行測試
在瀏覽器裡測試一下:
如果你得到的status是200那它意味著所有的事情都ok啦…是不是很簡單?
讓我們看看JSON的每個欄位代表的含義:
Ok:當為true時,意味著請求成功。
Status:發出請求後的HTTP的錯誤程式碼。200表示一切正常。
Name:我們Elasticsearch例項的名字。在預設情況下,它將從一個巨長的名字列表中隨機選擇一個。
Version:這個物件有一個number欄位,代表了當前執行的Elasticsearch版本號,和一個Snapshot_build欄位,代表了你當前執行的版本是否是從原始碼構建而來。
Tagline:包含了Elasticsearch的第一個tagline: “You Know, for Search.”