如果是单个机器或者是local模式,简单的方式就是在节点上pip install jieba就完事了。但是在集群上肯定不能安装啊。怎么办呢??
spark可以使用自己的镜像。比如本地有一个conda的envs的环境。可以将这个打包,在提交任务的时候可以分发到各个executor上。
spark-submit \
--name seg_tags \
--queue root.niubi_queue \
--deploy-mode cluster \
--driver-memory 10g \
--executor-memory 10g \
--conf spark.dynamicAllocation.maxExecutors=300\
--conf spark.executor.cores=3\
--conf spark.default.parallelism=2000\
--conf spark.port.maxRetries=200\
--conf spark.yarn.dist.archives=hdfs://dfs4/user/niubi/niubi.tar.gz#mypython \
--conf spark.yarn.appMasterEnv.PYSPARK_PYTHON=./mypython/myEnvs/bin/python \
./seg_tags.py