PySpark安装+Jupyter Notebook配置(Ubuntu 18.06)
学校一门Big Data Computing
需要学习Spark in Python。
这篇文章记录一下安装PySpark和Jupyter Notebook上运行Spark的步骤。
Prerequisite
我的系统是:Ubuntu 18.06 LTS
PySpark Installation Steps
1.去Spark downloads page.选择最新的Spark Release包(a prebuilt package for Hadoop), 然后直接下载。我现在的版本是Spark 2.3.1 (Jun 08 2018)。
- 去到下载文件夹,将文件移到home目录下并解压
$ cd Downloads $ mv spark-2.3.1-bin-hadoop2.7.tgz ~/ $ tar -zxf spark-2.3.1-bin-hadoop2.7.tgz
3.声明一下环境变量
$ sudo vim ~/.bashrc
在文件尾部添加
export SPARK_HOME=/home/usrname/spark-2.3.1-bin-hadoop2.7 export PATH=$PATH:/home/username/spark-2.3.1-bin-hadoop2.7/bin export PYTHONPATH=$SPARK_HOME/python:$SPARK_HOME/python/lib/py4j-0.10.4-src.zip:$PYTHONPATH export PATH=$SPARK_HOME/python:$PATH
重新运行一下刚刚修改的初始化文件
$ source ~/.bashrc
安装成功的话,输入pyspark
Welcome to ____ __ / __/__ ___ _____/ /__ _\ \/ _ \/ _ `/ __/ '_/ /__ / .__/\_,_/_/ /_/\_\ version 2.3.1 /_/ Using Python version 2.7.15rc1 (default, Apr 15 2018 21:51:34) SparkSession available as 'spark'.
我看到StackOverflow上面说,现在也可以直接运行
pip install pystark
来安装,但是貌似没有特别好去配置你的环境变量.我的同学是用PyPI
方法装的,现在开学第一周,也没瞧出什么区别,问了TA跟我说只要不影响你写project,什么安装方法都行。(吐槽一下:这什么鬼回答....)
PySpark in Jupyter
在Jupyter Notebook里运行PySpark有两种方法:
- 配置PySpark driver,当运行
pyspark
命令就直接自动打开一个Jupyter Notebook - 正常启动Jupyter Notebook,然后用findSpark的package(我选了这种)
方法一:配置PySpark driver
去~/.bashrc
文件最后,添加配置PySpark driver的环境变量
export PYSPARK_DRIVER_PYTHON=jupyter export PYSPARK_DRIVER_PYTHON_OPTS='notebook'
同样,运行一下刚刚修改的初始化文件
$ source ~/.bashrc
最后,重启terminal
$ pyspark
这个时候,就会自动打开Jupyter Notebook。
方法二:用findSpark包
安装findspark:
$ pip install findspark
启动jupyter notebook
$ jupyter notebook
Jupyter Notebook运行效果
附上代码,大家运行感受一下:
#方法2需要复制这三行 import findspark findspark.init() import pyspark #方法1直接从这里开始复制 import random sc = pyspark.SparkContext(appName="Pi") num_samples = 100000000 def inside(p): x, y = random.random(), random.random() return x*x + y*y < 1 count = sc.parallelize(range(0, num_samples)).filter(inside).count() pi = 4 * count / num_samples print(pi) sc.stop()
Output:
实测,Python3的运行速度会比Python2的快很多,我不知道为什么我们TA跟我说用“Python 2 is better。”
常见问题(不断更新)
1.Python使用spark时出現版本不同的错误
import os #for python 3 os.environ["PYSPARK_PYTHON"]="/usr/bin/python3" #for python 2 os.environ["PYSPARK_PYTHON"]="/usr/bin/python"
我的电脑上的python的路径是/usr/bin/python
,你可以运行where python
check一下你的Python2的安装路径
参考链接
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Sqoop安装
Sqoop是Hadoop生态里,实现Hive、Hbase等大数据数据库与MySQL、Oracle导入导出的工具。 其实就是包含两部分功能:(1)HDFS的读写能力(2)加载JDBC。 这篇文章记录了配置sqoop的步骤。在实验过程中,遇到了一些ERROR,反复百度也没有找到解决方法。最后,把sqoop安装文件夹删除,wget原始文件,重头配置了一遍,一切都OK了。还是“重装”最好用。 一、下载sqoop 1.4.7 如图,下载地址很好找。本文还是用sqoop1。 下载页面下有两个链接,使用sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz,包含hadoop支持。不要用sqoop-1.4.7.tar.gz。 二、下载mysql-connector-java 到mysql官网查找mysql-connector/j,下载mysql服务器对应版本5.1.x,platform independent版。 解压之后,拷贝一下两个文件到sqoop安装目录lib. 三、修改配置 添加环境变量 export SQOOP_HOME="/opt/sqoop" export PATH=$...
- 下一篇
下一代智能数据工厂,阿里云发布全新DataWorks
大数据的开发能力已经成为企业的核心竞争力之一, 企业对数据资产的管理、加工、利用的诉求也越来越强烈。 9月5日,阿里云发布了DataWorks V2版本, 可提升数据开发的效率并简化数据操作,为企业提供了安全可靠的一站式大数据智能云研发平台。 众所周知,企业在构建自有大数据体系开展研发工作时,通常面临着诸多难题,例如技术栈臃肿导致上手门槛高、系统维护成本高等问题,且数据质量难以保证。此次发布的阿里云DataWorks V2版是全球唯一支持在web页面上即可完成数据研发全流程的大数据开发平台,可以有效帮助企业规避上述问题。 据介绍,阿里巴巴集团拥有完善的大数据计算基础能力,如离线计算引擎MaxCompute、流计算引擎Flink以及机器学习PAI平台。而DataWorks则是对上述基础能力整体进行了封装,并承担了大数据相关的技术流程与管理
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS7设置SWAP分区,小内存服务器的救世主
- Docker快速安装Oracle11G,搭建oracle11g学习环境