如何在Spark slave上运行的执行程序上设置python优化模式(-O
param for interpreter)?
(显然,执行者的Python解释器是使用此行启动的
val pb = new ProcessBuilder(Arrays.asList(pythonExec, "-m", "pyspark.worker"))
org/apache/spark/api/python/PythonWorkerFactory.scala
中的。
但我没有看到设置-O
标志的方法。)
答案 0 :(得分:2)
Python可执行文件由PYSPARK_DRIVER_PYTHON
或PYSPARK_PYTHON
环境变量设置(后者为执行程序和驱动程序设置它)。您可以创建一个运行python -O
的包装器:
#!/bin/sh
exec python -O "$@"
通过设置PYSPARK_PYTHON=/home/daniel/python_opt.sh
。
答案 1 :(得分:-1)
您无法在Spark工作进程上设置-O
。无论如何,这个选项大多没用。 (见What is the use of Python's basic optimizations mode? (python -O)。)