Demo-Pyspark On Mammut
更新时间: 2024-04-23 12:23:37
阅读 5712
DEMO-Pyspark On Mammut
适用模块
离线开发
具体说明
打包python环境至hdfs,供离线开发使用
使用示例
1、准备python环境
anaconda安装包路径:https://repo.anaconda.com/archive/
Old package lists: https://docs.anaconda.com/anaconda/packages/oldpkglists/
conda create --name pyspark3.6 --quiet --copy --yes python=3.6 numpy scipy pandas pyspark
进入环境(demo环境在demo21节点/mnt/dfs/1/anaconda3/bin)
source activate pyspark3.6
安装插件
pip install xxx
或
pip install https://github.com/pyinstaller/pyinstaller/archive/develop.tar.gz
其他安装方式参照:https://docs.python.org/3/tutorial/venv.html
退出环境
conda deactivate
2、打包环境 (建议tar.gz格式)
切换至anaconda3/envs目录下
tar -zcvf pyspark3.6.tar.gz pyspark3.6
3、文件比较大,无法通过猛犸的web页面上传,只能通过hadoop客户端上传
hdfs dfs -put pyspark3.6.tar.gz /user/项目名/xxx/
4、配置pyspark任务
如下所示将传参信息打印并查询hive表数据
pysparkhive.py脚本代码示例:
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName("My app").getOrCreate()
datexxx = spark.conf.get("spark.date123")
print('-------------')
print(datexxx)
print('-------------')
my_dataframe = spark.sql("select * from mammut_user.weather_info")
my_dataframe.show()
spark.stop()
spark配置参数说明(需要传递给spark的参数需要设置前缀conf.):
conf.spark.yarn.dist.archives=hdfs://easyops-cluster/user/bdms/pyspark3.6.tar.gz#envs
实际压缩包名称根据自己打包环境决定
压缩的文件会被提取到executor到工作目录下面去,后面到#envs表示,这个文件被解压成到文件名称
conf.spark.yarn.appMasterEnv.PYSPARK_PYTHON=envs/pyspark3.6/bin/python3.6
指定python的环境
作者:林帅
文档反馈
以上内容对您是否有帮助?