• 【原创】搭建spark环境


    在安装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了。

  • 相关阅读:
    深入理解DOM事件类型系列第四篇——剪贴板事件
    深入理解DOM事件机制系列第四篇——事件模拟
    利用select实现年月日三级联动的日期选择效果
    深入理解表单脚本系列第四篇——选择框脚本
    存储过程返回布尔值以及C#相关处理
    Type 'Insus.NET.PictureObject' in Assembly 'App_Code, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' is not marked as serializable.
    打开Windows10网络发现或是文件打印共享
    反射(Reflection)的SetValue遇上DBNULL转换为string
    MS SQL中使用UPDATE ... INNER JOIN ...
    Visual Studio 2015正式企业(Enterprise)版
  • 原文地址:https://www.cnblogs.com/liyangqiu/p/6950189.html
Copyright © 2020-2023  润新知