能否在Dataproc Workflow Template中传入Jupyter notebook路径作为执行步骤
直接在Dataproc Workflow Template中运行Jupyter Notebook的方法
可以直接将现有Jupyter Notebook作为步骤添加到Workflow Template中运行,无需提前转换为.py文件,核心依赖papermill工具完成.ipynb格式文件的执行。
实现步骤
- 安装运行依赖:
papermill是专门用于参数化、执行Jupyter Notebook的开源工具,Dataproc集群默认未预装,你可以通过两种方式配置:- 在集群的初始化动作中添加安装命令:
pip install papermill google-cloud-storage - 在Workflow Template的执行步骤前,新增一个临时安装依赖的Shell步骤
- 在集群的初始化动作中添加安装命令:
- 添加Notebook执行步骤:在Workflow Template中新增一个Shell脚本类型的步骤,执行命令格式如下:
papermill gs://<你的存储桶路径>/<原Notebook文件名>.ipynb gs://<输出存储桶路径>/<运行后带结果的Notebook文件名>.ipynb - 可选参数配置:如果你的Notebook预设了可配置参数,可以在命令末尾追加
-p <参数名> <参数值>的格式传入自定义参数,不需要参数可直接省略。运行完成后,带执行日志、输出结果的完整Notebook会存入你指定的输出路径,方便后续问题排查。
原任务失败常见原因
- 未提前安装
papermill依赖,导致集群无法识别.ipynb格式的执行文件 - Dataproc服务账号没有Notebook所在存储路径的读取权限,或者输出存储路径的写入权限
- Notebook内部代码依赖未预装的第三方库、本地专属路径,运行时触发报错
内容的提问来源于stack exchange,提问作者Snehil Singh
相关产品推荐
相关产品推荐

