在Ubuntu14.04 64bit上搭建单机Spark环境,IDE为Intelli IDEA

一. 环境

Ubuntu14.04 64位
    JDK 1.8.0_73
    scala-2.10.4
    spark 1.5.1  [此处注意Spark版本和Scala版本的兼容性问题]
    IntelliJ IDEA 14.04

二. 安装JDK

1.从http://www.oracle.com/technetwork/java/javase/downloads页面下载JDK 1.8安装包,此处选择的是jdk-8u73-linux-x64.tar.gz
2.解压到软件希望安装的目录下
3.修改环境变量: sudo gedit /etc/profile

export JAVA_HOME=/home/cherish/program/java/jdk1.8.0_73
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:$PATH

4.重新载入profile文件:

 source /etc/profile

5.验证:

java, javac, java -version

三.安装scala

1.从http://www.scala-lang.org/download/2.10.4.html页面下载scala-2.10.4安装包
2.解压到软件希望安装的目录下
3.修改环境变量: sudo gedit /etc/profile

 export SCALA_HOME=/home/cherish/program/scala/scala-2.10.4
export PATH=${SCALA_HOME}/bin:$PATH

4.重新载入profile文件:

source /etc/profile

5.验证:

scala, scala -version

四. 安装spark

1.从http://www.scala-lang.org/download/2.11.7.html页面下载spark安装包,这里我选择的是1.5.1版本的Pre-build for Hadoop2.6 and later.
2.解压到软件希望安装的目录下
3.修改环境变量: sudo gedit /etc/profile

export SPARK_HOME=/home/cherish/program/spark/spark-1.5.1-bin-hadoop2.6
export PATH=${SPARK_HOME}/bin:$PATH

4.重新载入profile文件:

source /etc/profile

五.安装IntelliJ IDEA

1.从http://www.jetbrains.com/idea/download/#section=linux页面下载IntelliJ IDEA安装包,此处选择的版本是14.04
2.解压到软件希望安装的目录下
3.下载插件
  首先启动intelliJ IDEA:在命令行终端中,进入$IDEA_HOME/bin目录,输入sudo ./idea.sh进行启动,进入如下界面,然后选择右下角“plugins”

然后进入以下界面,点击Plugins,由于Scala插件没有安装,需要点击”Install JetBrains plugins"进行安装,如下图所示:

然后进入以下界面,点击下载,等下载安装好后,点击close就ok了

安装插件后,在启动界面中选择创建新项目,弹出的界面中将会出现"Scala"类型项目,如下图,选择scala-》scala

点击next,project name自己随便起的名字,把自己安装的scala和jdk选中,按照上面的安装过程,此处选的为jdk 1.8.0_73, scala-2.10.4!完成后,点击Finish

然后在IDE中File -> project Structure -> Libraries ->“+”,然后进入你安装spark时候解压的 spark-XXX-bin-hadoopXX下,在lib目录下,选择spark-assembly-XXX-hadoopXX.jar,结果如下图所示,然后点击Apply,最后点击ok

现在我们就可以在src下创建一个包,然后创建一个Scala Object,如下图,然后就可以用scala来编写代码了。

六. 测试整个开发环境

下面是一个测试小代码,单词计数,代码如下

 package graphTest

 import org.apache.spark.{SparkConf, SparkContext}

 /**
* Created by root on 16-3-21.
*/
object myFirstScalaObject {
def main(args: Array[String]) {
val conf = new SparkConf()
conf.setAppName("world")
conf.setMaster("local")
val sc = new SparkContext(conf)
val lines = sc.textFile("/home/cherish/programData/test") //数据路径
val words = lines.flatMap{line => line.split(" ")}
val pairs = words.map{ word => (word,1)}
val wordCounts = pairs.reduceByKey(_+_)
wordCounts.foreach(wordNumberPair => println(wordNumberPair._1 + ":" + wordNumberPair._2))
sc.stop()
}
}

然后点击Run即可运行了。

此处运行时如果出现如下的报错信息,则表明Spark版本和Scala版本不兼容,需要更改scala的版本。但是在本文介绍的scala-2.10.4版本与spark 1.5.1版本是兼容的。

Exception in thread "main" java.lang.NoSuchMethodError: scala.collection.immutable.HashSet$.empty()Lscala/collection/immutable/HashSet;

七. 感谢

Ubuntu spark 搭建_在Ubuntu14.04 64bit上搭建单机Spark环境
linux 系统下IntelliJ IDEA的安装及使用

在Ubuntu14.04 64bit上搭建单机Spark环境,IDE为Intelli IDEA的更多相关文章

  1. TeamViewer的下载、安装和使用(windows7、CentOS6.5和Ubuntu14.04(64bit))(图文详解)

    不多说,直接上干货! TeamViewr是远程支持.远程访问.在线协作和会议软件. 分为从windows7.CentOS6.5和Ubuntu14.04(64bit) 系统来详解下载.安装和初步使用! ...

  2. 在Ubuntu 14.04 64bit上安装numpy和matplotlib库

    原文:http://blog.csdn.net/tao_627/article/details/44004541 按照这个成功安装! 机器学习是数据挖掘的一种实现形式,在学习<机器学习实战> ...

  3. Ubuntu14.04 64bit编译u-boot-2016.07提示 Your dtc is too old, please upgrade to dtc 1.4 or newer

    Author:AP0904225版权声明:本文为博主原创文章,转载请标明出处. Ubuntu14.04 64bit环境下编译u-boot-2016.07提示如下错误: CHK include/conf ...

  4. Ubuntu16.04.1上搭建分布式的Redis集群

    为什么要集群: 通常为了,提高网站的响应速度,总是把一些经常用到的数据放到内存中,而不是放到数据库中,Redis是一个很好的Cache工具,当然了还有Memcached,这里只讲Redis.在我们的电 ...

  5. 在Ubuntu 14.04 64bit上安装Markdown和绘图软件Haroopad

    简介 Haroopad:一款让你欲罢不能的Markdown编辑器 身为大程序员,我本来是不需要 Markdown 编辑器的,但是 Haroopad 让我简直欲罢不能,不能再爱更多.跨平台,代码高亮,V ...

  6. 搭建单机CDH环境,并更新spark环境

    搭建单机CDH环境,并更新spark环境 1,安装VMWare Player,http://dlsw.baidu.com/sw-search-sp/soft/90/13927/VMware_playe ...

  7. Ubuntu16.04.1上搭建分布式的Redis集群,并使用C#操作

    为什么要集群: 通常为了,提高网站的响应速度,总是把一些经常用到的数据放到内存中,而不是放到数据库中,Redis是一个很好的Cache工具,当然了还有Memcached,这里只讲Redis.在我们的电 ...

  8. 在WP8上搭建cocos2d-x开发环境

    在WP8上搭建cocos2d-x开发环境 转自:https://github.com/koowolf/cocos-docs/blob/master/manual/framework/native/in ...

  9. 如何在Windows上搭建Android开发环境

    Android开发越来越火,许多小伙伴们纷纷学习Android开发,学习Android开发首要任务是搭建Android开发环境,由于大家 主要实在Windows 上开发Android,下面就详细给大家 ...

随机推荐

  1. HyperLedger/Fabric JAVA-SDK with 1.1

    HyperLedger/Fabric JAVA-SDK with 1.1 该项目可直接在github上访问. 该项目介绍如何使用fabric-sdk-java框架,基于fabric-sdk-java ...

  2. 1065 A+B and C

    同样是一题会产生溢出的题,不同的是这个用大数类很麻烦,因为有负数的可能性 不妨利用溢出的特性来解题:两个整数和为负数 或者 两个负数和为正数,那么就溢出了. #include<bits/stdc ...

  3. 团队作业week9

    1. Bug bash ▪ How many bugs is found in your bug bash? 2. Write a blog to talk about your scenario t ...

  4. 《Linux内核分析与实现》 第四周 读书笔记

    第五章 系统调用 20135307 张嘉琪 5.1 与内核通信 系统调用在用户空间进程和硬件设备之间添加了一个中间层,该层主要作用有三个: 它为用户空间提供了一种硬件的抽象接口 系统调用保证了系统的稳 ...

  5. jvm垃圾回收机制和常见算法

    这是朋友给的面试题里边的,具体地址已经找不到,只能对原作者说声抱歉了: 理论上来讲sun公司只定义了垃圾回收机制规则,而步局限于其实现算法,因此不同厂商生产的虚拟机采用的算法也不尽相同. GC(Gar ...

  6. ELK Stack (2) —— ELK + Redis收集Nginx日志

    ELK Stack (2) -- ELK + Redis收集Nginx日志 摘要 使用Elasticsearch.Logstash.Kibana与Redis(作为缓冲区)对Nginx日志进行收集 版本 ...

  7. week5-Internetwork Layer

    Technology:Internets and Packets course Layer 2 : Internet Protocol The InterNetwork Internetwork La ...

  8. 圆桌的项目Alpha冲刺——测试

    测试工作安排 作为一个测试计划来讲,核心的三个要素是时间,资源,范围.时间就是什么时候做以及要花多久做,资源就是你要调用的人力.机器等资源,范围是你要测试的东西以及测试重点. 时间:每天完成相应的模块 ...

  9. final阶段140字评论

    按课堂顺序 1约跑APP ,无论从页面还是从功能来看完整度都很高了.演示也用了能展示的方式.多些趣味性就更赞了. 2礼物挑选小工具,做了能在规定时间内的功能.也算是对礼物固话的一个成本最低的回应. 3 ...

  10. HDU 2097 Sky数

    http://acm.hdu.edu.cn/showproblem.php?pid=2097 Problem Description Sky从小喜欢奇特的东西,而且天生对数字特别敏感,一次偶然的机会, ...