简述

    Spark是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。由于spark带有Python的API,而本人比较专于Python语言。因此在此分享一下我在配置spark的方法以及心得。

配置过程

步骤一:

下载scala压缩包,进入链接http://www.scala-lang.org/,点击download下载scala,并解压到当前目录下。

下载jdk压缩包,进入链接http://www.oracle.com/technetwork/java/javase/downloads/index.html,下载最新版jdk,若为64位系统请下载jdk-8u91-linux-x64.tar.gz(本人下载版本为8u91,系统为64位),32位系统下载jdk-8u91-linux-i586.tar.gz,下载完成后解压到当前目录下。

下载spark压缩包,进入链接https://spark.apache.org/downloads.html,选择当前最新版本人为1.6.2,点击下载。

步骤二:

  1.打开命令行窗口。

  2.执行命令    sudo -i

  3.进入到解压文件所在目录

  4.将j解压文件转移到opt目录下

    执行 mv jdk1.8.0_91 /opt/jdk1.8.0_91

    执行 mv scala-2.11.8  /opt/scala-2.11.8

    执行 mv spark-1.6.2-bin-hadoop2.6  /opt/spark-hadoop

步骤三:

配置环境变量,编辑/etc/profile,执行以下命令

    sudo gedit /etc/profile

在文件最下方增加(注意版本):

#Seeting JDK JDK环境变量

export JAVA_HOME=/opt/jdk1.8.0_91

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

export PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:$PATH

#Seeting Scala Scala环境变量

export SCALA_HOME=/opt/scala-2.11.8

export PATH=${SCALA_HOME}/bin:$PATH

#setting Spark Spark环境变量

export SPARK_HOME=/opt/spark-hadoop/

#PythonPath 将Spark中的pySpark模块增加的Python环境中

export PYTHONPATH=/opt/spark-hadoop/python

保存文件, 重启电脑,使/etc/profile永久生效,临时生效,打开命令窗口,执行 source /etc/profile  在当前窗口生效

步骤四:

测试安装结果

打开命令窗口,切换到Spark根目录

执行 ./bin/spark-shell,打开Scala到Spark的连接窗口

  执行结果如上,则无误

执行./bin/pyspark ,打开Python到Spark的连接窗口

则安装无误

  • Python安发Spark应用

    • 前面已设置PYTHONPATH,将pyspark加入到Python的搜寻路径中

    • 打开Spark安装目录(/opt/spark-hadoop),在/opt/spark-hadoop/Python/lib文件夹下解压py4j,并复至到/opt/spark-hadoop/Python目录下。

在pycharm中测试,出现如下红色字眼,则配置成功。

参考至:http://www.open-open.com/lib/view/open1432192407317.html

Linux下Spark框架配置(Python)的更多相关文章

  1. Linux(4)- centos7安装python3、Linux下安装、配置virtualenv、确保开发环境的一致性、虚拟环境之virtualenvwrapper、vim

    一.centos7安装python3 1.下载python3的源码包 下载地址:https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz cd ...

  2. linux下ejabberd框架搭建

    ejabberd为erlang的IM的开源框架,一直想找个时间研究研究: 1.下载Ejabberd安装包 wget http://www.process-one.net/downloads/ejabb ...

  3. Linux下git安装配置

    一.Linux下git安装配置 2013-07-28 20:32:10|  分类: 默认分类 |  标签:linux  git  server  |举报|字号 订阅     http://abomby ...

  4. Linux下安装和配置JDK与Tomcat(升级版)

    在这个版本 Linux下安装和配置JDK与Tomcat(入门版) 的基础上优化升级 1.下载相关软件 apache-tomcat-6.0.37.tar.gz jdk-6u25-linux-i586-r ...

  5. [Linux]Linux下安装和配置solr/tomcat/IK分词器 详细实例二.

    为了更好的排版, 所以将IK分词器的安装重启了一篇博文,  大家可以接上solr的安装一同查看.[Linux]Linux下安装和配置solr/tomcat/IK分词器 详细实例一: http://ww ...

  6. Linux下Redis服务器安装配置

    说明:操作系统:CentOS1.安装编译工具yum install wget  make gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel ...

  7. Linux下SVN服务器安装配置及客户端安装说明

    原文地址:http://wenku.baidu.com/link?url=h3dVAMx4azpOXEND5HQEE6nliE8-zc0GSQ03yv4cUs1vXMALXF64UsK7kT7kXm_ ...

  8. linux下通过acl配置灵活目录文件权限(可用于ftp,web服务器的用户权限控制)

    linux下通过acl配置灵活目录文件权限(可用于ftp,web服务器的用户权限控制) 发表于2012//07由feng linux 本身的ugo rwx的权限,对于精确的权限控制很是力不从心的,ac ...

  9. linux下golang的配置

    linux下golang的配置 之前开发golang一直在windows下,今天在linux下试了一下 ,遇到一些梗,比如go 找不到 sync包.花了一小时全部解决,把过程记录一下. 安装 go 我 ...

随机推荐

  1. mui 修改下拉刷新提示文字的显示位置

    第一种: .mui-bar-nav~.mui-content .mui-pull-top-pocket { top: 126px !important; } 第二种: .mui-pull-top-po ...

  2. css之选择器的认识

    css中有大量的选择器,主要用来精准的找到代码中的某一段或者某一个段落,并对其样式进行选择和改变. 首先介绍的第一个选择器是: 1,基本选择器: 直接找到标签对其进行样式修正,不论标签藏多深,或者数量 ...

  3. PHP RSA加签的实现过程

    一.得到私钥文件mycert.key 2.从pfx提取密钥信息,并转换为key格式(pfx使用pkcs12模式补足) (1)提取密钥对 openssl pkcs12 -in 1.pfx -nocert ...

  4. Unit01: JDBC原理 、 JDBC基础编程

    Unit01: JDBC原理 . JDBC基础编程 这个文件里面有两块内容: 1.用比较麻烦的方式连接数据库,test1(),test4() 2.创建DBTool,测试DBTool连接数据库 ,tes ...

  5. 理解加密算法——创建CA机构,签发证书并开始TLS通信

    1 不安全的TCP通信 普通的TCP通信数据是明文传输的,所以存在数据泄露和被篡改的风险,我们可以写一段测试代码试验一下,NODE.JS代码: TCP Server: const net=requir ...

  6. 阿里云SLB快速切换至https

    域名caifuxiang.com是直接解析到阿里云SLB的,运行了好几年的http服务,今天通过修改配置快速切换到了https,莫名就感觉更上档次了! 首先,SSL证书 服务可以提供免费单域名证书 w ...

  7. Jenkins的项目管理

    新建Item 使用Jenkins最重要的是能够创建一些工作流,除了部署,还能做很多流程上的事情.同样,一条条项目建起来需要做一定的管理,在Jenkins首页Jenkins->新建可以按自己的需要 ...

  8. HTTP Get与Post请求

    HTTP定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE.URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP ...

  9. Type-C潮流下 如何衡量一款数据线好坏?

    不少新一代手机开始支持Type-C接口,比如乐视.PPTV.努比亚Z11.小米4C和三星Note7等.和普通Micro USB相比,Type-C数据线因为正反插的关系对品质要求更高,不然随时有短路烧毁 ...

  10. ALSA声卡10_从零编写之数据传输_学习笔记

    1.引言 (1)应用程序使用声卡的时候,数据流程是:应用程序把数据发送给驱动,驱动把数据发送给硬件声卡,声卡把数据转换成声音数据播放出去. (2)可以使用两种方式发送数据 第一种:app发数据,等驱动 ...