搭建spark本地环境

搭建Java环境

(1)到官网下载JDK

官网链接:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

(2)解压缩到指定的目录

>sudo tar -zxvf jdk-8u91-linux-x64.tar.gz -C /usr/lib/jdk //版本号视自己安装的而定

(3)设置路径和环境变量

>sudo vim /etc/profile

在文件的最后加上

export JAVA_HOME=/usr/lib/jdk/jdk1..0_91
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

(4)让配置生效

source /etc/profile

(5)验证安装是否成功

~$ java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) -Bit Server VM (build 25.181-b13, mixed mode)

安装Scala

(1)到官网下载安装包

官网链接:https://www.scala-lang.org/download/

(2)解压缩到指定目录

sudo tar -zxvf scala-2.11..tgz -C /usr/lib/scala //版本号视自己安装的而定

(3)设置路径和环境变量

>sudo vim /etc/profile

在文件最后加上

export SCALA_HOME=/usr/lib/scala/scala-2.11.  //版本号视自己安装的而定
export PATH=${SCALA_HOME}/bin:$PATH

(4)让配制生效

source /etc/profile

(5)验证安装是否成功

:~$ scala
Welcome to Scala 2.12. (Java HotSpot(TM) -Bit Server VM, Java 1.8.0_181).
Type in expressions for evaluation. Or try :help. scala>

安装Spark

(1)到官网下载安装包

官网链接:http://spark.apache.org/downloads.html

(2)解压缩到指定目录

sudo tar -zxvf spark-1.6.-bin-hadoop2..tgz -C /usr/lib/spark //版本号视自己安装的而定

(3)设置路径和环境变量

>sudo vim /etc/profile

在文件最后加上

export SPARK_HOME=/usr/lib/spark/spark-1.6.-bin-hadoop2.
export PATH=${SPARK_HOME}/bin:$PATH

(4)让配置生效

source /etc/profile

(5)验证安装是否成功

:~$ cd spark-1.6.-bin-hadoop2.
:~/spark-1.6.-bin-hadoop2.$ ./bin/spark-shell
Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
// :: WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
// :: WARN Utils: Your hostname, pxh resolves to a loopback address: 127.0.1.1; using 10.22.48.4 instead (on interface wlan0)
// :: WARN Utils: Set SPARK_LOCAL_IP if you need to bind to another address
// :: WARN ObjectStore: Failed to get database global_temp, returning NoSuchObjectException
Spark context Web UI available at http://10.22.48.4:4040
Spark context available as 'sc' (master = local[*], app id = local-).
Spark session available as 'spark'.
Welcome to
____ __
/ __/__ ___ _____/ /__
_\ \/ _ \/ _ `/ __/ '_/
/___/ .__/\_,_/_/ /_/\_\ version 2.2.
/_/ Using Scala version 2.11. (Java HotSpot(TM) -Bit Server VM, Java 1.8.0_181)
Type in expressions to have them evaluated.
Type :help for more information.

安装sbt

(1)到官网下载安装包

官网链接:https://www.scala-sbt.org/download.html

(2)解压缩到指定目录

tar -zxvf sbt-0.13..tgz -C /usr/local/sbt

(3)在/usr/local/sbt 创建sbt脚本并添加以下内容

$ cd /usr/local/sbt
$ vim sbt
# 在sbt文本文件中添加如下信息:
BT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M"
java $SBT_OPTS -jar /usr/local/sbt/bin/sbt-launch.jar "$@"

(4)保存后,为sbt脚本增加执行权限

$ chmod u+x sbt

(5)设置路径和环境变量

>sudo vim /etc/profile

在文件最后加上

export PATH=/usr/local/sbt/:$PATH

(6)让配置生效

source /etc/profile

(7)验证安装是否成功

$ sbt sbt-version
//如果这条命令运行不成功请改为以下这条 >sbt sbtVersion
$ sbt sbtVersion
Java HotSpot(TM) -Bit Server VM warning: ignoring option MaxPermSize=256M; support was removed in 8.0
[info] Loading project definition from /home/pxh/project
[info] Set current project to pxh (in build file:/home/pxh/)
[info] 1.2.

编写Scala应用程序

(1)在终端创建一个文件夹sparkapp作为应用程序根目录

cd ~
mkdir ./sparkapp
mkdir -p ./sparkapp/src/main/scala #创建所需的文件夹结构

(2)./sparkapp/src/main/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:///home/pxh/hello.ts"
val conf = new SparkConf().setAppName("Simple Application")
val sc = new SparkContext(conf)
val logData = sc.textFile(logFile,).cache()
val numAs = logData.filter(line => line.contains("a")).count()
println("Lines with a: %s".format(numAs))
}
}

(3)添加该独立应用程序的信息以及与Spark的依赖关系

vim ./sparkapp/simple.sbt

在文件中添加如下内容

name:= "Simple Project"
version:= "1.0"
scalaVersion :="2.11.8"
libraryDependencies += "org.apache.spark"%% "spark-core" % "2.2.0"

(4)检查整个应用程序的文件结构

cd ~/sparkapp
find .

文件结构如下

.
./simple.sbt
./src
./src/main
./src/main/scala
./src/main/scala/SimpleApp.scala

(5)将整个应用程序打包成JAR(首次运行的话会花费较长时间下载依赖包,请耐心等待)

sparkapp$ /usr/local/sbt/sbt package
Java HotSpot(TM) -Bit Server VM warning: ignoring option MaxPermSize=256M; support was removed in 8.0
[info] Loading project definition from /home/pxh/sparkapp/project
[info] Loading settings for project sparkapp from simple.sbt ...
[info] Set current project to Simple Project (in build file:/home/pxh/sparkapp/)
[success] Total time: s, completed -- ::

(6)将生成的jar包通过spark-submit提交到Spark中运行

:~$ /home/pxh/spark-2.2.-bin-hadoop2./bin/spark-submit --class "SimpleApp" /home/pxh/sparkapp/target/scala-2.11/simple-project_2.-1.0.jar >& | grep "Lines with a:"
Lines with a:

END........

spark本地环境的搭建到运行第一个spark程序的更多相关文章

  1. Spark认识&环境搭建&运行第一个Spark程序

    摘要:Spark作为新一代大数据计算引擎,因为内存计算的特性,具有比hadoop更快的计算速度.这里总结下对Spark的认识.虚拟机Spark安装.Spark开发环境搭建及编写第一个scala程序.运 ...

  2. 搭建java开发环境、使用eclipse编写第一个java程序

    搭建java开发环境.使用eclipse编写第一个java程序 一.Java 开发环境的搭建 1.首先安装java SDK(简称JDK). 点击可执行文件 jdk-6u24-windows-i586. ...

  3. 运行第一个ruby程序

    0x00 安装 首先需要安装一个ruby的环境,ruby分为win.linux.macOS版本.不用系统安装方法略有差异,不在这进行讲解. 0x01 运行第一个ruby程序 我这里是win环境,打开命 ...

  4. 运行第一个Hadoop程序,WordCount

    系统: Ubuntu14.04 Hadoop版本: 2.7.2 参照http://www.cnblogs.com/taichu/p/5264185.html中的分享,来学习运行第一个hadoop程序. ...

  5. 运行第一个python程序,python 变量,常量,注释

    一.运行第一个python程序: print('Hello,world') 保存为.py文件 在cmd窗口: python3x:python  py文件路径 回车 python2x:python  p ...

  6. Spark环境的搭建与运行

    Spark本地安装与配置 下载spark后解压,并cd到解压目录下 运行实例程序测试是否一切正常 ./bin/run-example org.apache.spark.examples.SparkPi ...

  7. F.I.S本地环境的搭建教程

    一.准备开发环境: 1.安装JRE 2.安装nodejs 最好是msi文件,比较省事. 3.(如果是PHP项目)安装php. 首先下载php(我的是5.5.15版本,win7 64位系统) zip,然 ...

  8. [IOS]从零开始搭建基于Xcode7的IOS开发环境和免开发者帐号真机调试运行第一个IOS程序HelloWorld

    首先这篇文章比较长,若想了解Xcode7的免开发者帐号真机调试运行IOS程序的话,直接转到第五部分. 转载请注明原文地址:http://www.cnblogs.com/litou/p/4843772. ...

  9. 跟哥一起学python(2)- 运行第一个python程序&环境搭建

    本节的任务,是完成我们的第一个python程序,并搭建好学习python的环境.  建议通过视频来学习本节内容: 查看本节视频 再次看看上一节提到的那张图,看看作为高级编程语言,我们如何编程. 首先, ...

随机推荐

  1. LeetCode 题解之Plus One

    1.题目描述 2.题目分析 从后向前做加法,等于10则进位,否则直接加1 ,返回 digits; 3.代码 vector<int> plusOne(vector<int>&am ...

  2. python之线程、进程

    线程语法 class Thread(_Verbose): """A class that represents a thread of control. This cla ...

  3. [WSUS] [Windows 10 Upgrade 1607/1703] 升级出错,出现 0xC1800118 或者卡在下载中…… 0%后失败

    1. 安装 KB3159706 ,并进行安装后维护操作:https://support.microsoft.com/en-us/help/3159706/update-enables-esd-decr ...

  4. leetcode 刷题

    176:第二高的薪水 offset ) as secondhighestsalary; ---去掉第一个,再从第一个开始 177:第N高的薪水 ------相关子查询:子查询中引用了外层查询所引用表的 ...

  5. datediff

    DateDiff()是计算机函数. 中文名 日期比较函数 外文名 DateDiff() 作    用 得 出两个日期之间的间隔 用    途 返回两个日期之间的差值 允许数据类型 timeinterv ...

  6. [翻译] TCBlobDownload

    TCBlobDownload TCBlobDownload uses NSOperations to download large files (typically videos, music... ...

  7. wxpython 编程触发菜单或按钮事件

    最近逐步熟悉wxpython,编写了几个小小功能的GUI程序,GUI中免不了会有在代码中触发控件事件的业务需求.在其他Gui界面的语言中有postevent.triggerevent 调用事件名称的函 ...

  8. 详细说明php的4中开源框架(TP,CI,Laravel,Yii)

    ThinkPHP简称TP,TP借鉴了Java思想,基于PHP5,充分利用了PHP5的特性,部署简单只需要一个入口文件,一起搞定,简单高效.中文文档齐全,入门超级简单.自带模板引擎,具有独特的数据验证和 ...

  9. debian安装及使用mysql

    在Debian中安装MySQL服务器是很方便的,使用apt-get命令即可完成. debian:~# apt-get install mysql-server mysql-client mysql-s ...

  10. ubuntu 12.04 eclipse增加桌面快捷方式

    1.创建桌面启动器(编辑/usr/share/applications/eclipse.desktop) [Desktop Entry] Encoding=UTF-8 Name=eclipse Com ...