“快速创建表配置”针对项目粒度生效。

表名规则

在某个项目-集群的离线同步任务创建Hive表时,如需引用模型设计中心“原数据层-ods”对应集群的表名规则进行表名规则检测,需要满足两个条件:

  1. 当前项目的“启用表名规则”开关打开,
  2. 当前项目-集群所属的项目组-集群的模型设计中心“原数据层-ods”表名规则状态为启用。

表名规则检测范围包含:
1)离线同步任务中,数据去向为Hive、Doris、StarRocks的“快速创建表”功能;
2)批量创建任务,数据去向为Hive时的生成表功能。

快速创建表配置 - 图1

字段类型映射规则

1)此处的字段类型映射规则作用范围:

i:离线同步任务和数据导入中,数据去向端为Hive、Doris、StarRocks、Iceberg等时的“快速创建表”功能;

ii:离线同步任务-批量新建任务,数据去向端为Hive时默认创建表;

iii:离线同步任务中,高级配置的来源表结构变化策略设置中,新增字段中的“去向表自动新增该字段,建立映射并同步数据”策略。

2)将根据数据来源端表的字段类型和此处定义的字段类型映射规则来决定创建的去向表的字段类型。

3)数据来源端字段类型为NUMERIC(p,s)或DECIMAL(p,s)时,如果数据去向字段类型填写:NUMERIC(p,s)或DECIMAL(p,s),表示数据去向字段类型的精度和小数位数与数据来源端保持一致。

字段类型映射规则包括两大类:特殊字段类型映射规则常规字段类型映射规则。特殊字段类型映射规则主要针对一些特殊场景下字段类型的转换,比如Oracle的NUMBER字段类型,在不同的精度范围下可能映射成Hive表字段会稍有不同。特殊字段类型映射规则常规字段类型映射规则默认字段映射关系如下所示:

特殊字段类型默认映射规则列表:

数据来源表字段类型 数据去向Hive表字段类型
BIGINT UNSIGNED DECIMAL(38,0)
INTEGER UNSIGNED DECIMAL(38,0)
SMALLINT UNSIGNED DECIMAL(38,0)
TINYINT UNSIGNED DECIMAL(38,0)
DECIMAL(p,s)(p>38) STRING
DECIMAL(p,s)(p,s为空) STRING
NUMERIC(p,s)(p>38) STRING
NUMERIC(p,s)(p,s为空) STRING
Money DECIMAL(19,4)
Oracle:NUMBER(p,s≤0),p-s<3 TINYINT
Oracle:NUMBER(p,s≤0),p-s<5 SMALLINT
Oracle:NUMBER(p,s≤0),p-s<10 INT
Oracle:NUMBER(p,s≤0),p-s<19 BIGINT
Oracle:NUMBER(p,s≤0),19≤p-s≤38 DECIMAL(p-s,0)
Oracle:NUMBER(p,s>0) DECIMAL(p-s)
Oracle:NUMBER(p,s>0),p-s>38 STRING

常规字段类型默认映射规则列表:

数据来源表字段类型 数据去向Hive表字段类型
BIGINT BIGINT
BINARY BINARY
BIT INT
BLOB BINARY
CHAR STRING
CLOB STRING
DATE STRING
DECIMAL(p,s) DECIMAL(p,s)
DOUBLE DOUBLE
FLOAT DOUBLE
INTEGER INT
LONGNVARCHAR STRING
LONGVARBINARY BINARY
LONGVARCHAR STRING
NCHAR STRING
NUMERIC(p,s) DECIMAL(p,s)
NVARCHAR STRING
REAL FLOAT
SMALLINT INT
TIME STRING
TIMESTAMP TIMESTAMP
TINYINT INT
VARBINARY BINARY
VARCHAR STRING

物理字段和JDBC类映射规则

由于系统会将来源端的物理字段类型转为JDBC类的字段类型,为了解决在功能层面无法了解物理字段和JDBC字段之间的映射关系,平台提供物理字段和JDBC类字段映射规则的下载功能,支持在页面上下载Excel查看物理字段和JDBC字段的映射关系。

快速创建表配置 - 图2

特殊字段类型映射规则

针对特殊字段类型,系统默认一些规则,同时支持用户编辑,新增其他数据源类型的物理字段和快速建表的字段类型的映射关系。

快速创建表配置 - 图3

点击编辑后,在特殊字段类型映射规则列表的下方有个添加按钮,点击添加,可选择来源端的数据源类型、字段类型,支持选择或者输入的方式,若为选择,则系统提供对应数据源类型下支持的部分字段类型,如果系统提供的字段类型无法满足需求,可切换为输入方式,提供输入框,用户可自主输入想要的字段类型映射关系。

快速创建表配置 - 图4

新增字段类型填写完后,点击保存则将在快速建表等场景下生效。同时特殊字段类型优先级高于常规字段类型,且自定义的特殊字段类型要优于系统默认的字段类型。

快速创建表配置 - 图5

常规字段类型映射规则

常规字段类型不支持用户自定义,默认展示JDBC到去向表的部分字段类型的映射关系。

快速创建表配置 - 图6