同步操作将从 WeBank/DataSphereStudio 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
DSS作为一站式数据应用开发门户,定位为闭环涵盖数据应用的全流程,满足从数据ETL、数据研发、可视化展现、数据治理、数据输出到工作流调度的数据应用全生命周期开发场景,现已经开源的组件包括如下图所示:
下面将对这些组件的功能进行详细介绍
首页对DSS集成的组件的全流程进行了展示和示意,其中每个组件的展示都支持直接跳转到对应的服务:
如点击Scriptis图标会跳转到数据开发组件Scriptis的首页:
DSS为用户构建了工程业务流程两层结构,当用户选择一个工程进行进入后,在所有组件中的操作都只与该工程相关,让用户更加清晰的去定义工程和业务的关系。
工程版本新建(回滚):可以通过设置当前版本作为源版本复制为最新版本。
工程复制:以工程的最新版本为源工程,复制出新工程,初始版本工作流内容为源工程最新版本的工作流。注意:工程名是唯一,不可重复
当点击一个对应的工程后,既可以进入工程首页,在工程首页可以做工作流的编排。
节点支持双击打开:
支持多层级切换:支持快速工程切换、支持在工作流页面切换工作流、支持在单个工作流中切换节点
右上脚支持多组件快速切换,在切换后进入的组件的内容都只与该工程相关,让用户更加清晰的去定义工程和业务的内容:
open("project://test.txt", encoding="utf-8") #工程级资源文件使用project://开头
open("flow://test.txt", encoding="utf-8") #工作流级资源文件使用flow://开头
open("node://test.txt", encoding="utf-8") #节点级资源文件使用node://开头
工作流格式化:当工作流节点过多,界面太乱时。可以点击节点编辑页的右上方第四个“格式化”按钮。快速美化节点界面: 如果格式化后不满意,可再次点击节点编辑页的右上方第五个“恢复”按钮,恢复到之前的状态:
支持放大、缩小、全屏/取消全屏 按钮可调整界面大小比例
多个节点移动:
EventSender节点用于进行信息发送,将一段信息事件进行发送给eventReceiver。常见场景工程与工程间有依赖,工作流与工作流间有信息依赖。比如B任务依赖A任务的某些信息(A任务成功B节点才能开始执行),eventSender支持如下参数:
1. msg.type: 用来指定Job的类型,SEND用于发送消息,RECEIVE用于接收消息。
2. msg.sender: 指定消息的发送者,需使用ProjectName@WFName@JobName的格式进行定义。
3. msg.topic: 指定消息的主题,建议使用如下格式: 一级分类编码+“”+二级分类编码+“”+三级分类编码。
4. msg.name: 指定消息名称,由用户自定义。
5. msg.body: 指定消息的内容,没有内容发送可以为空。
6. **注意:msg.type默认不可变为SEND,msg.sender、msg.topic、msg.name是必填。**
示例:
msg.type=SEND
msg.sender=project01@flow@job01
msg.topic=bdp_tac_test
msg.name=TestDynamicReceive
msg.body=${msg.mycontent}
EventReceiver节点用于接收eventSender发送过来的消息,并将接收过来的消息内容存放到工作流的上下文中,后续的节点会根据前缀去找该信息进行使用比如作为自定义变量进行使用,eventReceiver支持如下参数:
1. msg.type: 用来指定Job的类型,SEND用于发送消息,RECEIVE用于接收消息。
2. msg.receiver: 指定消息的接收者,需使用projectname@jobname@rtxname的格式进行定义。
3. msg.topic: 指定消息的主题,建议使用如下格式: 一级分类编码+“”+二级分类编码+“”+三级分类编码。
4. msg.name: 指定消息名称,由用户自定义。
5. query.frequency: 由于接收消息使用的是主动轮询的方式,wait.time期间的查询次数,。
6. max.receive.hours: 最长的接收时长,以小时为单位,超过时长未接收到消息返回失败,。
7. msg.savekey: 用于保存消息内容key值,单个flow内多个接收job,需指定不同的msg.savekey保存消息内容,默认值为msg.body,后续Job可以使用该key值获取消息内容。
8. only.receive.today: 如果为true 有且只能接收job启动当天发来的消息
9. **注意:msg.type默认不可变为RECEIVE,msg.receiver、msg.topic、msg.name是必填。**
示例使用4.1节的eventSender的信息:
配置reveive接收对应的topic信息,并通过msg.savekey进行保存
在hql节点中使用receiver的msg.savekey作为自定义变量
通过上图的运行可以知道整个流程下来hql节点读取到了eventsender发送的信息。信号节点支持跨工程和工作流,这里只是示例使用
DataCheck节点用于检测数据是否ready,可以判断hive库中某个表或者分区是否存在,如果存在则进行下游的执行,在有数据依赖的任务中扮演十分重要的作用替换掉以前口头约定好的时间开始运行。 dataCheck支持如下参数:
1. source.type: 依赖的数据来源,job表示是由其他job产生
2. check.object: 依赖数据的名称例如:data.object.1=dbname.tablename{partitionlist}
3. max.check.hours: 描述任务的等待时间,单位是小时
4. job.desc: 追加多源信息配置。
SendEmail节点一般作为工作流的最后一个节点,用于将工作流前面的结果信息进行发送,支持发送表格、文本、DashBoard、Display、图片等,用户在使用的时候直接选择发送的对应节点就行: sendEmail支持如下参数:
类型:支持节点、文字、文件、链接
邮件标题:指定邮件表提
发送项:发送的具体内容,例如:类型是节点则这里选择节点
关联审批单:该邮件是否走过审批,如果未则不会进行发送
其他邮件基本属性:收件人、抄送、秘密抄送
Connector节点的作用是为了作为节点与节点的连接,让工作流更加好看:
Subflow节点是您可以在一条工作流中嵌入一条子工作流,子工作流支持发布调度,但是在实时执行时父工作流的subflow节点会跳过执行,需要跳到子工作流编辑页面进行执行:
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。