【发布时间】:2019-03-21 08:28:38
【问题描述】:
我有一个 PySpark 代码/应用程序。使用python interpreter 或spark-submit 运行它的最佳方式是什么(利用PySpark 的最大功能)?
SO 答案here 几乎相似,但没有详细解释。很想知道,为什么?
感谢任何帮助。提前致谢。
【问题讨论】:
标签: apache-spark pyspark
我有一个 PySpark 代码/应用程序。使用python interpreter 或spark-submit 运行它的最佳方式是什么(利用PySpark 的最大功能)?
SO 答案here 几乎相似,但没有详细解释。很想知道,为什么?
感谢任何帮助。提前致谢。
【问题讨论】:
标签: apache-spark pyspark
我假设当你说 python 解释器时你指的是 pyspark shell。
您可以使用 pySpark 解释器、使用 Spark-submit 甚至使用多个可用的笔记本(Jupyter/Zeppelin)以两种方式运行您的 Spark 代码。
通常,当我们为了理解或探索目的而学习或做一些非常基本的操作时,我们会使用 pySpark 解释器。
这通常在你用 pySpark 编写整个应用程序并打包成 py 文件时使用,这样你就可以将整个代码提交到 Spark 集群执行。
在这里稍作类比可能会有所帮助。让我们以 Unix shell 命令为例。我们可以直接在命令提示符下执行 shell 命令,也可以创建 shell 脚本 (.sh) 来立即执行 bundle 指令。同样,您可以想到 pyspark 解释器和 spark-submit 实用程序,在 pySpark 解释器中您可以执行单个命令。但是,您可以将 spark 应用程序打包成 py 文件并使用 spark-submit 实用程序执行。
希望这会有所帮助。
问候,
尼拉杰
【讨论】:
在 pyspark shell 上运行您的作业将始终处于客户端模式。与使用 spark-submit 一样,您可以在任一模式下执行它。 IE。客户端或集群
【讨论】: