华为云用户手册

  • 操作场景 CDM集群已经创建成功后,您可以查看集群基本信息,并修改集群的配置。 查看集群基本信息: 集群信息:集群版本、创建时间、项目ID、实例ID和集群ID等。 节点配置:集群规格、CPU和内存配置等信息。 网络信息:网络配置。 支持修改集群的以下配置: 消息通知:CDM的迁移作业(目前仅支持表/文件迁移的作业)失败时,或者EIP异常时,会发送短信或邮件通知用户。该功能产生的消息通知不会计入收费项。 用户隔离:控制其他用户是否能够操作该集群中的迁移作业、连接。 开启该功能时,该集群中的迁移作业、连接会被隔离,华为账号下的其他IAM用户无法操作该集群下的作业、连接。 关闭该功能时,该集群中的迁移作业、连接信息可以用户共享,华为账号下的所有拥有相应权限的IAM用户可以查看、操作。 注意,用户隔离关闭后需要重启集群VM才能生效。 最大抽取并发数:限制作业运行的总抽取并发数,如果当前所有作业总并发数超出限制,超出部分将排队等待。 注意,最大抽取并发数取值范围为1-1000,建议根据集群规格进行配置,建议值详见最大抽取并发数。过高的并发数可能导致内存溢出,请谨慎修改。 此处的“最大抽取并发数”参数与作业配置管理处的“最大抽取并发数”参数同步,在任意一处修改即可生效。
  • 逆向数据库导入表到模型中 在DataArts Studio数据架构控制台,单击左侧导航栏的“关系建模”进入关系建模页面。 在模型总览中找到所需要执行逆向数据库导入的模型,单击卡片进入模型,单击上方的“逆向数据库”。 图1 逆向数据库 在“逆向数据库”对话框中配置如下参数。 图2 配置逆向数据库参数 表1 逆向数据库 参数名称 说明 *所属主题 单击“选择主题”按钮选择所属的主题信息。 数据连接类型 如果逆向到逻辑模型,请在下拉列表中选择所需要的连接类型。 如果逆向到物理模型,将显示当前模型的连接类型。 数据连接 选择所需要的数据连接。 如需从其他数据源逆向数据库到关系模型中,需要先在DataArts Studio管理中心创建一个数据连接,以便连接数据源。创建数据连接的操作,请参见管理数据连接。 数据库 选择数据库。 队列 仅限DLI连接类型,需选择DLI队列。 Schema 下拉选择Schema。该参数仅DWS和POSTGRESQL模型的表有效。 更新已有表 在导入时,如果所要导入的表在关系模型中已存在,是否更新已有的表。在导入时,系统将按表编码进行判断将要导入的表在当前的关系模型中是否已存在。在导入时,只有创建或更新操作,不会删除已有的表。 不更新:如果表已存在,将直接跳过,不更新。 更新:如果表已存在,更新已有的表信息。如果表处于“已发布”状态,表更新后,您需要重新发布表,才能使更新后的表生效。 名称来源 逆向后表名称/字段名称的来源,可以是描述或者是相应英文名,如表/字段未指定描述则固定使用英文名。 来自描述 来自英文名称 数据表 选择“全部”时,将数据库中的所有的表都导入关系模型中。 选择“部分”时,请选择需要导入关系模型的表。 起始页 当数据表选择“全部”时,需要配置。 单击“确定”开始执行逆向数据库操作。
  • Elasticsearch/云搜索服务(CSS)数据库迁移时支持的数据类型 源端为Elasticsearch/云搜索服务(CSS)数据库时,支持的数据类型如下: 表10 Elasticsearch/云搜索服务(CSS)数据库作为源端时支持的数据类型 类别 类型 简要释义 存储格式示例 MySQL 字符 keyword 用于存储字符串。 “keyword” String text 用于存储长字符串类型,其字符串的长度最大为 2G-1,存储长的文本串。 “long string” TEXT string 用于存储长字符串类型,其字符串的长度最大为 2G-1,存储长的文本串。 “a string” String 整数 short 用于存储16位有符号整数,取值范围为-32768至32767。 32765 smallInt integer 用于存储32位有符号整数,取值范围为-231至231-1。 3276566 int long 用于存储64位有符号整数,取值范围为-263至263-1。 3276566666 BIGINT 数值 double 64位双精度IEEE 754浮点类型。 21.333 double float 32位单精度IEEE 754浮点类型 。 21.333 double 布尔类型 boolean 存储在1个字节中,可以取值为 1、0 或 NULL。 1 Boolean 对象 object 扁平化存储对象的字符串。 {"users.name":["John","Smith"], users.age":[26,28], "users.sex":[1,2]} TEXT 嵌套 nested 嵌套存储对象的字符串。 {"users.name" : "John" , "users.age" : 26, "users.sex" : 1} { "users.name" : "Smith", "users.age" : 28, "users.sex" : 2} TEXT 日期 date 日期格式的字符串。 “2018-01-13”或“2018-01-13 12:10:30” DATE或timeStamp 特殊 ip Ip地址格式的字符串。 “192.168.127.100” String 数组 string_array 全部是字符串的数组。 [“str”,“str”] TEXT short_array 全部是16位整数的数组。 [1,1,1] TEXT integer_array 全部是32位整数的数组。 [1,1,1] TEXT long_array 全部是64位整数的数组。 [1,1,1] TEXT float_array 全部是32位浮点数的数组。 [1.0,1.0,1.0] TEXT double_array 全部是64位浮点数的数组。 [1.0,1.0,1.0] TEXT 范围 completion 自动补全的字符串。 “string” TEXT
  • 达梦数据库迁移时支持的数据类型 源端为达梦数据库,目的端为Hive、DWS时,支持的数据类型如下: 表11 达梦数据库作为源端时支持的数据类型 类别 类型 简要释义 存储格式示例 Hive DWS 字符 CHAR 用于存储指定定长字符串。 ‘a’或‘aaaaa’ CHAR CHAR CHARACTER 与 CHAR 相同。 ‘a’或‘aaaaa’ CHAR CHAR VARCHAR 用于存储指定变长字符串. ‘a’或‘aaaaa’ VARCHAR VARCHAR VARCHAR2 与 VARCHAR 相同。 ‘a’或‘aaaaa’ VARCHAR VARCHAR 数值 NUMERIC 用于存储零、正负定点数。 52.36 DECIMAL NUMERIC DECIMAL 与 NUMERIC 相似。 52.36 DECIMAL NUMERIC DEC 与 DECIMAL 相同。 52.36 DECIMAL NUMERIC NUMBER 与 NUMERIC 相同。 52.36 DECIMAL NUMERIC INTEGER 用于存储有符号整数,精度为10,标度为0。 5236 INT INTEGER INT 与 INTEGER 相同。 5236 INT INTEGER BIGINT 用于存储有符号整数,精度为19,标度为0。 5236 BIGINT BIGINT TINYINT 用于存储有符号整数,精度为3,标度为0。 100 TINYINT SMALLINT SMALLINT 用于存储有符号整数,精度为5,标度为0。 9999 SMALLINT SMALLINT BYTE 与 TINYINT 相似,精度为3,标度为0。 100 TINYINT SMALLINT BINARY 用于存储定长二进制数据。 0x2A3B4058 BINARY(NULL) BYTEA(NULL) VARBINARY 用于存储可变长二进制数据。 0x2A3B4058 BINARY(NULL) BYTEA(NULL) FLOAT 用于存储带二进制精度的浮点数。 52.36 FLOAT FLOAT8 DOUBLE 与FLOAT类似。 52.36 DOUBLE FLOAT8 REAL 用于存储带二进制精度的浮点数,但它不能由用户指定使用的精度。 52.3 FLOAT FLOAT4 DOUBLE PRECISION 用于存储指明双精度的浮点数。 52.3 DOUBLE FLOAT8 位串 BIT 用于存储整数数据 1、0 或 NULL。 1、0 或 NULL TINYINT(1 0 NULL) BOOLEAN(true false NULL) 日期时间 DATE 用于存储年、月、日信息。 1999-10-01'、'1999/10/01'或'1999.10.01' DATE TIMESTAMP TIME 用于存储时、分、秒信息。 '09:10:21'或'9:10:21' 不支持(String) TIME TIMESTAMP 用于存储年、月、日、时、分、秒信息。 2002-12-12 09:10:21','2002-12-12 9:10:21' '2002/12/12 09:10:21' 或'2002.12.12 09:10:21' TIMESTAMP TIMESTAMP TIME WITH TIME ZONE 用于存储一个带时区的 TIME 值,其定义是在 TIME 类型的后面加上时区信息。 '09:10:21 +8:00', '09:10:21+8:00'或'9:10:21+8:00' 不支持(String) TIME WITH TIME ZONE TIMESTAMP WITH TIME ZONE 用于存储一个带时区的 TIMESTAMP 值,其定义是TIMESTAMP类型的后面加上时区信息。 2002-12-12 09:10:21 +8:00','2002-12-12 9:10:21 +8:00' '2002/12/12 09:10:21 +8:00'或'2002.12.12 09:10:21 +8:00' TIMESTAMP TIMESTAMP WITH TIME ZONE TIMESTAMP WITH LOCAL TIME ZONE 用于存储一个本地时区的 TIMESTAMP 值,能够将标准时区类型 TIMESTAMP WITH TIME ZONE 类型转化为本地时区类型。 2002-12-12 09:10:21 +8:00','2002-12-12 9:10:21 +8:00' '2002/12/12 09:10:21 +8:00'或'2002.12.12 09:10:21 +8:00' 不支持(String) 不支持(TEXT) DATETIME WITH TIME ZONE 同TIMESTAMP WITH TIME ZONE。 2002-12-12 09:10:21 +8:00','2002-12-12 9:10:21 +8:00' '2002/12/12 09:10:21 +8:00'或'2002.12.12 09:10:21 +8:00' TIMESTAMP TIMESTAMP WITH TIME ZONE INTERVAL YEAR 描述一个若干年的间隔,引导精度规定了年的取值范围。 INTERVAL '0015' YEAR 不支持(String) 不支持(VARCHAR) INTERVAL YEAR TO MONTH 描述一个若干年若干月的间隔,引导精度规定了年的取值范围。 INTERVAL '0015-08' YEAR TO MONTH 不支持(String) 不支持(VARCHAR) INTERVAL MONTH 描述一个若干月的间隔,引导精度规定了月的取值范围。 INTERVAL '0015' MONTH 不支持(String) 不支持(VARCHAR) INTERVAL DAY 描述一个若干日的间隔,引导精度规定了日的取值范围。 INTERVAL '150' DAY 不支持(String) 不支持(VARCHAR) INTERVAL DAY TO HOUR 描述一个若干日若干小时的间隔,引导精度规定了日的取值范围。 INTERVAL '9 23' DAY TO HOUR 不支持(String) 不支持(VARCHAR) INTERVAL DAY TO MINUTE 描述一个若干日若干小时若干分钟的间隔,引导精度规定了日的取值范围。 INTERVAL '09 23:12' DAY TO MINUTE 不支持(String) 不支持(VARCHAR) INTERVAL DAY TO SECOND 描述一个若干日若干小时若干分钟若干秒的间隔,引导精度规定了日的取值范围。 INTERVAL '09 23:12:01.1' DAY TO SECOND 不支持(String) 不支持(VARCHAR) INTERVAL HOUR 描述一个若干小时的间隔,引导精度规定了小时的取值范围。 INTERVAL '150' HOUR 不支持(String) 不支持(VARCHAR) INTERVAL HOUR TO MINUTE 描述一个若干小时若干分钟的间隔,引导精度规定了小时的取值范围。 INTERVAL '23:12' HOUR TO MINUTE 不支持(String) 不支持(VARCHAR) INTERVAL HOUR TO SECOND 描述一个若干小时若干分钟若干秒的间隔,引导精度规定了小时的取值范围。 INTERVAL '23:12:01.1' HOUR TO SECOND 不支持(String) 不支持(VARCHAR) INTERVAL MINUTE 描述一个若干分钟的间隔,引导精度规定了分钟的取值范围。 INTERVAL '150' MINUTE 不支持(String) 不支持(VARCHAR) INTERVAL MINUTE TO SECOND 描述一个若干分钟若干秒的间隔,引导精度规定了分钟的取值范围。 INTERVAL '12:01.1' MINUTE TO SECOND 不支持(String) 不支持(VARCHAR) INTERVAL SECOND 描述一个若干秒的间隔,引导精度规定了秒整数部分的取值范围。 INTERVAL '51.1' SECOND 不支持(String) 不支持(VARCHAR) 多媒体 IMAGE IMAGE 用于指明多媒体信息中的图像类型。 图像由不定长的像素点阵组成,长度最大为 2G-1 字节。该类型除了存储图像数据之外,还可用于存储任何其它二进制数据。 0x2A3B4058 (二进制数据) 不支持 不支持 LONGVARBINARY 与IMAGE相同。 0x2A3B4059 (二进制数据) 不支持 不支持 TEXT 用于存储长字符串类型,其字符串的长度 最大为 2G-1,存储长的文本串。 0x5236(二进制数据) 不支持 不支持 LONGVARCHAR 与 TEXT 相似。 0x5236(二进制数据) 不支持 不支持 BLOB 用于存储变长的二进制大对象,长度最大为2G-1字节。 0x5236(二进制数据) 不支持 不支持 CLOB 用于存储变长的二进制大对象,长度最大为2G-1字节。 0x5236(二进制数据) 不支持 不支持 BFILE 用于指明存储在操作系统中的二进制文件, 文件存储在操作系统而非数 据库中,仅能进行只读访问。 - 不支持 不支持
  • DLI数据库迁移时支持的数据类型 源端为DLI数据库时,支持的数据类型如下: 表9 DLI数据库作为源端时支持的数据类型 类别 类型 简要释义 字符 CHAR 用于存储指定定长字符串。 VARCHAR 与CHAR相同。 STRING 用于存储长字符串类型,其字符串的长度最大为 2G-1,存储长的文本串。 数值 BIGINT 用于存储有符号整数,精度为19,标度为0。 TINYINT 用于存储有符号整数,精度为3,标度为0。 SMALLINT SMALLINT类型的数据占用了两个字节的存储空间,其中一个二进制位表示整数值的正负号,其它15个二进制位表示长度和大小,可以表示-2的15次方~2的15次方-1范围内的所有整数。 INT 用于存储有符号整数,精度为10,标度为0。 DECIMAL 带固定精度和小数位数的数值数据类型。 FLOAT 用于存储带二进制精度的浮点数。 DOUBLE 用于存储指明双精度的浮点数。 日期时间 DATE 用于存储年、月、日信息。 TIMESTAMP 用于存储年、月、日、时、分、秒信息。 布尔类型 BOOLEAN 存储在1个字节中,可以取值为 1、0 或 NULL。
  • SAP HANA数据库迁移时支持的数据类型 源端为SAP HANA数据库时,支持的数据类型如下: 表8 SAP HANA数据库作为源端时支持的数据类型 类别 类型 简要释义 字符 VARCHAR 用于存储指定定长字符串。 NVARCHAR 包含unicode格式数据的变长字符串。 TEXT 用于存储长字符串类型,其字符串的长度最大为 2G-1,存储长的文本串。 数值 BIGINT 用于存储有符号整数,精度为19,标度为0。 TINYINT 用于存储有符号整数,精度为3,标度为0。 SMALLINT SMALLINT类型的数据占用了两个字节的存储空间,其中一个二进制位表示整数值的正负号,其它15个二进制位表示长度和大小,可以表示-2的15次方~2的15次方-1范围内的所有整数。 REAL 可以存储正的或者负的十进制数值。 DECIMAL 带固定精度和小数位数的数值数据类型。 FLOAT 用于存储带二进制精度的浮点数。 DOUBLE 用于存储指明双精度的浮点数。 日期时间 DATE 用于存储年、月、日信息。 TIME 用于存储时、分、秒信息。 TIMESTAMP 用于存储年、月、日、时、分、秒信息。 多媒体 CLOB 用于存储变长的二进制大对象,长度最大为2G-1字节。 NCLOB 这种类型能够存储最多4GB的数据。当字符集发生转换时,这种类型会受到影响。 布尔类型 BOOLEAN 存储在1个字节中,可以取值为 1、0 或 NULL。
  • DWS数据库迁移时支持的数据类型 源端为DWS数据库时,支持的数据类型如下: 表6 DWS数据库作为源端时支持的数据类型 类别 类型 简要释义 字符 char 定长字符串,存储右空格填充到指定的长度。 varchar 变长字符串,不会用空格将字段或变量填充至最大长度。 数值 double 用于存储指明双精度的浮点数。 decimal(p,s) 精度p表示为值存储的有效位数,刻度s表示可以在小数点后存储的位数。p最大位数是1000。 numeric 用于存储零、正负定点数。 real 与double相同。 int int存储在4个字节中,其中一个二进制位表示符号位,其它31个二进制位表示长度和大小,可以表示-2的31次方~2的31次方-1范围内的所有整数。 bigint bigint存储在8个字节中,其中一个二进制位表示符号位,其它63个二进制位表示长度和大小,可以表示-2的63次方~2的63次方-1范围内的所有整数。 smallint smallint类型的数据占用了两个字节的存储空间,其中一个二进制位表示整数值的正负号,其它15个二进制位表示长度和大小,可以表示-2的15次方~2的15次方-1范围内的所有整数。 tinyint tinyint类型的数据占用了一个字节的存储空间,可以表示0~255范围内的所有整数。 日期时间 date 存储日期数据。 timestamp 存储日期和时间数据,无时区。 time 只用于一日内时间,无时区。 位串类型 bit 定长位串,例如: b'000101'。 布尔类型 boolean 存储在1个字节中,可以取值为 1、0 或 NULL。 文本类型 text 变长文本,无长度限制。
  • 神通(ST)数据库迁移时支持的数据类型 源端为神通(ST)数据库,目的端为MRS Hive、MRS Hudi时,支持的数据类型如下: 表7 神通(ST)数据库作为源端时支持的数据类型 类别 类型 简要释义 存储格式示例 MRS Hive MRS Hudi 字符 VARCHAR 用于存储指定定长字符串。 ‘a’或‘aaaaa’ VARCHAR(765) STRING BPCHAR 用于存储指定变长字符串。 ‘a’或‘aaaaa’ VARCHAR(765) STRING 数值 NUMERIC 用于存储零、正负定点数。 52.36 DECIMAL(10,0) DECIMAL(18,0) INT 用于存储零、正负定点数。 5236 INT INT BIGINT 用于存储有符号整数,精度为19,标度为0。 5236 BIGINT BIGINT TINYINT 用于存储有符号整数,精度为3,标度为0。 100 SMALLINT INT BINARY 用于存储定长二进制数据。 0x2A3B4058 不支持 FLOAT VARBINARY 用于存储可变长二进制数据。 0x2A3B4058 不支持 BINARY FLOAT 用于存储带二进制精度的浮点数。 52.36 FLOAT FLOAT DOUBLE 用于存储指明双精度的浮点数。 52.3 DOUBLE DOUBLE 日期时间 DATE 用于存储年、月、日信息。 1999-10-01'、'1999/10/01'或'1999.10.01' DATE DATE TIME 用于存储时、分、秒信息。 '09:10:21'或'9:10:21' STRING STRING TIMESTAMP 用于存储年、月、日、时、分、秒信息。 2002-12-12 09:10:21','2002-12-12 9:10:21' '2002/12/12 09:10:21' 或'2002.12.12 09:10:21' TIMESTAMP TIMESTAMP 多媒体 CLOB 用于存储变长的二进制大对象,长度最大为2G-1字节。 0x5236(二进制数据) STRING STRING BLOB 用于存储变长的二进制大对象,长度最大为2G-1字节。 0x5236(二进制数据) 不支持 BINARY 布尔类型 BOOLEAN 存储在1个字节中,可以取值为 1、0 或 NULL。 1 BOOLEAN BOOLEAN
  • PostgreSQL数据库迁移时支持的数据类型 源端为PostgreSQL数据库,目的端为Hive、DWS、DLI时,支持的数据类型如下: 表5 PostgreSQL数据库作为源端时支持的数据类型 类别 类型 简要释义 Hive DWS DLI 字符 char 定长字符串,存储右空格填充到指定的长度。 CHAR CHAR 不支持(String) varchar 变长字符串,不会用空格将字段或变量填充至最大长度。 CARCHAR CARCHAR 不支持(String) 数值 smallint 拓展名 int2,存储在2个字节中,它允许的范围是从-32768到32767。 SMALLINT SMALLINT SMALLINT int 拓展名 int4,存储在4个字节中,它允许的范围是从-2147483648到2147483647。 INTEGER INT INT bigint 拓展名 int8,存储在8个字节中,允许范围为-9223372036854775808到9223372036854775807。 BIGINT BIGINT BIGINT decimal(p,s) 精度p表示为值存储的有效位数,刻度s表示可以在小数点后存储的位数。p最大位数是1000。 DECIMAL(P,S) DECIMAL(P,S) DECIMAL(P,S) float 4字节或8字节存储。float(n):n取值在1-24内,精度有效位数为6 位数,长度4 个字节,是单精度,n取值在25-53内,精度有效位数为15 位数,长度8 字节,是双精度。 FLOAT/DOUBLE FLOAT/DOUBLE FLOAT/DOUBLE smallserial 序列数据类型,以smallint格式存储。 SMALLINT SMALLINT SMALLINT serial 序列数据类型,以int格式存储。 INTEGER INT INT bigserial 序列数据类型,以bigint格式存储。 BIGINT BIGINT BIGINT 日期时间 date 存储日期数据。 DATE DATE DATE timestamp 存储日期和时间数据,无时区。 TIMESTAMP TIMESTAMP 不支持(String) timestamptz 存储日期和时间数据,有时区。 TIMESTAMP TIMESTAMPZ 不支持(String) time 只用于一日内时间,无时区。 不支持(String) TIME 不支持(String) timez 只用于一日内时间,有时区。 不支持(String) TIMEZ 不支持(String) interval 时间间隔。 不支持(String) 不支持(String) 不支持(String) 位串类型 bit 定长位串,例如: b'000101'。 不支持(String) 不支持(String) 不支持(String) varbit 可变长位串,例如: b'101'。 不支持(String) 不支持(String) 不支持(String) 货币类型 money 存储在8个字节中,它允许的范围是从-922337203685477.5808到922337203685477.5807。 DOUBLE MONEY DECIMAL(P,S) 布尔类型 boolean 存储在1个字节中,可以取值为 1、0 或 NULL。 BOOLEAN BOOLEAN BOOLEAN 文本类型 text 变长文本,无长度限制。 不支持(String) 不支持(String) 不支持(String)
  • SQL Server数据库迁移时支持的数据类型 源端为SQL Server数据库,目的端为Hive、DWS、Oracle时,支持的数据类型如下: 表4 SQL Server数据库作为源端时支持的数据类型 类别 类型 简要释义 Hive DWS Oracle 字符串数据类型 char 定长字符串,会用空格填充来达到最大长度。 CHAR CHAR CHAR nchar 包含unicode格式数据的定长字符串。 CHAR CHAR CHAR varchar 可变长度的字符串是以长度为1到255之间字符数(高版本的MySQL超过255); 例如: VARCHAR(25);创建VARCHAR类型字段时,必须定义长度。 VARCHAR VARCHAR VARCHAR nvarchar 与varchar类似,存储可变长度Unicode字符数据。 VARCHAR VARCHAR VARCHAR 数值数据类型 int int存储在4个字节中,其中一个二进制位表示符号位,其它31个二进制位表示长度和大小,可以表示-2的31次方~2的31次方-1范围内的所有整数。 INT INTEGER INT bigint bigint存储在8个字节中,其中一个二进制位表示符号位,其它63个二进制位表示长度和大小,可以表示-2的63次方~2的63次方-1范围内的所有整数。 BIGINT BIGINT NUMBER smallint smallint类型的数据占用了两个字节的存储空间,其中一个二进制位表示整数值的正负号,其它15个二进制位表示长度和大小,可以表示-2的15次方~2的15次方-1范围内的所有整数。 SMALLINT SMALLINT NUMBER tinyint tinyint类型的数据占用了一个字节的存储空间,可以表示0~255范围内的所有整数。 TINYINT TINYINT NUMBER real 可以存储正的或者负的十进制数值。 DOUBLE FLOAT4 NUMBER float 其中为用于存储float数值尾数的位数(以科学计数法表示),因此可以确定精度和存储大小。 FLOAT FLOAT8 binary_float decimal 带固定精度和小数位数的数值数据类型。 DECIMAL NUMERIC NUMBER numeric 用于存储零、正负定点数。 DECIMAL NUMERIC NUMBER 日期时间数据类型 date 存储用字符串表示的日期数据。 DATE TIMESTAMP DATE time 以字符串形式记录一天的某个时间。 不支持(String) TIME 不支持 datetime 用于存储时间和日期数据。 TIMESTAMP TIMESTAMP 不支持 datetime2 datetime的扩展类型,其数据范围更大,默认的最小精度最高,并具有可选的用户定义的精度。 TIMESTAMP TIMESTAMP 不支持 smalldatetime smalldatetime类型与datetime类型相似,只是其存储范围是从1900年1月1日到2079年6月6日,当日期时间精度较小时,可以使用smalldatetime,该类型数据占用4个字节的存储空间。 TIMESTAMP TIMESTAMP 不支持 datetimeoffset 用于定义一个采用24小时制与日期相组合并可识别时区的时间。 不支持(String) TIMESTAMP 不支持 多媒体数据类型 (二进制) text 用于存储文本数据。 不支持(String) 不支持(String) 不支持 netxt 与text类型作用相同,为长度可变的非Unicode数据。 不支持(String) 不支持(String) 不支持 image 长度可变的二进制数据,用于存储照片、目录图片或者图画。 不支持(String) 不支持(String) 不支持 binary 长度为n个字节的固定长度二进制数据,其中n是从1~8000的值。 不支持(String) 不支持(String) 不支持 varbinary 可变长度二进制数据。 不支持(String) 不支持(String) 不支持 货币数据类型 money 用于存储货币值。 不支持(String) 不支持(String) 不支持 smallmoney 与money类型相似,输入数据时在前面加上一个货币符号,如人民币为¥或其它定义的货币符号。 不支持(String) 不支持(String) 不支持 位数据类型 bit 位数据类型,只取0或1为值,长度1字节。bit值经常当作逻辑值用于判断true(1)或false(0),输入非0值时系统将其替换为1。 不支持 不支持 不支持 其他数据类型 rowversion 每个数据都有一个计数器,当对数据库中包含rowversion列的表执行插入或者更新操作时,该计数器数值就会增加。 不支持 不支持 不支持 uniqueidentifier 16字节的GUID(Globally Unique Identifier,全球唯一标识符),是Sql Server根据网络适配器地址和主机CPU时钟产生的唯一号码,其中,每个为都是0~9或a~f范围内的十六进制数字。 不支持 不支持 不支持 cursor 游标数据类型。 不支持 不支持 不支持 sql_variant 用于存储除文本,图形数据和timestamp数据外的其它任何合法的Sql Server数据,可以方便Sql Server的开发工作。 不支持 不支持 不支持 table 用于存储对表或视图处理后的结果集。 不支持 不支持 不支持 xml 存储xml数据的数据类型。可以在列中或者xml类型的变量中存储xml实例。存储的xml数据类型表示实例大小不能超过2GB。 不支持 不支持 不支持
  • Oracle数据库迁移时支持的数据类型 源端为Oracle数据库,目的端为Hive、DWS时,支持的数据类型如下: 表3 Oracle数据库作为源端时支持的数据类型 类别 类型 简要释义 Hive DWS 字符串 char 定长字符串,会用空格填充来达到最大长度。 CHAR CHAR nchar 包含unicode格式数据的定长字符串。 CHAR CHAR varchar2 是VARCHAR的同义词。这是一个变长字符串,与CHAR类型不同,它不会用空格将字段或变量填充至最大长度。 VARCHAR VARCHAR nvarchar2 包含unicode格式数据的变长字符串。 VARCHAR VARCHAR 数值 number 能存储精度最多高达38位的数字。 DECIMAL NUMERIC binary_float 2位单精度浮点数。 FLOAT FLOAT8 binary_double 64位双精度浮点数。 DOUBLE FLOAT8 long 能存储最多2GB的字符数据。 不支持 不支持 日期时间 date 7字节的定宽日期/时间数据类型,其中包含7个属性:世纪、世纪中的哪一年、月份、月中的哪一天、小时、分钟、秒。 DATE TIMESTAMP timestamp 7字节或11字节的定宽日期/时间数据类型,它包含小数秒。 TIMESTAMP TIMESTAMP timestamp with time zone 3字节的timestamp,提供了时区支持。 TIMESTAMP TIME WITH TIME ZONE timestamp with local time zone 7字节或11字节的定宽日期/时间数据类型,在数据的插入和读取时会发生时区转换。 TIMESTAMP 不支持(TEXT) interval year to month 5字节的定宽数据类型,用于存储一个时段。 不支持 不支持(TEXT) interval day to second 11字节的定宽数据类型,用于存储一个时段。将时段存储为天/小时/分钟/秒数,还可以有9位小数秒。 不支持 不支持(TEXT) 多媒体(二进制) raw 一种变长二进制数据类型,采用这种数据类型存储的数据不会发生字符集转换。 不支持 不支持 long raw 能存储多达2GB的二进制信息。 不支持 不支持 blob 能够存储最多4GB的数据。 不支持 不支持 clob 在Oracle 10g及以后的版本中允许存储最多(4GB)×(数据库块大小)字节的数据。CLOB包含要进行字符集转换的信息。这种数据类型很适合存储纯文本信息。 String 不支持 nclob 这种类型能够存储最多4GB的数据。当字符集发生转换时,这种类型会受到影响。 不支持 不支持 bfile 可以在数据库列中存储一个oracle目录对象和一个文件名,用户可以通过它来读取这个文件。 不支持 不支持 其他类型 rowid 实际上是数据库表中行的地址,它有10字节长。 不支持 不支持 urowid 是一个通用的rowid,没有固定的rowid的表。 不支持 不支持
  • MySQL数据库迁移时支持的数据类型 源端为MySQL数据库,目的端为Hive、DWS时,支持的数据类型如下: 表2 开源MySQL数据库作为源端时支持的数据类型 类别 类型 简要释义 存储格式示例 Hive DWS 字符串 CHAR(M) 固定长度的字符串是以长度为1到255之间个字符长度(例如:CHAR(5)),存储右空格填充到指定的长度。 限定长度不是必需的,它会默认为1。 ‘a’或‘aaaaa’ CHAR CHAR VARCHAR(M) 可变长度的字符串是以长度为1到255之间字符数(高版本的MySQL超过255); 例如: VARCHAR(25). 创建VARCHAR类型字段时,必须定义长度。 ‘a’或‘aaaaa’ VARCHAR VARCHAR 数值 DECIMAL(M,D) 非压缩浮点数不能是无符号的。在解包小数,每个小数对应于一个字节。 定义显示长度(M)和小数(D)的数量是必需的。 NUMERIC是DECIMAL的同义词。 52.36 DECIMAL D为0时对应BIGINT D不为0时对应NUMBERIC NUMBERIC 与 DECIMAL 相同。 - DECIMAL NUMBERIC INTEGER 一个正常大小的整数,可以带符号。如果是有符号的,它允许的范围是从-2147483648到2147483647。 如果是无符号,允许的范围是从0到4294967295。 可以指定多达11位的宽度。 5236 INT INTEGER INTEGER UNSIGNED INTEGER 的无符号形式。 - BIGINT INTEGER INT 与INTEGER相同。 5236 INT INTEGER INT UNSIGNED 与INTEGER UNSIGNED相同。 - BIGINT INTEGER BIGINT 一个大的整数,可以带符号。如果有符号,允许范围为-9223372036854775808到9223372036854775807。如果无符号,允许的范围是从0到18446744073709551615. 可以指定最多20位的宽度。 5236 BIGINT BIGINT BIGINT UNSIGNED BIGINT的无符号形式。 - BIGINT BIGINT MEDIUMINT 一个中等大小的整数,可以带符号。如果有符号,允许范围为-8388608至8388607。 如果无符号,允许的范围是从0到16777215,可以指定最多9位的宽度。 -128,127 INT INTEGER MEDIUMINT UNSIGNED MEDIUMINT的无符号形式。 - BIGINT INTEGER TINYINT 一个非常小的整数,可以带符号。如果是有符号,它允许的范围是从-128到127。 如果是无符号,允许的范围是从0到255,可以指定多达4位数的宽度。 100 TINYINT SMALLINT TINYINT UNSIGNED TINYINT的无符号形式。 - TINYINT SMALLINT BOOL MySQL的bool实际上就是tinyint(1)。 -128、127 SMALLINT BYTEA SMALLINT 一个小的整数,可以带符号。如果有符号,允许范围为-32768至32767。 如果无符号,允许的范围是从0到65535,可以指定最多5位的宽度。 9999 SMALLINT SMALLINT SMALLINT UNSIGNED SMALLINT的无符号形式。 - INT SMALLINT REAL 同DOUBLE。 - DOUBLE - FLOAT(M,D) 不能使用无符号的浮点数字。可以定义显示长度(M)和小数位数(D)。这不是必需的,并且默认为10,2。其中2是小数的位数,10是数字(包括小数)的总数。小数精度可以到24个浮点。 52.36 FLOAT FLOAT4 DOUBLE(M,D) 不能使用无符号的双精度浮点数。可以定义显示长度(M)和小数位数(D)。 这不是必需的, 默认为16,4,其中4是小数的位数。小数精度可以达到53位的DOUBLE。 REAL是DOUBLE同义词。 52.36 DOUBLE FLOAT8 DOUBLE PRECISION 与DOUBLE相似。 52.3 DOUBLE FLOAT8 位 BIT(M) 存储位值的BIT类型。BIT(M)可以存储多达M位的值,M的范围在1到64之间。 B'1111100' B'1100' TINYINT BYTEA 日期时间 DATE 以YYYY-MM-DD格式的日期,在1000-01-01和9999-12-31之间。 例如,1973年12月30日将被存储为1973-12-30。 1999-10-01 DATE TIMESTAMP TIME 用于存储时、分、秒信息。 '09:10:21'或'9:10:21' 不支持(String) TIME DATETIME 日期和时间组合以YYYY-MM-DD HH:MM:SS格式,在1000-01-01 00:00:00 到9999-12-31 23:59:59之间。例如,1973年12月30日下午3:30,会被存储为1973-12-30 15:30:00。 '1973-12-30 15:30:00' TIMESTAMP TIMESTAMP TIMESTAMP 1970年1月1日午夜之间的时间戳,到2037的某个时候。这看起来像前面的DATETIME格式,无需只是数字之间的连字符; 1973年12月30日下午3点30分将被存储为19731230153000(YYYYMMDDHHMMSS)。 19731230153000 TIMESTAMP TIMESTAMP YEAR(M) 以2位或4位数字格式来存储年份。如果长度指定为2(例如YEAR(2)),年份就可以为1970至2069(70〜69)。如果长度指定为4,年份范围是1901-2155,默认长度为4。 2000 不支持(String) 不支持 多媒体(二进制) BINARY(M) 字节数为M,允许长度为0-M的变长二进制字符串,字节数为值得长度加1。 0x2A3B4058 (二进制数据) 不支持 BYTEA VARBINARY(M) 字节数为M,允许长度为0-M的定长二进制字符串。 0x2A3B4059 (二进制数据) 不支持 BYTEA TEXT 字段的最大长度是65535个字符。 TEXT是“二进制大对象”,并用来存储大的二进制数据,如图像或其他类型的文件。 0x5236(二进制数据) 不支持 不支持 TINYTEXT 0-255字节短文本二进制字符串。 - - 不支持 MEDIUMTEXT 0-167772154字节中等长度文本二进制字符串。 - - 不支持 LONGTEXT 0-4294967295字节极大长度文本二进制字符串。 - - 不支持 BLOB 字段的最大长度是65535个字符。 BLOB是“二进制大对象”,并用来存储大的二进制数据,如图像或其他类型的文件。BLOB大小写敏感。 0x5236(二进制数据) 不支持 不支持 TINYBLOB 0-255字节短文本二进制字符串。 - 不支持 不支持 MEDIUMBLOB 0-167772154字节中等长度文本二进制字符串。 - 不支持 不支持 LONGBLOB 0-4294967295字节极大长度文本二进制字符串。 0x5236(二进制数据) 不支持 不支持 特殊类型 SET SET是一个字符串对象,可以有零或多个值,其值来自表创建时规定的允许的一列值。指定包括多个SET成员的SET列值时各成员之间用逗号(‘,’)间隔开。这样SET成员值本身不能包含逗号。 - - 不支持 JSON - - 不支持 不支持(TEXT) ENUM 当定义一个ENUM,要创建它的值的列表,这些是必须用于选择的项(也可以是NULL)。例如,如果想要字段包含“A”或“B”或“C”,那么可以定义为ENUM为 ENUM(“A”,“B”,“C”)也只有这些值(或NULL)才能用来填充这个字段。 - 不支持 不支持
  • 配置PostgreSQL/SQL Server源端参数 作业中源连接为从云数据库 PostgreSQL、云数据库 SQL Server、PostgreSQL、Microsoft SQL Server导出的数据时,源端作业参数如表1所示。 表1 PostgreSQL/SQL Server作为源端时的作业参数 参数类型 参数名 说明 取值样例 基本参数 使用SQL语句 导出关系型数据库的数据时,您可以选择使用自定义SQL语句导出。 否 SQL语句 “使用SQL语句”选择“是”时,您可以在这里输入自定义的SQL语句,CDM将根据该语句导出数据。 说明: SQL语句只能查询数据,支持join和嵌套写法,但不能有多条查询语句,比如 select * from table a; select * from table b。 不支持with语句。 不支持注释 ,比如 "--" ,“/*”。 不支持增删改操作,包括但不限于以下操作: load data delete from alter table create table drop table into outfile select id,name from sqoop.user; 模式或表空间 “使用SQL语句”选择“否”时,显示该参数,表示待抽取数据的模式或表空间名称。单击输入框后面的按钮可进入模式选择界面,用户也可以直接输入模式或表空间名称。 如果选择界面没有待选择的模式或表空间,请确认对应连接里的账号是否有元数据查询的权限。 说明: 该参数支持配置通配符(*),实现导出以某一前缀开头或者以某一后缀结尾的所有数据库。例如: SCHEMA*表示导出所有以“SCHEMA”开头的数据库。 *SCHEMA表示导出所有以“SCHEMA”结尾的数据库。 *SCHEMA*表示数据库名称中只要有“SCHEMA”字符串,就全部导出。 SCHEMA_E 表名 “使用SQL语句”选择“否”时,显示该参数,表示要抽取的表名。单击输入框后面的按钮可进入表的选择界面,用户也可以直接输入表名称。 如果选择界面没有待选择的表,请确认表是否已经创建,或者对应连接里的账号是否有元数据查询的权限。 该参数支持配置为时间宏变量,且一个路径名中可以有多个宏定义变量。使用时间宏变量和定时任务配合,可以实现定期同步新增数据,详细说明请参见使用时间宏变量完成增量同步。 说明: 如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。 说明: 表名支持配置通配符(*),实现导出以某一前缀开头或者以某一后缀结尾的所有表(要求表中的字段个数和类型都一样)。例如: table*表示导出所有以“table”开头的表。 *table表示导出所有以“table”结尾的表。 *table*表示表名中只要有“table”字符串,就全部导出。 table 高级属性 抽取分区字段 “使用SQL语句”选择“否”时,显示该参数,表示抽取数据时使用该字段进行数据切分,CDM依据此字段将作业分割为多个任务并发执行。一般使用数据均匀分布的字段,例如以自然增长的序号字段作为分区字段。 单击输入框后面的按钮可进入字段选择界面,用户也可以直接输入抽取分区字段名。 说明: 抽取分区字段支持TINYINT、SMALLINT、INTEGER、BIGINT、REAL、FLOAT、DOUBLE、NUMERIC、DECIMAL、BIT、BOOLEAN、DATE、TIME、TIMESTAMP类型,建议该字段带有索引。 id Where子句 “使用SQL语句”选择“否”时,显示该参数,表示配置抽取范围的Where子句,不配置时抽取整表。 该参数支持配置为时间宏变量,实现抽取指定日期的数据,详细说明请参见关系数据库增量迁移。 说明: 如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。 DS='${dateformat(yyyy-MM-dd,-1,DAY)}' 分区字段是否允许空值 是否允许分区字段包含空值。 是 按表分区抽取 支持从分区表的各个分区并行抽取数据。启用该功能时,可以通过下面的“表分区”参数指定具体的表分区。 该功能不支持非分区表。 仅支持源端数据源为PostgreSQL时配置该参数。 数据库用户需要具有系统视图dba_tab_partitions和dba_tab_subpartitions的SELECT权限。 否 拆分作业 选择“是”,会根据“作业拆分字段”值,将作业拆分为多个子作业并发执行。 说明: 仅支持目的端为DLI和Hive时配置该参数及作业拆分字段、拆分字段最小值、拆分字段最大值、子作业个数参数。 是 作业拆分字段 “拆分作业”选择“是”时,显示该参数,使用该字段将作业拆分为多个子作业并发执行。 - 拆分字段最小值 “拆分作业”选择“是”时,显示该参数,表示抽取数据时“作业拆分字段”的最小值。 - 拆分字段最大值 “拆分作业”选择“是”时,显示该参数,表示抽取数据时“作业拆分字段”的最大值。 - 子作业个数 “拆分作业”选择“是”时,显示该参数,根据“作业拆分字段”的最小值和最大值限定的数据范围,将作业拆分为多少个子作业执行。 - 父主题: 配置作业源端参数
  • 配置节点调度任务(实时作业) 配置实时处理作业的节点调度任务,支持单次调度、周期调度、事件驱动调度三种方式。操作方法如下: 单击画布中的节点,在右侧显示“调度配置”页签,单击此页签,展开配置页面,配置如表4所示的参数。 表4 节点调度配置 参数 说明 调度方式 选择作业的调度方式: 单次调度:手动触发作业单次运行。 周期调度:周期性自动运行作业。 事件驱动调度:根据外部条件触发作业运行。 “周期调度”的参数 生效时间 调度任务的生效时间段。 系统支持生效时间可以快速选到今天和明天。单击生效时间的时间框,在时间框界面单击“今天”或“明天”,可以快速选择当前日期。 调度周期 选择调度任务的执行周期,并配置相关参数: 分钟 小时 系统支持按间隔小时和离散小时配置调度周期,离散小时调度仅支持自然周期调度。 天 周 月 同时系统支持可以选择“每月最后一天”进行业务调度。 调度周期需要合理设置,如CDM、ETL作业的调度周期至少应在5分钟以上,并根据作业表的数据量、源端表更新频次等调整。 已经在运行中的作业,可以修改其调度周期。 跨周期依赖 选择作业下实例之间的依赖关系。 不依赖上一调度周期 自依赖(等待上一调度周期结束才能继续运行) 跳过等待的实例,运行最近的批次。 “事件驱动调度”的参数 触发事件类型 选择触发作业运行的事件类型。 DIS通道名称 选择DIS通道,当指定的DIS通道有新消息时,数据开发模块将新消息传递给作业,触发该作业运行。 连接名称 选择数据连接,需先在“管理中心”创建kafka数据连接。 Topic 选择需要发往kafka的消息Topic。 消费组 消费者组是kafka提供的可扩展且具有容错性的消费者机制。 它是一个组,所以内部可以有多个消费者,这些消费者共用一个ID,一个组内的所有消费者共同协作,完成对订阅的主题的所有分区进行消费。其中一个主题中的一个分区只能由一个消费者消费。 说明: 一个消费者组可以有多个消费者。 Group ID是一个字符串,在一个kafka集群中,它标识唯一的一个消费者组。 每个消费者组订阅的所有主题中,每个主题的每个分区只能由一个消费者消费。消费者组之间不影响。 当触发事件类型选择了DIS或KAFKA时,会自动关联出消费组的ID,用户也可以手动修改。 事件处理并发数 选择作业并行处理的数量,最大并发数为10。 事件检测间隔 配置时间间隔,检测DIS通道下是否有新的消息。时间间隔单位可以配置为秒或分钟。 失败策略 选择节点执行失败后的策略: 挂起 忽略失败,继续调度
  • 约束限制 调度周期需要合理设置,单个作业最多允许5个实例并行执行,如果作业实际执行时间大于作业配置的调度周期,会导致后面批次的作业实例堆积,从而出现计划时间和开始时间相差大。例如CDM、ETL作业的调度周期至少应在5分钟以上,并根据作业表的数据量、源端表更新频次等调整。 如果通过DataArts Studio数据开发调度CDM迁移作业,CDM迁移作业处也配置了定时任务,则两种调度均会生效。为了业务运行逻辑统一和避免调度冲突,推荐您启用数据开发调度即可,无需配置CDM定时任务。
  • 配置HDFS源端参数 作业中源连接为HDFS连接时,即从MRS HDFS、FusionInsight HDFS、Apache HDFS导出数据时,源端作业参数如表1所示。 表1 HDFS作为源端时的作业参数 参数类型 参数名 说明 取值样例 基本参数 源连接名称 由用户下拉选择即可。 hdfs_to_cdm 源目录或文件 “列表文件”选择为“否”时,才有该参数。 待迁移数据的目录或单个文件路径。 待迁移数据的目录,将迁移目录下的所有文件(包括所有嵌套子目录及其子文件)。 该参数支持配置为时间宏变量,且一个路径名中可以有多个宏定义变量。使用时间宏变量和定时任务配合,可以实现定期同步新增数据,详细说明请参见使用时间宏变量完成增量同步。 说明: 如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。 /user/cdm/ 文件格式 传输数据时所用的文件格式,可选择以下文件格式: CSV格式:以CSV格式解析源文件,用于迁移文件到数据表的场景。 二进制格式:选择“二进制格式”时不解析文件内容直接传输,不要求文件格式必须为二进制。适用于文件到文件的原样复制。 Parquet格式:以Parquet格式解析源文件,用于HDFS数据导到表的场景。 CSV格式 列表文件 当“文件格式”选择为“二进制格式”时,才有该参数。 打开列表文件功能时,支持读取OBS桶中文件(如txt文件)的内容作为待迁移文件的列表。该文件中的内容应为待迁移文件的绝对路径(不支持目录),文件内容示例如下: /mrs/job-properties/application_1634891604621_0014/job.properties /mrs/job-properties/application_1634891604621_0029/job.properties 是 列表文件源连接 当“列表文件”选择为“是”时,才有该参数。可选择列表文件所在的OBS连接。 OBS_test_link 列表文件OBS桶 当“列表文件”选择为“是”时,才有该参数。该参数表示列表文件所在的OBS桶名。 01 列表文件或目录 当“列表文件”选择为“是”时,才有该参数。该参数表示列表文件所在的OBS桶中的绝对路径或目录。 /0521/Lists.txt 高级属性 换行符 文件中的换行符,默认自动识别“\n”、“\r”或“\r\n”。当“文件格式”选择为“CSV格式”时,才有该参数。 \n 字段分隔符 文件中的字段分隔符,使用Tab键作为分隔符请输入“\t”。当“文件格式”选择为“CSV格式”时,才有该参数。 , 首行为标题行 “文件格式”选择“CSV格式”时才有该参数。在迁移CSV文件到表时,CDM默认是全部写入,如果该参数选择“是”,CDM会将CSV文件的前N行数据作为标题行,不写入目的端的表。 否 编码类型 文件编码类型,例如:“UTF-8”或“GBK”。只有文本文件可以设置编码类型,当“文件格式”选择为“二进制格式”时,该参数值无效。 GBK 启动作业标识文件 选择是否开启作业标识文件的功能。当源端路径下存在启动作业的标识文件时才启动作业,否则会挂起等待一段时间,等待时长在下方“等待时间”中配置。 ok.txt 过滤类型 满足过滤条件的路径或文件会被传输,该参数有“无”、“通配符”和“正则表达式”三种选择。具体使用方法可参见文件增量迁移。 - 目录过滤器 “过滤类型”选择“通配符”、“正则表达式”时,用通配符过滤目录,符合过滤器规则的目录,允许进行迁移。支持配置多个路径,中间使用“,”分隔。 说明: 如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。 *input 文件过滤器 “过滤类型”选择“通配符”、“正则表达式”时,用通配符过滤目录下的文件,符合过滤器规则的文件,允许进行迁移。支持配置多个文件,中间使用“,”分隔。 说明: 如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。 *.csv 时间过滤 选择“是”时,可以根据文件的修改时间,选择性的传输文件。 是 起始时间 “过滤类型”选择“时间过滤器”时,可以指定一个时间值,当文件的修改时间大于等于该时间才会被传输,输入的时间格式需为“yyyy-MM-dd HH:mm:ss”。 该参数支持配置为时间宏变量,例如${timestamp(dateformat(yyyy-MM-dd HH:mm:ss,-90,DAY))}表示:只迁移最近90天内的文件。 说明: 如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。 2019-07-01 00:00:00 终止时间 “过滤类型”选择“时间过滤器”时,可以指定一个时间值,当文件的修改时间小于该时间才会被传输,输入的时间格式需为“yyyy-MM-dd HH:mm:ss”。 该参数支持配置为时间宏变量,例如${timestamp(dateformat(yyyy-MM-dd HH:mm:ss))}表示:只迁移修改时间为当前时间以前的文件。 说明: 如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。 2019-07-30 00:00:00 创建快照 如果选择“是”,CDM读取HDFS系统上的文件时,会先对待迁移的源目录创建快照(不允许对单个文件创建快照),然后CDM迁移快照中的数据。 需要HDFS系统的管理员权限才可以创建快照,CDM作业完成后,快照会被删除。 否 加密方式 “文件格式”选择“二进制格式”时,该参数才显示。 如果源端数据是被加密过的,则CDM支持解密后再导出。这里选择是否对源端数据解密,以及选择解密算法: 无:不解密,直接导出。 AES-256-GCM:使用长度为256byte的AES对称加密算法,目前加密算法只支持AES-256-GCM(NoPadding)。该参数在目的端为加密,在源端为解密。 详细使用方法请参见迁移文件时加解密。 AES-256-GCM 数据加密密钥 “加密方式”选择“AES-256-GCM”时显示该参数,密钥由长度64位的十六进制数组成,且必须与加密时配置的“数据加密密钥”一致。如果不一致系统不会报异常,只是解密出来的数据会错误。 DD0AE00DFECD78BF051BCFDA25BD4E320DB0A7AC75A1F3FC3D3C56A457DCDC1B 初始化向量 “加密方式”选择“AES-256-GCM”时显示该参数,初始化向量由长度32的十六进制数组成,且必须与加密时配置的“初始化向量”一致。如果不一致系统不会报异常,只是解密出来的数据会错误。 5C91687BA886EDCD12ACBC3FF19A3C3F MD5文件名后缀 “文件格式”选择“二进制格式”时,该参数才显示。 校验CDM抽取的文件,是否与源文件一致,详细请参见MD5校验文件一致性。 .md5 父主题: 配置作业源端参数
  • 操作步骤 建立跨源数据连接。 创建DLI数据连接。在DataArts Studio管理中心模块,单击创建数据连接,数据连接类型选择“数据湖探索(DLI)”,输入数据连接名称,单击“测试”,提示连接成功,单击“确定”。 创建DWS数据连接。在DataArts Studio管理中心模块,单击创建数据连接,数据连接类型选择“数据仓库服务(DWS)”,输入数据连接名称,设置其他参数,如下图所示,单击“测试”,提示连接成功,单击“确定”。 创建对账作业。 在DataArts Studio数据质量模块,单击左侧导航菜单“对账作业”。 单击“新建”,配置对账作业的基本信息,如下图所示。 图1 配置基本信息 单击“下一步”,进入规则配置页面。您需要单击规则卡片中的,然后配置对账规则,如下图所示。 需要分别配置源端和目的端的信息。配置源端连接请参见配置DWS数据连接,配置目的端连接请参见配置DLI数据连接。 配置告警条件,其中单击左侧的表行数(${1_1})表示左侧源端选中表的行数,单击右侧表行数(${2_1})表示目的端表行数。此处配置告警条件为${1_1}!=${2_1},表示当左侧表行数与右侧表行数不一致时,触发报警并显示报警状态。 单击“下一步”,配置订阅信息,如下图所示。 勾选触发告警表示作业报警时发送通知到对应的smn主题,勾选运行成功表示不报警时发送通知到SMN主题。 单击“下一步”,配置调度方式,如下图所示。 单次调度表示需要手动触发运行,周期性调度表示会按照配置定期触发作业运行。此处以当天配置为例,设置每15分钟触发运行一次对账作业为例的配置。 单击“提交”,对账作业创建完成。 查看对账作业。 单击对应的对账作业操作列中的运行链接,运行对账作业后,自动跳转到运维管理页面。 单击结果&日志查看运行结果和运行日志,等待作业运行结束后,如下图所示。
  • 环境变量 环境变量中支持定义变量和常量,环境变量的作用范围为当前工作空间。 变量是指不同的空间下取值不同,需要重新配置值,比如“工作空间名称”变量,这个值在不同的空间下配置不一样,导出导入后需要重新进行配置。 常量是指在不同的空间下都是一样的,导入的时候,不需要重新配置值。 图1 环境变量 具体应用如下: 在环境变量中已新增一个变量,“参数名”为“sdqw”,“参数值”为“wqewqewqe”。 打开一个已创建好的作业,从左侧节点库中拖拽一个“Create OBS”节点。 在节点属性页签中配置属性。 图2 Create OBS 单击“保存”后,选择“前往监控”页面监控作业的运行情况。
  • 配置Elasticsearch连接 Elasticsearch连接适用于第三方云的Elasticsearch服务,以及用户在本地数据中心或ECS上自建的Elasticsearch。 Elasticsearch连接器仅支持非安全模式的Elasticsearch集群。 作业运行中禁止修改密码或者更换用户。在作业运行过程中修改密码或者更换用户,密码不会立即生效且作业会运行失败。 连接Elasticsearch时,相关参数如表1所示。 表1 Elasticsearch连接参数 参数名 说明 取值样例 名称 连接的名称,根据连接的数据源类型,用户可自定义便于记忆、区分的连接名。 es_link Elasticsearch服务器列表 配置为一个或多个Elasticsearch服务器的IP地址或域名,包括端口号,格式为“ip:port”,多个地址之间使用“;”分隔。 192.168.0.1:9200;192.168.0.2:9200 父主题: 管理连接
  • Apache server日志 日志样例: [Mon Jan 08 20:43:51.854334 2018] [mpm_event:notice] [pid 36465:tid 140557517657856] AH00489: Apache/2.4.12 (Unix) OpenSSL/1.0.1t configured -- resuming normal operations 正则表达式为: ^\[(.*)\] \[(.*)\] \[(.*)\] (.*).* 解析结果如下: 表5 Apache server日志解析结果 列号 样值 1 Mon Jan 08 20:43:51.854334 2018 2 mpm_event:notice 3 pid 36465:tid 140557517657856 4 AH00489: Apache/2.4.12 (Unix) OpenSSL/1.0.1t configured -- resuming normal operations
  • Django日志 日志样例: [08/Jan/2018 20:59:07 ] settings INFO Welcome to Hue 3.9.0 正则表达式为: ^\[(.*)\] (\w*) (\w*) (.*).* 解析结果如下: 表4 Django日志解析结果 列号 样值 1 08/Jan/2018 20:59:07 2 settings 3 INFO 4 Welcome to Hue 3.9.0
  • Tomcat日志 日志样例: 11-Jan-2018 09:00:06.907 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name: Linux 正则表达式为: ^(\d.*\d) (\w*) \[(.*)\] ([\w\.]*) (\w.*).* 解析结果如下: 表3 Tomcat日志解析结果 列号 样值 1 11-Jan-2018 09:00:06.907 2 INFO 3 main 4 org.apache.catalina.startup.VersionLoggerListener.log 5 OS Name:Linux
  • Log4J审计日志 日志样例: 2018-01-11 08:51:06,156 INFO [org.apache.sqoop.audit.FileAuditLogger.logAuditEvent(FileAuditLogger.java:61)] user=sqoop.anonymous.user ip=189.xxx.xxx.75 op=show obj=version objId=x 正则表达式为: ^(\d.*\d) (\w*) \[(.*)\] user=(\w.*) ip=(\w.*) op=(\w.*) obj=(\w.*) objId=(.*).* 解析结果如下: 表2 Log4J审计日志解析结果 列号 样值 1 2018-01-11 08:51:06,156 2 INFO 3 org.apache.sqoop.audit.FileAuditLogger.logAuditEvent(FileAuditLogger.java:61) 4 sqoop.anonymous.user 5 189.xxx.xxx.75 6 show 7 version 8 x
  • Log4J日志 日志样例: 2018-01-11 08:50:59,001 INFO [org.apache.sqoop.core.SqoopConfiguration.configureClassLoader(SqoopConfiguration.java:251)] Adding jars to current classloader from property: org.apache.sqoop.classpath.extra 正则表达式为: ^(\d.*\d) (\w*) \[(.*)\] (\w.*).* 解析出的结果如下: 表1 Log4J日志解析结果 列号 样值 1 2018-01-11 08:50:59,001 2 INFO 3 org.apache.sqoop.core.SqoopConfiguration.configureClassLoader(SqoopConfiguration.java:251) 4 Adding jars to current classloader from property: org.apache.sqoop.classpath.extra
  • 作业参数的环境变量 CDM在创建迁移作业时,可以手动输入的参数(例如OBS桶名、文件路径等)、参数中的某个字段、或者字段中的某个字符,都支持配置为一个全局变量,方便您批量更改作业中的参数值,以及作业导出/导入后进行批量替换。 这里以批量替换作业中OBS桶名为例进行介绍。 在CDM作业管理界面,单击“配置管理”页签,配置环境变量。 bucket_1=A bucket_2=B 这里以变量“bucket_1”表示桶A,变量“bucket_2”表示桶B。 在创建CDM迁移作业的界面,迁移桶A的数据到桶B。 源端桶名配置为${bucket_1},目的端桶名配置为${bucket_2}。 图1 桶名配置为环境变量 如果下次要迁移桶C数据到桶D,则无需更改作业参数,只需要在“配置管理”界面将环境变量改为如下即可: bucket_1=C bucket_2=D
  • 最大抽取并发数 最大抽取并发数即集群最大抽取并发数。 此处的“最大抽取并发数”参数与集群配置处的“最大抽取并发数”参数同步,在任意一处修改即可生效。 CDM通过数据迁移作业,将源端数据迁移到目的端数据源中。其中,主要运行逻辑如下: 数据迁移作业提交运行后,CDM会根据作业配置中的“抽取并发数”参数,将每个作业拆分为多个Task,即作业分片。 不同源端数据源的作业分片维度有所不同,因此某些作业可能出现未严格按作业“抽取并发数”参数分片的情况。 CDM依次将Task提交给运行池运行。根据集群配置管理中的“最大抽取并发数”参数,超出规格的Task排队等待运行。 因此作业抽取并发数和集群最大抽取并发数参数设置为适当的值可以有效提升迁移速度,您可参考下文有效配置抽取并发数。 集群最大抽取并发数的上限建议为vCPU核数*2,如表1所示。 表1 集群最大抽取并发数配置建议 规格名称 vCPUs/内存 集群并发数上限参考 cdm.large 8核 16GB 16 cdm.xlarge 16核 32GB 32 cdm.4xlarge 64核 128GB 128 作业抽取并发数的配置原则如下: 迁移的目的端为文件时,CDM不支持多并发,此时应配置为单进程抽取数据。 表中每行数据大小为1MB以下的可以设置多并发抽取,超过1MB的建议单线程抽取数据。 作业抽取并发数可参考集群最大抽取并发数配置,但不建议超过集群最大抽取并发数上限。 目的端为DLI数据源时,抽取并发数建议配置为1,否则可能会导致写入失败。
  • 定时备份/恢复 该功能依赖于OBS服务。 前提条件 已创建OBS连接,详情请参见配置OBS连接。 定时备份 在CDM作业管理界面,单击“配置管理”页签,配置定时备份的参数。 表2 定时备份参数 参数 说明 配置样例 定时备份 自动备份功能的开关,该功能只备份作业,不会备份连接。 开 备份策略 所有作业:不管作业处于什么状态,CDM会备份所有表/文件迁移作业、整库迁移的作业。不备份历史作业。 分组作业:选择备份某一个或多个分组下的作业。 所有作业 备份周期 选择备份周期: 日:每天零点执行一次。 周:每周一零点执行一次。 月:每月1号零点执行一次。 日 备份写入OBS连接 CDM通过该连接,将作业备份到OBS,需要用户提前在“连接管理”界面创建好OBS连接。 obslink OBS桶 存储备份文件的OBS桶。 cdm 备份数据目录 存储备份文件的目录。 /cdm-bk/ 恢复作业 如果之前执行过自动备份,“配置管理”页签下会显示备份列表:显示备份文件所在的OBS桶、路径、备份时间。 您可以单击备份列表操作列的“恢复备份”来恢复CDM作业。
  • 配置Redis目的端参数 当作业将数据导入到Redis时,目的端作业参数如表1所示。 表1 Redis作为目的端时的作业参数 参数名 说明 取值样例 Redis键前缀 键的前缀,类似关系型数据库的表名。 TABLE 值存储类型 仅支持以下数据格式: STRING:不带列名,如“值1,值2”形式。 HASH:带列名,如“列名1=值1,列名2=值2”的形式。 STRING 是否以列值作为field 当值存储类型为HASH时显示此参数。仅支持Hash,如果打开开关,除主键列外,按字段顺序交替取值作为field和value。 是 写入前将相同的键删除 写入前将相同的键删除。 否:如果原来Redis已存在类型不同的同名key,则迁移作业会跳过该key。 是:Redis会先删除原有的同名key,再执行迁移。 否 键分隔符 用来分隔关系型数据库的表和列名。 _ 值分隔符 以STRING方式存储时,列之间的分隔符。 ; key值有效期 用于设置统一的生存时间,单位:秒。 300 父主题: 配置作业目的端参数
  • 开发Hive SQL作业 Hive SQL脚本开发完成后,我们为Hive SQL脚本构建一个周期执行的作业,使得该脚本能定期执行。 创建一个数据开发模块空作业,作业名称为“job_hive_sql”。 图2 创建job_hive_sql作业 然后进入到作业开发页面,拖动MRS Hive SQL节点到画布中并单击,配置节点的属性。 图3 配置MRS Hive SQL节点属性 关键属性说明: SQL脚本:关联开发Hive SQL脚本中开发完成的Hive SQL脚本“hive_sql”。 数据连接:默认选择SQL脚本“hive_sql”中设置的数据连接,支持修改。 数据库:默认选择SQL脚本“hive_sql”中设置的数据库,支持修改。 节点名称:默认显示为SQL脚本“hive_sql”的名称,支持修改。 作业编排完成后,单击,测试运行作业。 如果运行成功,单击画布空白处,在右侧的“调度配置”页面,配置作业的调度策略。 图4 配置调度方式 该作业调度时间在2021/01/01至2021/01/25,每天2点调度一次作业。 最后我们需要提交版本,执行调度作业,实现作业每天自动运行。
  • 场景描述 在配置作业调度时,可以选择每个月的最后一天执行。如果您需要配置作业的调度时间为每月最后一天,请参考下面两种方法。 表1 配置每月最后一天进行调度 配置方法 优势 如何配置 调度周期配置为天,通过条件表达式进行判断是否为每月最后一天 可以灵活适用多种场景。只需要编写条件表达式就可以灵活调度作业去运行。例如,每月最后一天,每月七号等。 方法1 调度周期配置为月,勾选每月最后一天 通过配置调度周期来执行任务调度。不用编写开发语句,通过勾选需要调度的时间去执行任务。 方法2
共100000条