基于图模型的数据血缘关系存储方法、系统、介质和设备技术方案

技术编号:22135343 阅读:28 留言:0更新日期:2019-09-18 09:03
本发明专利技术提供一种基于图模型的数据血缘关系存储方法,包括:解析数据加工脚本中的SQL语句;创建初始图模型;将所述解析结果与初始图模型关联;重复以上操作,遍历所有数据加工脚本中的SQL语句,生成一血缘关系图模型。本发明专利技术实施例的上述方案利用图模型直接将数据作为图的节点、关系、属性存储到图数据库中,无需预先设计复杂的关系型数据表结构,大幅降低了此类场景的设计难度和复杂度;第二,得益于图数据库Neo4j的内存计算机制和优化的数据结构,在大量数据下,能够在几毫秒内快速完成数据血缘上下游层级数量、依赖表数量的统计,以及快速完成数据字段和数据表依赖关系的检索。

Data Kinship Storage Method, System, Media and Equipment Based on Graph Model

【技术实现步骤摘要】
基于图模型的数据血缘关系存储方法、系统、介质和设备
本专利技术涉及软件
,具体而言,涉及一种基于图模型的数据血缘关系存储方法、系统、介质和电子设备。
技术介绍
现有技术中,数据仓库为了支持不同的业务会产生大量的数据表与数据,当排查数据质量问题、清理冗余数据及研究数据流向链路的时候,难以快速理清大量数据之间的血缘依赖关系。通常采用人工记录或基于mysql等关系型数据库的形式来存储基于图模型的数据血缘关系,然而,这种方式复杂度较高、容易出错、无法支持复杂的数据血缘分析、难以应对在大规模数据下的性能要求。因此,在长期的研发当中,专利技术人对基于图模型的数据血缘关系的存储进行了大量的研究,提出了一种基于图模型的数据血缘关系存储方法,以解决上述技术问题之一。
技术实现思路
本专利技术的目的在于提供一种基于图模型的数据血缘关系存储方法、系统、介质和电子设备,能够解决上述提到的至少一个技术问题。具体方案如下:根据本专利技术的具体实施方式,第一方面,本专利技术提供一种基于图模型的数据血缘关系存储方法,其特征在于,包括:解析数据加工脚本中的SQL语句;创建初始图模型;将所述解析结果与初始图模型关联;重复以上操作,遍历所有数据加工脚本中的SQL语句,生成一血缘关系图模型。其中,所述解析数据加工脚本中的SQL语句之后,包括:获取数据源表名称及字段名称、数据目标表名称及字段名称、数据源表与数据目标表字段之间的关系。其中,所述创建初始图模型具体包括:在图数据库Neo4j中创建初始图模型。其中,所述将所述解析结果与初始图模型关联包括:将所述数据源表字段名称及所述数据目标表字段名称分别作为所述初始图模型的节点,写入所述图数据库Neo4j。其中,所述将所述解析结果与初始图模型关联还包括:将所述数据源表名称及所述数据目标表名称分别作为所述初始图模型节点的属性,写入所述图数据库Neo4j。其中,所述将所述解析结果与初始图模型关联包括:将所述数据源表字段名称及所述数据目标表字段名称的关系作为所述初始图模型的边,写入所述图数据库Neo4j。其中,包括可视化展示所述血缘关系图模型。其中,所述血缘关系图模型为一网状图,其中,所述网状图以一个节点为中心,其它节点与中心节点进行关联,同时按照血缘关系的深度对不同节点进行颜色区分。其中,所述血缘关系图模型中的节点信息包括:表名称、上游层数、下游层数、上游表数量、下游表数量、直接上游表数量、直接下游表数量及直接下游表字段列表。其中,所述直接下游表字段列表中每个列表的信息包括数据源表字段名称及数据目标表字段名称之间的关系。根据本专利技术的具体实施方式,第二方面,本专利技术提供一种基于图模型的数据血缘关系存储系统,其特征在于,包括:解析模块,用于解析数据加工脚本中的SQL语句;创建模块,用于在一图数据库Neo4j中创建一初始图模型;节点写入模块,用于将所述数据源表字段名称及所述数据目标表字段名称分别作为所述初始图模型的节点,写入所述图数据库Neo4j;属性写入模块,用于将所述数据源表名称及所述数据目标表名称作为所述初始图模型节点的属性,写入所述图数据库Neo4j;关系写入模块,用于将所述数据源表字段名称及所述数据目标表字段名称的关系作为所述初始图模型的边,写入所述图数据库Neo4j;遍历模块,用于遍历解析所有数据加工脚本中的SQL语句,生成一血缘关系图模型。其中,所述解析模块还用于获取数据源表名称及字段名称、数据目标表名称及字段名称、数据源表与数据目标表字段之间的关系。其中,所述血缘关系图模型中的节点信息包括:表名称、上游层数、下游层数、上游表数量、下游表数量、直接上游表数量、直接下游表数量及直接下游表字段列表。根据本专利技术的具体实施方式,第三方面,本专利技术提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上任一项所述的基于图模型的数据血缘关系存储方法。根据本专利技术的具体实施方式,第四方面,本专利技术提供一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上任一项所述的基于图模型的数据血缘关系存储方法。本专利技术实施例的上述方案利用图模型直接将数据作为图的节点、关系、属性存储到图数据库中,无需预先设计复杂的关系型数据表结构,大幅降低了此类场景的设计难度和复杂度;第二,得益于图数据库Neo4j的内存计算机制和优化的数据结构,在大量数据下,能够在几毫秒内快速完成数据血缘上下游层级数量、依赖表数量的统计,以及快速完成数据字段和数据表依赖关系的检索。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本专利技术的实施例,并与说明书一起用于解释本专利技术的原理。显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:图1示出了根据本专利技术某一实施例的一种基于图模型的数据血缘关系存储方法的流程图;图2示出了根据本专利技术另一实施例的一种基于图模型的数据血缘关系存储方法的流程图;图3示出了根据本专利技术实施例的一种基于图模型的数据血缘关系存储系统的结构示意图;图4示出了根据本专利技术的实施例的电子设备的结构示意图。具体实施方式为了使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术作进一步地详细描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。在本专利技术实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本专利技术。在本专利技术实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。应当理解,尽管在本专利技术实施例中可能采用术语第一、第二、第三等来描述……,但这些……不应限于这些术语。这些术语仅用来将……区分开。例如,在不脱离本专利技术实施例范围的情况下,第一……也可以被称为第二……,类似地,第二……也可以被称为第一……。取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者装置中还存在另外的相同要素。大数据时代,数据蕴藏着无限的价值。移动本文档来自技高网...

【技术保护点】
1.一种基于图模型的数据血缘关系存储方法,其特征在于,包括:解析数据加工脚本中的SQL语句;创建初始图模型;将所述解析结果与初始图模型关联;重复以上操作,遍历所有数据加工脚本中的SQL语句,生成一血缘关系图模型。

【技术特征摘要】
1.一种基于图模型的数据血缘关系存储方法,其特征在于,包括:解析数据加工脚本中的SQL语句;创建初始图模型;将所述解析结果与初始图模型关联;重复以上操作,遍历所有数据加工脚本中的SQL语句,生成一血缘关系图模型。2.根据权利要求1所述的方法,其特征在于,其中所述解析数据加工脚本中的SQL语句之后,包括:获取数据源表名称及字段名称、数据目标表名称及字段名称、数据源表与数据目标表字段之间的关系。3.根据权利要求2所述的方法,其特征在于,其中所述创建初始图模型具体包括:在图数据库Neo4j中创建初始图模型。4.根据权利要求3所述的方法,其特征在于,其中所述将所述解析结果与初始图模型关联包括:将所述数据源表字段名称及所述数据目标表字段名称分别作为所述初始图模型的节点,写入所述图数据库Neo4j。5.根据权利要求3所述的方法,其特征在于,其中所述将所述解析结果与初始图模型关联还包括:将所述数据源表名称及所述数据目标表名称分别作为所述初始图模型节点的属性,写入所述图数据库Neo4j。6.根据权利要求3所述的方法,其特征在于,其中所述将所述解析结果与初始图模型关联包括:将所述数据源表字段名称及所述数据目标表字段名称的关系作为所述初始图模型的边,写入所述图数据库Neo4j。...

【专利技术属性】
技术研发人员:陈政潘强蔡灿张翼飞
申请(专利权)人:重庆天蓬网络有限公司
类型:发明
国别省市:重庆,50

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

1