编辑:这个问题是关于如何为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呢?我该怎么做?这里似乎有很多关于它的问题,但没有人从根本上解释它。。。
提前谢谢
2条答案
按热度按时间nhjlsmyf1#
当你指的是本地的时候,你下载了什么版本的spark,从哪里下载的?
通常,当我在笔记本电脑中配置spark时,我只运行下面的命令来运行spark pi示例
其中spark\u home是从spark网站提取tarball的文件夹。
v09wglhw2#
将笔记本导出为
.py
文件。您不需要指定
--class
对于python脚本。您不需要将python代码转换为java/scala。
一旦你有了
.py
文件,有名字,说test.py
,这样就行了