提交版本并解锁,涉及到数据开发的版本管理和编辑锁定功能。
- 版本管理:用于追踪脚本/作业的变更情况,支持版本对比和回滚。系统最多保留最近10条的版本记录,更早的版本记录会被删除。另外,版本管理还可用于区分开发态和生产态,这两种状态隔离,互不影响。
− 开发态:未提交版本的脚本/作业为开发态,仅用于个人调试开发。在开发态下,可以随意编辑、保存、运行脚本/作业,不会影响调度中的脚本/作业;另外在作业关联脚本、配置作业依赖时,被关联的脚本/作业均会读取开发态的配置。
− 生产态:提交后版本的脚本/作业为生产态,用于正式调度。在正式调度中,调用脚本、实例重跑、作业依赖、补数据等场景均是关联脚本/作业最新的已提交版本。
- 编辑锁定:用于避免多人协同开发脚本/作业时产生的冲突。新建或导入脚本/作业后,默认当前用户锁定脚本/作业,只有当前用户自己锁定的脚本/作业才可以直接编辑、保存或提交,通过“解锁”功能可解除锁定;处于解除锁定或他人锁定状态的脚本/作业,必须通过“抢锁”功能获取锁定后,才能继续编辑、保存或提交。
须知
- 当前脚本/作业的锁定状态可以通过脚本/作业的目录树查看。
- 对于已被他人锁定状态的脚本/作业,您需要通过重新打开该脚本/作业,查看最近的保存/提交时的内容。已打开的脚本/作业内容不会实时刷新。
- 在DataArts Studio更新编辑锁定功能前已经创建的脚本/作业,在更新后默认为解除锁定状态。您需要通过“抢锁”功能获取锁定后,才能继续编辑、保存或提交。
- 抢锁的操作依赖于软硬锁的处理策略。配置软硬锁的策略请参见配置默认项。
- 软锁:忽略当前作业或脚本是否被他人锁定,可以进行抢锁或解锁。
- 硬锁:若作业或脚本被他人锁定,则需锁定的用户解锁之后,当前使用人方可抢锁,空间管理员或DAYU Administrator可以任意抢锁或解锁。
- 不建议直接抢锁处于他人锁定状态的脚本/作业,这会导致他人的修改丢失。如果您有修改需求,请先联系锁定人将脚本/作业解锁,然后再抢锁。
详见下图:锁定状态转换图
前提条件
已完成作业开发任务。
提交版本并解锁
“提交”会将当前开发态的最新作业保存并提交为版本,并覆盖之前的作业版本。为了便于后续其他开发者对此作业进行修改,建议您在“提交”后通过“解锁”解除该作业锁定。
1.登录DataArts Studio控制台。选择实例,点击“进入控制台”,选择对应工作空间的“数据开发”模块,进入数据开发页面。
详见下图:选择数据开发
2.在数据开发主界面的左侧导航栏,选择“数据开发 > 作业开发”。
3.在作业目录中,双击已开发完成的作业名称,进入作业开发页面。
4.在作业画布上方单击“提交”,提交版本。描述内容长度最多为128个字符,并勾选是否在下个调度周期使用新版本,不勾选则无法点击确认。
详见下图:提交
5.“提交”后在作业画布上方单击“解锁”,解除锁定,便于后续其他开发者对此作业进行修改更新。
详见下图:解锁
版本回滚
用户可以在版本列表中看到已经提交过的版本信息(当前最多保存最近10条版本信息)。点击“回滚”,可以回退到任意一个已提交的版本。
回滚内容包括:
- 作业定义(算子属性、连线等);
- 作业基本信息、作业调度配置、作业参数、血缘关系中的所有内容;
操作如下:
- 登录DataArts Studio控制台。选择实例,点击“进入控制台”,选择对应工作空间的“数据开发”模块,进入数据开发页面。
详见下图:选择数据开发
- 在数据开发主界面的左侧导航栏,选择“数据开发 > 作业开发”。
- 在作业目录中,双击作业名称,进入作业开发页面。
- 在页面右侧单击“版本”,查看版本提交记录,找到需要回滚的版本单击“回滚”即可。
详见下图:版本回滚操作界面
版本详情查看
用户可以在版本列表中看到已经提交过的版本信息。
操作如下:
- 登录DataArts Studio控制台。选择实例,点击“进入控制台”,选择对应工作空间的“数据开发”模块,进入数据开发页面。
详见下图:选择数据开发
- 在数据开发主界面的左侧导航栏,选择“数据开发 > 作业开发”。
- 在作业目录中,双击作业名称,进入作业开发页面。
- 在页面右侧单击“版本”,查看版本提交记录,找到需要查看详情的版本单击“查看”即可。
点击查看,将会打开一个新窗口,展示出该版本的作业定义。查看窗口仅用于展示某个版本的作业属性,不可修改任何作业属性。
详见下图:版本详情查看
版本对比
- 登录DataArts Studio控制台。选择实例,点击“进入控制台”,选择对应工作空间的“数据开发”模块,进入数据开发页面。
详见下图:选择数据开发
- 在数据开发主界面的左侧导航栏,选择“数据开发 > 作业开发”。
- 在作业目录中,双击作业名称,进入作业开发页面。
- 在页面右侧单击“版本”,查看版本提交记录,勾选需要对比的版本单击“版本对比”即可。
若只勾选一个版本,则比较选中的版本和开发态的作业属性Json。若勾选两个版本,则比较两个版本的作业属性Json。
详见下图:对比版本操作界面