目录
一、背景
二、报错内容
1.json格式错误
报错
问题定位
解决
2.没有文件
报错
定位问题
解决
3.插件加载失败
报错
定位原因
解决
4.必须指定主键
报错
定位原因
解决
5.datax同步成功,hive/impala上select不出来数据
问题
问题定位
解决
三、参数配置说明
一、背景
最近在测试同步数据到kudu,过程中一踩一个坑,记录一下踩过的坑,也避免之后有人也像我一样举步维艰。
工具:
dolphinscheduler的 [datax]组件
二、报错内容
1.json格式错误
报错
经DataX智能分析,该任务最可能的错误原因是:
com.alibaba.datax.common.exception.DataXException: Code:[Common-00], Describe:[您提供的配置文件存在错误信息,请检查您的作业配置 .] - 配置信息错误. 您提供的配置信息不是合法的JSON格式: syntax error, position at 1143, name kuduConfig . 请按照标准json格式提供配置信息
问题定位
可以知道是json文件配置有问题了,然后仔细看报错name kuduConfig,去json里在这里仔细排查错误即可,本次我的错误是多加了引号
解决
错误内容 "kuduConfig": "{"kudu.master_addresses":"ip:7051"}",
正确内容 "kuduConfig": {"kudu.master_addresses":"ip:7051"},
2.没有文件
报错
/usr/bin/python2.7: can't open file '/bin/datax.py': [Errno 2] No such file or directory
定位问题
无从下手,百度了一下,说是datax环境变量设置问题。datax的路径配置错误,找不到该文件。
解决
这个找不到的路径是之前官方默认的,现在看不需要指定到bin以及运行文件,只要到安装目录即可。
查看 vim /opt/soft/dolphinscheduler/conf/env/
将路径 export DATAX_HOME=/opt/soft/datax/bin/datax.py 改为 export DATAX_HOME=/opt/soft/datax
3.插件加载失败
报错
插件[postgresqlreader,kuduwriter]加载失败,1s后重试... Exception:Code:[Framework-12], Description:[DataX插件初始化错误, 该问题通常是由于DataX安装错误引起,请联系您的运维解决 .]. - 插件加载失败,未完成指定插件加载:[kuduwriter, postgresqlreader]
经DataX智能分析,该任务最可能的错误原因是: com.alibaba.datax.common.exception.DataXException: Code:[Framework-12], Description:[DataX插件初始化错误, 该问题通常是由于DataX安装错误引起,请联系您的运维解决 .]. - 插件加载失败,未完成指定插件加载:[kuduwriter, postgresqlreader]
定位原因
居然根本没有安装kuduwriter插件,我真的哭了~
解决
跟开发小哥哥反馈,从github上下载一版集成到dolphinscheduler。
DataX/kuduwriter at master · alibaba/DataX · GitHub
4.必须指定主键
报错
经DataX智能分析,该任务最可能的错误原因是: com.alibaba.datax.common.exception.DataXException: GREATE_KUDU_TABLE_ERROR - org.apache.kudu.client.NonRecoverableException: must specify at least one key column
定位原因
一看就知道要指定主键,可是我明明指定了啊,结果仔细看了好几遍才发现是主键关键字大小写问题