您应该如何在sparkemr集群上运行jupyter笔记本

k5hmc34c  于 2021-05-27  发布在  Spark
关注(0)|答案(2)|浏览(442)

编辑:这个问题是关于如何为python/jupyetr笔记本文件定义参数,以便在emr amazon spark集群上提交spark。。。
前:我很抱歉我的愚蠢的问题,但我是相当新手,我被困在这个问题上的几天,似乎没有一个好的指南在网上。我正在学习udacity spark课程。我已经在amazonaws(emr)上创建了sparkYarn集群,有一个主节点和三个从节点。我已经在上面创建了一个jupyter笔记本(并且能够使用pyspark内核运行和查看输出)。我已经使用putty连接到集群(我猜是连接到主节点),我已经将jupyter笔记本下载到本地机器。然而,当我尝试运行它时,我总是被许多类型的错误所困扰。目前,我运行以下命令:

/usr/bin/spark-submit --class "org.apache.spark.examples.SparkPi" --master yarn --deploy-mode cluster ./my-test-emr.ipynb 1>output-my-test-emr.log 2>error-my-test-emr.log
aws s3 cp ./error-my-test-emr.log s3://aws-emr-resources-750982214328-us-east-2/notebooks/e-8TP55R4K894W1BFRTNHUGJ90N/error-my-test-emr.log

我公开了错误文件和jupyter笔记本,以便您可以看到它们(链接)。我真的怀疑--class参数(我几乎猜到了,我读过关于它的文章作为解决问题的一个选项,但没有给出进一步的信息),有人能给我解释一下它是什么吗?为什么我们需要它?我怎样才能找出/设置真正的值呢?如果有人愿意的话,那么进一步解释一下jar会很有帮助——为什么我要把python程序转换成java呢?我该怎么做?这里似乎有很多关于它的问题,但没有人从根本上解释它。。。
提前谢谢

nhjlsmyf

nhjlsmyf1#

当你指的是本地的时候,你下载了什么版本的spark,从哪里下载的?
通常,当我在笔记本电脑中配置spark时,我只运行下面的命令来运行spark pi示例

spark-submit --class org.apache.spark.examples.SparkPi --master yarn \
--deploy-mode client SPARK_HOME/lib/spark-examples.jar 10

其中spark\u home是从spark网站提取tarball的文件夹。

v09wglhw

v09wglhw2#

将笔记本导出为 .py 文件。
您不需要指定 --class 对于python脚本。
您不需要将python代码转换为java/scala。
一旦你有了 .py 文件,有名字,说 test.py ,这样就行了

spark-submit --master yarn --deploy-mode cluster ./test.py

相关问题