标签:hdfs E5% E6% rank 集群 datax 数据
今天通过datax从一个集群同步数据到另外一个集群当中,虽然任务执行成功了,但是一个很大的问题,
(数据丢失)这怎么得了
解决思路:
(1)是不是数据分隔符的问题,导致数据变少了。对了一下发现没问题
(2) 是不是因为字段长度不够数据没同步过来,把长度调的足够大,发现也不管用
(3) 突然在网上发现了一个致命的问题,我们这个表的数据很多,是不是因为数据块太大了导致,一看果然
果然数据块超过了,256M的,所有有部分数据丢失,至于为什么只读了一部分还要从datax的源码开始看。
下面这个链接就是具体的原因说的很详细:
https://blog.csdn.net/cclovezbf/article/details/117064747?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~aggregatepage~first_rank_ecpm_v1~rank_v31_ecpm-2-117064747.pc_agg_new_rank&utm_term=datax%E6%95%B0%E6%8D%AE%E5%90%8C%E6%AD%A5%E8%BF%87%E7%A8%8B%E4%B8%AD%E5%AD%98%E5%9C%A8%E4%B8%A2%E5%A4%B1&spm=1000.2123.3001.4430
其实也就是datax在读取数据的时候,他只读了第一个切片当中的数据,其他的数据都丢了。不要了。
解决方案:对表进行重写,集群设置global参数为256M问题解决。
标签:hdfs,E5%,E6%,rank,集群,datax,数据 来源: https://www.cnblogs.com/gxgd/p/15603490.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。