mongoDB-隐藏副本集成员

隐藏成员维护主节点数据集的副本,但对客户端应用程序是不可见的。隐藏成员适用于与副本集中的其他成员具有不同使用模式的工作负载。隐藏成员必须始终是优先级为0的成员,因此不能成为主节点。isMaster()方法不显示隐藏成员。然而,隐藏成员可以在选举中投票。

在下面的五成员副本集中,所有四个次节点都有主节点数据集的副本,但是其中一个次节点成员是隐藏的。
在这里插入图片描述

行为

读操作

客户端不会将具有适当读首选项的读分发给隐藏成员。因此,除了基本复制之外,这些成员没有收到任何流量。将隐藏成员用于特定的任务,如报告和备份。延迟的成员应该隐藏。

在分片集群中,mongos不与隐藏成员交互。

投票

隐藏成员可以在副本集合选举中投票。如果你阻止了一个隐藏的投票成员,确保这个群体有一个活跃的大多数,否则主节点将会结束。

为了备份,

  • db.fsynclock()确保使用低级备份工具(如cp、scp或tar)复制数据文件是安全的。开始使用复制文件的mongod包含用户编写的数据,这些数据与锁定的mongod上的用户编写的数据没有区别。
    被锁定的mongod的数据文件可能会由于日志同步WiredTiger快照等操作而更改。虽然这对逻辑数据(例如客户访问的数据)没有影响,但一些备份实用程序可能会检测到这些更改并发出警告或出现错误。有关MongoDB推荐的备份实用程序和过程的更多信息,请参阅MongoDB备份方法

写级别

隐藏的复制集成员可以确认w: 发出的写操作。对于w:“多数”的写操作,隐成员也必须是有投票权的成员(即members[n].votes大于0)确认“多数”写入操作。无表决权的复制集成员(即members[n].votes为0)不能帮助确认多数写操作。

延伸阅读

有关备份MongoDB数据库的更多信息,请参见MongoDB备份方法。若要配置隐藏成员,请参阅配置隐藏复制集成员

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值