【大数据新手上路】“零基础”系列课程--MySQL 数据整库迁移到 MaxCompute

简介: 本实验通过大数据开发套件的整库迁移功能,快速将 MySQL 数据整库迁移到 MaxCompute,从而提升工作效率、降低用户使用成本。

随着公司业务的增多,云数据库 RDS 下的 MySQL 数据库的表越来越多,想要把它全部迁移到 MaxCompute 中进行计算分析,但又愁要配置太多次同步任务。如何能将大量的数据表一次性上传到 MaxCompute 中呢?通过大数据开发套件的整库迁移功能,便可快速完成 MySQL 数据整库迁移到 MaxCompute,从而节省同步时间,提高工作效率。

下面介绍一个适用于中小企业用户,高效率低成本的数据同步方案:

对于自建或云数据库 RDS 的 MySQL 数据库中的数据,都可以通过整库迁移功能,快速同步到 MaxCompute 中进行存储与分析,流程图如下:

25

云数据库 RDS :RDS 是一种稳定可靠、可弹性伸缩的在线数据库服务,本实验主要使用 云数据库 MySQL 版

MaxCompute:原名 ODPS,是由阿里云自主研发的一款服务,提供针对TB/PB级数据、实时性要求不高的分布式处理能力,它适用于海量数据的存储、计算,商业智能等领域。

大数据开发套件:大数据开发套件提供全面托管的工作流服务,一站式开发管理的界面,帮助企业快速搭建数据中心。

实验目的和前期说明

实验目的:
通过大数据开发套件的整库迁移功能,快速把云数据库中的数据同步到 MaxCompute 中。

前期说明:
用户拥有阿里云官网实名认证账号,并且创建好账号 Access Key。

实验前的准备工作

开通并创建 MaxCompute 项目

1 . 阿里云实名认证账号访问 https://www.aliyun.com/product/odps ,根据自身需求进行购买,开通 MaxCompute;

a>

2 . 点击开通成功页面的管理控制台,进入 MaxCompute 的 控制台页面

3 . 创建项目。进入控制台页面后导航至 大数据开发套件 — 项目列表,点击 创建项目,如图所示:

a>

4 . 在弹出框中选择区域和付费方式,输入项目名称:

a>

准备同步数据

创建 RDS 实例

1 . 登录 RDS 管理控制台
2 . 在 实例列表 页面,单击 新建实例,进入 创建 页面;
3 . 选择包年包月或按量付费,示例选择包年包月。关于计费方式的选择,请参见 收费项目及价格说明 中的计费方式;
4 . 根据自身需求选择基本配置、网络类型、规格、存储空间、购买时长和购买量等实例配置,详情请参见:创建实例中的选择实例配置
5 . 单击立即购买,进入订单确认页面;
6 . 阅读关系型数据库 RDS 服务条款后,根据后续提示完成支付流程。

设置白名单

1 . 登录 RDS 管理控制台,选择目标实例;
2 . 在实例左侧菜单中选择 数据安全性
3 . 在数据安全性页面的默认分组后单击 修改,如下图所示:

a>

4 . 在修改白名单分组页面删除默认白名单 127.0.0.1,填写自定义白名单后,单击 确定,如下图所示:

a>

组内白名单:填写可以访问数据库的 IP 地址或者 IP 段,IP 地址或者 IP 段间用英文逗号分隔。详情请参见:设置白名单中的操作步骤

创建账号和数据库

1 . 登录 RDS 管理控制台,选择目标实例;
2 . 选择左侧菜单中的 账号管理,单击 创建账号,如下图所示:

a>

3 . 输入要创建的账号信息,单击 确定,如下图所示:

a>

4 . 选择菜单中的 数据库管理,单击 创建数据库,如下图所示:

a>

5 . 输入要创建的数据库信息,单击 确定,如下图所示:

a>

登录数据库

进入数据库管理页面,点击上侧 登录数据库,在弹出页面填写数据库用户名和密码,如下图所示:

a>

创建表并准备数据

1 . 成功登录数据库后,点击 SQL 操作下的 SQL 窗口,如下图所示:

a>

2 . 输入建表语句,点击执行,示例如下:

 CREATE TABLE `a1` 
(
 `id` int(11) NULL,
 `col1` varchar(32) NULL,
 `col2` varchar(32) NULL,
 `col3` varchar(32) NULL,
 `col4` varchar(32) NULL
)
 ENGINE=InnoDB
 DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci;

3 . 根据自身需求写入数据即可,insert 语句如下:

`INSERT INTO table_name(col_name,...) values(expr,...)`

整库迁移配置

新增数据源

1 . 登录到大数据开发套件 数据集成产品页,单击左侧导航栏离线同步—数据源,进入数据源管理页面,如下图所示:

a>

2 . 点击右上角的 新增数据源,添加一个面向整库迁移的 MySQL 数据源 mysql_demo,填写相关信息,如下图所示:

a>
各配置项的说明请参见:RDS 数据源配置之新建 RDS-MySQL 数据源
3 . 点击 测试连通性 验证数据源访问正确无误后,确认并保存此数据源。

整库迁移

1 . 进入数据源列表页面,找到新增的数据源,点击对应 MySQL 数据源后的 整库迁移,即可进入对应数据源的整库迁移功能界面,如下图所示:
a>

a>

2 . 点击右上角 高级设置 按钮,您可以根据自身需求选择转换规则。比如 MaxCompute 端建表时统一增加了 ods_ 这一前缀,如下图所示:

a>

3 . 根据自身需求选择需要迁移的数据表、同步方式、日期字段、同步并发配置、开始时间和同步数量,如下图所示:

a>

4 . 点击 a1 表后对应的查看任务,会跳转到数据集成的任务开发界面。如下图所示:

a>

由上图可以看到:源头 a1 表对应的 MaxCompute 表 ods_a1 创建成功,列的名字和类型也符合之前映射转换配置。在左侧目录树 mysql_demo 目录下,会有对应的所有整库迁移任务,任务命名规则是: mysql2odps 源表名,如上图红框部分所示。

5 . 此时便成功将一个 MySQL 数据源 mysql_demo 整库迁移到 MaxCompute 的工作。这些任务会根据配置的调度周期(默认天调度)被调度执行,您也可以使用 DataWorks DataIde 调度补数据功能完成历史数据的传输。

通过 数据集成-整库迁移功能 可以极大减少您初始化上云的配置、迁移成本。

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
9天前
|
缓存 NoSQL 关系型数据库
13- Redis和Mysql如何保证数据⼀致?
该内容讨论了保证Redis和MySQL数据一致性的几种策略。首先提到的两种方法存在不一致风险:先更新MySQL再更新Redis,或先删Redis再更新MySQL。第三种方案是通过MQ异步同步以达到最终一致性,适用于一致性要求较高的场景。项目中根据不同业务需求选择不同方案,如对一致性要求不高的情况不做处理,时效性数据设置过期时间,高一致性需求则使用MQ确保同步,最严格的情况可能涉及分布式事务(如Seata的TCC模式)。
35 6
|
16天前
|
SQL 关系型数据库 MySQL
轻松入门MySQL:保障数据完整性,MySQL事务在进销存管理系统中的应用(12)
轻松入门MySQL:保障数据完整性,MySQL事务在进销存管理系统中的应用(12)
|
23天前
|
关系型数据库 MySQL
elasticsearch对比mysql以及使用工具同步mysql数据全量增量
elasticsearch对比mysql以及使用工具同步mysql数据全量增量
20 0
|
26天前
Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
20 1
|
26天前
Mybatis+mysql动态分页查询数据案例——工具类(MybatisUtil.java)
Mybatis+mysql动态分页查询数据案例——工具类(MybatisUtil.java)
15 1
|
5天前
|
数据采集 搜索推荐 大数据
大数据中的人为数据
【4月更文挑战第11天】人为数据,源于人类活动,如在线行为和社交互动,是大数据的关键部分,用于理解人类行为、预测趋势和策略制定。数据具多样性、实时性和动态性,广泛应用于市场营销和社交媒体分析。然而,数据真实性、用户隐私和处理复杂性构成挑战。解决策略包括数据质量控制、采用先进技术、强化数据安全和培养专业人才,以充分发挥其潜力。
11 3
|
7天前
|
运维 供应链 大数据
数据之势丨从“看数”到“用数”,百年制造企业用大数据实现“降本增效”
目前,松下中国旗下的64家法人公司已经有21家加入了新的IT架构中,为松下集团在中国及东北亚地区节约了超过30%的总成本,减少了近50%的交付时间,同时,大幅降低了系统的故障率。
|
22天前
|
关系型数据库 MySQL
MySQL查询当天昨天明天本月上月今年等数据
MySQL查询当天昨天明天本月上月今年等数据
19 2
|
22天前
|
关系型数据库 MySQL 开发工具
MySQL分组后,组内排序,然后取每组的第一条数据
MySQL分组后,组内排序,然后取每组的第一条数据
15 1
|
23天前
|
canal SQL 关系型数据库
MySQL数据直接实时同步到ES
MySQL数据直接实时同步到ES
32 0

相关产品

  • 云原生大数据计算服务 MaxCompute