常见问题
读写 HDFS 问题
1.HDFS 主备切换
Caused by: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.ipc.StandbyException): Operation category READ is not supported in state standby. Visit https://s.apache.org/sbnn-error
2.文件写入过大
[您配置的文件在写入时出现IO异常.]. - org.apache.hadoop.ipc.RemoteException(java.io.IOException): File has reached the limit on maximum number of blocks (dfs.namenode.fs-limits.max-blocks-per-file): 10000 >= 10000
原因:写入的数据过大,HDFS 单文件最大 block 数量限制
解决:拆分 datax 任务,例如使用时间切分采集
读写 Oracle 问题
1.Oracle 读取数据报错
具体错误信息为:java.sql.SQLException: ORA-01555: snapshot too old: rollback segment number 10 with name "XXX" too small
原因:抽取的表发生数据变更,导致数据版本不一致
解决:重新抽取,或者增加 where 条件,避免数据变更。或者更改数据抽取时间点,避免数据变更。
配置问题
java.lang.ClassCastException: java.lang.String cannot be cast to java.util.List
原因:json 配置不对
解决:一般是数组的配置写成了字符串的,例如 "table": ["customer"]
写成 table": "customer"