1.index包含多個shardnode
2.每一個shard都是一個最小工做單元,承載部分數據,lucene實例,完整的創建索引和處理請求的能力負載均衡
3.增減節點時,shard會自動在nodes中負載均衡spa
4.primary shard和replica shard,每一個document確定只存在於某一個primary shard以及其對應的replica shard中,不可能存在於多個primary shardcode
5.replica shard是primary shard的副本,負責容錯,以及承擔讀請求負載blog
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放在 同一個節點上class
(1)單node環境下,建立一個index,有3個primary shard,3個replica shard
(2)集羣status是yellow
(3)這個時候,只會將3個primary shard分配到僅有的一個node上去,另外3個replica shard是沒法分配的
(4)集羣能夠正常工做,可是一旦出現節點宕機,數據所有丟失,並且集羣不可用,沒法承接任何請求test
PUT /test_index
{
"settings" : {
"number_of_shards" : 3,
"number_of_replicas" : 1
}
}
1.replica shard分配:3個primary shard,3個replica shard,1 node集羣
2.primary ---> replica同步
3.讀請求:primary/replica