Spark---如何打成jar包至服务器运行
Posted Shall潇
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spark---如何打成jar包至服务器运行相关的知识,希望对你有一定的参考价值。
编写路径的配置文件
【为什么要编写配置文件?是因为不想在主程序中将路径写死】
利用java中的util包下的Properties读取配置文件信息
新建test.properties文件放在resource文件夹中
test.properties文件中的内容
【第一个是要读的文件地址,第二个是要保存的文件地址】
path:hdfs://192.168.XXX.100:9000/sparkfile/hello.txt
savepath:hdfs://192.168.XXX.100:9000/sparkout/helloworld
编写程序
import java.io.FileInputStream
import java.util.Properties
import org.apache.spark.{SparkConf, SparkContext}
object HelloWorld {
def main(args: Array[String]): Unit = {
val conf = new SparkConf().setMaster("local[*]").setAppName("json")
val sc = SparkContext.getOrCreate(conf)
//读取配置路径
val properties = new Properties()
properties.load(new FileInputStream("/opt/spark_test/test.properties"))
val path = properties.getProperty("path")
val savePath = properties.getProperty("savepath")
// println(path)
//wc程序
val rdd1= sc.textFile(path)
val result = rdd1.flatMap(_.split(" ")).map(x=>(x,1)).reduceByKey(_+_)
result.collect()foreach(println)
result.saveAsTextFile(savePath) //保存至文件
}
}
打jar包
不会的请看这里 一看就会
打成jar包,然后删除加密文件
用压缩软件打开,找到 META-INF 目录中的 .DSA和.SF文件 ,将它们都删除
将相关文件上传至对应的地方
【路径参考程序中的地址】
- 上传jar包至服务器
- hello.txt上传至HDFS路径
- test.properties上传至服务器
程序执行命令
spark-submit
--class com.kgc.bigdata.spark.core.WordCount
--master spark://hadoop000:7077
/home/hadoop/lib/spark-1.0.SNAPSHOT.jar /data/wordcount
这里执行的命令
spark-submit \\
--class HelloWorld \\
--master local[*] ./SparkStu.jar
效果截图
hello.txt
运行结果
以及生成了对应的文件
以上是关于Spark---如何打成jar包至服务器运行的主要内容,如果未能解决你的问题,请参考以下文章