如何在 PySpark 中运行脚本

问题描述 投票:0回答:7

我正在尝试在 pyspark 环境中运行脚本,但到目前为止我还无法做到。

如何在 pyspark 中运行类似

python script.py
的脚本?

apache-spark pyspark
7个回答
57
投票

你可以这样做:

./bin/spark-submit mypythonfile.py

从 Spark 2.0 开始,不支持通过

pyspark
运行 python 应用程序。


33
投票

pyspark 2.0及更高版本执行环境变量

PYTHONSTARTUP
中的脚本文件,因此可以运行:

PYTHONSTARTUP=code.py pyspark

spark-submit
答案相比,这对于在使用交互式 pyspark shell 之前运行初始化代码很有用。


21
投票

只要

spark-submit mypythonfile.py
就足够了。


15
投票

您可以执行“script.py”如下

pyspark < script.py

# if you want to run pyspark in yarn cluster
pyspark --master yarn < script.py

3
投票

现有答案是正确的(即使用

spark-submit
),但我们中的一些人可能只想像 pyspark 中那样开始使用 SparkSession 对象。

因此在首先运行的 pySpark 脚本中添加:

from pyspark.sql import SparkSession
spark = SparkSession.builder \
    .master('yarn') \
    .appName('pythonSpark') \
    .enableHiveSupport()
    .getOrCreate()

然后使用

spark.conf.set('conf_name', 'conf_value')
设置任何配置,如执行器核心、内存等。


2
投票

Spark环境提供了执行应用程序文件的命令,无论是Scala还是Java(需要Jar格式)、Python和R编程文件。 命令是,

$ spark-submit --master <url> <SCRIPTNAME>.py
.

我在Windows 64位架构系统中使用JDK 1.8版本运行spark。

P.S 找到我的终端窗口的屏幕截图。 代码片段


0
投票

如果将 SPARK_HOME 环境变量设置为 C:\Spark\spark-3.5.3-bin-hadoop3 并将路径 %SPARK_HOME% in 添加到系统的 PATH 环境变量中,则可以使用 spark-submit mypythonfile.py. 运行 Python 脚本,否则您应该使用 ./bin/spark-submit

注:

pyspark < script.py approach is no longer supported for running Python applications with Apache Spark since version 2.0. You'll encounter an error message like this:

截至目前,不支持通过“pyspark”运行Python应用程序 火花2.0。使用 ./bin/spark-submit

© www.soinside.com 2019 - 2024. All rights reserved.