Spark的jupyter notebook开发环境搭建及pyspark的使用

开启服务

启动Hadoop,Spark并开启jupyter notebook的远程服务:

[root@DW1 ~]# start-all.sh
# 我把spark的start-all.sh更名为start-spark-all.sh,不然有与hadoop重名的风险
[root@DW1 ~]# start-spark-all.sh
# root用户要加--allow-root
[root@DW1 ~]# jupyter notebook --allow-root

import pyspark

如果我们直接import pyspark,会提示无法找到对应的包,因为这个包在spark的目录下,不在sys.path里。
因此我们可以用sys.path.insert动态地加入spark包的位置(退出该脚本后就会失效,所以说是动态的),这样的好处是当我们的工程很大时,不用因为永久性地维护一个很大的目录而降低其他Python脚本的性能。
所以我们先新建一个Python3 Notebook,添加以下代码:

import os
import sys
SPARK_HOME = os.environ.get('SPARK_HOME')
sys.path.insert(0,os.path.join(SPARK_HOME, 'python'))
sys.path.insert(0,os.path.join(SPARK_HOME, 'python/lib/py4j-0.10.7-src.zip'))
# 输出pyspark的相关信息,没问题后可以注释这句
exec(open(os.path.join(SPARK_HOME, 'python/pyspark/shell.py')).read())

Welcome to
      ____              __
     / __/__  ___ _____/ /__
    _\ \/ _ \/ _ `/ __/  '_/
   /__ / .__/\_,_/_/ /_/\_\   version 2.4.3
      /_/

Using Python version 3.7.3 (default, Mar 27 2019 22:11:17)
SparkSession available as 'spark'.

这时看到相关的输入信息,就表示可以使用pyspark模块了。


你可能感兴趣的:(大数据)