maven - 创建用于提交Spark应用程序的瘦 jar

标签 maven apache-spark hadoop jar spark-submit

关于如何使用薄 jar 提交Spark应用程序的任何见解?

这种情况是这样的:如果项目的类路径中不存在某些特定的依赖关系,或者特定于某些发行版cloudera或hortonworks的依赖关系,则在未使用适当版本的jar的情况下会引发异常。

我们如何避免这种情况?

最佳答案

您可以制作的唯一一个瘦 jar 是不会将Spark核心库编译到JAR中的 jar 。例如,不需要包含Spark SQL和Spark Streaming,但是除非在安装过程中在Hive支持下编译了Spark,否则您仍然需要其中的一个。

您需要联系Hadoop集群管理员,以了解可用的Spark版本,如何构建以及$SPARK_HOME中可用的库。

根据我的经验,我从来没有遇到过对HDP或CDH的特定依赖,因为我曾经运行过提交给YARN的Spark 2.3作业,而两家公司都未正式支持该版本。您唯一需要做的就是将Spark版本与您的代码进行匹配,而不必是Hadoop / YARN / Hive版本。 Kafka,Cassandra和其他连接器都是多余的,它们不能放在 jar 里

关于maven - 创建用于提交Spark应用程序的瘦 jar ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49491881/

相关文章:

java - Travis 所有构建均失败 "bad interpreter: No such file or directory"

java - 使用 XmlBeans 生成的类时出错

hadoop - hadoop 中的数据包计数(使用 Mapreduce)

hadoop - Apache Pig中的数学方程

java - 通过 proguard 为模块中缩小的类创建源 jar

java - pom.xml 中指定的 maven 插件不执行

java - 如何在 Databricks Spark Scala 中使用当月的第一天创建变量?

scala - Spark 2.2 无法将 df 写入 parquet

scala - 如何根据 spark 数据框中值的累计和为每一行分配一个类别?

hadoop - Hadoop Oozie CPU利用率高