安装

解压

将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的安装和应用(详细步骤)相关推荐

  1. UBUNTU手动安装JDK的详细步骤

    这篇文章主要介绍了UBUNTU手动安装JDK的详细步骤,大家参考使用吧 先去 Oracle下载Linux下的JDK压缩包,我下载的是jdk-7u4-linux-i586.tar.gz文件,下好后直接解 ...

  2. linux下安装DB2的详细步骤

    我也是才学习,在网上找了一个在linux下安装DB2 的步骤,共享给大家看看了. linux下安装DB2的详细步骤! 第一步:检查程序包及其版本 在软件包管理中查看下列软件包是否安装,如没有安装,先安 ...

  3. Linux上快速安装软RAID详细步骤

    物理环境:虚拟机CentOS6.4 配置:8G内存.2*2核cpu.3块虚拟硬盘(sda,sdb,sdc,sdb和sdc是完全一样的) 在实际生产环境中,系统硬盘与数据库和应用是分开的,这样有利于系统 ...

  4. Ubantu20.04 安装搜狗输入法的详细步骤和遇到的问题

    Ubantu20.04 安装搜狗输入法的详细步骤和遇到的问题 一.安装Fcitx输入框架 1.步骤 2.遇到的问题 二.下载Linux版本搜狗输入法 1.搜狗Linux下载官方网站 2.安装步骤 三. ...

  5. 云服务器安装虚拟机教程视频,从零开始安装VMwareTools的详细步骤(图文教程)

    从零开始安装VMwareTools的详细步骤(图文教程) 发布时间:2020-10-23 18:08:10 来源:脚本之家 阅读:80 作者:ZYH199897 栏目:服务器 VMware Tools ...

  6. 安装windows2000操作系统的详细步骤

    安装windows2000操作系统的详细步骤 一.安装前的准备工作: 1.将我的文档中重要的资料复制到系统盘外的E盘(以复制到E盘为例): 2.下载安装驱动精灵或驱动备份工具,将重要驱动程序(如果你是 ...

  7. docker安装redis(详细步骤)

    docker安装redis(详细步骤) 一次docker安装redis 一次docker安装redis 1. 执行docker search redis搜索镜像 2. 执行docker pull re ...

  8. linux安装JDK1.8详细步骤

    linux安装JDK1.8详细步骤 1.官网下载jdk1.8压缩包 进入官网:https://www.oracle.com/java/technologies/downloads/ 2.将下载好的压缩 ...

  9. Android Studio环境配置安装、搭建详细步骤及使用方法

    APP准备工作如下 1.源码下载 因为我已经下载好了 就不演示了 连下载都不会我就不说什么了. 稍后我会随教程发源码出去 jdk-8u77-windows-x64 萝卜app 1.1 mahuaTV这 ...

  10. 在虚拟机中安装Linux操作系统详细步骤

    欢迎关注博主 Mindtechnist 或加入[Linux C/C++/Python社区]一起探讨和分享Linux C/C++/Python/Shell编程.机器人技术.机器学习.机器视觉.嵌入式AI ...

最新文章

  1. 依图创始人朱珑《人民日报》刊文:未来10年是人工智能算力的“超摩尔时代”...
  2. 虚拟机中docker安装mysql远程无法访问解决方法
  3. Docker安装Hadoop
  4. 数据库自治服务DAS论文入选全球顶会SIGMOD,领航“数据库自动驾驶”新时代
  5. FreeBsd网络性能优化方案sysctl
  6. 通过互联网启动Linux
  7. 图解C语言的希尔排序
  8. 关于Markdown编辑器怎么写“|”等特殊符号的问题
  9. php函数中首次出现,PHP开发之子串在字符串中首次出现、最后出现、出现次数函数相关总结...
  10. java 双向链表_Day26:二叉搜索树与双向链表
  11. Java基础学习——安装JDK
  12. A股收盘:沪指收涨0.66% 深成指收涨1.01%
  13. 5. http://kb.cnblogs.com/page/90838/
  14. Windows 平台下Git 服务器搭建
  15. 使用CPN Tools工具做简单的登录模型(初学者)
  16. 2014十大的安全工具(ToolsWatch.org投票选出)
  17. pvpgn mysql_魔兽私服pvpgn搭建
  18. r7525服务器电源管理系统,Dell EMC旗舰级双路AMD机架服务器PowerEdge R7525一览
  19. Zhong__Centos安装Redis
  20. Allein rennen spielen singen beißen.Espoir parfaitement arbre.

热门文章

  1. 联发科有没有高端处理器_联发科处理器怎么样?真的很差吗?
  2. JAVA核心技术,卷1
  3. MySQL缓冲池-Buffer Pull
  4. 【pySerial3.4官方文档】1、pySerial
  5. 【插件】前端表格在线表格类Excel插件推荐
  6. 哈工大计算机网络研究生,2020年哈尔滨工业大学软件工程考研经验分享
  7. 机器视觉系列(三)——电气部分
  8. 线上服务器CPU占用率高如何排查定位问题?
  9. i5 11320h怎么样 相当于什么水平
  10. 安卓调起高德百度第三方地图进行导航