关于如何使用瘦jar提交spark应用程序有什么见解吗?该场景是这样的:如果某个特定的依赖项不存在于项目的类路径中,或者特定于某个发行版cloudera或hortonworks,那么如果没有使用适当版本的jar,它就会抛出一个异常。我们如何避免这种情况?
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
$SPARK_HOME
1条答案
按热度按时间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