what is Elasticsearch
-
Elasticsearch被稱(chēng)為“Lucene穿了一件json的外衣”---把Lucene用Netty封裝成服務(wù),使用json訪問(wèn),就是Elasticsearch。
-
Elasticsearch相對(duì)于solr更容易分布式部署---Elasticsearch內(nèi)置了對(duì)分布式集群和分布式索引的管理,節(jié)點(diǎn)之間的通信和節(jié)點(diǎn)之間的數(shù)據(jù)分配和平衡全部由Elasticsearch自動(dòng)管理
what can it do
Elasticsearch是頗受歡迎的NoSQL存儲(chǔ)、索引、搜索工具,作為Elastic stack的一部分,也是十分受歡迎的日志分析工具
Elasticsearch 結(jié)構(gòu)
- 每一個(gè)運(yùn)行實(shí)例(或者一個(gè)節(jié)點(diǎn))可以在同一個(gè)機(jī)器上,也可以在不同的機(jī)器上
- 在一個(gè)分布式系統(tǒng)中,可以通過(guò)多個(gè)Elasticsearch運(yùn)行實(shí)例組成一個(gè)計(jì)集群(cluster),集群中會(huì)有一個(gè)主節(jié)點(diǎn)(master),因?yàn)镋lasticsearch是去中心化的,所以主節(jié)點(diǎn)是動(dòng)態(tài)選舉出來(lái)的---不存在單點(diǎn)故障。
- Elasticsearch會(huì)把一個(gè)索引(Index)分為多個(gè)小的索引,每個(gè)部分(索引的一部分)被稱(chēng)為分片(Shards)。
- Elasticsearch的每一個(gè)Shards都可以有0到n個(gè)Replicas。Replicas都是Shards的完整copy,用來(lái)增加速度,同時(shí)也增加容錯(cuò)性。
- 一旦某個(gè)節(jié)點(diǎn)數(shù)據(jù)損壞或者服務(wù)不可用時(shí),就可以用其他節(jié)點(diǎn)代替壞掉的節(jié)點(diǎn)(高可用性)
- 當(dāng)節(jié)點(diǎn)加入或退出,Elasticsearch會(huì)根據(jù)機(jī)器的負(fù)載對(duì)索引分片進(jìn)行重新分配。
- 網(wǎng)關(guān)(GateWay)管理集群恢復(fù)(可以配置集群需要所少個(gè)節(jié)點(diǎn),才能啟動(dòng)恢復(fù)),網(wǎng)關(guān)配置用于恢復(fù)任何失敗的索引。當(dāng)掛掉的節(jié)點(diǎn)重新加入,會(huì)進(jìn)行數(shù)據(jù)恢復(fù)(Recovery)---Elasticsearch會(huì)從GateWay讀取所有索引和元數(shù)據(jù)。
.鏡像站
Elasticsearch:https://www./Mirrors/Mirrors-Elasticsearch/
Kibana:https://www./Mirrors/Mirrors-Kibana/
|