簡體   English   中英

spark-submit 與特定的 python 庫

[英]spark-submit with specific python librairies

我有一個依賴於第三方庫的 pyspark 代碼。 我想在 mesos 下運行的集群上執行此代碼。

我的 python 環境確實有一個壓縮版本,它位於我的集群可訪問的 http 服務器上。

我在指定我的 spark-submit 查詢以使用此環境時遇到了一些麻煩。 我使用--archives加載 zip 文件和--conf 'spark.pyspark.driver.python=path/to/my/env/bin/python'加上--conf 'spark.pyspark.python=path/to/my/env/bin/python'來指定事物。

這似乎不起作用......我做錯了什么嗎? 你對如何做到這一點有任何想法嗎?

干杯,亞歷克斯

要將您的 zip 文件夾提交到 python spark,您需要使用以下命令發送文件:

spark-submit --py-files your_zip your_code.py

在您的代碼中使用它時,您必須使用以下語句:

sc.addPyFile("your_zip")
import your_zip

希望這會有所幫助!!

如果您有依賴性,可能對某些人有所幫助。

我找到了一個關於如何將虛擬環境正確加載到 master 和所有 slave workers 的解決方案:

virtualenv venv --relocatable
cd venv 
zip -qr ../venv.zip *

PYSPARK_PYTHON=./SP/bin/python spark-submit --master yarn --deploy-mode cluster --conf spark.yarn.appMasterEnv.PYSPARK_PYTHON=./SP/bin/python --driver-memory 4G --archives venv.zip#SP filename.py

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM