利用java写spark job,工程结构为maven,每次生成的jar都比较大。
spark job 包过大带来以下缺点:打包时间长、jar包上传慢、job启动比较慢。
本文介绍jar包瘦身方法:
观察臃肿的jar包,发现大部分都是spark相关的jar比较大,因此打包时去掉即可。
- 首先,缓存spark-assembly 包到hdfs,方法见本文。
然后, 修改代码工程的pom文件,将spark相关的
dependency
的scope
修改为provided
例如:
一下依赖都可改为修改为provided
(默认为compile
)<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark