开发者社区> 问答> 正文

数据集成



1.通过数据集成导入数据


数据集成(Data Integration)是阿里集团对外提供的可跨异构数据存储系统的、可靠、安全、低成本、可弹性扩展的数据同步平台,为20+种数据源提供不同网络环境下的离线(全量/增量)数据进出通道。详细的数据源类型列表请参见: 支持数据源类型。所以用户可以通过 数据集成(Data Integration)向云产品 RDS-PostgreSQL 进行数据的导入和数据导出。

1.1 本文档包含内容

  • 通过数据集成导入数据至 RDS-PostgreSQL添加 RDS-PostgreSQL 数据源
  • 配置数据同步任务——向导模式
  • 配置数据同步任务——脚本模式
通过数据集成从 RDS-PostgreSQL 导出数据

2. 通过数据集成导入数据



2.1 新添加数据源


项目管理员创建 RDS-PostgreSQL 数据源,具体步骤如下:
1:以开发者身份进入 阿里云数加平台>大数据开发套件>管理控制台,点击对应项目操作栏中的[backcolor=transparent]进入工作区。
2:点击顶部菜单栏中数据集成模块的数据源。
3:点击新增数据源。
4:在新建数据源话弹出框中,选择数据源类型为RDS-PostgreSQL。
5:选择以RDS实例形式配置该PostgreSQL数据源。
[backcolor=transparent]选择以RDS实例形式配置该PostgreSQL数据源:
上图中的配置项具体说明如下:
[backcolor=transparent]数据源名称:由英文字母、数字、下划线组成且需以字符或下划线开头,长度不超过 60 个字符 。
[backcolor=transparent]数据源描述:对数据源进行简单描述,不得超过 80 个字符 。
[backcolor=transparent]数据源类型:当前选择的数据源类型(RDS-PostgreSQL的RDS实例形式)。
[backcolor=transparent]RDS实例ID:该 PostgreSQ L数据源的RDS实例ID。
[backcolor=transparent]RDS实例购买者ID:该数据源对应的RDS实例购买者ID。
[backcolor=transparent]数据库名:该数据源对应的数据库名。
[backcolor=transparent]用户名/密码:数据库对应的用户名和密码。
6:完成上述信息项的配置后,点击测试连通性。
7:测试连通性通过后,点击确定。

其他的数据源的配置请参见: 数据源配置


2.2 通过数据集成导入数据


2.2.1 向导模式 MaxCompute 同步到 RDS-PostgreSQL 为例:

  1. 新建同步任务,如下图所示:

  2. 选择来源:选择 MaxCompute (原ODPS) 数据源及源头表ll,数据浏览默认是收起的,选择后点击下一步,如下图所示:

  3. 选择目标:

[backcolor=transparent]导入前准备语句:执行数据同步任务之前率先执行的sql语句,目前向导模式只允许执行一条SQL语句,脚本模式可以支持多条SQL语句,例如清除旧数据。[backcolor=transparent]导入后准备语句:执行数据同步任务之后执行的sql语句,目前向导模式只允许执行一条SQL语句,脚本模式可以支持多条SQL语句,例如加上某一个时间戳。[backcolor=transparent]主键冲突:insert into 指当主键/唯一性索引冲突,数据集成视为脏数据进行处理。
  1. 字段隐射点击下一步,选择字段的映射关系。需对字段映射关系进行配置,左侧“源头表字段”和右侧“目标表字段”为一一对应的关系 ,如下图所示。

  1. [backcolor=transparent]1.[backcolor=transparent]可以输入常量,输入的值需要使用英文单引号包括,如[backcolor=transparent]'abc'[backcolor=transparent][backcolor=transparent]'123'[backcolor=transparent]等;
  2. [backcolor=transparent]2.[backcolor=transparent]可以配合调度参数使用,如[backcolor=transparent] $[backcolor=transparent]{[backcolor=transparent]bdp[backcolor=transparent].[backcolor=transparent]system[backcolor=transparent].[backcolor=transparent]bizdate[backcolor=transparent]}[backcolor=transparent] [backcolor=transparent]等;
  3. [backcolor=transparent]3.[backcolor=transparent]可以输入你要同步的分区列,如分区列有[backcolor=transparent]pt[backcolor=transparent]等;
  4. [backcolor=transparent]4.[backcolor=transparent]如果您输入的值无法解析,则类型显示为[backcolor=transparent]'未识别'[backcolor=transparent]
  5. [backcolor=transparent]5.[backcolor=transparent]不支持配置[backcolor=transparent]odps[backcolor=transparent]函数。
  1. 通道控制点击下一步,配置作业速率上限和脏数据检查规则,如下图所示:
  • 作业速率上限:是指数据同步作业可能达到的最高速率,其最终实际速率受网络环境、数据库配置等的影响。
  • 作业并发数:作业速率上限=作业并发数*单并发的传输速率当作业速率上限已选定的情况下,应该如何选择作业并发数?① 如果你的数据源是线上的业务库,建议您不要将并发数设置过大,以防对线上库造成影响;② 如果您对数据同步速率特别在意,建议您选择最大作业速率上限和较大的作业并发数
  1. 预览保存:完成以上配置后,上下滚动鼠标可查看任务配置,如若无误,点击保存,如下图所示:

7.直接运行同步任务结果:

注意:同步任务保存后,直接点击运行任务会立刻运行或点击右边的提交,将同步任务提交到调度系统中,调度系统会按照配置属性在从第二天开始自动定时执行,相关调度的配置请参考下面的文档: 调度配置介绍

2.2.2 脚本模式配置同步任务
  1. [backcolor=transparent]{
  2. [backcolor=transparent]  [backcolor=transparent]"configuration"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]{
  3. [backcolor=transparent]    [backcolor=transparent]"reader"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]{
  4. [backcolor=transparent]      [backcolor=transparent]"plugin"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"odps"[backcolor=transparent],
  5. [backcolor=transparent]      [backcolor=transparent]"parameter"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]{
  6. [backcolor=transparent]        [backcolor=transparent]"partition"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"p_month=${bdp.system.bizdate}"[backcolor=transparent],
  7. [backcolor=transparent]        [backcolor=transparent]"datasource"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"odps_first"[backcolor=transparent],[backcolor=transparent]//数据源名,建议数据源都先添加数据源后再配置同步任务,此配置项填写的内容必须要与添加的数据源名称保持一致
  8. [backcolor=transparent]        [backcolor=transparent]"column"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent][
  9. [backcolor=transparent]          [backcolor=transparent]"id"[backcolor=transparent],
  10. [backcolor=transparent]          [backcolor=transparent]"name"
  11. [backcolor=transparent]        [backcolor=transparent]],
  12. [backcolor=transparent]        [backcolor=transparent]"table"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"ll"[backcolor=transparent]//表名
  13. [backcolor=transparent]      [backcolor=transparent]}
  14. [backcolor=transparent]    [backcolor=transparent]},
  15. [backcolor=transparent]    [backcolor=transparent]"writer"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]{
  16. [backcolor=transparent]      [backcolor=transparent]"plugin"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"postgresql"[backcolor=transparent],
  17. [backcolor=transparent]      [backcolor=transparent]"parameter"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]{
  18. [backcolor=transparent]        [backcolor=transparent]"preSql"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent][],[backcolor=transparent]//导入前准备语句
  19. [backcolor=transparent]        [backcolor=transparent]"postSql"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent][],[backcolor=transparent]//导入后准备语句
  20. [backcolor=transparent]        [backcolor=transparent]"datasource"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"l_RDS_PostGreSql"[backcolor=transparent],[backcolor=transparent]//数据源名,建议数据源都先添加数据源后再配置同步任务,此配置项填写的内容必须要与添加的数据源名称保持一致
  21. [backcolor=transparent]        [backcolor=transparent]"column"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent][
  22. [backcolor=transparent]          [backcolor=transparent]"id"[backcolor=transparent],
  23. [backcolor=transparent]          [backcolor=transparent]"name"
  24. [backcolor=transparent]        [backcolor=transparent]],
  25. [backcolor=transparent]        [backcolor=transparent]"table"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"public.person"[backcolor=transparent],
  26. [backcolor=transparent]        [backcolor=transparent]"preSql"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent][]
  27. [backcolor=transparent]      [backcolor=transparent]}
  28. [backcolor=transparent]    [backcolor=transparent]},
  29. [backcolor=transparent]    [backcolor=transparent]"setting"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]{
  30. [backcolor=transparent]      [backcolor=transparent]"speed"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]{
  31. [backcolor=transparent]        [backcolor=transparent]"concurrent"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"1"[backcolor=transparent],[backcolor=transparent]//并发数
  32. [backcolor=transparent]        [backcolor=transparent]"mbps"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"1"[backcolor=transparent]//任务达到的最大同步数率
  33. [backcolor=transparent]      [backcolor=transparent]}
  34. [backcolor=transparent]    [backcolor=transparent]}
  35. [backcolor=transparent]  [backcolor=transparent]},
  36. [backcolor=transparent]  [backcolor=transparent]"type"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"job"[backcolor=transparent],
  37. [backcolor=transparent]  [backcolor=transparent]"version"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"1.0"
  38. [backcolor=transparent]}


3. 通过数据集成导出数据


3.1 向导模式配置 RDS-PostgreSQL 同步到 MaxCompute 为例:
  1. 选择来源:选择 RDS-PostgreSQL 数据源及源头表 public.person,数据浏览默认是收起的,选择后点击下一步,如下图所示:

[backcolor=transparent]过滤条件:将要同步数据的筛选条件,暂时不支持limit关键字过滤;SQL语法随着所选择的数据源不同而不同;点此查看系统参数文档[backcolor=transparent]切分主键:PostgreSQLReader 进行数据抽取时,如果指定 splitPk,表示用户希望使用 splitPk 代表的字段进行数据分片,数据集成因此会启动并发任务进行数据同步,这样可以大大提供数据同步的效能 。推荐 splitPk 用户使用表主键,因为表主键通常情况下比较均匀,因此切分出来的分片也不容易出现数据热点;目前 splitPk 仅支持整型数据切分,不支持字符串、浮点、日期等其他类型。如果用户指定其他非支持类型,忽略 splitPk 功能,使用单通道进行同步;如果 splitPk 不填写,包括不提供 splitPk 或者 splitPk 值为空,数据同步视作使用单通道同步该表数据 。
  1. 选择目标:选择 MaxCompute 数据源及目标表pg,选择后点击下一步,如下图所示:

  1. 映射字段:点击下一步,选择字段的映射关系。需对字段映射关系进行配置,左侧“源头表字段”和右侧“目标表字段”为一一对应的关系 ,如下图所示

4.通道控制点击下一步,配置作业速率上限和脏数据检查规则,如下图所示:
  1. 预览保存:完成以上配置后,上下滚动鼠标可查看任务配置,如若无误,点击保存,如下图所示:

6.直接运行同步任务结果:

注意:同步任务保存后,直接点击运行任务会立刻运行或点击右边的提交,将同步任务提交到调度系统中,调度系统会按照配置属性在从第二天开始自动定时执行,相关调度的配置请参考下面的文档: 调度配置介绍

3.2 脚本模式配置同步任务
  1. [backcolor=transparent]{
  2. [backcolor=transparent]  [backcolor=transparent]"configuration"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]{
  3. [backcolor=transparent]    [backcolor=transparent]"reader"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]{
  4. [backcolor=transparent]      [backcolor=transparent]"plugin"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"postgresql"[backcolor=transparent],
  5. [backcolor=transparent]      [backcolor=transparent]"parameter"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]{
  6. [backcolor=transparent]        [backcolor=transparent]"datasource"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"l_RDS_PostGreSql"[backcolor=transparent],[backcolor=transparent]//数据源名,建议数据源都先添加数据源后再配置同步任务,此配置项填写的内容必须要与添加的数据源名称保持一致
  7. [backcolor=transparent]        [backcolor=transparent]"column"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent][
  8. [backcolor=transparent]          [backcolor=transparent]"id"[backcolor=transparent],
  9. [backcolor=transparent]          [backcolor=transparent]"name"[backcolor=transparent],
  10. [backcolor=transparent]          [backcolor=transparent]"year"[backcolor=transparent],
  11. [backcolor=transparent]          [backcolor=transparent]"birthdate"[backcolor=transparent],
  12. [backcolor=transparent]          [backcolor=transparent]"ismarried"[backcolor=transparent],
  13. [backcolor=transparent]          [backcolor=transparent]"interest"[backcolor=transparent],
  14. [backcolor=transparent]          [backcolor=transparent]"salary"
  15. [backcolor=transparent]        [backcolor=transparent]],
  16. [backcolor=transparent]        [backcolor=transparent]"where"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"id=200001"[backcolor=transparent],[backcolor=transparent]//过滤条件
  17. [backcolor=transparent]        [backcolor=transparent]"splitPk"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"id"[backcolor=transparent],[backcolor=transparent]//切分主键
  18. [backcolor=transparent]        [backcolor=transparent]"table"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"public.person"[backcolor=transparent]//表名
  19. [backcolor=transparent]      [backcolor=transparent]}
  20. [backcolor=transparent]    [backcolor=transparent]},
  21. [backcolor=transparent]    [backcolor=transparent]"writer"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]{
  22. [backcolor=transparent]      [backcolor=transparent]"plugin"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"odps"[backcolor=transparent],
  23. [backcolor=transparent]      [backcolor=transparent]"parameter"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]{
  24. [backcolor=transparent]        [backcolor=transparent]"partition"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"pt=${bdp.system.bizdate}"[backcolor=transparent],[backcolor=transparent]//分区
  25. [backcolor=transparent]        [backcolor=transparent]"truncate"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]true[backcolor=transparent],
  26. [backcolor=transparent]        [backcolor=transparent]"datasource"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"odps_first"[backcolor=transparent],[backcolor=transparent]//数据源名,建议数据源都先添加数据源后再配置同步任务,此配置项填写的内容必须要与添加的数据源名称保持一致
  27. [backcolor=transparent]        [backcolor=transparent]"column"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent][
  28. [backcolor=transparent]          [backcolor=transparent]"id"[backcolor=transparent],
  29. [backcolor=transparent]          [backcolor=transparent]"name"[backcolor=transparent],
  30. [backcolor=transparent]          [backcolor=transparent]"year"[backcolor=transparent],
  31. [backcolor=transparent]          [backcolor=transparent]"birthdate"[backcolor=transparent],
  32. [backcolor=transparent]          [backcolor=transparent]"ismarried"[backcolor=transparent],
  33. [backcolor=transparent]          [backcolor=transparent]"interest"[backcolor=transparent],
  34. [backcolor=transparent]          [backcolor=transparent]"salary"
  35. [backcolor=transparent]        [backcolor=transparent]],
  36. [backcolor=transparent]        [backcolor=transparent]"table"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"pg"[backcolor=transparent]//表名
  37. [backcolor=transparent]      [backcolor=transparent]}
  38. [backcolor=transparent]    [backcolor=transparent]},
  39. [backcolor=transparent]    [backcolor=transparent]"setting"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]{
  40. [backcolor=transparent]      [backcolor=transparent]"speed"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]{
  41. [backcolor=transparent]        [backcolor=transparent]"concurrent"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"1"[backcolor=transparent],[backcolor=transparent]//并发数
  42. [backcolor=transparent]        [backcolor=transparent]"mbps"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]6[backcolor=transparent]//任务达到的最大同步数率
  43. [backcolor=transparent]      [backcolor=transparent]}
  44. [backcolor=transparent]    [backcolor=transparent]}
  45. [backcolor=transparent]  [backcolor=transparent]},
  46. [backcolor=transparent]  [backcolor=transparent]"type"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"job"[backcolor=transparent],
  47. [backcolor=transparent]  [backcolor=transparent]"version"[backcolor=transparent]:[backcolor=transparent] [backcolor=transparent]"1.0"
  48. [backcolor=transparent]}

其他的配置同步任务详细信息请参考下面的文档:

展开
收起
云栖大讲堂 2017-10-17 16:47:43 1652 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
《DataWorks 数据集成实时同步》 立即下载
AnalyticDB+DataWorks企业数仓构建方案 立即下载
基于MaxCompute快速打通数仓和数据湖:湖仓一体实践 立即下载