1.压缩工程文件
sudo zip -r 项目.zip.gz ./*
2.配置PYTHONPATH,指向该目录
3.工程下创建配置文件conf.py文件
AI_PLATFORM_SOURCE=r'/usr/项目.zip'
2.代码引用外部模块
#从conf引用模块路径
from conf import 项目路径
sys.path.append(项目路径)
from settings import 项目路径
引用压缩包的类
import_module = "类的工程路径.{0}".format(class_name)
module = importlib.import_module(import_module, BASE_DIR)
HandlerClass = getattr(module, class_name)
# handler = HandlerClass(json.dumps(params))
filename = DATA_DIR + 'feature_filter/' + 'feature_filter.json'
handler = HandlerClass(filename)
res = handler.execute(gai_ss.ss.sparkContext,gai_ss.ss )
4.执行程序
在项目子目录使用 zip -r gai_platform.zip * 进行打包
提交集群运行
bin/spark-submit --py-files 项目.zip 项目路径/demo.py --master yarn --deploy-mode cluster
bin/spark-submit --py-files 项目.zip 项目路径/demo.py --master yarn --deploy-mode client
spark-submit --py-files hdfs://localhost:8020/user/dp/data/项目.zip 项目路径/demo.py --master local
bin/spark-submit \
main.py
--py-files 将main.py所需要的模块包,py文件都打包在一起(打成[ *.zip *.egg(第三模块(numpy,pandas))]本地文件)
执行该脚本地方地方df