Ubuntu 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了。
转自:http://blog.csdn.net/u010171031/article/details/51849562
Ubuntu Spark 环境搭建(转)的更多相关文章
- 分布式计算框架-Spark(spark环境搭建、生态环境、运行架构)
Spark涉及的几个概念:RDD:Resilient Distributed Dataset(弹性分布数据集).DAG:Direct Acyclic Graph(有向无环图).SparkContext ...
- Hive On Spark环境搭建
Spark源码编译与环境搭建 Note that you must have a version of Spark which does not include the Hive jars; Spar ...
- win10子系统linux.ubuntu开发环境搭建
移步新博客... win10子系统linux.ubuntu开发环境搭建
- Ubuntu Touch环境搭建
最近搞了一下Nexus 5的MultiRom Manger,体验了一把Ubuntu Touch和Android L,总体感觉还不错,不过Android L的NFC驱动还有问题,Ubuntu Touch ...
- Ubuntu 开发环境搭建教程
Ubuntu 开发环境搭建教程 本文原始地址:https://sitoi.cn/posts/18425.html 更新 sudo apt upgrade sudo apt update 生成本机密钥 ...
- Spark学习进度-Spark环境搭建&Spark shell
Spark环境搭建 下载包 所需Spark包:我选择的是2.2.0的对应Hadoop2.7版本的,下载地址:https://archive.apache.org/dist/spark/spark-2. ...
- 学习Spark——环境搭建(Mac版)
大数据情结 还记得上次跳槽期间,与很多猎头都有聊过,其中有一个猎头告诉我,整个IT跳槽都比较频繁,但是相对来说,做大数据的比较"懒"一些,不太愿意动.后来在一篇文中中也证实了这一观 ...
- Spark环境搭建(上)——基础环境搭建
Spark摘说 Spark的环境搭建涉及三个部分,一是linux系统基础环境搭建,二是Hadoop集群安装,三是Spark集群安装.在这里,主要介绍Spark在Centos系统上的准备工作--linu ...
- Ubuntu开发环境搭建
linux开发不得不用虚拟机,为了节省系统资源.决定采用Ubuntu Server逐步搭建出具有图形界面的开发环境. ubuntu server 安装英文版 安装选择选generic,不要LVM选项. ...
随机推荐
- Django中的分页,cookies与session
cookie Cookie的由来 大家都知道HTTP协议是无状态的. 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不 ...
- 在Django中运行脚本文件以及打印出SQL语句。
Django终端打印SQL语句 在Django项目的settings.py文件中,在最后复制粘贴如下代码: LOGGING = { 'version': 1, 'disable_existing_lo ...
- 「2017 山东一轮集训 Day4」棋盘(费用流)
棋盘模型 + 动态加边 #include<cstdio> #include<algorithm> #include<iostream> #include<cs ...
- truncate(can)
1. 如果给了参数, 从头截取到参数位置 2. 如果不给参数, 从头截取到光标 f = open("司马光砸缸", mode="r+", encoding=&q ...
- 将浏览器的内容复制到Linux的文件里面
直接使用ctrl +c 复制的内容 用ctr +V贴入Linux系统文件的话,格式是乱的 可以使用EOF的方式 [root@centos7 ~]# cat <<EOF >tttt. ...
- 2. 修改jsp需要重启tomcat的问题
- Linux 设置IP地址,并能连接外网
1,如果是 centos6,请修改 vi /etc/sysconfig/network-scripts/ifcfg-eth0 2,如果是 centos7,请修改 => vi /etc/sysc ...
- leetcode1015
class Solution(object): def smallestRepunitDivByK(self, K: int) -> int: if K % 2 == 0 or K % 5 == ...
- go遍历某个文件夹
//遍历文件夹 dir, err := ioutil.ReadDir("./upload_tmp")for _,file := range dir{ logs.Debug(file ...
- APP-7-百度地图移动轨迹
1.代码部分 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <me ...