ES分布式机制的透明性,垂直扩容和水平扩容,数据rebalance,master节点,节点平等的分布式架构,shard和replica机制(学习)
1、Elasticsearch對復雜分布式機制的透明影藏特性
Elasticsearch是一套分布式的系統,分布式是為了應對大數據量影藏了復雜的分布式機制。
分片機制(我們可以隨隨便便就將一些document插入到es集群中去,我們沒有care過數據是怎么進行分片的,數據到哪個shard中去)
cluster discovery(集群發現機制,集群status從yellow轉green的實現里,直接啟動了第二個es進程,那個進程作為一個node自動就發現了集群,并且加入了進去,還接受了部分數據,replica shard)
shard負載均衡(舉例,假設現在有3個節點,總共有25個shard要分配到3個節點上去,es會自動進行均勻分配,以保持每個節點的均衡的讀寫負載請求)
shard副本,請求路由,集群擴容,shard重分配。
2、Elasticsearch支持垂直擴容和水平擴容
垂直擴容:采購更強大的服務器。
水平擴容:采購越來越多的普通服務器,性能比較一般,但是很多普通服務器組織在一起,就能構成強大的計算和存儲能力。
擴容對應用程序的透明性。
3、增加或減少節點時的數據rebalance
保持負載均衡
4、master節點
(1)、創建或刪除索引
(2)、增加或刪除節點
5、節點平等的分布式架構
(1)、節點對等,每個節點都能接收所有的請求。
(2)、自動請求路由
(3)、響應收集
6、shard和replica機制再次梳理
(1)index包含多個shard
(2)每個shard都是一個最小工作單元,承載部分數據,lucene實例,完整的建立索引和處理請求的能力
(3)增減節點時,shard會自動在nodes中負載均衡
(4)primary shard和replica shard,每個document肯定只存在于某一個primary shard以及其對應的replica shard中,不可能存在于多個primary shard
(5)replica shard是primary shard的副本,負責容錯,以及承擔讀請求負載
(6)primary shard的數量在創建索引的時候就固定了,replica shard的數量可以隨時修改
(7)primary shard的默認數量是5,replica默認是1,默認有10個shard,5個primary shard,5個replica shard
(8)primary shard不能和自己的replica shard放在同一個節點上(否則節點宕機,primary shard和副本都丟失,起不到容錯的作用),但是可以和其他primary shard的replica shard放在同一個節點上
7、創建index是什么樣子的
(1)單node環境下,創建一個index,有3個primary shard,3個replica shard
PUT /test_index {"settings": {"number_of_shards": 3,"number_of_replicas": 1} }
(2)、集群status是yellow
(3)、這個時候,只會將3個primary shard分配到僅有的一個node上去,另外3個replica shard是無法分配的。
(4)、集群可以正常工作,但是一旦出現節點宕機,數據全部丟失,而且集群不可用,無法承接任何請求。
總結
以上是生活随笔為你收集整理的ES分布式机制的透明性,垂直扩容和水平扩容,数据rebalance,master节点,节点平等的分布式架构,shard和replica机制(学习)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ES分组聚合:计算每个tag下的商品数量
- 下一篇: Jetty在win10上的配置,IDEA