创建用于提交spark应用程序的瘦jar

sycxhyv7  于 2021-06-01  发布在  Hadoop
关注(0)|答案(1)|浏览(252)

关于如何使用瘦jar提交spark应用程序有什么见解吗?
该场景是这样的:如果某个特定的依赖项不存在于项目的类路径中,或者特定于某个发行版cloudera或hortonworks,那么如果没有使用适当版本的jar,它就会抛出一个异常。
我们如何避免这种情况?

zynd9foi

zynd9foi1#

你唯一能做的薄jar就是不把spark核心库编译到jar中。例如,sparksql和sparkstreaming不需要包含在内,但是除非spark是在安装期间使用hive支持编译的,否则您仍然需要它。
您需要与hadoop集群管理员联系,以了解spark的可用版本、它是如何构建的,以及中有哪些库 $SPARK_HOME 开箱即用。
以我的经验,我从未遇到过对hdp或cdh的特定依赖,因为我运行过提交给yarn fine的spark 2.3作业,而两家供应商都不正式支持该版本。您唯一需要的是将spark版本与您的代码相匹配,而不一定是hadoop/yarn/hive版本。Kafka,Cassandra,其他连接器都是额外的,他们不能在一个薄jar

相关问题