更新时间:2023-03-01 GMT+08:00

配置数据映射规则

概述

本节主要提供数据集成任务Mapping信息的配置说明。Mapping信息用于告诉ROMA Connect源端数据字段到目标端数据字段的映射规则,把获取到的源端数据转换成写入目标端的数据。

配置Mapping信息

  1. 在创建任务页面中配置Mapping信息,有自动配置和手动配置两种方式。
    • 源端与目标端字段名请勿使用对应数据库的关键字,否则可能导致任务运行异常。
    • 若目标端数据类型为MRS Hive时,如果要配置分区字段写入,请参见MRS Hive分区字段映射配置说明
    • 自动配置Mapping

      若源端信息与目标端信息中都定义了元数据,可使用“自动Mapping”方式配置Mapping信息。

      单击“自动Mapping”,源端和目标端数据字段间的映射规则自动建立。如果两端的数据表字段不一致,您可以单击映射关系右侧的“编辑”,更改源端或目标端数据字段,也可单击下方的“添加字段映射”,增加源端数据字段到目标端数据字段的映射关系。

      图1 自动Mapping
    • 手动配置Mapping

      用户可以手动添加源端数据字段与目标端数据字段的映射规则,该方式适用于所有数据类型的集成场景。可以通过键值对输入或文本框输入两种方式配置Mapping映射规则。

      • 键值对输入方式

        界面默认为键值对输入方式,单击“添加字段映射”,逐条增加源端数据字段到目标端数据字段的映射规则。

      • 文本框输入方式
        单击“文本框输入”,在文本框中输入映射规则脚本,输入格式如下:
        [{
        	"sourceKey": "a1",
        	"targetKey": "b1"
        },
        {
        	"sourceKey": "a2",
        	"targetKey": "b2"
        }]

        其中,sourceKey的值为源端数据字段名,targetKey的值为目标数据字段名。以上示例表示源端字段a1映射到目标端字段b1,源端字段a2映射到目标端字段b2。

  2. 完成Mapping信息配置后,若需要配置异常数据存储、任务完成后执行,请前往配置异常数据存储(可选)配置任务完成后执行(可选);否则可直接单击“保存”,完成数据集成任务的配置。

MRS Hive分区字段映射配置说明

当目标端数据类型为MRS Hive时,支持分区字段的写入,可以根据实际需要进行配置。

分区字段对应的“源端字段名”需要手动填写,填写要求如下:

格式:{分区字段来源字段}.format("{字符串解析格式}","{分区字段解析格式}",{year|month|day|hour|minute|second},{偏移值})

  • “{分区字段来源字段}”为String类型时,“{字符串解析格式}”必须填写。
  • “{分区字段来源字段}”为Timestamp类型时,“{字符串解析格式}”可为空。
  • “{分区字段来源字段}”为空时,使用数据写入目标端的时间来作为分区字段。
图2 MRS Hive分区字段映射

例如,目标端分区字段为yyyymm,以源端字段createtime作为分区字段来源字段,createtime字段的时间格式为ddMMyyyy(日月年),目标端分区字段格式为yyyyMM(年月),分区字段的值比源端字段的值增加1个小时,则Mapping信息中,分区字段yyyymm的“源端字段名”填写如下:

  • createtime字段为String类型时,填写为:createtime.format("ddMMyyyy","yyyyMM",hour,1)
  • createtime字段为Timestamp类型时,填写为:createtime.format("","yyyyMM",hour,1)
  • 若使用数据写入目标端的时间来作为分区字段时,填写为:.format("","yyyyMM",hour,1)