pyspark提交集群任務


1.打包python環境

建議使用conda

conda克隆環境

conda create -n prod_env --clone base

進入conda的miniconda3/envs

# 打包python環境

zip -r prod_env.zip  prod_env

  

 

2.提交任務

sh腳本

 

export PYSPARK_DRIVER_PYTHON=xxxx/envs/prod_env/bin/python3
export PYSPARK_PYTHON=./ENV/prod_env/bin/python3
spark-submit \
--master yarn \
--deploy-mode client \
--archives prod_env.zip#ENV \  #這里是注釋 會上傳本地的prod_env.zip到hdfs上,作為緩存,運行時會解壓到ENV目錄,程序結束后自動刪除; 如果python的庫變動不大,可以提前做好zip包上傳到hdfs上,然后指定hdfs:///your-path
--conf spark.driver.host=ip地址 \  # 此處是避免集群與client通信失敗,默認綁定的是主機名
hello.py

  

hello.py

from pyspark import SparkConf
from pyspark.sql import SparkSession

print("==========app start=========")
spark = SparkSession.builder.enableHiveSupport().getOrCreate()
df = spark.sql('show databases')
df.show()
print("==========app stop=========")
spark.stop()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM