datax修复\N脏数据

下载datax源码
修改datax源码plugin-unstructured-storage-util下的UnstructuredStorageReaderUtil.class

加上一个判断,因为在hdfs中,null值存储的是 \N ,所以需要把它转换成 null存储到Mysql中

Type type = Type.valueOf(columnType.toUpperCase());
// it's all ok if nullFormat is null
if (columnValue.equals(nullFormat) || columnValue.equals("\\N")) {
   LOG.info("********** string的 原始值 为 "+columnValue+" ******");
   columnValue = null;
}

打包
在这里插入图片描述
你可以只打包自己的需要的

然后会生成/${DATAX_Home}/target/datax/datax/plugin/xxreader
在这里插入图片描述

最后替换官网下的datax.tar.gz中的xxreader和xxwriter

博主公众号
求关注
在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据您提供的引用内容,datax同步脏数据可能会导致降速的问题。引用中提到,当存在大量脏数据时,datax会停止执行。而引用指出,脏数据问题是在写入数据库时发现的,因此直接丢弃这些脏数据可能并不能解决降速问题。 可能的原因是,回滚操作会对速度产生影响,因为数据库的回滚可能会导致datax需要更多的内存空间来执行,而内存空间不足会进一步降低datax的抽取速度。此外,垃圾回收(GC)的过程也可能对datax的速度造成影响。 为解决这个问题,可以考虑以下几个方法: 1. 优化数据清洗过程:通过增加数据清洗的规则和条件,尽可能地排除掉脏数据,以减少脏数据对同步速度的影响。 2. 增加内存空间:如果内存空间不足导致了速度下降,可以考虑增加datax所在机器的内存,以提供更多的空间供datax执行。 3. 分批同步数据:将数据同步任务拆分为多个批次进行,每个批次同步一部分数据。这样可以减少每次同步的数据量,降低内存使用,从而提高同步速度。 4. 调整数据库配置:根据实际情况,调整数据库的配置参数,如缓冲区大小、并发连接数等,以提升数据写入性能。 综上所述,datax同步脏数据可能会导致降速的问题,可以通过优化数据清洗、增加内存空间、分批同步数据和调整数据库配置等方法来解决这个问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [datax因为脏数据降速问题解决](https://blog.csdn.net/weixin_40366684/article/details/110391762)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [用dataX向PolarDB中导数据时,出现脏数据问题怎么解决](https://blog.csdn.net/weixin_46609492/article/details/124615314)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值