Spark报错:Caused by: java.lang.IllegalArgumentException: Compression codec com.hadoop.compression.lzo

2021-06-11 18:39:40 浏览数 (1)

问题

在yarn集群上提交一个spark-submit的任务,最后抛出一个异常

解决

原因: 因为在之前的项目中,在hadoop中的core-site.xml 和mapred-site.xml文件配置了lzo格式的压缩,这就导致上传到hdfs 的文件自动被压缩为lzo了。所以当使用提交spark-submit任务时,需要访问HDFS上的文件,而spark自身没有lzo的jar包所以无法找到。

方法一: 软链接到spark下的jars目录,注意自己的hadoop-lzo-0.4.20.jar的目录!

代码语言:javascript复制
ln -s  /opt/module/hadoop-3.1.3/share/hadoop/common/hadoop-lzo-0.4.20.jar /opt/module/spark-yarn/jars/hadoop-lzo-0.4.20.jar

方法二: 配置spark-default.conf文件,注意自己的hadoop-lzo-0.4.20.jar的目录! 在最下面添加一行

代码语言:javascript复制
spark.jars=/opt/module/hadoop-3.1.3/share/hadoop/common/hadoop-lzo-0.4.20.jar

0 人点赞