运行火花作业的常见方法似乎是使用火花提交,如下所示(source):
spark-submit --py-files pyfile.py,zipfile.zip main.py --arg1 val1
作为火花的新手,我想知道为什么相对于从python(example)运行第一个方法,它比第一个方法更受欢迎:
python pyfile-that-uses-pyspark.py
在搜索主题时,前一种方法会产生更多examples,但没有明确说明原因。实际上,这是另一个Stack Overflow question,其中一个答案(以下重复)明确告诉OP不要使用python方法,但没有给出原因。
不要将您的py文件运行为:python filename.py,而应使用:spark-submit filename.py
有人可以提供见解吗?
答案 0 :(得分:1)
@mint您的评论或多或少是正确的。
Spark的bin目录中的spark-submit脚本用于启动集群上的应用程序。它可以通过统一的界面使用Spark所有受支持的集群管理器,因此您无需特别为每个应用程序配置应用程序。
据我了解,使用subscriptionName : Sub1
instanceName : VM1
usageStart : 2020-01-27T00:00:00Z
usageEnd : 2020-01-27T23:59:59Z
pretaxCost : 3.194
Classification : ABC
Zone : 123
Field : qaz
Org : CAL
Owner : Bob@dev
subscriptionName : Sub1
instanceName : VM2
usageStart : 2020-01-27T00:00:00Z
usageEnd : 2020-01-27T23:59:59Z
pretaxCost : 2.1
Classification : ABC
Zone : 222
Field : BIZ
Org : NZ
Owner : John@dev
无法在集群上启动应用程序,或者这样做更加困难。