【MongoDB训练营】第三课:复制集使用及原理介绍 答疑汇总

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云原生多模数据库 Lindorm,多引擎 多规格 0-4节点
简介: 【MongoDB训练营】第三课:复制集使用及原理介绍 答疑汇总

1.MongoDB副本集模式下,如果复制其中一个 节点的DB目录文件到其他新的3台机器上,是否可以使用这3台机器组建一个副本集,而且不需要这3台机器间再去重新同步数据呢?
阿里云帮助文档:
https://help.aliyun.com/document_detail/58329.html
里面是只把数据复制到一台机器上,然后以单节点模式恢复MongoDB物理备份的数据,然后再删除单节点上local库中原有副本集配置信息,然后再准备两个空节点,跟这个单节点模式的节点initiate成一个新的集群。这样的话,需要在2个空节点间传送数据,现在想避免这种数据传送,请问老师该如何操作。

答:可以以拷贝数据文件的方式重新组建新的副本级节点,但是要注意数据的一致性。
最佳实践:以三节点副本集为例,可以把一个节点shutdown,拷贝数据到新节点,最后在主节点执行rs.add把新节点加入;fsynclock写锁定,保证数据是最新且一致的。

2.作为之前没有接触过mongodb的人感觉课程内容听不太懂怎么办?另外能不能介绍些mongodb severless的内容,官网介绍说它完美解决了MongoDB使用门槛高的问题,帮助中小客户轻松上云,那么它解决了哪些运维的门槛啊?

答:大家可以去mongodb大学进行自我学习,mongodb serverless 可以更加透明的提供mongodb服务,提供弹性的扩容;不需要关注太多的参数配置,最后就是性价比了,哈哈。

3.ops manager是可以单独购买的还是必须购买企业版?有没有可以备份oplog的第三方工具?如果没有现成的 工具如何在oplog写满时备份oplog

答:ops manager 可以在官网下载,可以做到实例部署、监控、慢日志分析,op log备份等;mongodb dump可以备份op log 另外阿里云也提供这个功能。

4.我在分片副本集上采用writeConcern=majority, readConcern=majority设置进行数据读写时,某个写操作由于返回writeConcernException而失败,但是随后的读操作却依旧能读到该写写入的值,请问老师这是因为问题出在哪?这样的写操作应该认为它写入成功了吗?

答:要关注这个writetimeout参数,比如5s,但是复制延迟比较高,还没有及时复制到备库,但是再有一会时间,就满足了majority,那么再等一会是都可以都读到的,还有就是readConcern 比如是local的话是本地就是可以读到的。

5.Q1. 副本集 和 复制集 是两个概念 还是一个?
Q2. linux 环境下 安装的 MongoDB 的日志默认存放位置在哪儿?
Q3. 同步时在什么时候判定同步完成?

答:副本集和复制集是一个概念,replication set
op log 存放的位置是可以通过参数配置的。
system log:

path

storage:

dbpath:

使用下面的命令可以检查集群同步的状态及一致性:
rs.status
rs.PrintSlaveReplicationInfo
rs.PrintReplicationInfo

6.可以讲解一下因果一致性吗?

答:因果一致性,个人感觉这块不清楚的可以了解下事务隔离级别,参考老师的链接。

7.数据量 特别大,比如超过1T 的副本集有什么比较好的备份方案么?

答:阿里云 云盘提供快照功能实现备份,建议配置hidden节点专门进行备份运维操作。

8.请问采用三节点副本集的mongo时,会有可能出现由于副本集同步时间差的问题,造成数据从副本读取缺失?这种情况可以通过什么办法避免呢?

答:异步复制,要避免这种情况,还是要减少大批量事务,
如果对一致性要求有一定要求,可以设置合适的readconcern,writeconcern,比如都是majority可以兼顾性能和数据的一致性要求。

9.云数据库平台开发,问题1的扩充,如果是使用物理备份的话,三个节点都用的其他节点的物理备份。新建副本集时,rs.init好像会清除掉oplog,secondary和hidden节点认为自己无法进行部分同步,最后导致全量同步,这个问题请问怎么解决?

答:问题1 的回答是针对新建实例加入现有副本集的情况

10.增加了事务处理的三节点mongo,事务提交的延迟时间,节点同步的延迟时间是怎么处理的呢?

答:表示一样不太明白,节点同步延迟时间,主要看primary、secondary的负载,
事务的提交延迟如果硬要和节点的同步延迟扯上关系 我感觉就是那个writeconcern 你是majority还是其他。

11.请问夏老师从ops监控里面看到cursor timeout会经常出现,如何能定位到具体的timeout语句?

答:还是要开发人员及时关闭cursor,另外监控的话 我觉得可以从应用或者中间层测打一些标记。

12.刚刚视频;里的选举投票是什么意思,成员心跳又是什么意思?

答:高可用机制, raft这个在很多数据库如redis cluster 中都有应用,不了解的同学自学下,一劳永逸的事情

感谢@任旭龙 对答疑整理的支持。

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
目录
相关文章
|
1月前
|
存储 缓存 NoSQL
MongoDB内部的存储原理
这篇文章详细介绍了MongoDB的内部存储原理,包括存储引擎WiredTiger的架构、btree与b+tree的比较、cache机制、page结构、写操作流程、checkpoint和WAL日志,以及分布式存储的架构。
36 1
MongoDB内部的存储原理
|
2月前
|
运维 监控 NoSQL
【MongoDB 复制集秘籍】Secondary 同步慢怎么办?深度解析与实战指南,让你的数据库飞速同步!
【8月更文挑战第24天】本文通过一个具体案例探讨了MongoDB复制集中Secondary成员同步缓慢的问题。现象表现为数据延迟增加,影响业务运行。经分析,可能的原因包括硬件资源不足、网络状况不佳、复制日志错误等。解决策略涵盖优化硬件(如增加内存、升级CPU)、调整网络配置以减少延迟以及优化MongoDB配置(例如调整`oplogSize`、启用压缩)。通过这些方法可有效提升同步效率,保证系统的稳定性和性能。
66 4
|
4月前
|
存储 监控 NoSQL
MongoDB索引解析:工作原理、类型选择及优化策略
MongoDB索引解析:工作原理、类型选择及优化策略
|
2月前
|
监控 NoSQL 大数据
【MongoDB复制集瓶颈】高频大数据写入引发的灾难,如何破局?
【8月更文挑战第24天】在MongoDB复制集中,主节点处理所有写请求,从节点通过复制保持数据一致性。但在大量高频数据插入场景中,会出现数据延迟增加、系统资源过度消耗、复制队列积压及从节点性能不足等问题,影响集群性能与稳定性。本文分析这些问题,并提出包括优化写入操作、调整写入关注级别、采用分片技术、提升从节点性能以及持续监控调优在内的解决方案,以确保MongoDB复制集高效稳定运行。
52 2
|
2月前
|
C# 开发者 Windows
全面指南:WPF无障碍设计从入门到精通——让每一个用户都能无障碍地享受你的应用,从自动化属性到焦点导航的最佳实践
【8月更文挑战第31天】为了确保Windows Presentation Foundation (WPF) 应用程序对所有用户都具备无障碍性,开发者需关注无障碍设计原则。这不仅是法律要求,更是社会责任,旨在让技术更人性化,惠及包括视障、听障及行动受限等用户群体。
74 0
|
2月前
|
C# UED 开发者
WPF与性能优化:掌握这些核心技巧,让你的应用从卡顿到丝滑,彻底告别延迟,实现响应速度质的飞跃——从布局到动画全面剖析与实例演示
【8月更文挑战第31天】本文通过对比优化前后的方法,详细探讨了提升WPF应用响应速度的策略。文章首先分析了常见的性能瓶颈,如复杂的XAML布局、耗时的事件处理、不当的数据绑定及繁重的动画效果。接着,通过具体示例展示了如何简化XAML结构、使用后台线程处理事件、调整数据绑定设置以及利用DirectX优化动画,从而有效提升应用性能。通过这些优化措施,WPF应用将更加流畅,用户体验也将得到显著改善。
111 0
|
3月前
|
存储 NoSQL MongoDB
MongoDB 索引原理与索引优化
MongoDB 索引原理与索引优化
72 1
|
4月前
|
存储 JSON NoSQL
深入解析MongoDB的存储原理
深入解析MongoDB的存储原理
深入解析MongoDB的存储原理
|
1月前
|
存储 NoSQL 关系型数据库
非关系型数据库-MongoDB技术(二)
非关系型数据库-MongoDB技术(二)
|
1月前
|
NoSQL 关系型数据库 MongoDB
非关系型数据库-MongoDB技术(一)
非关系型数据库-MongoDB技术(一)

相关产品

  • 云数据库 MongoDB 版