**
在Ipython Notebook界面运行pyspark
**
1)默认本机运行spark
PYSPARK_DRIVER_PYTHON=ipython PYSPARK_DRIVER_PYTHON_OPTS="notebook" pyspark
**2)使用Ipython Notebook在Hadoop YARN-client模式运行
启动Hadoop cluster**
start_all.sh
PYSPARK_DRIVER_PYTHON=ipython PYSPARK_DRIVER_PYTHON_OPTS="notebook" HADOOP_CONF_IR=/usr/local/hadoop/etc/hadoop MASTER=yarn-client pyspark
已经在Hadoop YARN 上运行了pyspark,所以可以在Hadoop Web界面看到这个应用程序
http://localhost:8088/
3)使用Ipython Notebook在Spark Stand Alone模式运行启动spark
/usr/local/spark/sbin/start-all.sh
PYSPARK_DRIVER_PYTHON=ipython PYSPARK_DRIVER_PYTHON_OPTS="notebook" MASTER=spark://master:7077 pyspark --num-executors 1 --total-executor-cores 2 --executor-memory 512m
查看Spark Standalone Web UI界面 ,就可以看到当前正在运行的应用程序PySparkShell
http://master:8080/
使用spark-submit执行WordCount程序
spark-submit常用选项
–master MASSTER-URL 可设置Spark在什么环境运行
–driver-memory MEM driver 程序所使用的内存
–executor-memory MEM executor 程序使用的内存
–name NAME 要使用的application名称,此名称后续会显示在Hadoop 或Spark Web UI界面
Python 程序文件名 要运行的Python程序
–master MASTER_URL 选项可设置Spark在什么环境中运行
Local 在本地运行,只有一个线程
local[k] 在本地运行,使用K个线程
local[*] 在本地运行,Spark会自动尽量利用本地计算机上的多核CPU
spark://HOST:PORT 在Spark Standalone Cluster 上运行,例如:spark://master:7077 (默认在port是7077)
mesos://HOST:PORT 在Mesos cluster 上运行(默认port是5050)
YARN 在YARN Clinent上运行,必须要设置HADOOP_CONF_DIR 或YARN_CONF_DIR环境变量
1)在local上运行WordCount
spark-submit --driver-memory 2g --master local[4] WordCount.py
2)在Hadoop YARN-client上运行WordCount
HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop spark-submit --driver-memory 512m --executor-cores 2 --master yarn --deploy-mode client WordCount.py
HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop: 环境变量
–driver-memory 512m 设置driver程序使用512MB的内存
–executor-cores 2 设置可执行的CUP
–master yarn 在Hadoop YARN上运行
–deploy-mode client 部署的方式为client
3)在Spark Standalone Cluster 上运行WordCount程序
spark-submit –master spark://master:7077 –deploy-mode client –executor-memory 500M –deploy-mode client –total-executor-cores 2 WordCount.py
–master spark://master:7077 在Spark Standalone Cluster 运行
–deploy-mode client 部署模式为client
–executor-memory 500M 设置driver程序使用500M的内存
–total-executor-cores 2 设置运行的CPU类
-class RunWordCount 设置main类