MongoDB的副本集
阿新 • • 發佈:2018-11-03
MongoDB的副本集
一、副本集相關概念
1.副本集
有自動故障恢復功能的主從叢集,至少需要兩個節點: 一主一從、一主多從
2.副本集特徵
- N 個節點的叢集
- 任何節點可作為主節點
- 所有寫入操作都在主節點上
- 自動故障轉移
- 自動恢復
3.副本集節點型別
引數 | 說明 |
---|---|
Primary | 主節點 可讀寫,唯一可以進行寫操作的節點,由叢集自行選舉出來 |
Secondary | 正常情況下,Seconary會參與Primary選舉(自身也可能會被選為Primary),並從Primary同步最新寫入的資料,以保證與Primary儲存相同的資料。Secondary可以提供讀服務,增加Secondary節點可以提供副本集的讀服務能力,提升副本集的可用性。 |
Arbiter | 只參與投票,不能被選為Primary,並且不從Primary同步資料。非常輕量級的服務,當複製整合員為偶數時,最好加入一個Arbiter節點,以提升複製集可用性。 |
Priority0 | Priority0節點的選舉優先順序為0,不會被選舉為Primary,且不能發起選舉。 |
Vote0 | 副本整合員最多50個,參與Primary選舉投票的成員最多7個,其他成員(Vote0)的vote屬性必須設定為0,即不參與投票。 |
Hidden | Hidden節點不能被選為主(Priority為0),並且對Driver不可見。因Hidden節點不會接受Driver的請求,可使用Hidden節點做一些資料備份、離線計算的任務,不會影響複製集的服務。 |
Delayed | Delayed節點必須是Hidden節點,並且其資料落後與Primary一段時間(可配置,比如1個小時)。因Delayed節點的資料比Primary落後一段時間,當錯誤或者無效的資料寫入Primary時,可通過Delayed節點來做資料恢復。 |
4.複製
將資料同步在多個伺服器的過程(在多個伺服器上儲存資料副本)
5.複製優點
- 提供了資料的冗餘備份,
- 提高了資料的可用性,
- 保證資料的安全性,
- 允許從硬體故障和服務中斷中恢復資料,
- 無需停機維護(如備份,重建索引,壓縮)
- 分散式讀取資料