MongoDB 3.4 复制集全量同步改进

本文涉及的产品
云原生多模数据库 Lindorm,多引擎 多规格 0-4节点
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
云数据库 MongoDB,通用型 2核4GB
简介:

3.2版本复制集同步的过程参考MongoDB 复制集同步原理解析

在 3.4 版本里 MongoDB 对复制集同步的全量同步阶段做了2个改进

  • 在拷贝数据的时候同时建立所有的索引,在之前的版本里,拷贝数据时会先建立_id索引,其余的索引在数据拷贝完之后集中建立
  • 在拷贝数据的同时,会把同步源上新产生的oplog拉取到本地local数据库的临时集合存储着,等数据全量拷贝完,直接读取本地临时集合的oplog来应用,提升了追增量的效率,同时也避免了同步源上oplog不足导致无法同步的问题。

_2017_01_03_5_58_02

上图描述了这2个改进的效果,实测了『10GB的数据,包含64个集合,每个集合包含2个索引字段,文档平均1KB』,3.4版本的全量同步相比3.2版本性能约有20%的提升,如果数据集很大,并且在同步的过程中有写入,提升的效果会更明显,并且彻底解决了因同步源oplog不足而导致全量同步失败的问题。

基于飞天分布式系统和高性能存储,提供三节点副本集的高可用架构,容灾切换,故障迁移完全透明化。并提供专业的数据库在线扩容、备份回滚、性能优化等解决方案。
相关实践学习
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月前
|
SQL DataWorks NoSQL
DataWorks报错问题之datax mongodb全量迁移报错如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
8月前
|
NoSQL MongoDB
MongoDB-复制集搭建
在安装目录下新建 data/conf/log 3个文件夹,在conf文件夹下新建 mongo.config,在mongo.config中配置如下内容:
59 0
|
2月前
|
NoSQL Linux MongoDB
centos7搭建MongoDB以及MongoDB复制集
centos7搭建MongoDB以及MongoDB复制集
36 0
|
8月前
|
数据库
MongoDB-复制集投票节点
?> 投票节点就是不保存任何数据, 只参与投票的节点
49 0
|
4月前
|
SQL 分布式计算 NoSQL
快速实践: 通过 Flink CDC 一键整库同步 MongoDB 到 Paimon
Apache Paimon (incubating) 是一项流式数据湖存储技术,可以为用户提供高吞吐、低延迟的数据摄入、流式订阅以及实时查询能力。
76549 4
快速实践: 通过 Flink CDC 一键整库同步 MongoDB 到 Paimon
|
5月前
|
监控 NoSQL MongoDB
轻松掌握组件启动之MongoDB(番外篇):高可用复制集架构环境搭建-mtools
mtools是一个基于Python实现的MongoDB工具集,旨在提供一系列功能,包括MongoDB日志分析、报表生成以及简易的数据库安装等。它由MongoDB原生的工程师单独发起并进行开源维护。mtools包含了一些常用的组件,如mlaunch、mlogfilter、mplotqueries和mlogvis等,可以帮助我们更方便地启动和创建MongoDB数据库。
|
5月前
|
监控 NoSQL 安全
轻松掌握组件启动之MongoDB(下):高可用复制集架构环境搭建
本章介绍了MongoDB复制集的配置和使用方法,如何初始化和添加节点到复制集,验证主节点的写入和从节点的读取功能。了解如何查询复制集的状态,包括成员的健康状况、同步信息和角色等。最后,我们介绍了如何配置复制集的安全认证,包括创建用户和生成keyFile文件,并演示了使用认证信息连接复制集的方式。通过本章的学习,你将掌握MongoDB复制集的基本使用和配置方法。
|
5月前
|
存储 NoSQL 容灾
轻松掌握组件启动之MongoDB(上):高可用复制集架构环境搭建
本文介绍了MongoDB复制集的架构和特点,强调了使用复制集提供数据的高可用性和冗余性的重要性。复制集由Primary节点和Secondary节点组成,确保数据一致性。复制集还具有数据分发、读写分离和异地容灾等附加功能。使用MongoDB复制集可以提供稳定可靠的数据存储和高可用性。
轻松掌握组件启动之MongoDB(上):高可用复制集架构环境搭建
|
8月前
|
数据库 索引
MongoDB-复制集同步规则
初始化同步 • 将一个新的节点加入到复制集中时, 就需要进行初始化同步 • 初始化同步会先清空自己所有的内容, 保证将来自己和主节点一模一样 • 初始化同步会将主节点中现有所有的 ‘数据库’, ‘集合’, ‘文档’, ‘索引’ 全部拷贝过来 • 但是在拷贝的过程中主节点仍然可能会做一些其它操作, 新增一些其它的数据等
54 0
|
8月前
MongoDB-复制集选举规则
选举规则 • 一旦发现主节点没有响应 / 发送心跳请求, 那么副节点就会认为主节点挂了 • 一旦发现主节点挂了, 任意一个副节点都可以发起选举 • (发起选举的节点我们称之为 候选节点, 每一个节点内部都有一个 选举计数器) • 发起选举的节点会给自己先投一票, 然后将自己的票数依次发送给其它节点
54 0

相关产品

  • 云数据库 MongoDB 版