Dataphin产品核心功能大图(六)发布中心:生产和开发隔离模式下的保护伞
简介:Dataphin,用中台方法论打造企业级好数据。Dataphin是阿里巴巴集团OneData数据治理方法论内部实践的云化输出,一站式提供数据采、建、管、用全生命周期的大数据能力,以助力企业显著提升数据治理水平,构建质量可靠、消费便捷、生产安全经济的企业级数据中台。Dataphin提供多种计算平台支持及可拓展的开放能力,以适应各行业企业的平台技术架构和特定诉求。
在数据权限管控严格的研发流程下,常常会使用生产开发环境隔离的研发模式。Dataphin支持创建成对存在、互相关联的生产开发模式项目(Dev-Prod项目)。
项目中,研发人员通常需要完成代码编写、任务基础属性和调度属性配置、并基于开发环境的数据执行补数据测试,通过后再将任务提交至发布中心。发布审核人员接到发布申请后,结合任务配置详情评估是否配置合理,是否存在数据生产风险等,之后执行发布操作;发布成功的任务会在生产环境中生效并调度运行,而发布失败的任务不会更新至生产项目,以此实现开发和生产项目的数据隔离,保证数据质量。
一、发布中心概述
试想,若由发布人员对每个任务进行人工审核,工作量巨大且容易遗漏,对研发效率产生较大影响。那么理想的发布流程会是什么形式呢?
Dataphin发布中心提供了待发布任务概览、批量发布、基于系统规则的自动审核、发布记录概览、发布详情查看、发布失败原因提示及一键重新发布等功能;同时,管理中心的发布管控功能,可以自定义审核规则和策略,以满足个性化需求场景。发布人员只需评估哪些任务需要上线生产环境,批量勾选并一键执行发布即可,大大缩短了操作路径,并从系统角度提供了全面保障。
二、功能介绍
接下来,我们详细介绍一下发布中心的核心功能:
首先,在开发环境项目创建一个以“test”命名的代码任务,完成代码编写、调度配置、预编译等操作,点击操作栏的“提交”按钮,将任务提交到发布中心;提交成功后,点击任务操作栏的“去发布”按钮或者切换顶部导航为“发布”,即可进入发布中心:
1 待发布对象列表
在待发布对象列表页面,记录了当前项目已提交待发布的规范建模、数据处理和管道脚本数据对象。发布成功的数据对象将从待发布对象列表移除,并在发布记录列表中生成一条发布成功的记录;发布失败的数据对象将重新被记录在待发布对象列表,同时在发布记录列表中生成一条发布失败的记录,可以查看每条发布记录的发布详情。
- 待发布对象列表概览:列表记录了对象名称、对象类型、调度节点ID、最近1次提交发布的版本号、本次提交变更类型、提交人及提交时间等信息。发布审核人员可以基于这些基本信息,初步评估任务变更情况,作为判断是否需要发布的依据。
- 提交详情及提交记录查看:支持查看每个对象当前最新提交的版本详情及历史的提交记录,发布人员可以基于详情信息进一步评估发布该对象对生产项目可能产生的变更影响。同一个对象提交多次(每次提交均未发布)时会合并为一条待发布对象;点击当前版本号可展开版本详情,点击“版本记录”,可以查看该对象的变更记录及每次变更操作人、操作时间及变更原因备注。
- 移除及跳转编辑待发布对象:如果任务提交后需要再次变更,为了防止变更前的内容被提前发布影响生产环境数据,您可以主动移除发布对象,并在修改完成后再次提交发布。提供“编辑”对象的快捷操作入口,点击将跳转到该任务在开发模块的详情页。
- 发布及批量发布:确定可以发布后,您可以针对单个对象执行发布,也可以批量选中多个对象一次性发布。被选中的对象会按照依赖关系依次执行发布动作。点击确定发布后可自动跳转到发布记录列表,等待执行完成后,即可查看发布结果。
2 发布系统校验规则
不同发布对象有不同的校验规则。以SQL代码任务为例,会进行如下校验:
- 上游依赖配置的正确性:如果存在自依赖或上游依赖配置不完整,则会阻断发布。
- 节点输出名称是否唯一:节点输出名称是每个任务的全局唯一标识,重名校验可以避免协同操作带来的冲突问题。
- 代码中引用的资产对象是否有相应权限:如是否有创建、删除表的权限,是否有往表中插入数据的权限等,防止权限泄露引发的数据安全问题。
- SQL语法是否正确:若语法不正确,发布会被阻断,以免发布到生产环境后运行报错,影响下游数据产出。
- 发布执行是否正常:如果任务逻辑过于复杂或一次性批量过多,可能会产生发布超时问题,在此处进行提醒。
每个对象只有所有系统校验规则均通过,才能发布成功,否则会在发布详情弹框进行错误提示,引导需要执行的下一步操作,如申请权限、修改代码逻辑等等。
3 发布记录列表
发布记录列表页面记录了每一次发布的详情及发布结果:
- 发布记录概览:发布记录列表展示了每一次发布的执行详情,包括发布名称、发布对象、对象类型、发布版本、发布的变更类型、发布人及发布时间、发布状态等。
- 发布详情查看:针对每条发布记录,可以查看发布详情,评估是否符合预期;尤其是发布失败的任务,在发布详情会给出失败原因提示,发布人员可以根据提示信息联系相关开发修改后重新发布。
- 发布失败日志查看及一键重新发布:发布失败的对象,可以点击查看发布详情,发布详情中可以查看本次发布的日志记录,以获取更多的报错信息指导下一步操作;若问题已解决,可以一键重新发布,减少页面切换的操作成本。如果该对象已经被发布成功,则会提示“重新发布失败,最新版本已发布。”


- 发布管控:如果您使用了变更管控中的发布管控功能,此处还会进行发布管控规则的校验,并将校验结果展示在“静态检查”部分。发布详情中会展示命中的管控规则及校验结果,针对校验失败的,还会展示在管控规则中配置的说明文案,以提醒发布人员。
发布作为生产开发隔离的研发模式中毕竟的一道环节,为生产数据的正确性和生产环境稳定性提供了移到前置保障,可以减少人工操作失误或流程不规范引发的问题,降低了对生产业务产生影响的可能性,为您的数据建设撑起一道保护伞。
三、结语
本期介绍了Dataphin的发布功能,包括如何执行发布、如何查看发布详情并处理异常等等,想要更完整了解Dataphin的发布中心,就快来申请试用体验吧!
本文为阿里云原创内容,未经允许不得转载。
Dataphin产品核心功能大图(六)发布中心:生产和开发隔离模式下的保护伞的更多相关文章
- SharePoint 2010 产品六大功能模块
对IT专业人员来说,新的产品,意味着新的功能,IT生产力提高的契机,更加关心如何使用新产品投入更少,产出更多.在本文中我们通过对SharePoint 2010产品的功能介绍.管理中心新功能介绍.系统新 ...
- Chrome扩展开发之四——核心功能的实现思路
目录: 0.Chrome扩展开发(Gmail附件管理助手)系列之〇——概述 1.Chrome扩展开发之一——Chrome扩展的文件结构 2.Chrome扩展开发之二——Chrome扩展中脚本的运行机制 ...
- 个性化推荐产品功能的设计和B端产品的功能策划方式
宜信科技中心财富管理产品部负责人Bob,与大家一起聊聊个性化推荐产品功能的设计和B端产品的功能策划方式. 拓展阅读:回归架构本质,重新理解微服务|专访宜信开发平台(SIA)负责人梁鑫 智慧金融时代,大 ...
- PPT鼠绘必须掌握的PPT绘图三大核心功能
在PPT制作教程栏目中,陆陆续续的分享了一系列通过合并形状功能来绘图的教程,绘制安卓机器人.绘制西瓜.绘制鸡蛋.其实,合并形状功能只是PPT绘图的一部分,而真正想要掌握PPT鼠绘,仅仅是会使用合并形状 ...
- 源码分析 | 手写mybait-spring核心功能(干货好文一次学会工厂bean、类代理、bean注册的使用)
作者:小傅哥 博客:https://bugstack.cn - 汇总系列原创专题文章 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言介绍 一个知识点的学习过程基本分为:运行helloworld ...
- ES6,ES2105核心功能一览,js新特性详解
ES6,ES2105核心功能一览,js新特性详解 过去几年 JavaScript 发生了很大的变化.ES6(ECMAScript 6.ES2105)是 JavaScript 语言的新标准,2015 年 ...
- Shiro 核心功能案例讲解 基于SpringBoot 有源码
Shiro 核心功能案例讲解 基于SpringBoot 有源码 从实战中学习Shiro的用法.本章使用SpringBoot快速搭建项目.整合SiteMesh框架布局页面.整合Shiro框架实现用身份认 ...
- IBM ILOG JViews Charts 产品及功能介绍
摘抄连接:http://www.ibm.com/developerworks/cn/websphere/library/techarticles/1004_lidb_ilogjchart/ IBM I ...
- Lemon OA第3篇:核心功能
对Lemon OA系统的核心功能进行梳理,分别介绍说明如下文. Portal页面 还是从用户主页开始说起: OA核心的功能就是流程,启动流程,办理流程,查看历史,3个常用功能都罗列在用户主页上,方便用 ...
- Linux学习-核心编译的前处理与核心功能选择
硬件环境检视与核心功能要求 根据自己的需求来确定编译的选项 保持干净原始码: make mrproper 我们还得要处理一下核心原始码底下的残留文件才行!假设我们是第一次 编译, 但是我们不清楚到底下 ...
随机推荐
- CAST电子部单片机方向授课——串口通信 预习文档
CAST电子部单片机方向授课--串口通信 预习文档 课前小准备 安装串口调试助手 第一步:进入Microsoft Store 第二步:在Microsoft Store中搜索 "串口调试助手& ...
- python基础三(数据类型)
一 引子 1 什么是数据? x=10,10是我们要存储的数据 2 为何数据要分不同的类型 数据是用来表示状态的,不同的状态就应该用不同的类型的数据去表示 3 数据类型 数字(整形,长整形,浮点型,复数 ...
- 三维模型3DTILE格式轻量化压缩主要技术方法浅析
三维模型3DTILE格式轻量化压缩主要技术方法浅析 三维模型3DTILE格式轻量化压缩主要技术方法浅析 随着三维地理空间数据的应用日益广泛,为了更快速地传输和存储这些大规模数据,3DTile格式的轻量 ...
- 记录--a标签跳转新地址无法访问,但手动输入新地址可以访问
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 问题描述 最近遇到一个有意思的问题,项目中有一个地方,点击需要跳转到一个新的域名地址 笔者使用a标签做跳转,跳是跳过去了,可是跳过去以后, ...
- PyQt5报错:This application failed to start because no Qt platform plugin could be initialized
问题背景: 想使用PyQt5来创建一个可视化窗口,先在pycharm里面安装PyQt5,版本为5.14.0.之后在代码中调用此包:from PyQt5 import QtCore, QtGui, Qt ...
- mybatis @Param参数 记录
报错信息 org.apache.ibatis.binding.BindingException: Parameter 'XX' not found. Available parameters are ...
- layui select onchange事件处理
1.html代码如下,不要忘记 lay-filter属性 <div class="layui-input-block"> <select id=& ...
- java 控制台 输出进度条
效果 代码 public static void main(String[] args) { int total = 100; for (int i = 0; i < total; i++) ...
- 给定一个字符串 s ,请你找出其中不含有重复字符的最长子串的长度。
private static void stringSubLen(String msg) { int max = 0; int left = 0; Map<Character,Integer&g ...
- LLM RAG系列
RAG系列 本文介绍了RAG以及RAG pipeline的整个流程,包括请求转换.路由和请求构造.索引和检索.生成和评估等,其中引用了大量有价值的论文. 参考Advanced RAG Series: ...