针对上面存在的问题以及对需求的分析,我们可以进行如下的功能实现与设计:
首先是渲染方案的替换,将 svg 的渲染方案替换成 canvas 渲染,通过减少页面中 DOM 的数量,提高前端渲染性能。
其次是不同场景的功能设计,通过上面的需求分析,火山引擎DataLeap研发人员设计了不同的功能模式以满足不同的需求。
模式名称
功能
通用模式
分析上游阻塞下游运行的原因、查看上游最晚完成的实例
统计模式
对依赖当前实例的所有下游进行分组查看
链路模式
分析两个实例之间的链路关系
在通用模式中,用户关注的是节点上下游的关系,在复杂链路中快速找到阻塞节点,同时关注阻塞节点的信息
针对复杂链路,火山引擎DataLeap研发人员设计了多种优化形式:
首先,在同一层的节点超过一定的数量(可自定义)后,所有节点将聚合在一起,火山引擎DataLeap研发人员称之为聚合节点。这种优化下,可以解决上面提到的由于同一层级节点过多,查找特定状态节点不便的问题。也支持点击聚合详情,通过列表的形式,查看所有被聚合的节点。并支持筛选,快速查找到关注的节点并通过展开,恢复与当前节点的依赖关系。
其次,以用户最关注的实例状态,对被聚合的节点进行分类,同时新增快捷展开操作。以下图为例,当前实例处于等待上游依赖完成状态,在这种情况下,用户关注的,则是上游没有开始执行的节点。在聚合节点中,可以清晰地看到存在一个实例,是在等待执行的,点击数字1,即可快速展开实例。
在这个例子中,就将不需要关注的上游成功节点隐藏在列表中,突出图所需要关注的重点信息。
同时,为了降低节点展示过多导致图显示杂乱的情况,新增了收起功能及跳转功能。
收起功能是指在通过在聚合节点展开的节点的情况,或是在直接展开上 / 下游的情况下,都支持对某个上游 / 下游节点的整条链路收起,方便用户在浏览完一条链路后,恢复图之前的状态,继续浏览下一条链路,减少对后续分析的干扰。
跳转功能是在查看当前节点的上游的其他下游,或是下游的其他上游,此时,用户关注的节点已经转化为其他的上游 / 下游节点。所以,通过跳转新页面的形式,将需要关注的不同节点的上 / 下游信息区分开,减少在一张图中展示所有信息。
并且由于图中的节点承载信息的能力有限,在通过点击节点时,会在下方出现与选中实例相关信息,包括属性,日志等,协助用户运维任务。
 
  在统计模式中,用户关注的是依赖当前节点的下游节点,下游节点则可以分成直接下游和所有下游。所以火山引擎DataLeap研发人员设计了分层模式和合并模式,在这两种模式下,可以按照任务的属性(任务类型 / 实例状态 / 责任人等)作为分组维度。
  分层模式:
  合并模式:
 
 
  所谓链路模式即指定上游节点,一键展示指定节点与当前节点的链路信息,从而进行精准链路分析。

火山引擎DataLeap数据调度实例的 DAG 优化方案 (二):功能设计的更多相关文章

  1. 火山引擎DataLeap数据调度实例的 DAG 优化方案

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,并进入官方交流群 实例 DAG 介绍 DataLeap 是火山引擎自研的一站式大数据中台解决方案,集数据集成.开发.运维.治理.资产管理能力 ...

  2. 火山引擎 DataLeap:揭秘字节跳动数据血缘架构演进之路

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 DataLeap 是火山引擎数智平台 VeDI 旗下的大数据研发治理套件产品,帮助用户快速完成数据集成.开发.运维 ...

  3. 如何又快又好实现 Catalog 系统搜索能力?火山引擎 DataLeap 这样做

      摘要 DataLeap 是火山引擎数智平台 VeDI 旗下的大数据研发治理套件产品,帮助用户快速完成数据集成.开发.运维.治理.资产.安全等全套数据中台建设,降低工作成本和数据维护成本.挖掘数据价 ...

  4. 火山引擎 DataLeap:一家企业,数据体系要怎么搭建?

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 导读:经过十多年的发展,数据治理在传统行业以及新兴互联网公司都已经产生落地实践.字节跳动也在探索一种分布式的数据治 ...

  5. 火山引擎 DataLeap:3 个关键步骤,复制字节跳动一站式数据治理经验

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,并进入官方交流群 DataLeap 是火山引擎数智平台 VeDI 旗下的大数据研发治理套件产品,帮助用户快速完成数据集成.开发.运维.治理. ...

  6. 火山引擎 DataLeap 的 Data Catalog 系统公有云实践

      Data Catalog 通过汇总技术和业务元数据,解决大数据生产者组织梳理数据.数据消费者找数和理解数的业务场景.本篇内容源自于火山引擎大数据研发治理套件 DataLeap 中的 Data Ca ...

  7. 大数据量数据库设计与优化方案(SQL优化)

    转自:http://blog.sina.com.cn/s/blog_6c0541d50102wxen.html 一.数据库结构的设计 如果不能设计一个合理的数据库模型,不仅会增加客户端和服务器段程序的 ...

  8. 8月Meetup | “数据调度+分析引擎”解锁企业数字化转型之路

    ​ 编辑切换为居中 添加图片注释,不超过 140 字(可选)   大数据是一种规模大到在获取.存储.管理.分析方面大大超出了传统数据库软件工具能力范围的数据集合,而大数据作为企业运转的基础,只有经过提 ...

  9. DataLeap 数据资产实战:如何实现存储优化?

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 背景 DataLeap 作为一站式数据中台套件,汇集了字节内部多年积累的数据集成.开发.运维.治理.资产.安全等全 ...

  10. JuiceFS 在火山引擎边缘计算的应用实践

    火山引擎边缘云是以云计算基础技术和边缘异构算力结合网络为基础,构建在边缘大规模基础设施之上的云计算服务,形成以边缘位置的计算.网络.存储.安全.智能为核心能力的新一代分布式云计算解决方案. 01- 边 ...

随机推荐

  1. html-7(JavaScript-1)

    放在函数里面 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <ti ...

  2. [C++]P3384 轻重链剖分(树链剖分)

    [C++]树链剖分 预备知识 树的基础知识 关于这个本文有介绍 邻接表存图 线段树基础 会区间加法和区间结合就可以了P3372 建议阅读这篇Blog 最近公共祖先LCA 虽然用不到这个思想 但是有类似 ...

  3. Go 方法集合与选择receiver类型

    Go 方法集合与选择receiver类型 目录 Go 方法集合与选择receiver类型 一.receiver 参数类型对 Go 方法的影响 二.选择 receiver 参数类型原则 2.1 选择 r ...

  4. 文心一言 VS 讯飞星火 VS chatgpt (135)-- 算法导论11.3 1题

    一.用go语言,假设我们希望查找一个长度为 n 的链表,其中每一个元素都包含一个关键字k并具有散列值h(k).每一个关键字都是长字符串.那么在表中查找具有给定关键字的元素时,如何利用各元素的散列值呢? ...

  5. 本地MQTT协议消息服务远程连接教程介绍

    Mosquitto是一个开源的消息代理,它实现了MQTT协议版本3.1和3.1.1.它可以在不同的平台上运行,包括Windows.Linux.macOS等.mosquitto可以用于物联网.传感器.移 ...

  6. 【公告】luogu blog (daiyulong20120222) 即将迁移!

    \[\huge\text{luogu blog (daiyulong20120222) 即将迁移到 cnblogs!}\\ \] \[\huge\color{blue}\text{https://ww ...

  7. [AI]生物本能vs机器人工程:谁才有“意识”?

    [AI]生物本能vs机器人工程:谁才有"意识"? 引子 我们已经就人类意识的初级形式和高级形式进行了初步探讨.通过对比分析,我们将初级意识定义为可以无需高级意识参与的本能反应.而高 ...

  8. jmeter工具中vars与props命令的区别和使用

    话不多说直接干活!!!!! vars 和 props命令存在于"jsr223 预处理器"."BeanShell 预处理程序"."JSR223 后置处理 ...

  9. STM32外设:定时器TIM

    主要外设: TIM:Timer 定时器 TIM中的基本电路 定时器 计数器的基本功能 复位:计数器值=初值.产生一个输出脉冲.产生更新事件(UEV)脉冲.更新中断标志UIF=1 计数:计数器值递增或递 ...

  10. Spring优雅关闭之:ShutDownHook

    转载自:https://blog.csdn.net/qq_26323323/article/details/89814410 2020/02/26重新编辑一下 前面介绍ShutDownHook的基本使 ...