数据治理中心 DATAARTS STUDIO-字段转换器配置指导:约束限制

时间:2024-05-22 17:29:26

约束限制

  • 作业源端开启“使用SQL语句”参数时不支持配置转换器。
  • 如果在字段映射界面,CDM通过获取样值的方式无法获得所有列(例如从HBase/CloudTable/MongoDB导出数据时,CDM有较大概率无法获得所有列),则可以单击后选择“添加新字段”来手动增加,确保导入到目的端的数据完整。
  • 关系数据库、Hive、MRS Hudi及DLI做源端时,不支持获取样值功能。
  • SQLServer作为目的端数据源时,不支持timestamp类型字段的写入,需修改为其他时间类型字段写入(如datetime)。
  • 当作业源端为OBS、迁移CSV文件时,并且配置“解析首行为列名”参数的场景下显示列名。
  • 当使用二进制格式进行文件到文件的迁移时,没有配置字段转换器这一步。
  • 自动创表场景下,需在目的端表中提前手动新增字段,再在字段映射里新增字段。
  • 添加完字段后,新增的字段在界面不显示样值,不会影响字段值的传输,CDM会将字段值直接写入目的端。
  • 如果字段映射关系不正确,您可以通过拖拽字段、单击对字段批量映射两种方式来调整字段映射关系。
  • 创建表达式转换器时,表达式的功能是对该字段的数据进行处理,故不建议使用时间宏,如需使用,请根据以下场景处理(源端是文件类的配置时仅支持方式一):
    • 方式一:新建表达式转换器时,表达式需要用''包围。

      ${dateformat(yyyy-MM-dd)}不加引号使用时,解析成2017-10-16之后还会进行运算,将'-'识别为减号,导致结果为1991,须使用'${dateformat(yyyy-MM-dd)}',即'2017-10-16'。

      图2 使用''包围表达式

    • 方式二:源字段中新增自定义字段,在样值中填写时间宏变量,重新进行字段映射处理。
      图3 源字段新增自定义字段
  • 如果是导入到数据仓库服务(DWS),则还需在目的字段中选择分布列,建议按如下顺序选取分布列:
    1. 有主键可以使用主键作为分布列。
    2. 多个数据段联合做主键的场景,建议设置所有主键作为分布列。
    3. 在没有主键的场景下,如果没有选择分布列,DWS会默认第一列作为分布列,可能会有数据倾斜风险。
support.huaweicloud.com/bestpractice-dataartsstudio/dataartsstudio_05_0012.html