[MaxCompute MapReduce实践]通过简单瘦身,解决Dataworks 10M文件限制问题-阿里云开发者社区

开发者社区> 阿里巴巴大数据计算> 正文

[MaxCompute MapReduce实践]通过简单瘦身,解决Dataworks 10M文件限制问题

简介: 用户在DataWorks上执行MapReduce作业的时候,文件大于10M的JAR和资源文件不能上传到Dataworks,导致无法使用调度去定期执行MapReduce作业。 解决方案: jar -resources test_mr.

用户在DataWorks上执行MapReduce作业的时候,文件大于10M的JAR和资源文件不能上传到Dataworks,导致无法使用调度去定期执行MapReduce作业。


解决方案:

第一步:大于10M的resources通过MaxCompute CLI客户端上传,

客户端下载地址:https://help.aliyun.com/document_detail/27971.html

客户端配置AK、EndPoint:https://help.aliyun.com/document_detail/27804.html


add jar C:\test_mr\test_ab.jar -f;//添加资源,大于10M

第二步:目前通过MaxCompute CLI上传的资源,在Dataworks左侧资源列表是找不到的,只能通过list resources查看确认资源;


list resources;//查看资源

第三步:瘦身Jar,因为Dataworks执行MR作业的时候,一定要依赖ClassPath,所以要在Dataworks中注册瘦身Jar(保留main就可以),之后提交到MaxCompute集群,系统会找到刚才客户端CLI注册的大于10M的resources资源;


jar 

-resources test_mr.jar,test_ab.jar 
//resources在客户端注册后直接引用

-classpath test_mr.jar  
//瘦身策略:在gateway上提交要有main和相关的mapper和reducer,
额外的三方依赖可以不需要,其他都可以放到resources

com.aliyun.odps.examples.mr.test_mr wc_in wc_out;



通过上述方法,我们可以在Dataworks上跑大于10M的MR作业。


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
阿里巴巴大数据计算
使用钉钉扫一扫加入圈子
+ 订阅

阿里大数据官方技术圈

官方博客
链接