数据血缘实现原理

数据血缘是指数据从产生到消亡过程中形成的关联关系。它有助于提升调度性能、数据异常定位和调度依赖判断。本文介绍了数据血缘的基本概念、常见用途,以及通过SQL解析(正则和AST语法树)实现表级别数据血缘的原理。
摘要由CSDN通过智能技术生成

市面上其实针对数据血缘的产品有很多,像阿里DataWorks的数据地图、字节的DataLeap以及非常火的开源产品Apache Atlas都是非常好用工具产品。但是本质上是想通过这篇文章,让小伙伴们在使用这些产品的时候多去思考这些产品背后的实现原理。

1、前言

大数据时代,数据的来源极其广泛,各种类型的数据在快速产生,数据也是爆发性增长。从数据的产生,通过加工融合流转产生新的数据,到最终消亡,数据之间的关联关系可以称之为数据血缘关系。在数据中台的大背景下,数仓的开发者经常需要解决以下问题:

面对成百上千张的数据表,不知道该如何关联,也不知道这些表具有什么业务价值

执行过长,慢的无法忍受的SQL脚本,却不敢轻易进行整改

数据表是否包含机密数据需要被清理,以及这些机密数据是否被转存导致权限放大

其实,以上的这些问题都可以统一归类为数据发现问题。大部分企业会针对离线数仓任务进行SQL分析,构建表和字段的血缘关系,数据发现包括但不限于: 数据 表/列的业务分类分级和机密字段识别等。

2、数据血缘的基本概念

数据血缘(Data Lineage),指的是数据从产生、ETL处理、加工、融合、流转到最终消亡,数据之间自然形成一种关系。这些关系就是描述数据的数据(元数据&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值