为满足用户数据开发、数据探索场景提供的交互式开发环境。 Notebook 基于开源的 Jupyterlab 定制化开发,支持使用 Python、Bash、Markdown 语言、引入第三方库完成数据开发以及算法开发并且发布成定时调度执行任务。本文将为您介绍如何在 DataLeap 平台上创建 Notebook 调度任务。
注意
任务名称信息仅允许字符.、字母、数字、下划线、连字符、[]、【】、()、()以及中文字符,且需要在127个字符以内。
新建任务完成后,首次打开Notebook,需先配置环境启动信息:
其中名称前带 * 的参数为必填参数,名称前未带 * 的参数为可选参数。
| 参数 | 说明 |
|---|---|
| *选择 Kernel | Notebook Kernel 是执行 Notebook 文件包含代码的计算引擎,比如 ipython kernel 执行 python 代码。 支持选择 Python on K8s、Python Spark on EMR、Spark on EMR Serverless 的 Kernel 类型。 打开 Notebook 任务,配置环境后,默认将自动启动 Kernel,您也可以在下方勾选“Notebook任务打开时,默认不自动启动Kernel。”选项,将暂不启动 Kernel。启动 Kernel,运行代码时,Kernel 执行计算并产出结果。 |
| *计算资源组 | 支持选择公共计算资源组、独享计算资源组。 |
*镜像 | 支持填写任务所需依赖的自定义镜像地址。您可自行输入地址,或选择平台提供的两个镜像地址:
两个地址均预装了常用第三方库,更多 Python 第三方库,您可通过任务,来执行 pip 命令方式安装。如: 说明 默认镜像地址中 {region} 值,需根据实际情况替换为具体地域信息,如 cn-beijing、cn-shanghai、ch-guangzhou、ap-southeast-1 |
*资源配置 | 您可根据实际需求进行配置,以 CU 为单位,默认配置 1CU(1CU = 1Core 4GB),下拉可选择更多规格的资源配置。 说明 其中 0.25、0.5 CU 规格,仅独享计算资源组支持选择。 |
启动信息配置完成后,单击确认按钮,启动 Kernel 连接,待导航栏 Kernel 状态为 “空闲” 后,即代表启动成功,可进行后续的调试运行代码逻辑。
启动 Kernel 状态正常后,即可进入代码开发。目前已支持 Python、Markdown、Bash、Raw 几种语言。
您可以在当前的 cell 框中,输入对应语言的代码逻辑,以 Python 语言为例:
# 如何查看预装第三方包 # cell类型选择python,执行以下操作 !pip3 list # 如何安装第三方包 # cell类型选择python,执行以下操作,以安装library_name为例 !pip3 install library_name
示例代码 - 使用 plotly 画图
!pip3 install plotly import plotly.express as px df = px.data.iris() fig = px.scatter(df, x="sepal_width", y="sepal_length", color="species") fig.show()
参数:
在代码编辑器中,您可输入动态、系统变量、项目参数等,如时间参数 ${date}、${hour} 。时间参数使用可参考:时间变量与常量说明;项目参数使用方式详见输入输出参数设置。
您可在界面下方,进行业务日期的选择,便可在界面上方单击运行按钮,在查询时完成时间参数替换操作。
Cell 单元框功能按钮:
序号 | 参数 | 说明 |
|---|---|---|
1 | 语言选择 | 支持 Python、Bash、Markdown、Raw 三种语言选择。 |
2 | Format Cell | 将书写代码格式化操作。 |
3 | New Cell | 添加一个新的 Cell。 |
4 | Copy Cell and Paste Below Cell | 复制并粘贴内容到当前单元框后面。 |
5 | Cut Cell | 剪切当前单元框。 |
6 | Paste Below Cell | 粘贴内容到当前单元框后面。 |
7 | Delete Cell | 删除当前单元框。 |
8 | Cell 框右键操作 | 单元框的更多快捷操作,可通过在 Cell 框中右键查看更多操作项。 |
单击进入右侧侧边栏执行设置窗口,并进行以下设置:
环境配置:
说明
修改 Kernel 类型、镜像资源、Spark 参数以及计算资源配置时,您需要单击“立刻重启”按钮,操作 Kernel 重启后生效。
参数名称 | 说明 |
|---|---|
引擎实例 | Python Spark on EMR Kernel 类型,可下拉选择项目控制台中已绑定的 EMR(Hadoop、TensorFlow) 集群实例信息,项目支持绑定多个 EMR 集群,您可根据实际情况选择对应的 EMR 集群。 |
计算资源组 | 不同 Kernel 类型,支持选择修改公共计算资源组、独享计算资源组。 |
镜像地址 | Python on K8s、Spark on EMR Serverless 的 Kernel 类型,支持自行输入地址,或选择平台提供的镜像地址,预装了常用第三方库。 |
资源配置 | 资源可根据实际需求进行配置,以 CU 为单位,默认配置 1CU(1CU = 1Core 4GB),下拉可选择更多规格的资源配置。 说明 其中 0.25、0.5 CU 规格,仅独享计算资源组支持选择。 |
资源选择 | Python on K8s 的 Kernel 类型,支持引用资源依赖包。 注意 选择资源后,请务必单击同步资源按钮或重启 Kernel,才能将资源同步至任务实际执行的容器内。 |
Spark 参数 | Python Spark on EMR、Spark on EMR Serverless 的 Kernel 类型,在任务执行环境中,可添加任务所需的 Spark 参数,您可通过以下方式进行配置:
|
任务产出数据登记 | 产出数据登记用于记录任务的数据血缘,不会对代码逻辑造成影响。如果 Notebook 任务中含有对应引擎库表数据的产出时,强烈建议填写,以便后续维护任务数据血缘关系。
|
启动日志
Kernel 启动时,会在启动日志中记录启动过程中的信息,您可进入该页签中,查看启动日志。
当 Kernel 启动失败时,您可在此查看具体失败的原因,以便排查问题。
运行记录
“运行记录”页签中保存了每一次 Kernel 启动的信息。展开记录后,您可以看到任务的详细执行历史(包括执行脚本和结果),以便追溯过往的操作。
进入右侧边栏调度设置,配置节点调度相关属性。设置操作详见:调度设置。
说明
调试成功,Kernel 处于空闲状态后,如果后续无人再次发起调试,或者关闭调试 Tab 页签后,那么将会在 3 小时内释放资源给其他任务使用。
后续任务运维操作详见:离线任务运维。