0


如何将spark程序打jar包并上传至本地集群环境运行

配置spark在本地上运行

1、配置本地环境(我的本地系统为win10)

(1)在官网下载spark安装包:spark-3.0.0-bin-hadoop3.2.tgz,下载页面见下图:

下载页面

(2)解压spark安装包到本地磁盘,这里我的路径为D:\java,如图:

在这里插入图片描述

(3)打开cmd界面,进入安装目录下的bin目录,执行spark-shell.cmd命令,启动spark本地环境,看到如下界面说明启动成功。

在这里插入图片描述

2、将spark程序打成jar包,在本地集群环境运行。
(1)使用IDEA编写spark代码示例如下。
packagechapter01importorg.apache.spark.rdd.RDD
importorg.apache.spark.{SparkConf, SparkContext}object HelloWorld {def main(args: Array[String]):Unit={//TODO 1、创建spark上下文//1.1 创建配置文件对象val conf =new SparkConf().setMaster("local").setAppName("WordCount")val context =new SparkContext(conf)//2、业务逻辑

    println("-----------this is my first spark application------------")//3、关闭上下文对象
    context.stop()}}

编写spark程序代码通常分为三步:

1、创建spark上下文环境

2、程序的业务逻辑

3、关闭spark上下文环境

这里只是验证spark运行环境,所以代码进行了简化,业务逻辑仅仅是在控制台输入一句话:this is my first spark application。

(2)在pom.xml中添加maven打包依赖

maven工程默认不会对scala代码编译成class文件,所以必须添加将scala编译成class的依赖,否则程序上传到集群环境后,会出现找不到主类的错误提示。

<build><plugins><!-- 该插件用于将 Scala 代码编译成 class 文件 --><plugin><groupId>net.alchim31.maven</groupId><artifactId>scala-maven-plugin</artifactId><version>3.2.2</version><executions><execution><!-- 声明绑定到 maven 的 compile 阶段 --><goals><goal>compile</goal></goals></execution></executions></plugin></plugins></build>
(3) 添加完以上依赖后,先执行maven clean命令,删除之前的target,然后再执行打包操作(package操作包含了compile操作,所以直接执行package操作,就会自动进行编译)

在这里插入图片描述

执行完上述操作后,会在target目录生成jar包

在这里插入图片描述

(4)将jar包上传至集群目录

将jar拷贝至spark安装目录下的examples\jars目录
在这里插入图片描述

1)运行jar包一定要保证spark-shell.cmd在运行状态,即不能关闭上面已经启动的cmd界面。

2)新打开一个cmd界面,并再次进入安装目录下的bin目录,执行以下命令运行jar包:

spark-submit --class chapter01.HelloWorld --master local[2]../examples/jars/scala_study-1.0-SNAPSHOT.jar 10

对以上命令进行简要释义:

--class:jar包中程序运行包含主函数的类
--master:Spark 程序运行的模式(环境),可以为::local[*]、spark://服务器ip:默认端口、
Yarn
../examples/jars/scala_study-1.0-SNAPSHOT.jar:jar包所在路径
10:程序的入口参数,用于设定当前应用的任务数量

命令执行结果如下图:

在这里插入图片描述

程序运行后,会输出大量日志,但是可以看到,程序成功输出了我们的输出语句:this is my first spark application。

以上就是如何将spark程序打jar包,并上传至本地集群环境运行。之后会写如果在yarn环境运行,需要的粉丝请在评论区留言。

标签: spark scala 大数据

本文转载自: https://blog.csdn.net/weixin_41765352/article/details/128465167
版权归原作者 疯狂码农8385 所有, 如有侵权,请联系我们删除。

“如何将spark程序打jar包并上传至本地集群环境运行”的评论:

还没有评论