一种数据资产地图的构建方法技术

技术编号:39403049 阅读:14 留言:0更新日期:2023-11-19 15:54
本发明专利技术公开了一种数据资产地图的构建方法,步骤

【技术实现步骤摘要】
一种数据资产地图的构建方法


[0001]本专利技术属于数据资产地图构建
,具体涉及一种数据资产地图的构建方法


技术介绍

[0002]随着业务的发展和数据体量的不断增加,企业内部数据孤岛问题日益显著

为解决企业找数难

用数难等问题,现基于已摄取的资产目录,以数据表为基本单元,构建一张数据地图来帮助用户实现快速查找数据

有效使用数据

以及链路分析等功能场景,进而实现数据价值最大化

[0003]目前大多数数据地图的构建都是基于任务配置和手动关联,然后将解析出来的血缘关系存储在
Mysql
库中

但无论是任务配置还是手动关联,总的来说都存在一个问题就是解析血缘关系均需要依赖开发人员主观意识的节点选定

[0004]另外这种构建方式还将会衍生出一下几个问题:
[0005]1.
无法解放开发人员的双手,增大开发人员的工作量;
[0006]2.
依赖配置将会导致血缘关系解析准确率低下;
[0007]3.
血缘解析的粒度不够细,应该包含表任务血缘
(
任务和表的血缘关系
)
;表表血缘
(
表和表之间的血缘关系
)
,字段血缘
(
字段和字段之间的血缘关系
)

[0008]4.
血缘查询或者链路分析时后端存储库压力大,造成用户体验不够好

[0009]因此,针对上述问题,予以进一步改进


技术实现思路

[0010]本专利技术的主要目的在于提供一种数据资产地图的构建方法,依据配置和任务的具体
sql
,采用语法解析工具
antlr
,最终解析出具体表任务血缘,表表血缘,和字段血缘,然后将血缘关系同时存储到
Mysql
数据库和图数据库
JanusGraph


这种构建方式不仅解决了
技术介绍
的痛点,更是支持用户秒级查询血缘和链路分析

[0011]为达到以上目的,本专利技术提供一种数据资产地图的构建方法,包括以下步骤:
[0012]步骤
S1
:通过血缘摄取模块进行摄取,以获取所要解析的任务,包括实时获取和全量获取,其中:
[0013]对于实时获取,当用户进行包括新建

测试

修改和删除任务时,数仓服务端会以实时事件的方式将用户进行的任务
(
具体行为事件
)
发送给资产平台服务端,最后解析出新的血缘替换老的血缘;
[0014]对于全量获取,通过设定时间并且以定时方式解析当前所有被发布的任务,通过兜底操作从而防止实时事件遗漏某些任务的血缘解析
(
保障了血缘解析的覆盖面
)

[0015]步骤
S2
:通过血缘解析模块进行解析,资产平台服务端获取到要解析的任务时,会获取任务的具体元数据信息,包括但不限于任务配置信息,然后依据任务配置信息构建出表任务关系,再将具体任务的
sql
发送给血缘解析服务,血缘解析服务会返回该任务的输入
表信息和输出表信息,以及输入表信息被使用到的字段信息和产出的输出表信息的字段信息,最后资产平台服务端将根据输入输出信息以节点和边的关系构建出血缘关系并且存储在
mysql

[0016]步骤
S3
:通过血缘查询模块进行查询,当每天全量解析完任务的血缘时,资产平台服务端会将
mysql
中的所有关系对读取出来,然后组装成
Janusgraph
图数据库接受的格式存储到图数据库;当用户进行简单查询时
(
比如单节点查询或者是一级查询时
)
,资产平台服务端将会从
mysql
中查询出关系对并且组装成节点和边,最终通过前端构建出一张可视化资产图;当用户进行复杂的血缘查询或者是链路分析时,资产平台服务端就从图数据库中读取数据并且展示给前端;
[0017]步骤
S4
:通过链路分析模块进行链路分析,资产平台服务端在有限时间内计算出所有下游节点,最终将影响到的业务表返回给用户
(
例如,除了血缘查询之外用户一般还会用到一些其他的链路分析功能,比如影响分析

影响分析功能就是当链路中某个节点有元数据修改时用户需要及时通知下游表
owner
的具体修改内容,或者是出现异常时用户需要及时评估出对下游的影响面,以及恢复时间限制
)。
[0018]作为上述技术方案的进一步优选的技术方案,步骤
S1
中,通过解析工具
anltr4
进行解析,该解析工具根据自定义语法规则来解析
sql
语句从而生成语法树,然后再在语法树中抽取所需结果,整体过程是:
[0019]自定义语法规则或模板,在代码中事先定义所需解析的内容
(
比如是表与表之间的血缘还是字段与字段之间的血缘
)

[0020]通过服务监听
sql
语句,在有
sql
运行的时候实时进行感知,对
sql
语句的内容根据事先定义的模板进行解析,并且将表间血缘和字段间血缘从
sql
语句中抽取出来

[0021]为达到以上目的,本专利技术还提供一种电子设备,包括存储器

处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述数据资产地图的构建方法的步骤

[0022]为达到以上目的,本专利技术还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述数据资产地图的构建方法的步骤

附图说明
[0023]图1是本专利技术的一种数据资产地图的构建方法的示意图

具体实施方式
[0024]以下描述用于揭露本专利技术以使本领域技术人员能够实现本专利技术

以下描述中的优选实施例只作为举例,本领域技术人员可以想到其他显而易见的变型

在以下描述中界定的本专利技术的基本原理可以应用于其他实施方案

变形方案

改进方案

等同方案以及没有背离本专利技术的精神和范围的其他技术方案

[0025]在本专利技术的优选实施例中,本领域技术人员应注意,本专利技术所涉及的电子设备和存储介质等可被视为现有技术

[0026]优选实施例

[0027]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种数据资产地图的构建方法,其特征在于,包括以下步骤:步骤
S1
:通过血缘摄取模块进行摄取,以获取所要解析的任务,包括实时获取和全量获取,其中:对于实时获取,当用户进行包括新建

测试

修改和删除任务时,数仓服务端会以实时事件的方式将用户进行的任务发送给资产平台服务端,最后解析出新的血缘替换老的血缘;对于全量获取,通过设定时间并且以定时方式解析当前所有被发布的任务,通过兜底操作从而防止实时事件遗漏某些任务的血缘解析;步骤
S2
:通过血缘解析模块进行解析,资产平台服务端获取到要解析的任务时,会获取任务的具体元数据信息,包括但不限于任务配置信息,然后依据任务配置信息构建出表任务关系,再将具体任务的
sql
发送给血缘解析服务,血缘解析服务会返回该任务的输入表信息和输出表信息,以及输入表信息被使用到的字段信息和产出的输出表信息的字段信息,最后资产平台服务端将根据输入输出信息以节点和边的关系构建出血缘关系并且存储在
mysql
;步骤
S3
:通过血缘查询模块进行查询,当每天全量解析完任务的血缘时,资产平台服务端会将
mysql
中的所有关系对读取出来,然后组装成
Janusgraph
图数据库接受的格式存储到图数据库;当用户进行简单查询时,资产平台服务端将会从
mysql
中查询出关系对并且组装成...

【专利技术属性】
技术研发人员:张婷婷许彦超李刚谢素萍
申请(专利权)人:数字扁担浙江科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1