更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群

数据来源广、量级大、场景多,导致数据之间关系变得异常复杂。

经过读取、清洗、存储、计算等一系列流程之后,数据最终汇入指标、报表等服务系统中。但如何对数据溯源、跟踪变化,成为困扰数据研发工程师的难题之一。

数据血缘描述了数据的来源和去向,以及多个处理过程中的转换,是组织内使数据发挥价值的重要基础能力。通过构建数据血缘图谱,可以直接清晰地观察表之间的上、下游依赖关系,甚至是特殊场景下用户关注的表属性,更清晰查看数据链路和统计信息。

但是,要构建清晰、灵活、便利的数据血缘图谱不是易事,特别是在数据量级大的情况下,往往面临层级关系复杂、表任务混乱、分组结构不清楚的问题。

在字节跳动内部,有一套支持万级表血缘的关系展示图谱每天被近万名员工使用,已经沉淀为火山引擎 DataLeap“数据地图”能力,并对外输出。通过提供便捷的找数、理解数服务,火山引擎 DataLeap 大大节省企业内部数据沟通和建设成本。

那么。这套图谱究竟是如何设计和实现的?

首先,抽象用户使用场景和需求。经过内部场景的深度用户调研,火山引擎 DataLeap 抽象出如下需求:

  1. 表血缘关系查看:能从图中清楚浏览用户关注的表上、下游血缘关系,以及场景的表属性。

  2. 表血缘链路查看:能清晰查看某个上游/下游表到用户关注表的链路情况。

  3. 按关键指标分组查看:例如当表数据发生变更时,分组查看所有下游表的负责人以便通知变更。

  4. 筛选关键信息查看:例如用户找数据指标的时候,仅看相关的报表更高效。

其次,在技术选型上,采用 React + Canvas 的混合模式来实现血缘图谱。由于 Canvas 模拟滚动条研发成本高,与 HTML 相比,实现结构样式复杂的节点定制较复杂,但结合 React 框架渲染则可以轻松解决以上问题。因此,最终方案为:采用 Canvas 居于底部,仅负责画连线;React 负责渲染节点、响应 hover 等交互。

最后,在方案设计和实现上,主要从查看关系的效率和属性完备度两个角度出发,完善以下能力:

  • 为了解决数据量大情况下,数据关系不清晰的问题,火山引擎 DataLeap 支持点击任意节点,则高亮该节点到主节点的链路功能,并在列表顶部增加层级信息和节点统计,让用户能同时查看每个节点细节和节点整体分布。

  • 当用户找数、理解数或进行归因分析时,不仅要了解表的上游依赖,更需要理解表的加工逻辑。因此,火山引擎 DataLeap 在节点连线上新增任务信息,当用户 hover 连线即加粗、高亮并弹出任务信息,并匹配大数据开发平台对应的任务链接,点击即可跳转查看。

  • 在筛选功能上,火山引擎 DataLeap 采用服务端筛选,保证符合要求的数据全量展示。

  • 不同职能的用户在不同场景下使用血缘图谱时,关注的节点属性不相同。火山引擎 DataLeap 血缘图谱上设计了属性展示功能,用户可以勾选自己感兴趣的属性直接显示到图中。

据介绍,火山引擎 DataLeap 能帮助企业快速完成数据集成、开发、运维、治理、资产、安全等全套数据中台建设,其中数据地图主要提供数据检索、元数据详情查看、数据理解等功能,解决找数难、理解数据难的痛点,同时支持数据专题、血缘图谱、数据发现、库表管理等特色功能。

目前,火山引擎 DataLeap 的数据地图平台已接入全链路核心元数据,包括 LAS、MySQL、ByteHouse CE、ByteHouse CDW、TOS、LasFS、EMR hive 等,提供可视化的血缘关系展示能力,帮助用户全面的探查了解数据,支持表、字段级别血缘可视化查询,以及按层级、范围筛选展示,可根据用户需求灵活适配。

点击跳转 大数据研发治理套件 DataLeap 了解更多

听说火山引擎推出的 DataLeap,已经可以支持万级表的数据血缘图谱了!的更多相关文章

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

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

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

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

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

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

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

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

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

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

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

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

  7. 火山引擎MARS-APM Plus x 飞书 |降低线上OOM,提高App性能稳定性

    通过使用火山引擎MARS-APM Plus的memory graph功能,飞书研发团队有效分析定位问题线上case多达30例,线上OOM率降低到了0.8‰,降幅达到60%.大幅提升了用户体验,为飞书的 ...

  8. 还原火山引擎 A/B 测试产品——DataTester 私有化部署实践经验

      作为一款面向ToB市场的产品--火山引擎A/B测试(DataTester)为了满足客户对数据安全.合规问题等需求,探索私有化部署是产品无法绕开的一条路.   在面向ToB客户私有化的实际落地中,火 ...

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

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

  10. 火山引擎 A/B 测试产品——DataTester 私有化架构分享

    作为一款面向 ToB 市场的产品--火山引擎A/B测试(DataTester)为了满足客户对数据安全.合规问题等需求,探索私有化部署是产品无法绕开的一条路. 在面向 ToB 客户私有化的实际落地中,火 ...

随机推荐

  1. 多巴胺所表达的prediction error信号

    Dopamine reward prediction-error signalling: a two-component response (Wolfram Schultz; NATURE REVIE ...

  2. windows下使用Mingw执行make编译

    目录 windows下使用Mingw执行make编译 下载安装 Mingw 设置环境变量 验证环境 gcc mingw32-make 编译 一.准备好相关代码 二.执行Makefile 运行 优化 整 ...

  3. 题解 CF1401C

    题目大意: 给定一序列 \(A\),定义当且仅当 \(\gcd(a_i,a_j)=a_{min}\) 时,元素 \(a_i\) 和 \(a_j\) 可以交换. 问当前给定的序列 \(A\) 能否转化为 ...

  4. R!!C!!E!!

    打开页面只有一句话提示,提示有敏感信息泄露 这里的话使用dirresearch扫描网站结构 在这里我们可以看到响应码正常且有反应的多数都是.git文件 这里我们使用Git源码下载的脚本下载Git源码 ...

  5. javaweb项目搭建|前端项目【包含增删改查,mysql】二

    首先,新建一个javaweb项目[前提已经下载tomcat,mysql,此实验idea版本为2022,其他版本可能位置不一样] File->New->Project 起一个项目名称(随便起 ...

  6. 关于Maven执行mvn help:system命令报错

    报错: [ERROR] Error executing Maven.[ERROR] 2 problems were encountered while building the effective s ...

  7. 从0开始用Maven

    一.Maven的介绍即相关概念 Maven是一款构建和管理Java项目的工具,它将项目开发和管理过程抽象成一个项目对象模型(POM),提供了一种统一的项目结构. Maven官网 1.为什么使用Mave ...

  8. 最新版本——Hadoop3.3.6单机版完全部署指南

    大家好,我是独孤风,大数据流动的作者. 本文基于最新的 Hadoop 3.3.6 的版本编写,带大家通过单机版充分了解 Apache Hadoop 的使用.本文更强调实践,实践是大数据学习的重要环节, ...

  9. 编辑linux服务启动命令(app-script.sh命令编写)

    #!/bin/sh# 注:这里可替换为你自己的执行程序,其他代码无需更改APP_NAME=app-biz.jar #使用说明,用来提示输入参数usage() { echo "Usage: s ...

  10. Socket.D 网络应用协议,v2.1.6 发布

    有用户说,"Socket.D 之于 Socket,尤如 Vue 之于 Js.Mvc 之于 Http" 与其它协议的简单对比 对比项目 socket.d http websocket ...