MongoDB Replication
?
?
Purpose of Replication
Replication 為數(shù)據(jù)提供冗余的同時,也提高了數(shù)據(jù)高可用性。由于在不同數(shù)據(jù)庫服務器上擁有多個數(shù)據(jù)鏡像,Replication可以有效防止單臺機器故障導致的數(shù)據(jù)丟失。
Replication 還可以提高讀性能。客戶端將讀請求與寫請求發(fā)到不同服務器上。還可以在其他數(shù)據(jù)中心建立復制節(jié)點做異地災備,進一步提高可用性。
Replication in MongDB
Replica set 是由相同數(shù)據(jù)集的mongod實例組成。其中一個節(jié)點為主節(jié)點(primary),所有的寫請求都是在該節(jié)點上完成。其他節(jié)點為從節(jié)點(secondary),從節(jié)點接收主節(jié)點上傳來的操作并應用,并以此來保證其與主節(jié)點的數(shù)據(jù)集一致。
主節(jié)點接收所有來自客戶端的寫操作。一個Replica set 只能有一個主節(jié)點。由于一個Replica set 只有一個節(jié)點能接收寫操作,因此主節(jié)點讀操作提供了嚴格的一致性校驗。主節(jié)點將所有數(shù)據(jù)集的變動記錄到oplog 以支持Replication的實現(xiàn)。
從節(jié)點將主節(jié)點上的oplog復制過來并應用這些操作來修改自己的數(shù)據(jù)集以確保從節(jié)點的數(shù)據(jù)集與主節(jié)點保持一致。一旦主節(jié)點不可用,Replica set 將一個從節(jié)點選舉為主節(jié)點。
投票節(jié)點將只做投票使用。當主節(jié)點降級為從節(jié)點時,其他的一個從節(jié)點將在選舉中被推薦為主節(jié)點。
?
Asynchronous Replication
從節(jié)點從主節(jié)點應用操作是異步的。從節(jié)點返回給客戶端的數(shù)據(jù)可能不是最新的數(shù)據(jù)。
Automatic Failover
當主節(jié)點無法與Replica set 中的其他成員進行溝通超過10s,Replica set將推選另一位節(jié)點為主節(jié)點。
轉(zhuǎn)載于:https://www.cnblogs.com/hotbaby/p/4872657.html
總結(jié)
以上是生活随笔為你收集整理的MongoDB Replication的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java-数据结构与算法-二分查找法
- 下一篇: erlang---启动参数学习/研究