检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
创建了Hive到DWS类型的连接,进行CDM传输任务失败时如何处理? 建议清空历史数据后再次尝试该任务。在使用CDM迁移作业的时候需要配置清空历史数据,然后再做迁移,可大大降低任务失败的概率。 父主题: 故障处理类
图1 集群最大抽取并发数配置 作业抽取并发数的配置原则如下: 迁移的目的端为文件时,CDM不支持多并发,此时应配置为单进程抽取数据。 表中每行数据大小为1MB以下的可以设置多并发抽取,超过1MB的建议单线程抽取数据。 作业抽取并发数可参考集群最大抽取并发数配置,但不建议超过集群最大抽取并发数上限。
使用两个集群分别迁移,源端和目标端以及作业配置都一样,2.6.0版本的CDM集群作业可以迁移成功,2.8.6版本的集群迁移失败。报错作业日志如下图所示。 原因分析 初步怀疑是源端和目标端在字段类型转换出现异常。 将目标端表字段类型biginit改为 string,重新跑作业还是失败,报错内容跟之前一样。 配置开启脏
图1 集群最大抽取并发数配置 作业抽取并发数的配置原则如下: 迁移的目的端为文件时,CDM不支持多并发,此时应配置为单进程抽取数据。 表中每行数据大小为1MB以下的可以设置多并发抽取,超过1MB的建议单线程抽取数据。 作业抽取并发数可参考集群最大抽取并发数配置,但不建议超过集群最大抽取并发数上限。
Kerberos:安全模式选择Kerberos鉴权。 linkConfig.properties 否 Map 属性配置,可以添加客户端的配置属性,所添加的每个属性需配置属性名称和值 父主题: 连接参数说明
CDM是否支持参数或者变量? 如果CDM作业使用了在数据开发时配置的作业参数或者变量,则后续在DataArts Studio数据开发模块调度此节点,可以间接实现CDM作业根据参数变量进行数据迁移。 父主题: 功能类
过用户配置的通配符过滤文件或路径,CDM只迁移满足指定条件的文件或路径。 配置样例: 例如源端文件名带有时间字段“2017-10-15 20:25:26”,这个时刻生成的文件为“/opt/data/file_20171015202526.data”,则在创建作业时,参数配置如下:
过用户配置的通配符过滤文件或路径,CDM只迁移满足指定条件的文件或路径。 配置样例: 例如源端文件名带有时间字段“2017-10-15 20:25:26”,这个时刻生成的文件为“/opt/data/file_20171015202526.data”,则在创建作业时,参数配置如下:
返回当前整小时的时间戳。 1508115600000 路径和表名的时间宏变量 如图1所示,如果将: 源端的“表名”配置为“CDM_/${dateformat(yyyy-MM-dd)}”。 目的端的“写入目录”配置为“/opt/ttxx/${timestamp()}”。 经过宏定义转换,这个作业表示:将Oracle数据库的“SQOOP
参数原理:通过“Where子句”参数可以配置一个SQL语句(例如:age > 18 and age <= 60),CDM只导出该SQL语句指定的数据;不配置时导出整表。 Where子句支持配置为时间宏变量,当数据表中有时间日期字段或时间戳字段时,配合定时执行作业,能够实现抽取指定日期的数据。 配置样例: 假设
返回当前整小时的时间戳。 1508115600000 路径和表名的时间宏变量 如图1所示,如果将: 源端的“表名”配置为“CDM_/${dateformat(yyyy-MM-dd)}”。 目的端的“写入目录”配置为“/opt/ttxx/${timestamp()}”。 经过宏定义转换,这个作业表示:将Oracle数据库的“SQOOP
参数原理:通过“Where子句”参数可以配置一个SQL语句(例如:age > 18 and age <= 60),CDM只导出该SQL语句指定的数据;不配置时导出整表。 Where子句支持配置为时间宏变量,当数据表中有时间日期字段或时间戳字段时,配合定时执行作业,能够实现抽取指定日期的数据。 配置样例: 假设
迁移作业。 配置Oracle源端参数、MRS hive目的端参数,并配置传递参数,参数形式为 ${varName},本示例参数为${cur_date},如图2所示。 图2 配置作业 不能在CDM迁移作业中配置“作业失败重试”参数,如有需要请在数据开发中的CDM节点配置“失败重试”参数。
是否支持增量迁移? CDM支持增量数据迁移。利用定时任务配置和时间宏变量函数等参数,可支持以下场景的增量数据迁移: 文件增量迁移 关系数据库增量迁移 HBase/CloudTable增量迁移 详情请参见增量迁移。 父主题: 功能类
String 登录CloudTable集群的访问标识。建议在配置文件或者环境变量中密文存放,使用时解密,确保安全。 linkConfig.securityKey 是 String 登录CloudTable集群的密钥。建议在配置文件或者环境变量中密文存放,使用时解密,确保安全。 父主题:
抽取并发数:可设置同时执行的抽取任务数。 是否写入脏数据:如果需要将作业执行过程中处理失败的数据、或者被清洗过滤掉的数据写入OBS中,以便后面查看,可通过该参数配置,写入脏数据前需要先配置好OBS连接。 作业运行完是否删除:可选择是否自动删除作业。 JSON样例 "driver-config-values": {
支持的数据类型 配置字段映射时,数据源支持的数据类型请参见表1,以确保数据完整导入到目的端。 表1 支持的数据类型 数据连接类型 数据类型说明 MySQL 请参见MySQL数据库迁移时支持的数据类型。 SQL Server 请参见SQL Server数据库迁移时支持的数据类型。 Oracle
否 String 路径过滤器,过滤类型为通配符时配置,用于过滤文件目录,例如:“*input”。 fromJobConfig.fileFilter 否 String 文件过滤器,过滤类型为通配符时配置,用于过滤目录下的文件,支持配置多个文件,中间使用“,”分隔,例如:“*.csv
读Hudi作业字段映射多了一列col,作业执行失败怎么处理? 问题原因:使用Spark SQL写数据入hudi表,由于配置问题,表schema中会自动增加一列类型为array<string>,名称为col的列。 解决方案:字段映射中删去此列,如果是自动建表,SQL中也要把此列删去。
这2个参数支持配置为时间宏变量,例如: 起始时间配置为${dateformat(yyyy-MM-dd HH:mm:ss, -1, DAY)}时,表示只导出昨天以后的数据。 终止时间配置为${dateformat(yyyy-MM-dd HH:mm:ss)}时,表示只导出当前时间以前的数据。 这2个参数同时配置后,CDM