关于数据库:使用-DataWorks-将-PolarDBX-中的数据同步到-MaxCompute

49次阅读

共计 2647 个字符,预计需要花费 7 分钟才能阅读完成。

MaxCompute 是实用于数据分析场景的云数据仓库,实用于大型互联网企业的数据仓库和 BI 剖析、网站的日志剖析、电子商务网站的交易剖析、用户特色和趣味开掘等。大数据开发治理平台 DataWorks 基于 MaxCompute / EMR / MC-Hologres 等大数据计算引擎,为客户提供业余高效、安全可靠的一站式大数据开发与治理平台。本文介绍 PolarDB-X 与 MaxCompute 零碎的疾速对接形式,不便您对在线业务数据进行大数据分析。

前提

创立或者应用已有的 PolarDB- X 实例
DataWorks 中创立好我的项目
MaxCompute 中建好集群
在 DataWorks 中筹备好 MaxCompute 的数据源
以上这些请自行参考相干文档实现。

筹备测试数据

咱们首先在 PolarDB- X 中创立一些测试数据。

1. 建库,并创立一张表:

create database d1 mode=auto;
use d1;
CREATE TABLE `t1` (`id` int(11) NOT NULL AUTO_INCREMENT,
        `c1` int(11) DEFAULT NULL,
        `gmt_create` datetime DEFAULT CURRENT_TIMESTAMP,
        PRIMARY KEY (`Id`)
);

2. 制作一些数据:

insert into t1 values (null,rand()*20000,now());
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;
insert into t1 select null,rand()*20000,now() from t1;

创立数据源为了让 DataWorks 能读取 PolarDB- X 的数据,须要创立一个数据源。

1. 进入 DataWorks 控制台,抉择数据集成:

2. 点击右边的数据源:

3. 点击右上角新增数据源:

4. 抉择 DRDS:

5. 数据源类型抉择连贯串模式,将 PolarDB- X 实例的内网地址拼在 JDBC URL 中,并测试连通性通过:

留神,这里前提了曾经有了独享数据集成资源组,并已买通了与该 PolarDB- X 实例之间的网络。如果未满足该前提,须要先额定实现上面的干线工作:

干线:创立独享数据集成资源组并买通网络

1. 在没有独享数据集成资源组的状况下,须要先创立一个独享数据集成资源组:

2. 将该独享数据集成资源组的网络与咱们的 PolarDB- X 实例买通,操作入口地址:https://workbench.data.aliyun.com/?xconsole=true#/resourcelist/?region=cn-hangzhou&tab=exclusive

3. 点击网络设置:

4. 点击新增绑定:

5. 抉择 PolarDB- X 实例对应的网络信息,重点是专有网络、可用区、交换机。平安组暂不明实际意义,能够轻易选一个。

6. 记录绑定网络后,该资源组的交换机网段:

7. 在 PolarDB- X 管制台上,将下面记录的网段增加到白名单中:

8. 留神,更简单的网络模型(例如跨账号等),请参考 DataWorks 官网文档提供的各种解决方案。

创立同步工作

这里以创立一个“一次性全量同步到 MaxCompute 工作”为例。

1. 在同步工作菜单中,点击新建工作:

2. 数据起源抉择 DRDS,数据去向抉择 MaxCompute,同步计划抉择“整库离线同步至 MaxCompute(一次性全量)”,点击下一步:

3. 抉择之前创立的数据源、资源组,以及 MaxCompute 的信息,并测试通过连通性:

4. 抉择要同步的表:

5. 刷新下表映射:

6. 一路下一步,最初执行同步工作:

7. 在执行详情中,能够看到同步的后果:

常见问题

  • 对于 PolarDB-X 1.0(DRDS)与 PolarDB-X 2.0 均实用于本文中的办法
  • 对于 PolarDB-X 2.0,mode=auto 于 mode=drds 的数据库均实用于本文中的办法
  • 在 DataWorks 中,一律抉择 DRDS。(因为 PolarDB- X 和 MySQL 的高度兼容,抉择 MySQL 也没啥问题,但抉择 DRDS 咱们外部做过对应的优化,性能会更好)
  • 本文中的 PolarDB- X 实例版本为:5.4.15-16704996,请尽可能不低于此版本,老的版本中 INFORMATION_SCHEMA 存在一些兼容性问题,可能无奈与 DataWorks 工作的很好
  • 对于开源自建的 PolarDB- X 实例,同样实用于本文中的办法。外围在于应用连贯串来创立数据源,并买通网络。
  • 通过 DataWorks 将数据同步到其余中央也是大同小异,参考本文办法即可

作者:梦实

原文链接

本文为阿里云原创内容,未经容许不得转载。

正文完
 0