历史版本3 :数据同步-数据去向与映射 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

本文介绍「数据同步」设置数据去向或者使用「数据转换-DB表输出」时配置项说明。

「数据去向与映射」Tab 界面如下图所示:

2. 设置数据去向编辑

2.1 数据源/库

选择数据需要写入的数据库。支持的数据库请参见:FineDataLink支持的数据源 文档的第三章内容(支持数据写入的数据库)。

数据源处只展示已配置过数据连接且当前用户有数据连接使用权限的选项。

若数据库有模式,支持选择模式。如下图所示:

模式默认值说明如下:

1)数据库有模式:

  • 若数据连接中已配置模式,默认值为数据连接中配置的默认值。

  • 若数据连接中未配置模式,模式默认值为空,用户自己选择。

2)数据库没有模式,若数据连接中设置了数据库名称,「库」字段默认值为数据库名称,若数据连接中未设置数据库名称,「库」字段默认为空。

3)模式配置项仅选择关系型数据库才出现。

4)目标表如果是「已存在表」,获取的是此目标库/模式下的表;如果是「自动建表」建表建在此目标库/模式下。

2.2 目标表

已存在表:是选择目标数据库中已有的表来存放数据。

自动建表:是直接在目标数据库中新建一张表来存放。

注:若选择「自动建表」,未指定模式时,会使用数据库默认模式,而不是数据连接中的模式。

自动建表:

注:StarRocks&Doris支持自动建表的表类型,表名首字母必须为英文,否则建表会失败。

若数据去向选择了「Doris」数据源,则设置去向端表时,需要选择表类型,如下表所示:

表类型建表时设置项说明
明细模型(Duplicate Key)

不支持设置物理主键

支持设置 NOT NULL

主键模型(Unique Key)- 读时合并

支持设置物理主键

支持设置 NOT NULL

主键模型(Unique Key)- 写时合并

支持设置物理主键

支持设置 NOT NULL

Doris 1.2.0 及以上版本支持使用;

聚合模型(Aggregate Key)此类型不支持自动建表

若数据去向选择了「StarRocks」数据源,则设置去向端表时,需要选择表类型,如下表所示:

表类型建表时设置项说明
明细模型(Duplicate Key)

不支持设置物理主键

支持设置 NOT NULL

更新模型(Unique Key)

支持设置物理主键

支持设置 NOT NULL

当写入方式选择"基于标识字段,追加/更新/删除数据"时,只支持物理删除,不支持逻辑删除。

主键模型(Primary Key)

支持设置物理主键

支持设置 NOT NULL

StarRocks 1.19及以上版本支持使用

聚合模型(Aggregate Key)此类型不支持自动建表

已存在表:

若数据去向选择了「Doris」或者「StarRocks」数据源,则设置去向端表时,需要选择表类型,后续设置写入方式时有一定的限制,如下表所示:

表类型写入限制
明细模型(Duplicate Key)

Doris:主键模型(Unique Key)- 写时合并

StarRocks:主键模型(Primary Key)

当选择"直接将数据写入目标表"时,主键冲突策略只能选择:

主键相同,覆盖目标表的数据

不支持:

  • 主键相同,忽略输入源的数据

  • 主键相同,停止写入并报错

Doris:主键模型(Unique Key)- 读时合并

StarRocks:更新模型(Unique Key)

Doris&StarRocks:聚合模型(Aggregate Key)
  • 当选择"直接将数据写入目标表"时,不支持:

配置主键映射以及主键冲突策略

  • 不支持选择"基于标识字段,追加/更新/删除数据";

3. 设置字段映射编辑

建立「来源端-目标端」的字段对应关系。如下图所示:

注:4.1.3 及之后版本,目标表为 Hive、星环 TRANSWARP INCEPTOR 且选择自动建表时,可选取目标表里的某些字段作为分区键,详情请参见:支持分区建表、分区写入

3.1 映射方式

选择源表字段跟目标表字段的映射方式,有两种分别是「同名映射」和「同行映射」。

映射方式
匹配逻辑
同名映射按照目标表字段与来源表字段字符重合的情况匹配,整体逻辑为:

1)根据来源字段,在目标表中寻找同名(字符完全相同)字段对其进行匹配

2)没有同名字段时:

  • 寻找目标表中包含来源表字段字符的字段,或者来源表中包含目标表字段字符的字段,对其进行匹配

  • 如果存在多个字符符合上述条件,则按照字段在目标表中出现的顺序进行优先级区分,出现顺序靠前的优先级高,匹配时优先展示

  • 已被匹配的字段不再被匹配,即不存在多个源头字段对应同一个目标表字段的情况

3)如果在目标表中找不到同名或者包含目标表字段字符的字段,则右侧映射字段显示为空

同行映射源头字段和目标表字段按顺序匹配:同行则建立映射关系

3.2 手动建表

目标表选择「自动建表」时,才显示「手动建表」功能。

点击「手动建表」按钮后,用户可修改字段名、字段类型,以及去定义各种表的特性。如下图所示:

1)支持查看和修改建表语句。

  • 建表语句支持「重新获取」,重新获取=重置建表语句。

  • 修改建表语句,不会与字段映射里的配置做联动。

2)修改建表语句后,点击「执行建表」按钮,在数据库中建表成功后,「本文2.2 节目标表」处将自动切换为已存在表

3)「手动建表」中的配置内容,不会在任务运行时生效;用户可手动运行,建表成功后,按照已存在表的逻辑,核对配置是否合理。

3.3 编辑映射

1)可对目标表字段做以下设置:

  • 取消某字段的映射

  • 修改字段展示顺序

  • 修改字段类型;修改字段名称

  • 设置主键;设置字段非空

2)用户可自定义设置目标表字段与来源表字段之间的映射关系。如下图所示:

29.png

3.4 重新获取

源表的字段、字段类型发生改变时,点击该按钮可重新获取,并初始化字段映射界面。

3.5 主键

4.0.21 及之后版本,数据去向 Tab 中若选择「自动建表」,字段映射 Tab 中可设置物理主键。

注:若数据去向 Tab 中若选择「自动建表」,字段映射 Tab 中未设置主键,运行任务建表成功后,再次编辑任务,不支持修改主键

4. 注意事项编辑

使用时一些需要注意的点:

1)映射时删除了一些来源表字段,那么切换映射方式后,还是会根据剩下来的这些字段进行调整。

2)手动将映射方式从默认项「同名映射」切换到「同行映射」,点击「重新获取」字段,获取的字段将按照「同行映射」的方式自动匹配。

3)以下两种场景会出现目标表无字段可匹配源头表的情况,在这两种情况下,右侧目标表字段可展示为空:

  • 同名映射:目标表不存在包含源头表字段的字段。

  • 同行映射:源头表字段数量大于目标表字段数量。

4)映射时,如果右侧目标表有空字段,会出现提示图标,悬浮在其上方提示:目标表字段存在空值

5)定时任务运行后,字段映射处不支持修改目标表字段类型。