开发者社区> serana_cai> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

如果你还在停服迁移数据,那你就out啦!!

简介: 很多数据库提供的原生迁移工具只能进行全量数据拷贝,为了保证迁移数据一致性,要求业务在数据迁移之前需停止服务。所以这种传统的迁移方案对业务影响极大。为降低数据迁移门槛,阿里云数据传输DTS推出不停服迁移功能。使用不停服迁移功能,可实现整个数据迁移过程中,业务停服时间降低到分钟级别
+关注继续查看

简介

数据库迁移是系统发展各个阶段,都会遇到的问题。例如数据库压力达到瓶颈需要拆分,业务系统需要迁移上云,测试数据构造等。很多数据库都提供了原生的迁移工具,例如MySQL的mysqldump,SQLServer的SSMA,Oracle的imp/exp。然而这些工具都只能进行全量数据拷贝,为了保证迁移数据一致性,要求业务在数据迁移之前需要停止服务。所以,这种传统的迁移方案对业务影响极大。为降低数据迁移门槛,阿里云数据传输DTS推出不停服迁移功能。使用不停服迁移功能,可实现整个数据迁移过程,业务停服时间降低到分钟级别

传统数据库迁移流程

本小节简单介绍传统全量迁移方案的整个数据迁移流程。
_

如上图所示,传统数据库迁移流程包括以下几个步骤:
(1) 应用停止服务
(2) 使用工具开始进行数据迁移
(3)启动应用,重新提供服务

所以,整个数据迁移过程当中,应用需要全程停服。如果数据量比较大的情况下,整个应用停服时间可能高达几个小时甚至数天,这对应用影响极大。

不停服数据库迁移流程

本小节简单介绍数据传输DTS提供的增量迁移方案的整个数据迁移流程。
_

如上图所示,数据传输DTS提供的不停服迁移流程包括以下几个步骤:
(1) 使用DTS,配置数据迁移任务
(2) 迁移任务进入增量数据同步阶段时,当增量数据追平后,将源库应用停服,数据同步快速追平后,将业务切换到目标数据库,启动业务开启服务

所以,整个数据迁移过程当中,应用只需要在要切换之前停服,停服时间降低到分钟级别,极大得降低了数据迁移对业务的影响。

不停服数据库迁移技术原理

本小节简单介绍数据传输DTS提供的不停服迁移的实现原理。

_

如上如所示,DTS在全量迁移之前,会先在后台启动一个增量日志拉取及解析程序。这个程序会实时获取源数据库在全量迁移过程中产生的任何增量日志,解析并将其封装为DTS自己的数据格式存储在本地存储系统中。当全量迁移完成后,增量数据回放模块,会去拉取模块中读取存储的增量日志数据,然后通过解析、过滤、封装等步骤,最终拼装成要回放的SQL语句,回放到目标数据库,从而实现源数据库同目标数据库之间的增量数据实时同步。

小结

不停服迁移功能是阿里云数据传输DTS提供的低门槛数据迁移方式。目前可以实现MySQL、SQLServer、PostgreSQL的不停服迁移,未来DTS还将提供Oracle、MongoDB、Redis的不停服迁移功能。立即体验 >>

不停服迁移功能只是数据传输DTS提供的一种迁传输方式,除数据迁移之外,数据传输还提供了数据实时同步,实时数据订阅等多种传输能力,通过数据实时同步可以实现数据异地灾备加速跨境业务访问速度打通oltp->olap数据通道 等场景。通过数据订阅可以实现轻量级缓存更新核心业务异步解耦 等业务场景。如需了解数据传输更多详情,请猛击数据传输

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
数据链路层
1.数据链路层亦存在不同的协议,每种协议可以组成一种二层网络。2.WIFI:计算机和无线路由器之间通过802.11协议连接3.以太网:计算机和无线路由器之间通过ETHERNET II协议或者802.3协议连接,协议属于数据链路层协议4.PPP:网络设备之间连接经常使用PPP协议,PPP协议作为链路层协议,有不同的接口规定5.帧中继协议:帧中继(数据链路层协议),可以使用同种物理层设备来封装不同二层协议6.数据链路层特点:a) 封装解封装b) 编址(物理地址)) 流量控制d) 链路连接的维护e) 帧同步f) 差错校验7.数据链路层特点一:封装解封装a) 数据链路层协议将数据链路层的帧分装成比特流
22 0
[操作系统]Fat32磁盘结构与数据恢复实验报告(上)
[操作系统]Fat32磁盘结构与数据恢复实验报告
82 0
网络编程(三)数据链路相关知识
网络编程(三)数据链路相关知识
41 0
VB编程:VB运用数据结构
VB编程:VB运用数据结构
30 0
数据排序
数据排序:http://www.365mini.com/page/tag/%E6%95%B0%E6%8D%AE%E6%8E%92%E5%BA%8F ? //冒泡排序 int[] arr={123,223,66,883,223,34,763,256,44,99,88}; for(int i=0;...
606 0
云计算渐行渐近 海量数据如何迁移到云里
本文讲的是云计算渐行渐近 海量数据如何迁移到云里,风险管理咨询公司Kroll的首席信息官Jeff Kubacki为其公司定下一个目标,即在未来三年内将存储成本降低25%.到目前为止,该公司的存储数据量达到13 PB(petabytes),Kubacki计划通过分级存储(tiered storage)、改变业务流程和采用包括云存储在内的新技术等多种手段相结合的方式来解决这个问题。
1243 0
数据结构例程——基数排序
本文是[数据结构基础系列(9):排序]中第10课时[基数排序]的例程。 #include <stdio.h> #include <malloc.h> #include <string.h> #define MAXE 20 //线性表中最多元素个数 #define MAXR 10 //基数的最大取值 #def
930 0
数据结构例程——选择排序之堆排序
本文是[数据结构基础系列(9):排序]中第7课时[选择排序之堆排序]的例程。 对算法运行过程,补充了一个示例,见[补充示例]。 #include <stdio.h> #define MaxSize 20 typedef int KeyType; //定义关键字类型 typedef char InfoType[10]; typedef struct
1217 0
+关注
serana_cai
test
24
文章
19
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载


http://www.vxiaotou.com