数据传输DTS新功能发布—MongoDB不停机迁移

本文涉及的产品
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
云数据库 MongoDB,通用型 2核4GB
简介: 为了降低MongoDB迁移门槛,DTS于8月份正式上线MongoDB不停机迁移,实现在MongoDB迁移过程中,源数据库正常提供服务,最大程度降低应用的停机时间。

背景

随着MongoDB的普及,使用MongoDB的用户越来越多。在使用MongoDB的过程中,可能会因为上云、扩容、拆分等业务需求,需要进行 MongoDB的数据迁移。MongoDB官方提供了迁移工具mongodump/mongorestore,然而这个工具只能进行全量导入导出,为了保证迁移数据一致性,它要求数据迁移过程中,源MongoDB上的应用程序需要停机。所以,这种迁移方式对业务影响极大。为了降低MongoDB迁移门槛,DTS于8月份正式上线MongoDB不停机迁移,实现在MongoDB迁移过程中,源数据库正常提供服务,最大程度降低应用的停机时间。

本文主要介绍不停机迁移设计原理及MongoDB不停机迁移使用流程:

不停机迁移设计原理
MongoDB不停机迁移功能列表
MongoDB不停机迁移使用方式
小结

不停机迁移设计原理

__MongoDB

如上图所示,不停机迁移过程包括:

(1) 全量数据迁移,全量数据迁移会将源实例中的存量数据迁移到目标实例
(2) 增量数据迁移,增量数据迁移将迁移过程中,源实例产生的增量数据同步到目标实例

在迁移任务启动后,DTS即启动全量数据迁移及增量数据拉取及解析模块。增量数据拉取模块会实时获取源实例在全量数据迁移过程中产生的增量数据,并通过解析、封装后存储在DTS存储系统中。
当全量数据迁移完成后,DTS启动增量数据回放模块,增量数据回放模块从DTS存储系统中获取源实例产生的增量数据,同步解析、过滤、封装后同步到目标实例中。
增量数据迁移是个动态同步的过程,任务不会自动结束,所以建议在增量数据迁移达到无延迟后,即在目标实例进行业务测试,业务测试通过后,源库业务停写,然后等增量数据完全追平后,将业务切换到目标实例。由此可见,数据迁移过程中,业务停机时间,从业务停写,增量数据完全追平到业务切换到目标实例的时间,整个停机时间可以降低分钟级别。

MongoDB不停机迁移功能列表

支持实例类型

(1) 支持 自建MongoDB 到 云MongoDB实例 不停机迁移
(2) 支持 云MongoDB实例 到 云 MongoDB实例 不停机迁移

支持操作类型

(1) 支持 document 新增、删除、更新操作的同步
(2) 支持 collection 新增、删除操作的同步
(3) 支持 database 新增、删除操作的同步

MongoDB不停机迁移使用方式

本小节以用户自建MongoDB到云MongoDB实例的迁移为例,简单介绍,MongoDB不停机迁移的DTS数据迁移任务配置流程。

MongoDB连接信息配置

MongoDB___1

在这个步骤中,主要配置迁移任务名称,源MongoDB实例连接信息及目标MongoDB实例连接信息。

迁移类型及迁移对象选择

MongoDB___2

在这个步骤中,配置迁移类型及迁移对象。进行不停机迁移时,迁移类型需要配置:全量数据迁移+增量数据迁移

预检查

当上面的信息全部配置完,即可进行启动前的预检查。当预检查通过后,即可成功启动迁移任务。

当任务进入增量数据迁移阶段时,云MongoDB跟源自建MongoDB实例之间会保持数据实时同步,即自建MongoDB的更新数据都会被同步到目标云MongoDB实例。此时迁移任务不会自动结束,建议当增量数据迁移无延迟时,在云MongoDB实例上进行业务验证,如果业务验证通过后,可将业务切换到目标云MongoDB实例。

至此,完成MongoDB实例不停机迁移的任务配置。

小结

数据传输DTS致力于为用户提供关系型数据库、NoSQL及OLAP等数据源之间的数据迁移同步服务。DTS提供的MongoDB不停机迁移,可以实现在MongoDB数据迁移过程中,依赖其的应用程序停机时间降低到分钟级别。

相关链接

MongoDB不停机迁移
MySQL不停机迁移
SQLServer不停机迁移
DTS典型应用场景

相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
目录
相关文章
|
1月前
|
SQL 分布式计算 监控
在数据传输服务(DTS)中,要查看每个小时源端产生了多少条数据
【2月更文挑战第32天】在数据传输服务(DTS)中,要查看每个小时源端产生了多少条数据
17 6
|
1月前
|
SQL DataWorks NoSQL
DataWorks报错问题之datax mongodb全量迁移报错如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
1月前
|
存储 SQL NoSQL
数据传输DTS同步问题之同步失败如何解决
数据传输服务(DTS)是一项专注于数据迁移和同步的云服务,在使用过程中可能遇到多种问题,本合集精选常见的DTS数据传输问题及其答疑解惑,以助用户顺利实现数据流转。
|
1月前
|
SQL 数据库
在数据传输服务(DTS)中,当SQL数据迁移报告对象名 'dbo.VQD_Rpt_Report' 无效时
【2月更文挑战第32天】在数据传输服务(DTS)中,当SQL数据迁移报告对象名 'dbo.VQD_Rpt_Report' 无效时
11 1
|
1月前
|
关系型数据库 MySQL 数据库
使用阿里云的数据传输服务DTS(Data Transmission Service)进行MySQL 5.6到MySQL 8.0的迁移
【2月更文挑战第29天】使用阿里云的数据传输服务DTS(Data Transmission Service)进行MySQL 5.6到MySQL 8.0的迁移
223 2
|
1月前
|
监控 数据处理 数据库
数据传输DTS迁移问题之总数与已完成条数不一致如何解决
数据传输服务(DTS)是一项专注于数据迁移和同步的云服务,在使用过程中可能遇到多种问题,本合集精选常见的DTS数据传输问题及其答疑解惑,以助用户顺利实现数据流转。
|
1月前
|
关系型数据库 MySQL OLAP
数据传输DTS写入问题之无法获取数据如何解决
数据传输服务(DTS)是一项专注于数据迁移和同步的云服务,在使用过程中可能遇到多种问题,本合集精选常见的DTS数据传输问题及其答疑解惑,以助用户顺利实现数据流转。
|
1月前
|
存储 Java 关系型数据库
数据传输DTS数据问题之数据写入异常如何解决
数据传输服务(DTS)是一项专注于数据迁移和同步的云服务,在使用过程中可能遇到多种问题,本合集精选常见的DTS数据传输问题及其答疑解惑,以助用户顺利实现数据流转。
数据传输DTS数据问题之数据写入异常如何解决
|
1天前
|
NoSQL MongoDB 数据库
MongoDB数据恢复—MongoDB数据库文件被破坏的数据恢复案例
服务器数据恢复环境: 一台Windows Server操作系统服务器,服务器上部署MongoDB数据库。 MongoDB数据库故障&检测: 工作人员在未关闭MongoDB数据库服务的情况下,将数据库文件拷贝到其他分区。拷贝完成后将原MongoDB数据库所在分区进行了格式化操作,然后将数据库文件拷回原分区,重新启动MongoDB服务,服务无法启动。
|
4天前
|
NoSQL MongoDB Redis
Python与NoSQL数据库(MongoDB、Redis等)面试问答
【4月更文挑战第16天】本文探讨了Python与NoSQL数据库(如MongoDB、Redis)在面试中的常见问题,包括连接与操作数据库、错误处理、高级特性和缓存策略。重点介绍了使用`pymongo`和`redis`库进行CRUD操作、异常捕获以及数据一致性管理。通过理解这些问题、易错点及避免策略,并结合代码示例,开发者能在面试中展现其技术实力和实践经验。
37 8
Python与NoSQL数据库(MongoDB、Redis等)面试问答

热门文章

最新文章