在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. 七个要素帮你打造现象级手游!优化程度堪比《QQ飞车》

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由WeTest质量开放平台团队发表于云+社区专栏 作者:申江涛,腾讯互娱客户端工程师 商业转载请联系腾讯WeTest获得授权,非商业转载 ...

  2. CocoStuff—基于Deeplab训练数据的标定工具【二、用已提供的标注数据跑通项目】

    一.说明 本文为系列博客第二篇,主要讲述笔者在使用该团队提供已经标注好的COCO数据集进行训练的过程. 由于在windows中编译Caffe和Deeplab特别的麻烦,笔者并没有去探索,后续可能会去尝 ...

  3. 冲刺Two之站立会议8

    今天对软件进行了用户试用,找了一些同学让他们试用软件之后对软件给出了建议,这样我们可以在一定程度上对它进行进一步地优化.

  4. Java的起源和发展

    程序设计语言的发展             第一代语言:机器语言   0011 1100 ……             第二代语言:汇编语言   ADD 12,0x13              第三 ...

  5. BaseServlet 继承 httpServlet

    BaseServlet   核心 package cn.core; import java.io.IOException; import java.lang.reflect.Method; impor ...

  6. spring boot 添加整合ssl使得http变成https方法

    1. https出现的背景:(1)都知道http传输协议是裸漏的,明文传输的,极易被黑客拦截,因此,(2)人们想出的使用加密,也就是 对称加密 例如aes,不过这个由于因为对称加密需要每个客户端和服务 ...

  7. ElasticSearch 2 (33) - 信息聚合系列之聚合过滤

    ElasticSearch 2 (33) - 信息聚合系列之聚合过滤 摘要 聚合范围限定还有一个自然的扩展就是过滤.因为聚合是在查询结果范围内操作的,任何可以适用于查询的过滤器也可以应用在聚合上. 版 ...

  8. Android TextView中图文混排设置行间距导致高度不一致问题解决

    最近项目中需要实现一个评论带表情的功能,刚开始一切顺利,非常easy,突然有一天发现文字跟表情混排的时候,TextView中图文高度不一致,excuse...什么鬼,之前明明测试过图文混排,不存在这个 ...

  9. [转帖]在VMware ESXi服务器上配置NAT上网 需要学习一下。

    http://blog.51cto.com/boytnt/1292487 在使用VMware workstation的时候,我们经常以NAT的方式配置虚拟机的网络,与桥接方式相比,这样配置可以让虚拟机 ...

  10. iptables之四表五链

    iptables可谓是SA的看家本领,需要着重掌握.随着云计算的发展和普及,很多云厂商都提供类似安全组产品来修改机器防火墙. iptables概念 iptables只是Linux防火墙的管理工具而已. ...