首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

”数据血缘“入门

什么是数据血缘? 数据的产生、加工融合、流转流通,到最终消亡,数据之间自然会形成一种关系。借鉴人类社会中类似的一种关系来表达数据之间的这种关系,称之为数据的血缘关系。数据血缘是元数据的组成部分之一。...它分析表和字段从数据源到当前表的血缘路径,以及血缘字段之间存在的关系是否满足,关注的数据一致性以及表设计的合理性。...可追溯性 数据的血缘关系,体现了数据的生命周期,体现了数据从产生到消亡的整个过程,具备可追溯性。 层次性 数据的血缘关系是有层次的。...数据血缘分析 即数据“前向”血缘。通过指定表/字段,来追溯其前向多级对象。 数据影响分析 即数据“后向”血缘。通过指定表/字段,来关联其后向多级对象。...对象关联分析 除了我们通常意义上的血缘外,还有一种更为广义上的血缘。对象间不只有数据级关系,还有一种引用级关系,即对象间关联使用,包括但不限于表、视图、模型、报表、作业等。

10.1K51

聊聊Hive数据血缘——从Atlas没有列级血缘的Bug讲起

前几天,Datahub提供了最新的字段级别数据血缘功能,很多朋友迫不及待想对比一下Datahub的字段级血缘与Atlas的区别。...这个时候问题来了,在Atlas收集Hive血缘的时候,由于部分版本问题,没有显示出字段级的数据血缘。这是为什么呢?其实只要做一个简单的修复就可以了,但是知其然也要知其所以然。...正文开始: 通过本文档,可以快速的解决Hive在Altas字段级血缘没有生成的问题,并了解Hive数据血缘实现原理。更多元数据管理,数据血缘相关文章,可以关注后续的文章更新。...但是,很多同学在按该步骤操作完以后,字段级数据血缘并未生成。这是为什么呢?...四、Hive表数据血缘实现 表的实现就比较简单了。

1.5K10
您找到你想要的搜索结果了吗?
是的
没有找到

Spark App 血缘解析方案

作者:三余 部门:数据中台 一.背景 随着数据仓库数据量的增长,数据血缘( Data Lineage or Data Provence ) 对于数据分析来说日益重要, 通过数据血缘可以追溯表-表,表-...目前已经基于ANTLR 语法解析支持了 SQL 任务的血缘解析,而 Spark App 任务的血缘仍然是通过人工配置方式进行。我们希望能够将 Spark App 任务的解析做个补充,完善血缘逻辑。..._jsparkSession) ‍ 3.1.2 血缘解析 血缘解析逻辑在SplineAgent.handle()方法,通过调用LineageHarvester.harvest(),获取最终血缘,并交给...血缘解析基于写入触发, 所以如果任务只做查询是解析不到血缘的 虽然仍有一些不足,但是 spline agent 能够无感知的为线上运行的 Spark APP 程序增加血缘解析能力,是个很不错的思路,后续可以基于这个方向进行进一步的研究优化...Spark APP 的血缘准确率。

2.2K30

数据血缘关系:数据库Neo4j存储实现

数据血缘关系包含了集群血缘关系、系统血缘关系、表级血缘关系和字段血缘关系,其指向数据的上游来源,向上游追根溯源。...然后存储到数据库Neo4j。...选择数据库存储,是因为数据库是基于图论实现的新型数据库,擅长处理点和边组成的复杂关系网络,执行和查询效率较传统关系型数据库具有无可比拟的优势。...本篇会讲解数据血缘关系上功能应用和数据Neo4j安装使用与实例讲解。...Neo4j创建的是用顶点和边构建一个有向,其查询语言cypher已经成为事实上的标准。 数据库Neo4j涉及内容较多,笔者这里仅讲最基础基本元素与概念,方便下面例子讲解。

8.4K41

基于Spline的数据血缘解析

一、前言 什么是数据血缘?数据血缘是数据产生、加工、转化,数据之间产生的关系。随着公司业务发展,通过数据血缘,能知道数据的流向,以便我们更好地进行数据治理。 二、为什么选择 Spline?...,但政采云大数据平台,基于业务需要,字段血缘需要跟作业绑定,若通过消费 Kafka 的方式,无法在获取字段血缘数据的同时跟作业绑定。...附,Spline REST 文档 1、血缘解析流程 Htools:政采云大数据平台的一个调度工具 IData:政采云大数据平台应用层 2、基于接口解析血缘 解析字段血缘,主要涉及到 Consumer...4、调优 表、字段血缘跟作业绑定,故,若作业无变化的情况,表、字段的血缘是不会变化的,在作业调度完后,调用解析血缘的接口时,我们结合当前作业版本和前一次血缘记录中的作业版本进行比对,若作业版本不一致的情况才更新血缘...,后续只有在作业版本有变化的时候才会重新解析血缘

54820

元数据管理与数据血缘

比如数据表格的Schema信息,任务的血缘关系,用户和脚本/任务的权限映射关系信息等等。...数据的血缘关系信息 血缘信息或者叫做Lineage的血统信息是什么,简单的说就是数据之间的上下游来源去向关系,数据从哪里来到哪里去。知道这个信息有什么用呢?...最后,关于数据的血缘关系跟踪,再多说两句。...,不能提前获取血缘信息 临时脚本或者错误的脚本逻辑对血缘关系数据的污染 简单总结一下,就是基于运行时的信息来采集血缘关系,由于缺乏静态的业务信息辅助,如何甄别和更新血缘关系的生命周期和有效性会是一个棘手的问题...当然,这种方案也有自己的短板需要克服,比如:如果脚本管控不到位,血缘关系分析可能覆盖不全;血缘关系是基于最新的脚本的静态的逻辑关系,无法做到基于某一次真实的运行实例进行分析。

39310

「AntV」基于AntV G6 实现 数据血缘有序分组dag链路排版

近期花一个多月做了一个数据血缘,由于涉及到一些算法和盒子模型的知识点,具有一定的学习借鉴价值,同时应各位同事的要求,在此做一下分享。...搜索后,下部出现对应的该实体的链路,链路中的节点需要分组,分层显示到对应的区域。...三 需求价值 市面上的一些血缘链路 所有的血缘都是节点和边组成,节点代表实体,表,api,应用,线代表任务或者作业。 有些血缘数据流转没有从左到右的方向,而有些没有表现出分层的概念。...相比其他数据产品的血缘链路,此次的改造,核心改良点有四个: 核心改良点: 数据链路中从左到右应包含,从数据源出发的表,到分层数据,未分层数据,接着到API,最后流转到APP。...搜索G6提供的相关遍历方法,找到节点上下游遍历方法 做多种尝试,做出最小demo解决问题,一次一小步,逐步完成。

22110

元数据管理实践&数据血缘

比如数据表格的Schema信息,任务的血缘关系,用户和脚本/任务的权限映射关系信息等等。...数据的血缘关系信息 血缘信息或者叫做Lineage的血统信息是什么,简单的说就是数据之间的上下游来源去向关系,数据从哪里来到哪里去。知道这个信息有什么用呢?...最后,关于数据的血缘关系跟踪,再多说两句。...,不能提前获取血缘信息 临时脚本或者错误的脚本逻辑对血缘关系数据的污染 简单总结一下,就是基于运行时的信息来采集血缘关系,由于缺乏静态的业务信息辅助,如何甄别和更新血缘关系的生命周期和有效性会是一个棘手的问题...当然,这种方案也有自己的短板需要克服,比如:如果脚本管控不到位,血缘关系分析可能覆盖不全;血缘关系是基于最新的脚本的静态的逻辑关系,无法做到基于某一次真实的运行实例进行分析。

1.6K40

数仓字段血缘解析实现—hive版

【本文大纲】 1、字段血缘分析的意义 2、实现方案选择 3、实现过程 4、总结 字段血缘分析的意义 数仓经常会碰到的两类问题: 1、两个数据报表进行对比,结果差异很大,需要人工核对分析指标的维度信息,比如从头分析数据指标从哪里来...处理条件是什么,最后才能分析出问题原因 ——数据回溯问题 2、基础数据表因某种原因需要修改字段,需要评估其对数仓的影响,费时费力,然后在做方案 —— 影响分析问题 这两类问题都属于数据血缘分析问题...,数据血缘分析还有其它的积极意义,比如: 问题定位分析 类似于影响分析,当程序运行出错时,可以方便找到问题的节点,并判断出问题的原因以及后续的影响 指标波动分析 当某个指标出现较大的波动时,可进行溯源分析...,判断是由哪条数据发生变化所导致的 数据体检 判定系统和数据的健康情况,是否存在大量的冗余数据、无效数据、无来源数据、重复计算、系统资源浪费等问题 数据评估 通过血缘分析和元数据,可以从数据的集中度、分布...代码 研究hive hooks 的api时,发现hive已经实现了一个血缘关系的hook: ? 只是这个hook 是把相关的依赖写在了 log里: ?

4.4K70

干货 | 携程数据血缘构建及应用

Hook在运行时采集血缘数据,发送到Kafka。Atlas消费Kafka数据,将关系写到数据库JanusGraph,并提供REST API。...针对各个计算引擎和传输工具DataX开发不同的解析插件,将解析好的血缘数据发送到Kafka,实时消费Kafka,把关系数据写到分布式数据JanusGraph。...具有很好的扩展性,通过多机集群可支持存储和查询数百亿的顶点和边的数据。JanusGraph是一个事务数据库,支持大量用户高并发地执行复杂的实时遍历。...以下是数据血缘写入数据库的模型,Hive字段单独为一个Lable,关系型DB字段为一个Label,关系分两种,LABELWRITE,LABELWRITE_TTL。...5.6 效果 在第一版使用的方式展示血缘关系,在上下游关系较多的时候,显示较为混乱,第二版改成树状表格的方式展示。

4.6K20

Atlas自动感知hivesql及sparksql血缘实践

这周真的是忙出天际,趁这会儿下班,赶紧补补文档,之前有说要整整血缘这块儿,源码都看好了,但没有展示的地方。...后来调研说atlas不错,就想着用atlas跑一把,看能不能打通,最后经过状况百出的编译,还真是跑通了,借助各种开源组件,atlas能自动感知hivesql及sparksql的表血缘和字段血缘,真的太棒了...bin:$HADOOP_HOME/sbin:$PATH 使用环境变量起作用 source /etc/profile 配制hive-hook 咱这次是跑通hive、sparksql两个hook,来实现血缘关系自动导入...test表没有血缘: sparksql执行inerst语句: 刷新atlas页面,获取test表的sparksql执行血缘: 用hivesql insert另一张表(test666)后,可以看到atlas...获取到了hivesql执行的血缘: 字段血缘

60831

datahub 中血缘的实现分析,在react中使用airbnb的visx可视化库来画有向无环

背景 做大数据的项目,必不可少的是要接触到数据血缘,它在大数据项目中有着很重要的作用。...之前在公司也做过一些案例,也看过很多友商的产品,阿里的DataWork,领英的Datahub, datawork的血缘使用的是 G6,自家的产品 Datahub使用的是 爱彼邻的 可视化库 visx...本篇文章就来谈谈datahub中的血缘。...查看源码 点击此处链接你将看到 datahub中的血缘, 由于是demo环境,数据有可能会被删掉,读者可以自行寻找。...该血缘的特性如下 上下游 自定义节点 节点可点击,操作 线的样式有多种 鼠标放置线上有辅助信息 可以展开上下游 最基本的放大,缩小视图 F12 节点的源码,发现使用的是SVG 实现的 标签的类前缀都是

37930

马哈鱼带你发现SQL中的数据血缘

那么到底什么是数据的血缘关系 (data lineage) 呢? 维基百科上的定义是:数据从哪里来,往哪里去,中间发生了哪些变化。 马哈鱼数据血缘分析器通过分析 SQL 脚本,给出完整的数据血缘关系。...二、马哈鱼数据血缘分析器是怎样工作的 本视频介绍如何利用马哈鱼数据血缘分析器来快速发现 create view SQL 语句中各个表和字段的血缘关系,并用可视化的方式展现出来。...四、产品版本 1.马哈鱼数据血缘分析器 马哈鱼数据血缘分析器是一个 SaaS 服务。通过浏览器直接使用,无需安装任何软件。 通过浏览器访问马哈鱼数据血缘分析器。 在浏览器中上传SQL文本或文件。...点击分析按钮后,查看数据血缘关系的可视化结果。 在浏览器中,以交互形式,查看特定表或视图的完整血缘关系。...六、马哈鱼数据血缘分析器的局限 马哈鱼数据血缘分析器仅仅通过分析 SQL 脚本,包含存储过程(proceudre, function, trigger)来获取数据库中 的数据血缘关系。

2.6K20

数据血缘分析-Python代码的智能解析

血缘分析是解决这类问题的一种技术手段。数据血缘(Data Lineage),指的是数据从产生、ETL处理、加工、融合、流转到最终消亡,数据之间自然形成一种关系。这些关系就是描述数据的数据(元数据)。...那么如何推导数据之间的血缘关系呢?其实在开发或者分析师团队提供的成百上千的数据脚本中,每一行代码背后都蕴含着业务逻辑和数据关系。...以 CPython 为例,编译过程如下: 将源代码解析为解析树(Parser Tree) 将解析树转换为抽象语法树(Abstract Syntax Tree) 将抽象语法树转换到控制流(Control...Flow Graph) 根据流将字节码(bytecode)发送给虚拟机(eval) 我们平常在python开发环境中编写代码时,IDE会提示各种编写过程中的语法错误,本质上是代码静态检查,对代码的内容和结构进行解析和分析

1.6K41
领券