开发者学堂课程【上云迁移实战:结构化数据迁移介绍】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/514/detail/6855
结构化数据迁移介绍
结构化数据
1、什么是结构化数据
结构化数据即行数据,可以用二维表结构来逻辑表达实现的数据,一般都是存储在关系型数据库中通过 sql 语句进行管理。
2、常见结构化数据库
常见的结构化数据库有 MySQL、 SQL server、 ORACLE 等。MySQL 是关系型数据库管理系统,由瑞典 MySQL ab 公司开发,目前属于 ORACLE 旗下, MySQL 是最流行的关系型数据库管理系统之一。 SQL server 是微软公司推出的关系型数据库管理系统。具有使用方便、可伸缩性好、与相关软件集成度比较高的优点。ORACLE 是甲骨文公司的一款关系型数据库管理系统,是数据库领域一直处于领先地位的产品,系统可移植信号,使用方便,功能强,适用于各类大中小危机环境,是一种高效率、可靠性好的适应高吞吐量的数据库解决方案。
3、结构化数据迁移场景
ECS 上的自建数据库迁移至阿里云 RDS
本地 IDC 服务器上的数据库迁移至阿里云 RDS
本地 IDC 服务器上的数据库迁移至阿里云 ECS 自建数据库
4、结构化数据迁移工具
Mysql 可以使用阿里云工具数据传输服 DTS 来进行数据迁移
SQL Server 可以通过 DTS 和 SSMS 工具进行迁移
Oracle 可以通过 DTS RMAN 工具进行迁移
5、什么是 DTS
数据传输( DataTransmission )服务 DTS 是阿里云提供的一种支持 RDBMS (关系型数据库)、NoSQL、OLAP 等多种数据源之间数据交互的数据流服务。能够快速的将本地数据库或者 RDS 中的实例迁移到另一个 RDS 中。
6、数据传输服务 DTS:三种迁移模式
结构迁移
支持结构迁移对象有表、视图、触发器、存储过程、存储函数
全量数据迁移
无主键的非事务表会被锁定无法写入,时长依赖于这些表的数据量大小,在这些无主键非事务表迁移完成后,锁才会释放增量数据迁移
迁移过程中,如果数据结构发生变化,变化的数据结构无法迁移到目标实例
7、数据传输服务 DTS:迁移模式支持列表
Oracle 向 RDS MySQL 版本迁移时不支持增量迁移
MySQL 向 PetaData 迁移时不支持结构迁移和增量迁移
8、数据传输服务 DTS:产品优势
丰富多样
高性能
安全可靠
简单易用
丰富多样数据传输服务能够支持多种同异构数据源之间的迁移同步,例如 Oracle 迁移到 mysql 、Oracle 迁移到 PPS,对于异构数据源之间的迁移,数据传输服务支持结构对象定义的转化,例如将 Oracle 中的同义词转换为对应的同义词定义。数据传输服务支持多种传输方式数据迁移、实时数据订阅及数据实时同步,其中实时数据订阅及数据实时同步均为实时数据传输方式。数据实时同步支持两个数据源之间的单向及双向同步,可实现数据异地灾备、异地多活应用、就近访问查询报表分流实时数据仓库等应用场景。
为降低数据迁移对应用的影响,数据迁移功能支持不停服迁移方式,不停服迁移,可实现在数据迁移过程中应用停机时间降低到分钟级别,高性能数据传输服务,使用高规格的服务器来保证每条迁移同步联络,都拥有良好的传输性能。对于数据迁移、数据传输服务,底层使用了多种性能优化措施全量数据迁移,高峰时期性能可达到70兆每秒20万 PPS。相对于传统的数据同步工具,数据传输服务的实时同步功能,能够将并发力度缩小到事务级别。能够并发同步同张表的更新数据从而极大提升同步性能,高峰时期同步性能可达到三万万每秒。
安全可靠数据传输服务底层为服务集群,集群内任何一个节点宕机或发生故障,控制中心都能够将节点上的所有任务秒级切换到其他节点上,列入稳定性高达99.95%。数据传输服务内部对部分传输链路提供七成24小时的数据准确性调研,快速发现并纠正传输数据保证传输数据的可靠性。数据传输服务各模块间采用安全传输协议及安全 token 认证有效保证数据传输可靠性。
简单易用数据传输服务,提供可视化管理界面,提供向导式链路创建流程,用户可以在其控制台简单轻松的创建自己的传输链路,数据传输服务控制台展示了链路的传输状态以及进度传输性能的信息,用户可以方便管理自己的传输链路。为了解决网络或系统异常等导致链路中断的问题,数据传输服务提供电路断点市场的功能,且定期监测所有链路的状态,一旦发现链路异常先尝试自动修复重启。如果链路需要用户介入修复,那么用户可以直接在控制台修复后触发电路重启。
9、数据传输服务 DTS:应用场景
零停机上云迁移:数据迁移支持的增量迁移功能可以实现在上云迁移过程中,本地业务继续提供服务,从而最大程度降低数据迁移期间应用停服时间(如果要将本地数据库迁移到阿里云上,可以使用数据库传输提供的数据迁移功能。数据迁移功能可以轻松实现数据一键上云,在数据传输控制台通过几个简单的步骤即可开始数据上云迁移)
异地灾备:实时同步功能可以实现不同地区的两个 RDS 实例间的增量数据实时同步,包括 DDL、DML. 同步的两个 RDS 实例构成了主从架构(要提高数据安全性需要构建 IPS,异地灾备时可以使用数据传输提供的实时同步功能)
异地多活(单元化):各个业务单元可以分布在不同的地域,从而有效解决了单地域部署带来的基础设施的扩展限制、服务可持续性及远距离访问体验问题(单元化异地多活,随着业务的快速发展对于很多公,构建异地地域的技术体系架构会面临诸如下面的多种问题,基础设施的有限性限制了业务的可扩展性,城市级别的故障、灾害影响服务的可持续性,远距离用户访问延迟高严重影响用户体验。为解决企业遇到的这些问题,用户可以选择构建异地多活架构,在同城异地构建多个单元,根据业务的某个维度,将业务流量切分到某个单元,各个业务单元可以分布在不同的地域)
降低跨地区访问延迟:使用数据传输服务提供的数据实时同步功能,选择业务量大的地区部署数据库主库承担业务写流量,在有业务访问的其他地区均构建主实例的业务读库,所有地区的全部路由到业务总库,各地区的读业务路由到本地区的业务区,从而有效降低跨地域访问数据库导致的高延迟问题,极大提升用户体验。(降低跨地域访问延迟,如果存在跨地区的业务访问为解决跨地区访问数据库带来的高延迟问题。)
本地灾备:通过 DTS 可实现本地自建数据库跟 RDS 实例之间的数据实时同步,轻松构建本地灾备中心。当 RDS 出现异常时,可快速将业务切换到本地灾备中心,秒级恢复服务,保证服务的可持续性(本地灾备提高数据库安全性需要在构建 RDS 的本地灾备时可以使用数据传输服务,DTS 提供的和云数据同步功能)
消息转发:通过数据订阅提供的消费SDK订阅RDS增量数据然后触发更新业务(消息转发如果需要实现获取数据库变更数据出发业务)