本文将为您介绍如何创建同步任务,从而将MaxCompute中的数据导出至MySQL数据源中。

背景信息

在DataWorks中,通常通过数据集成功能,将系统中产生的业务数据定期导入至工作区。SQL任务进行计算后,再将计算结果定期导出至您指定的数据源中,以便进一步展示或运行使用。

目前数据集成功能支持从RDS、MySQL、SQL Server、PostgreSQL、MaxCompute、OCS、DRDS、OSS、Oracle、FTP、DM、HDFS和MongoDB等数据源中,将数据导入工作空间或将数据从工作空间导出。详细的数据源类型列表请参见支持的数据源

前提条件

  • 如果您使用的是ECS上自建的数据库,需要在自己的ECS添加安全组。详情请参见添加安全组
  • 如果您使用的是RDS/MongoDB等数据源,需要在RDS/MongoDB等控制台添加白名单。详情请参见添加白名单
    说明 如果是通过自定义资源组调度RDS的数据同步任务,必须把自定义资源组的机器IP也加入RDS的白名单中。

新增数据源

说明 仅项目管理员角色可以新建数据源,其他角色的成员仅可查看数据源。
  1. 以项目管理员身份登录DataWorks控制台,进入工作空间列表页面。
  2. 单击相应工作空间操作下的进入数据集成
  3. 选择同步资源管理 > 数据源,单击新增数据源
  4. 新增数据源弹出框中,选择数据源类型为MySQL
  5. 填写新增MySQL数据源对话框中的配置,此处以创建连接串模式(数据集成网络可直接连通)类型为例。

    配置 说明
    数据源类型 连接串模式(数据集成网络可直接连通)。
    数据源名称 字母、数字、下划线组合,且不能以数字和下划线开头。例如abc_123。
    数据源描述 不超过80个字符。
    适用环境 可以选择开发生产环境。
    说明 仅标准模式工作空间会显示此配置。
    JDBC URL JDBC连接信息,格式为jdbc:mysql://ServerIP:Port/Database
    用户名/密码 数据库对应的用户名和密码。
    说明 您需填写自己的MySQL数据库对应的信息。不同数据源类型对应的配置说明,请参见数据源配置
  6. 单击测试连通性
  7. 如果测试连通性成功,单击完成

确认作为目标的MySQL数据库中有表

在MySQL数据库中创建表odps_result,建表语句如下所示:

CREATE TABLE `ODPS_RESULT` (
`education`  varchar(255) NULL ,
`num`  int(10) NULL 
);

建表完成后,可以执行desc odps_result;语句,查看表详情。

新建并配置同步节点

本节将新建一个同步节点write_result并进行配置,目的是用来把表result_table中的数据写入至自己的MySQL数据库中。

  1. 切换至数据开发面板,新建一个同步节点write_result。

  2. 设置write_result节点的上游节点为insert_data节点。

  3. 选择数据来源。
    选择MaxCompute数据源及源头表result_table,单击下一步

  4. 选择数据去向。
    选择MySQL数据源及目标表odps_result,单击下一步

  5. 字段映射。
    选择字段的映射关系。左侧的源头表字段和右侧的目标表字段为一一对应关系。单击添加一行可以增加单个字段,鼠标放至需要删除的字段上,即可单击删除图标进行删除 。

  6. 通道控制。
    单击下一步,配置作业速率上限和脏数据检查规则。

    配置 说明
    任务期望最大并发数 数据同步任务内,可以从源并行读取或并行写入数据存储端的最大线程数。向导模式通过界面化配置并发数,指定任务所使用的并行度。
    同步速率 设置同步速率可以保护读取端数据库,以避免抽取速度过大,给源库造成太大的压力。同步速率建议限流,结合源库的配置,请合理配置抽取速率。
    错误记录数 错误记录数,表示脏数据的最大容忍条数。
    任务资源组 任务运行的机器,如果任务数比较多,使用默认资源组出现等待资源的情况,建议购买独享数据集成资源或添加自定义资源组,详情请参见DataWorks独享资源新增任务资源
  7. 预览保存。
    完成上述配置后,上下滚动鼠标即可查看任务配置。确认无误,单击保存

提交数据同步任务

同步任务保存后,返回业务流程。单击顶部菜单栏中的提交,将同步任务提交至调度系统中。调度系统会根据配置的属性,从第二天开始自动定时执行。

后续步骤

现在,您已经学习了如何创建同步任务,将数据导出至不同类型的数据源中,您可以继续学习下一个教程。在该教程中,您将学习如何设置同步任务的调度属性和依赖关系。详情请参见设置周期和依赖