出现该问题的原因,再hive中,null的存储时为"\N",Mysql的null值就是null,所以再进行数据迁移的时候需要考虑该问题
方法一:
方法一采用修改源码:

具体实现代码块:
// it's all ok if nullFormat is null
// 解决datax抽hdfs数据到mysql之null值变成 \N 或者 转换错误 的问题
if (columnValue.equals(nullFormat) || columnValue.equals("\\N") ) {
//LOG.info("********** string的 原始值 为 "+columnValue+" ******");
columnValue = null;
}
此方法比较麻烦,且不一定能成功,建议采用方法二。
方法二:
方法二采用的是修改json配置文件
"nullFormat":
DataX迁移NULL值问题

本文介绍了使用DataX从HDFS迁移到MySQL时遇到的NULL值转换问题,并提供了两种解决方案:一是修改源码,二是调整JSON配置文件中的nullFormat参数。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



