在安装Spark之前,我们需要在自己的系统当中先安装上jdk和scala 
可以去相应的官网上下载: 
JDK:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 
scala:http://www.scala-lang.org/download/ 
下载完成后可以得到这样两个压缩包 

安装JDK

首先我们先来安装jdk,

sudo mkdir /usr/lib/jdk
  • 1

用这条语句来创建jdk的安装目录,这里我们计划装到/usr/lib/jdk目录下, 
然后切换到jdk压缩包所在的目录,比如这里我们把包放在了~/Desktop目录下

cd ~/Desktop
  • 1

执行解压缩命令,把压缩包解压缩到/usr/lib/jdk目录下

sudo tar -zxvf jdk-8u91-linux-x64.tar.gz -C /usr/lib/jdk
  • 1

注意这里需要root权限。不然没有办法往/usr/lib/jdk目录中写数据 
然后我们需要配置PATH路径,让jdk命令在任何路径下都能够直接执行

sudo vim /etc/profile
  • 1

打开配置文件,有些教程会让你编辑自己目录下的~/.bashrc文件,.bashrc文件的改动只会对当前用户产生作用,而/etc/profile的改动在重启之后会对所有用户都起作用 
在配置文件的最后加上

export JAVA_HOME=/usr/lib/jdk/jdk1.8.0_91
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
  • 1
  • 2
  • 3
  • 4

JAVA_HOME的路径根据自己解压缩的目录来配置。 
然后推出vim,如果你不会用vim,可以在所有命令中出现vim的地方用gedit来代替,下面也是一样。

source /etc/profile
  • 1

当前终端重新载入/etc/profile配置文件,然后执行一下

java
  • 1

如果出现一大串东西,那么恭喜你你的jdk安装成功了,否则很有可能你的环境配置出了问题,请仔细检查。

安装scala

接着我们需要安装scala具体的安装过程和jdk很像, 
首先也是创建安装目录

sudo mkdir /usr/lib/scala
  • 1

然后是将压缩包解压缩

sudo tar -zxvf scala-2.11.8.tgz -C /usr/lib/scala
  • 1

最后打开/etc/profile,在最后添加配置

export SCALA_HOME=/usr/lib/scala/scala-2.11.8
export PATH=${SCALA_HOME}/bin:$PATH
  • 1
  • 2

退出后,进行source /etc/profile 
然后执行scala,出现如下界面说明安装成功 
 
可以在这里输入 
:quit 
退出scala

安装spark

安装完了上面这些之后我们需要安装今天的主角Spark了,首先去官网下载我们需要的包 
http://spark.apache.org/downloads.html 
这个是它的下载地址,需要注意的是,我们在Choose a package type:这里选择的是Pre-Build for Hadoop2.6 

然后点击下面的Download Spark链接开始下载。 
完成后会出现这个文件 
同样我们需要给spark一个安装目录

sudo mkdir /usr/lib/spark
  • 1

解压缩文件

sudo tar -zxvf spark-1.6.1-bin-hadoop2.6.tgz -C /usr/lib/spark
  • 1

在/etc/profile中配置

export SPARK_HOME=/usr/lib/spark/spark-1.6.1-bin-hadoop2.6
export PATH=${SPARK_HOME}/bin:$PATH
  • 1
  • 2

source /etc/profile 
之后,执行 
pyspark

出现这个就说明安装已经完成,你可以在这里输入相应的python代码来执行操作。

python中使用pyspark

当然了,我们在之后的开发过程中,不可能说只在这么一个解释器中开发,所以接下来我们要做的是让python能够加载spark的库。

所以我们需要把pyspark添加到python的寻找目录当中,同样我们需要编辑/etc/profile文件,在最后添上

export PYTHONPATH=/usr/lib/spark/spark-1.6.1-bin-hadoop2.6/python:/usr/bin/python
  • 1

这样就把spark目录下的python库添加到了python的找寻目录中

但是由于python需要去调用java的库所以在/usr/lib/spark/spark-1.6.1-bin-hadoop2.6/python路径下我们需要添加一个py4j的文件夹,这个文件可以在/usr/lib/spark/spark-1.6.1-bin-hadoop2.6/python/lib目录下找到,在这个目录下有一个py4j-0.9-src.zip的压缩包,把他解压缩放到 
/usr/lib/spark/spark-1.6.1-bin-hadoop2.6/python/目录下就可以了 

当然这个操作需要在root权限下进行

这个时候在任意目录下输入python 
 
然后在这里输入

import pyspark
  • 1

查看是否可以正确导入pyspark,如果没有出现任何提示,就说明pyspark能够正常导入。

这样就可以在任何地方编写.py文件,需要用到pyspark的地方用import导入即可。

pycharm导入pyspark

当然有些用户喜欢用pycharm来编写python,所以对于pycharm使用pyspark也做一下说明

首先我们需要点击右上角的下拉框,选择 Edit Configurations… 

然后在弹出的对话框中,点击Enviroment variables:右侧的编辑按钮 

点击加号添加两条新的数据, 
PYTHONPATH和 
SPARK_HOME 
数据内容和/etc/profile中对应的内容相同 
 
然后用下述代码测试

import pyspark

conf = pyspark.SparkConf().setAppName("sparkDemo").setMaster("local")
sc = pyspark.SparkContext(conf=conf)
  • 1
  • 2
  • 3
  • 4

出现
说明pycharm也能够正常载入pyspark了。

转自:http://blog.csdn.net/u010171031/article/details/51849562

Ubuntu Spark 环境搭建(转)的更多相关文章

  1. 分布式计算框架-Spark(spark环境搭建、生态环境、运行架构)

    Spark涉及的几个概念:RDD:Resilient Distributed Dataset(弹性分布数据集).DAG:Direct Acyclic Graph(有向无环图).SparkContext ...

  2. Hive On Spark环境搭建

    Spark源码编译与环境搭建 Note that you must have a version of Spark which does not include the Hive jars; Spar ...

  3. win10子系统linux.ubuntu开发环境搭建

    移步新博客... win10子系统linux.ubuntu开发环境搭建

  4. Ubuntu Touch环境搭建

    最近搞了一下Nexus 5的MultiRom Manger,体验了一把Ubuntu Touch和Android L,总体感觉还不错,不过Android L的NFC驱动还有问题,Ubuntu Touch ...

  5. Ubuntu 开发环境搭建教程

    Ubuntu 开发环境搭建教程 本文原始地址:https://sitoi.cn/posts/18425.html 更新 sudo apt upgrade sudo apt update 生成本机密钥 ...

  6. Spark学习进度-Spark环境搭建&Spark shell

    Spark环境搭建 下载包 所需Spark包:我选择的是2.2.0的对应Hadoop2.7版本的,下载地址:https://archive.apache.org/dist/spark/spark-2. ...

  7. 学习Spark——环境搭建(Mac版)

    大数据情结 还记得上次跳槽期间,与很多猎头都有聊过,其中有一个猎头告诉我,整个IT跳槽都比较频繁,但是相对来说,做大数据的比较"懒"一些,不太愿意动.后来在一篇文中中也证实了这一观 ...

  8. Spark环境搭建(上)——基础环境搭建

    Spark摘说 Spark的环境搭建涉及三个部分,一是linux系统基础环境搭建,二是Hadoop集群安装,三是Spark集群安装.在这里,主要介绍Spark在Centos系统上的准备工作--linu ...

  9. Ubuntu开发环境搭建

    linux开发不得不用虚拟机,为了节省系统资源.决定采用Ubuntu Server逐步搭建出具有图形界面的开发环境. ubuntu server 安装英文版 安装选择选generic,不要LVM选项. ...

随机推荐

  1. union与union all的用法给区别

    用法: 当我们需要把两个或多个sql联合起来查询就用到了union或者union all 区别: 这两者的区别就在于union会自动的把多个sql查出来重复的排除掉,而union all这是会全部显示 ...

  2. JavaScript之函数,词法分析,内置对象和方法

    函数 函数定义 JavaScript中的函数和Python中的非常类似,只是定义方式有点区别. // 普通函数定义 function f1() { console.log("Hello wo ...

  3. [SDOI2013]泉(容斥)

    /* 容斥加上哈希 首先我们可以2 ^ 6枚举相同情况, 然后对于这些确定的位置哈希一下统计方案数 这样我们就统计出了这些不同方案的情况, 然后容斥一下就好了 */ #include<cstdi ...

  4. Python ————反射机制

    python中的反射功能是由以下四个内置函数提供:hasattr.getattr.setattr.delattr,改四个函数分别用于对对象内部执行:检查是否含有某成员.获取成员.设置成员.删除成员. ...

  5. c# 枚举的定义,枚举的用法,获取枚举值

    1.定义枚举类型 public enum Test { 男 = , 女 = } 2.获取枚举值 public void EnumsAction() { var s = Test.男;//男 var a ...

  6. mysql之完整性约束

    主要内容 not null 与 default unique primary auto_increment foreign key 约束条件作用:用于保证数据的完整性和一致性 主要分为 PRIMARY ...

  7. mysql中的sql_mode

    mysql数据库的中有一个环境变量sql_mode,定义了mysql应该支持的sql语法,数据校验等!我们可以通过以下方式查看当前数据库使用的sql_mode: mysql> select @@ ...

  8. gentoo rt-thread pkgs --update except Exception, e:

    使用 rt-thread pkgs --update 时候, 提示出错,信息如下: Traceback (most recent call last): File "/home/ptz/.e ...

  9. uva-519-拼图

    给你N*M个碎片,问能否用他们拼成一个矩形,矩形的边缘要全是F,除外界边缘的边要么是I,要么O,不能是F1.碎片会重复出现,所以同样的碎片在同一个位置,如果已经不能放,直接跳过就行2.矩形的边缘要全是 ...

  10. 二级VB备考中

    今天安装了一个VB软件,二级备考中,每天一套牌卷子. 在Html5中 align 与valign改变了属性 vertial-align  是垂直方向的改变 面对网站首页的建立需要首先画好一份区域设计图 ...