通过json方式导入的作业,sql server迁移到hive,执行作业报错
问题描述
客户通过json的方式导入作业,从sql server迁移数据到hive,执行作业报:操作数数据类型bit 对min 运算无效。
故障分析
客户作业中配置的并发数大于1,CDM会选择分区列进行分区迁移,默认情况:取主键字段,如果没有主键字段取的是从元数据里面的第一个字段作为分区字段。
由于客户作业中设置的并发数是8,程序选择IsDef作为分区字段,但是IsDef的类型是bit,不支持min运算所以会报错。
解决方案
- 通过修改作业json的方式将作业并发数设置为1即可,参数:"throttlingConfig.numExtractors"。
- 在作业配置界面,源端参数配置的高级属性中,给 “抽取分区字段”配置项指定字段即可(建议为源端表的主键或者递增的字段)。