初学者的问题,今天才开始学习Spark。
本教程首先指导我运行pyspark
,例如
./spark-2.3.1-bin-hadoop2.7/bin/pyspark
这将旋转一个外壳,并且神奇地给了我一个sc
和spark
实例。我可以使用它们来加载本地文件并执行简单的操作。
sc
是<SparkContext master=local[*] appName=PySparkShell>
我的问题是:该Shell连接到哪个Spark集群?
我的理解是,火花簇必须首先运行,然后才能与客户端连接,而python(通过pyspark)是客户端的一种语言。
我的目标是找出此Shell连接到的群集,因此我可以配置该群集以使其能够从S3加载文件。
谢谢。
答案 0 :(得分:1)
鉴于您提供的信息,这不可能说。
spark.master
中设置了spark-defaults.conf
,则为该值。local[*]
如有疑问,请检查Spark UI或spark.sparkContext.master
/ sc.master
。
答案 1 :(得分:0)
您已将主服务器设置为本地主机,这意味着一切都将在本地计算机上运行。
因此,如果要在群集上运行,则必须相应地设置群集并将master用作yarn-cluster。
此外,如果您可以尝试将master用作yarn-client,则意味着集群和交互式shell或执行是在同一节点上进行的。
默认情况下,交互式外壳程序在本地或yarn-client模式下运行。要检查集群详细信息,您可以查找spark配置文件。您可以尝试使用setMaster("yarn-cluster")
我不确定这是否可以在交互模式下工作。您还可以在进入交互式外壳程序时尝试另一种方法
pyspark --master yarn-cluster
我建议这两个选项,我不确定它们是否可以与交互式外壳一起使用。我将通过测试来更新您。