Ubuntu下为Spark安装配置sbt
Posted Z.Q.Fengᯤ⁵ᴳ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ubuntu下为Spark安装配置sbt相关的知识,希望对你有一定的参考价值。
一、下载sbt
需要下载的文件名为 sbt-launch.jar
,下载链接如下:https://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/sbt-launch/0.13.11/sbt-launch.jar,点进去等一下就会弹出下载界面。
二、配置sbt
在 /usr/local/
目录下创建 sbt
文件夹,并赋予 hadoop
用户相关权限:
cd /usr/local
sudo mkdir sbt
sudo chown -R hadoop ./sbt
移动下载号的 sbt-launch.jar
到上述目录下:
cp ~/Downloads/sbt-launch.jar ./sbt
cd sbt
编写 sbt
脚本:
vim ./sbt
编写内容如下:
#!/bin/bash
SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M"
java $SBT_OPTS -jar `dirname $0`/sbt-launch.jar "$@"
:wq
,保存并退出,赋予脚本相关权限:
sudo chmod u+x ./sbt
接着运行 sbt
脚本,查看 sbt
版本并下载相关依赖包:
sudo ./sbt sbtVersion
过程可能需要等待挺久的,会显示成功下载部分文件:
下载完成后会输出 sbt
版本信息如下:
若中途失败,多试几次即可。
三、使用sbt编译打包Scala程序
首先创建程序根目录以及程序所需的文件结构:
mkdir ~/sparkapp
mkdir -p ~/sparkapp/src/main/scala
在上述目录下创建我们的 Scala
文件:
vim ~/sparkapp/src/main/scala/SimpleApp.scala
示例代码如下:
/* SimpleApp.scala */
import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._
import org.apache.spark.SparkConf
object SimpleApp
def main(args: Array[String])
val logFile = "file:///usr/local/spark/README.md" // Should be some file on your system
val conf = new SparkConf().setAppName("Simple Application")
val sc = new SparkContext(conf)
val logData = sc.textFile(logFile, 2).cache()
val numAs = logData.filter(line => line.contains("a")).count()
val numBs = logData.filter(line => line.contains("b")).count()
println("Lines with a: %s, Lines with b: %s".format(numAs, numBs))
接着创建一个 simple.sbt
文件:
vim ~/sparkapp/simple.sbt
内容如下:
name := "Simple Project"
version := "1.0"
scalaVersion := "2.12.15"
libraryDependencies += "org.apache.spark" %% "spark-core" % "3.2.0"
注意这里的 scalaVersion
是你的 Scala 版本,spark-core
是你的 spark 版本,查看方法启动 spark-shell
即可:
/usr/local/spark/bin/spark-shell
输出如下:
最后使用 sbt
进行打包:
sudo /usr/local/sbt/sbt package
成功输出如下:
中途出现 warn
多运行几次,生成的 jar 包路径如下:~/sparkapp/target/scala-2.12/simple-project_2.12-1.0.jar
,可以通过 spark-submit
提交运行:
/usr/local/spark/bin/spark-submit --class "SimpleApp" ~/sparkapp/target/scala-2.12/simple-project_2.12-1.0.jar 2>& 1 | grep Lines
执行结果如下:
四、总结
以上是关于Ubuntu下为Spark安装配置sbt的主要内容,如果未能解决你的问题,请参考以下文章