入门 - Spark, IPython notebook with pyspark

Posted

技术标签:

【中文标题】入门 - Spark, IPython notebook with pyspark【英文标题】:Getting started - Spark, IPython notebook with pyspark 【发布时间】:2015-10-23 15:24:20 【问题描述】:

我想了解如何设置一切以使 iPython 笔记本和 pyspark 正常工作。

我目前有一个 ec2 实例。

如果我错了,请告诉我,但我想我可以使用这个:

./spark-ec2 --key-pair=awskey --identity-file=awskey.pem --region=us-west-1 --zone=us-west-1a --spark-version=1.1.0 launch my-spark-cluster

(spark.apache.org)

或者这个:

aws emr create-cluster --name "Spark cluster" --release-label emr-4.1.0 --applications Name=Spark --ec2-attributes KeyName=myKey --instance-type m3.xlarge --instance-count 3 --use-default-roles

(http://docs.aws.amazon.com/)

这两者真的有很大区别吗?

要编写和执行我的脚本,我应该在主节点上,对吧?

那么,我用来运行 Spark 的 ec2 实例将不会被使用?

(我必须在主节点上安装 ipython notebook 吗?)

提前感谢您的帮助。

(我一直在寻找教程,但没有找到我想要的内容。

你知道好的吗?)

【问题讨论】:

【参考方案1】:

你提到的第一个教程是我迄今为止发现的最好的。我不确定您提到的两种方法之间的区别。

我使用./spark-ec2在EC2上成功构建了一个spark集群。让它与 IPython 一起工作需要一些额外的安装。

首先使用./spark-ec2 进程启动您的集群。我在以下方面取得了成功:

    在主节​​点和所有工作节点上安装 Anaconda 和 PY4J。 Anaconda 应该设置在路径的最前面(eg.PATH=/home/ec2-user/anaconda2/bin:$PATH)。

    接下来,ssh 到 master,然后$cd /root/spark 运行:

    MASTER=spark://<public DNS>:7077 PYSPARK_PYTHON=~/anaconda2/bin/python PYSPARK_DRIVER_PYTHON=ipython PYSPARK_DRIVER_PYTHON_OPTS='notebook  --ip="*"' ./bin/pyspark
    
    访问 :8888 以获得对笔记本的访问权限。如果您希望它是公开的,则在安全组中为 master 开放端口 8888。否则,创建一个 ssh 隧道。

【讨论】:

以上是关于入门 - Spark, IPython notebook with pyspark的主要内容,如果未能解决你的问题,请参考以下文章

无法为 pyspark OSX 启动 Jupyter Notebook:IPYTHON 和 IPYTHON_OPTS 在 Spark 2.0+ 中被删除

将本地 IPython 笔记本连接到气隙集群上的 Spark

python_配置

无法让 Spark 在 Windows 中的 IPython Notebook 上工作

IPython Notebook 运行python Spark程序

无法在 ipython 中正确创建 spark 上下文以链接到 MySQL - com.mysql.jdbc.Driver