sbt的安装和应用(详细步骤)
安装
解压
将sbt-1.6.1.tgz上传到xshell,并解压
解压:
tar -zxvf sbt-1.6.1.tgz
配置
1、在/home/ZQ/sbt中创建sbt脚本
cd sbt
vim ./sbt
在脚本中添加如下内容:
#!/bin/bash
SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M"
java $SBT_OPTS -jar /home/ZQ/sbt/bin/sbt-launch.jar "$@"
2、为sbt脚本文件增加可执行权限
chmod u+x ./sbt
3、运行如下命令,检查sbt是否可用(查看sbt的版本信息)
./sbt sbtVersion
sbt的运用
1、创建存放代码的目录
mkdir -p sparkapp/src/main/scala/
2、编写代码
vim sparkapp/src/main/scala/test1.scala
在test1.scala文件中增加如下内容
object HelloWorld{def main(args:Array[String]){println("hello world!");}}
3、进入sparkapp目录编写sbt程序
cd sparkapp/
vim simple.sbt
在simple.sbt中添加如下内容:
name := "Simple Project"
version := "1.6.1"
scalaVersion := "2.12.10"
libraryDependencies += "org.apache.spark" %% "spark-core" % "3.1.1"
4、打包scala程序(必须在sbt/sparkapp这个路径下操作)
cd sbt/sparkapp/
/home/ZQ/sbt/sbt package
(打包生成的jar包在sbt/sparkapp/target/scala-2.12/simple-project_2.12-1.6.1.jar)
5、通过spark-submit运行程序
/home/ZQ/spark-3.1.1-bin-hadoop2.7/bin/spark-submit --class "HelloWorld" ./target/scala-2.12/simple-project_2.12-1.6.1.jar
复杂代码的实现
1、创建一个代码文件Combine.scala
cd sbt/sparkapp/src/main/scala/
vim Combine.scala
在文件中增加如下内容:
import org.apache.spark.SparkContext
import org.apache.spark.SparkConf
object Combine{def main(args:Array[String]){val conf=new SparkConf().setAppName("Combine").setMaster("local")val sc=new SparkContext(conf)val data=sc.parallelize(Array(("company-1",88),("company-1",96),("company-1",85),("company-2",94),("company-2",86),("company-2",74),("company-3",86),("company-3",88),("company-3",92)),3)val res=data.combineByKey((income)=>(income,1),(acc:(Int,Int),income)=>(acc._1+income,acc._2+1),(acc1:(Int,Int),acc2:(Int,Int))=>(acc1._1+acc2._1,acc1._2+acc2._2)).map({case (key,value)=>(key,value._1,value._1/value._2.toFloat)})res.repartition(1).saveAsTextFile("file:/home/ZQ/sbt/sparkapp/result/rdd/result1")}
}
2、在sbt中编译打包(必须在cd sbt/sparkapp目录下)
cd
cd sbt/sparkapp
/home/ZQ/sbt/sbt package
3、使用spark-submit命令提交运行(必须在cd sbt/sparkapp目录下)
/home/ZQ/spark-3.1.1-bin-hadoop2.7/bin/spark-submit --class "Combine" ./target/scala-2.12/simple-project_2.12-1.6.1.jar
4、运行后查看结果
cd result/rdd/result1/
vim part-00000
结果:
sbt的安装和应用(详细步骤)相关推荐
- UBUNTU手动安装JDK的详细步骤
这篇文章主要介绍了UBUNTU手动安装JDK的详细步骤,大家参考使用吧 先去 Oracle下载Linux下的JDK压缩包,我下载的是jdk-7u4-linux-i586.tar.gz文件,下好后直接解 ...
- linux下安装DB2的详细步骤
我也是才学习,在网上找了一个在linux下安装DB2 的步骤,共享给大家看看了. linux下安装DB2的详细步骤! 第一步:检查程序包及其版本 在软件包管理中查看下列软件包是否安装,如没有安装,先安 ...
- Linux上快速安装软RAID详细步骤
物理环境:虚拟机CentOS6.4 配置:8G内存.2*2核cpu.3块虚拟硬盘(sda,sdb,sdc,sdb和sdc是完全一样的) 在实际生产环境中,系统硬盘与数据库和应用是分开的,这样有利于系统 ...
- Ubantu20.04 安装搜狗输入法的详细步骤和遇到的问题
Ubantu20.04 安装搜狗输入法的详细步骤和遇到的问题 一.安装Fcitx输入框架 1.步骤 2.遇到的问题 二.下载Linux版本搜狗输入法 1.搜狗Linux下载官方网站 2.安装步骤 三. ...
- 云服务器安装虚拟机教程视频,从零开始安装VMwareTools的详细步骤(图文教程)
从零开始安装VMwareTools的详细步骤(图文教程) 发布时间:2020-10-23 18:08:10 来源:脚本之家 阅读:80 作者:ZYH199897 栏目:服务器 VMware Tools ...
- 安装windows2000操作系统的详细步骤
安装windows2000操作系统的详细步骤 一.安装前的准备工作: 1.将我的文档中重要的资料复制到系统盘外的E盘(以复制到E盘为例): 2.下载安装驱动精灵或驱动备份工具,将重要驱动程序(如果你是 ...
- docker安装redis(详细步骤)
docker安装redis(详细步骤) 一次docker安装redis 一次docker安装redis 1. 执行docker search redis搜索镜像 2. 执行docker pull re ...
- linux安装JDK1.8详细步骤
linux安装JDK1.8详细步骤 1.官网下载jdk1.8压缩包 进入官网:https://www.oracle.com/java/technologies/downloads/ 2.将下载好的压缩 ...
- Android Studio环境配置安装、搭建详细步骤及使用方法
APP准备工作如下 1.源码下载 因为我已经下载好了 就不演示了 连下载都不会我就不说什么了. 稍后我会随教程发源码出去 jdk-8u77-windows-x64 萝卜app 1.1 mahuaTV这 ...
- 在虚拟机中安装Linux操作系统详细步骤
欢迎关注博主 Mindtechnist 或加入[Linux C/C++/Python社区]一起探讨和分享Linux C/C++/Python/Shell编程.机器人技术.机器学习.机器视觉.嵌入式AI ...
最新文章
- 依图创始人朱珑《人民日报》刊文:未来10年是人工智能算力的“超摩尔时代”...
- 虚拟机中docker安装mysql远程无法访问解决方法
- Docker安装Hadoop
- 数据库自治服务DAS论文入选全球顶会SIGMOD,领航“数据库自动驾驶”新时代
- FreeBsd网络性能优化方案sysctl
- 通过互联网启动Linux
- 图解C语言的希尔排序
- 关于Markdown编辑器怎么写“|”等特殊符号的问题
- php函数中首次出现,PHP开发之子串在字符串中首次出现、最后出现、出现次数函数相关总结...
- java 双向链表_Day26:二叉搜索树与双向链表
- Java基础学习——安装JDK
- A股收盘:沪指收涨0.66% 深成指收涨1.01%
- 5. http://kb.cnblogs.com/page/90838/
- Windows 平台下Git 服务器搭建
- 使用CPN Tools工具做简单的登录模型(初学者)
- 2014十大的安全工具(ToolsWatch.org投票选出)
- pvpgn mysql_魔兽私服pvpgn搭建
- r7525服务器电源管理系统,Dell EMC旗舰级双路AMD机架服务器PowerEdge R7525一览
- Zhong__Centos安装Redis
- Allein rennen spielen singen beißen.Espoir parfaitement arbre.