spark提交python脚本并传参

 

 

  • 脚本命令 这里第一个参数是python脚本名称,第二个参数是json
spark-submit  --master yarn --deploy-mode cluster --num-executors 20 --executor-memory 8g --executor-cores 2 --conf spark.yarn.executor.memoryoverhead=4096 $1.py $2


 

  • python 脚本 此脚本获取json传参并调用spark集群访问hive
from pyspark import SparkContext,SparkConf
import sys
conf = SparkConf().setAppName("lx1")
sc = SparkContext(conf=conf)

from pyspark.sql import HiveContext
import pandas as pd
sqlContext = HiveContext(sc)
import sys
print ('*********************************************')
#print (sys.argv[1])
import json
dt =sys.argv[1]+'}}'
print(dt)
#json.loads(dt)

data = sqlContext.sql("select area_no,ord from bcc.area")
print(data.columns)
print ('*********************************************')
#print ('jb', sys.argv[0])
for i in range(1, len(sys.argv)):
    print ("cs", i, sys.argv[i])
print('**********************************************')

data.show()

 

你可能感兴趣的:(java,Python)