在原始数据中,是以一个数组的形式返回节点信息及依赖关系。所以,需要对数据进行处理形成图所需要的数据,同时,利用多个 map 对数据进行存储,方便后续对数据进行检索,减少时间复杂度。
实例节点的样式需要通过基础图形 Text(文本)、Rect(矩形)、Icon(图标)进行组合,以达到我们的设计要求。
在前面提到,在复杂的图场景中,需要将超过一定数量的同层节点聚合起来,以达到清晰直观地传达图所要表达的信息的目的,所以需要对图的层级及节点进行处理,从而生成聚合节点和去掉多余的节点。
 
通常来说,DAG 的布局可以按照以下步骤实现。
  1. 去环:包括自环和非自环,为节点分层做准备。
  2. 节点分层:给所有节点安排合适的层级。
  3. 节点排序:同层级内节点排序,减少相邻层级中节点连续的交叉点数量。
  4. 节点坐标分配:根据分层和同层节点的排序计算节点位置。
 
而在火山引擎Dataleap场景中,节点的层级是有明确含义的,比如在节点 A 处于节点 B 的上方一层,且 A, B 之间有连线连接,则可认为 A 是 B 的上游一层节点。因此与传统 DAG 布局产生了以下不同点,火山引擎Dataleap研发人员需要根据场景做定制。
  1. 节点所在层级固定:DAG 布局既能支持自动计算层级,也能接受直接指定节点分层。
  2. 可能产生同层级连线:将同一层级里有连线的节点进行分组,进行内部排序后,视为整体再参与当前层级的排序,以减少交叉点的数量。
 
未来从功能设计上,火山引擎Dataleap会从用户的使用场景出发,区分不同的功能满足用户的诉求。同时,在前端领域中,针对大数据量的场景,需要判断这些大数据量的展示对用户是否存在价值,从大数据量中挖掘出用户的关注点并突出重点,方便用户快速地进行查看分析。
从技术实现上,火山引擎Dataleap会结合业务,根据业务的特征去修改已有的 DAG 布局实现,以满足在不同的业务场景下,更好地将信息呈现给用户。

火山引擎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. [转帖]etcd 在超大规模数据场景下的性能优化

    etcd 在超大规模数据场景下的性能优化   阿里系统软件技术 2019-05-27 09:13:17 本文共5419个字,预计阅读需要14分钟. http://www.itpub.net/2019/ ...

随机推荐

  1. IDEA在Debug模式下修改Java类,不小心关闭 Reload Changed Classes for AppArrowWebApplication 框提示之后的处理

    问题描述:Springboot maven 聚合项目里面,经常要启动多个服务. 当我们修改其中一个服务的时候,debug 启动时 idea 就会提示是否需要重新编译修改的内容,弹窗让你选择reload ...

  2. alibaba fastjson的JsonObject有序的实现和源码分析

    介绍 FastJson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean.在使用的过程中, ...

  3. sql server 截断和收缩所有用户数据库日志--用游标循环所有正常状态的用户数据库

    在服务器运维活动中,我们经常需要做一项工具就是将好多年的用户数据库日志文件截断并收缩为最小,以节省大量的磁盘空间.当数据库只有一两个时可以手动操作,但数据库数量众多时,就需要采用sql脚本,批量化执行 ...

  4. 一分钟理解TCP重传

    为什么需要重传 任何信息在介质中传输可能丢失,这是由于传输介质的物理特性决定的,所以网络不可能被设计为"可靠的"(不是由于考虑"性能"原因而是压根做不到).既然 ...

  5. CSS z-index属性层重叠顺序

    作者:WangMin 格言:努力做好自己喜欢的每一件事 对于所有定位,最后都不免遇到两个元素试图放在同一位置上的情况.显然,其中一个必须遮住另一个.但是如何控制哪个元素放在上层,这就出现了z-inde ...

  6. Java -- Stream流用法

    1. 前言 流是Java 8 API添加的一个新的抽象,称为流Stream,以一种声明性方式处理数据集合,侧重对于源数据计算能力的封装,并且支持序列与并行两种操作方式. Stream流是从支持数据处理 ...

  7. .NET周刊【11月第3期 2023-11-19】

    国内文章 .NET8.0 AOT 经验分享 FreeSql/FreeRedis/FreeScheduler 均已通过测试 https://www.cnblogs.com/FreeSql/p/17836 ...

  8. JS文本换行算法-模拟计算文字换行位置-基于DOM元素自发换行行为和字符分割原理-支持实体编码、不支持标签嵌套和富文本

    简介之前在学习HTML的时候一直很想弄清楚HTML内部换行的逻辑,特别是有时候我们想知道一个字符串放入一个DOM元素之后究竟在哪个字符位发生的换行,然后就可以知道在一个固定宽高且隐藏溢出的容器中当前用 ...

  9. Codeforces Round 894 (Div. 3)

    Codeforces Round 894 (Div. 3) A. Gift Carpet 题意:判断一列一个字母有没有"vika" 思路:挨个枚举每一列 #include<b ...

  10. [ARC168E] Subsegments with Large Sums

    题目链接 看到严格选 \(k\) 个,不难想到 WQS二分.定义 \(f(x)\) 为分成 \(x\) 段,最多有多少个超过 \(S\) 的.然后你会发现他不是凸的.因为他有很多平段,比如把两个很小的 ...