CN117290355B - 一种元数据地图构建系统 - Google Patents
一种元数据地图构建系统 Download PDFInfo
- Publication number
- CN117290355B CN117290355B CN202311097983.0A CN202311097983A CN117290355B CN 117290355 B CN117290355 B CN 117290355B CN 202311097983 A CN202311097983 A CN 202311097983A CN 117290355 B CN117290355 B CN 117290355B
- Authority
- CN
- China
- Prior art keywords
- data
- metadata
- database
- exchange
- relationship
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000010276 construction Methods 0.000 title abstract description 9
- 238000004364 calculation method Methods 0.000 claims abstract description 18
- 238000011144 upstream manufacturing Methods 0.000 claims description 51
- 239000008280 blood Substances 0.000 claims description 37
- 210000004369 blood Anatomy 0.000 claims description 37
- 238000004458 analytical method Methods 0.000 claims description 22
- 238000013507 mapping Methods 0.000 claims description 22
- 238000000034 method Methods 0.000 claims description 22
- 230000002159 abnormal effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 9
- 230000009286 beneficial effect Effects 0.000 description 3
- 125000002015 acyclic group Chemical group 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000001364 causal effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000004454 trace mineral analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2272—Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提出了一种元数据地图构建系统,涉及元数据技术领域,包括:元数据管理模块,其配置为对元数据进行采集,基于数据表构建数据血缘关系,将元数据和数据血缘关系存储至数据库;数据共享交换模块,其配置为根据数据的交换记录构建数据交换关系,将数据交换关系存储至数据库;数据计算模块,其配置为根据数据血缘关系和数据交换关系计算数据表之间的关系、数据库之间的关系和系统之间的关系;元数据地图模块,其配置为根据数据表之间的关系绘制数据表元数据地图、根据数据库之间的关系绘制数据库元数据地图以及根据系统之间的关系绘制系统元数据地图。本发明充分的利用了所有的元数据,并对数据实现更合理的应用。
Description
技术领域
本发明涉及元数据技术领域,尤其涉及一种元数据地图构建系统。
背景技术
目前大数据平台中的元数据管理模块记录了数据处理生命周期中的数据来源和数据去向,形成数据血缘。对数据进行采集、加工、转换生成新的数据,数据血缘就是指数据生成的链路关系。一般用有向无环图描述数据血缘。
数据血缘带来的价值:(1)故障影响分析。当出现故障后,某个表及其字段的数据出现问题,可以迅速判断后续影响。(2)数据波动分析。当某个数据有较大波动时,可进行溯源分析,找出哪些上游数据影响了该数据的波动。(3)数据价值评估。通过数据血缘推算元数据关联数量,元数据被关联引用越多,说明该元数据越重要。
目前大数据平台中的数据共享交换模块实现了不同系统不同数据库之间表中数据的数据同步。数据共享交换模块是一个枢纽,管理数据提供方和数据需求方之间的数据共享交换。现有的元数据地图展示的是元数据管理模块中记录的数据血缘。
中国申请号为201410072773.0的发明专利公开了一种构建数据仓库表血缘关系图的方法和装置,其服务器解析访问数据仓库的每个数据仓库操作语句,得到每个数据仓库操作语句访问的数据仓库目的表的表名和每个数据仓库目的表对应的源数据仓库库表的表名,并根据每个数据仓库目的表的表名和每个数据仓库目的表对应的数据仓库来源表的表名,自动构建数据仓库表血缘关系图,减少了人工工作量,并且,提高了构建数据仓库表血缘关系的速度以及准确度。在构建了血缘关系后便可用来辅助对元数据、数据的利用。但该现有技术只是利用了血缘关系来构图,没有考虑到交换关系。
发明内容
有鉴于此,本发明提出了一种元数据地图构建系统,使用系统、数据库、表、字段和它们之间关系五个元数据构建元数据地图。构建的元数据地图中既包含元数据模块构建的数据血缘,也包括数据共享交换模块中的数据交换关系,充分的利用了所有的元数据,并对数据实现更合理的应用。
本发明的技术方案是这样实现的:
本发明提供一种元数据地图构建系统,包括:
元数据管理模块,其配置为对元数据进行采集,基于数据表构建数据血缘关系,将元数据和数据血缘关系存储至数据库;
数据共享交换模块,其配置为根据数据的交换记录构建数据交换关系,将数据交换关系存储至数据库;
数据计算模块,其配置为根据数据血缘关系和数据交换关系计算数据表之间的关系、数据库之间的关系和系统之间的关系;
元数据地图模块,其配置为根据数据表之间的关系绘制数据表元数据地图、根据数据库之间的关系绘制数据库元数据地图以及根据系统之间的关系绘制系统元数据地图。
进一步优选的,构建数据血缘关系的过程包括:
对数据表的表名信息和字段信息进行SQL解析,分析词法和语法,得到AST,AST中含有数据血缘信息;
对AST进行语义分析,通过遍历分析AST,获得数据表的表名和字段;
将数据表的表名和字段根据数据血缘信息进行一一映射,形成数据血缘关系。
进一步优选的,构建数据交换关系的过程包括:
根据需求表名模糊匹配搜索数据表,依据数据血缘关系在已发布的数据表中搜索需求表名的上游数据表和下游数据表,统计搜索结果数据表中上游数据表和下游数据表的数据交换次数;
根据数据交换次数从高到低的顺序对搜索结果数据表进行排序,用户根据排序结果推荐顺序选择数据表作为数据提供方,从元数据管理模块获取数据表对应的表名和字段,整理得到数据提供方信息,数据提供方信息包括最优提供方的数据表、表名、字段和数据交换次数;
用户选择数据表作为数据需求方,从元数据管理模块获取对应的表名和字段,整理得到数据需求方信息,数据需求方信息包括数据需求方的数据表、表名、字段和数据交换次数;
根据数据提供方信息和数据需求方信息构建数据交换关系,每一组数据交换关系为数据提供方信息中的字段与对应的数据需求方信息中的字段之间的一一映射关系。
进一步优选的,所述数据共享交换模块还配置为对数据交换关系进行校验:
步骤一、随机选择一组数据交换关系,将该组数据交换关系中数据提供方信息的数据表作为校验数据表,将该组数据交换关系中数据需求方信息的数据表作为对比数据表;
步骤二、根据校验数据表的表名和字段在元数据管理模块中按照数据血缘关系搜索其上游数据表,得到校验上游数据表;
步骤三、将校验上游数据表与对比数据表进行比对,若校验上游数据表与对比数据表相同,则判定该组数据交换关系异常,对该组数据交换关系予以删除;
步骤四、重复步骤一到步骤三,直至所有的数据交换关系均校验完毕。
进一步优选的,所述数据共享交换模块还配置为执行数据交换:
数据共享交换模块设有调度单元,调度单元根据交换任务发起调度请求;
根据调度请求从数据库中读取交换任务的数据提供方信息和数据需求方信息,对交换任务执行数据交换,同时使用DataX对交换任务进行离线数据同步;
在执行数据交换后,在交换任务对应的数据提供方信息和数据需求方信息中分别累加数据交换次数,并更新数据交换关系。
进一步优选的,所述数据计算模块包括:
关系存储单元,其配置为调取元数据管理模块中的数据血缘关系和数据共享交换模块中的数据交换关系,根据数据血缘关系和数据交换关系形成字段关系表,字段关系表为来源系统-来源数据库-来源数据表-来源字段-目标字段-目标数据表-目标数据库-目标系统;
第一计算单元,其配置为从字段关系表中提取来源数据表和目标数据表,将来源数据表与目标数据表进行去重,计算得到数据表之间的关系;
第二计算单元,其配置为从字段关系表中提取来源数据库和目标数据库,将来源数据库与目标数据库进行去重,计算得到数据库之间的关系;
第三计算单元,其配置为从字段关系表中提取来源系统和目标系统,将来源系统与目标系统进行去重,计算得到系统之间的关系。
进一步优选的,所述元数据地图模块包括:
第一地图单元,其配置为根据数据表、字段之间的关系、数据表之间的关系、数据交换次数绘制数据表元数据地图,数据表元数据地图为图结构,其顶点为数据表、字段及其数据交换次数,其边为字段之间的有向关系;
第二地图单元,其配置为根据数据库、数据表之间的关系、数据库之间的关系绘制数据库元数据地图,数据库元数据地图为图结构,其顶点为数据库及其数据表,其边为数据表之间的有向关系;
第三地图单元,其配置为根据系统、系统之间的关系、数据库之间的关系绘制系统元数据地图,系统元数据地图为图结构,其顶点为系统及其数据库,其边为数据库之间的有向关系。
进一步优选的,绘制数据表元数据地图的过程为:
输入数据表;
根据数据表之间的关系,搜索其下游的数据表;
根据数据表之间的关系,搜索其上游的数据表;
根据元数据采集的结果,查询数据表的字段;
将包含字段和数据交换次数的数据表绘制在画布上,作为顶点;
根据字段关系表,从输入数据表的字段为起点,向前搜索上游来源字段,从输入数据表的字段为起点,向后搜索下游目标字段;
将搜索到的上游来源字段和下游目标字段按照有向关系绘制在画布上,作为边。
进一步优选的,绘制数据库元数据地图的过程为:
输入数据库;
根据数据库之间的关系,搜索其下游的数据库;
根据数据库之间的关系,搜索其上游的数据库;
根据元数据采集的结果,查询数据库的数据表;
将包含数据表的数据库绘制在画布上,作为顶点;
根据字段关系表,从输入数据库的数据表为起点,向前搜索上游来源数据表,从输入数据库的数据表为起点,向后搜索下游目标数据表;
将搜索到的上游来源数据表和下游目标数据表按照有向关系绘制在画布上,作为边。
进一步优选的,绘制系统元数据地图的过程为:
输入系统;
根据系统之间的关系,搜索其下游的系统;
根据系统之间的关系,搜索其上游的系统;
根据元数据管理模块,查询系统的数据库;
将包含数据库的系统绘制在画布上,作为顶点;
根据字段关系表,从输入系统的数据库为起点,向前搜索上游来源数据库,从输入系统的数据库为起点,向后搜索下游目标数据库;
将搜索到的上游来源数据库和下游目标数据库按照有向关系绘制在画布上,作为边。
本发明的方法相对于现有技术具有以下有益效果:
(1)本发明通过元数据地图可以进行更深入的影响分析。元数据地图包含数据交换关系。依据数据交换关系,有助于评估数据表和字段的价值,有助于评估数据对数据交换涉及的系统、数据库、表和字段的影响;
(2)本发明通过元数据地图可以进行更深入的溯源分析。元数据地图包含数据交换关系。有助于探寻交换数据系统、数据库、表和字段的来源数据表和字段;
(3)本发明在形成数据交换关系时,依据数据交换次数对提供方数据进行一个价值排序,对数据交换关系的质量进行把关,在数据交换时,优先为用户推荐高价值的数据;
(4)本发明在构建了数据交换关系后,还增加了校验环节,根据数据来源唯一性的原则对数据提供方和数据需求方进行校验,避免出现数据交换环路关系,避免出现数据无法溯源的错误。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的元数据地图构建系统结构示意图;
图2为本发明实施例的数据计算模块的结构示意图;
图3为本发明实施例的元数据地图模块的结构示意图;
图4为本发明实施例的数据表元数据地图的简略示意图;
图5为本发明实施例的数据库元数据地图的简略示意图;
图6为本发明实施例的系统元数据地图的简略示意图。
具体实施方式
下面将结合本发明实施方式,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
如图1所示,本发明提供一种元数据地图构建系统,包括:
元数据管理模块,其配置为对元数据进行采集,基于数据表构建数据血缘关系,将元数据和数据血缘关系存储至数据库;
数据共享交换模块,其配置为根据数据的交换记录构建数据交换关系,将数据交换关系存储至数据库;
数据计算模块,其配置为根据数据血缘关系和数据交换关系计算数据表之间的关系、数据库之间的关系和系统之间的关系;
元数据地图模块,其配置为根据数据表之间的关系绘制数据表元数据地图、根据数据库之间的关系绘制数据库元数据地图以及根据系统之间的关系绘制系统元数据地图。
具体地,在本发明一实施例中,元数据管理模块负责采集元数据,将元数据存储到对应的数据库中,针对不同的数据库,采集元数据的方式也会存在不同。例如,Mysql数据库是采集其元数据库INFORMATION_SCHEMA的表TABLES,获取数据库、表和字段信息;Hive是采集其元数据库METASTORED的表DBS、TBLS、COLUMNS_V2。在元数据管理模块的数据库中,保存采集结果数据库->表->字段。
具体地,元数据管理模块统一管理数据库、以及每种数据库的元模型,元模型中即包含了数据库、表、字段和扩展信息。
具体地,元数据管理模块还负责录入用户的系统和数据库信息,本实施例中所述的系统指的是用户所用的系统,可看成是用户所需的系统配置集合。
具体地,本实施例中所采集的元数据是描述信息资源或数据等对象的数据,其主要是描述数据属性的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。元数据为多元化元数据,在数据表被创建时,对应的将形成元数据对数据表的表名、字段信息、字段类型、字段长度等进行描述,同时元数据也对数据表的存储位置进行描述,在后续产生了新的数据表、新的数据、更新了数据、数据关系等,都将对应形成元数据进行描述。
本实施例中,根据数据表之间的因果关系和逻辑关系可以构建数据血缘关系,构建数据血缘关系的过程包括:
对数据表的表名信息和字段信息进行SQL解析,分析词法和语法,得到AST,AST中含有数据血缘信息;
对AST进行语义分析,通过遍历分析AST,获得数据表的表名和字段;
将数据表的表名和字段根据数据血缘信息进行一一映射,形成数据血缘关系。
具体地,SQL指的是结构化查询语言,AST指的是抽象语法树,通过对数据表的表名信息和字段信息进行SQL工具解析,分析数据表中的表名信息、字段信息的词法和语法,每条SQL语句形成一个抽象语法树,之后对每条SQL语句的抽象语法树进行遍历,得到该条SQL语句中涉及到的字段以及表名。将在每个抽象语法树中提取到的字段以及表名先进行链接,例如,同一个数据表中的表名应多次链接至相应数据列的字段,若一个数据表的表名为Y1,该数据表中有3个字段w1、w2、w3,则在执行后续操作时,先将表名和字段链接成表字段Y1-w1、Y1-w2、Y1-w3。
而数据血缘关系则是一个表字段与表字段之间的有向关系,有向关系将每两个有关联的数据表分为上游数据表和下游数据表。具体地,形成数据血缘关系后,将其保存到元数据管理模块的数据库中。
具体地,本发明一实施例中,数据共享交换模块用于构建数据交换关系,数据交换关系的构建过程包括:
根据需求表名模糊匹配搜索数据表,依据数据血缘关系在已发布的数据表中搜索需求表名的上游数据表和下游数据表,统计搜索结果数据表中上游数据表和下游数据表的数据交换次数;
根据数据交换次数从高到低的顺序对搜索结果数据表进行排序,用户根据排序结果推荐顺序选择数据表作为数据提供方,从元数据管理模块获取数据表对应的表名和字段,整理得到数据提供方信息,数据提供方信息包括最优提供方的数据表、表名、字段和数据交换次数;
用户选择数据表作为数据需求方,从元数据管理模块获取对应的表名和字段,整理得到数据需求方信息,数据需求方信息包括数据需求方的数据表、表名、字段和数据交换次数;
根据数据提供方信息和数据需求方信息构建数据交换关系,每一组数据交换关系为数据提供方信息中的字段与对应的数据需求方信息中的字段之间的一一映射关系。
本实施例中,在构建数据交换关系时,先获取用户的需求,用户的需求具体可以是需求名称的形式,其表现为需求表名,将这个需求表名作为搜索目标。在确定需求表名后,便根据数据血缘关系来搜索与需求表名相关的上游数据表和下游数据表,搜索的方式可以是深度优先算法,将上游数据表作为第一列表,下游数据表作为第二列表。对于需求表名来说,第一列表和第二列表中的数据表都是用户所提供的需求表名相关联的数据表。
具体地,在搜索得到第一列表和第二列表之后,同时还从元数据管理模块中调取并统计第一列表和第二列表中所有数据表到目前为止的数据交换次数,根据数据交换次数从低到高的顺序对第一列表和第二列表统一进行排序,数据交换次数越低,则表示该数据表的价值越高,数据交换次数越高,则表示该数据表已被多数用户进行交换,其价值也相应有所降低。将这个排序的顺序表展示给用户,用户根据自己的具体需求来选择数据表,用户在顺序表中选择的数据表则作为数据提供方,根据元数据管理模块中的元数据来寻址得到数据提供方的表名和字段。将数据提供方的数据表、表名、字段和数据交换次数整合之后即形成数据提供方信息。
之后,用户选定另外的数据表,作为数据需求方,根据元数据管理模块中的元数据来寻址得到数据需求方的表名和字段,也将数据需求方的数据表、表名、字段和数据交换次数整合之后即形成数据需求方信息。
通过对所有的表名进行遍历执行上述步骤,则得到各个数据表的字段之间的映射关系,即可得到数据交换关系。
具体地,本发明一实施例中,所述数据共享交换模块还配置为对数据交换关系进行校验:
步骤一、随机选择一组数据交换关系,将该组数据交换关系中数据提供方信息的数据表作为校验数据表,将该数据交换关系中数据需求方信息的数据表作为对比数据表;
步骤二、根据校验数据表的表名和字段在元数据管理模块中按照数据血缘关系搜索其上游数据表,得到校验上游数据表;
步骤三、将校验上游数据表与对比数据表进行比对,若校验上游数据表与对比数据表相同,则判定该组数据交换关系异常,对该组数据交换关系予以删除;
步骤四、重复步骤一到步骤三,直至所有的数据交换关系均校验完毕。
在得到数据交换关系后,将其存储至元数据管理模块和数据共享交换模块的数据库。
根据数据交换关系的构建过程可知,在确定数据需求方时,是由用户来选定,这样会存在数据需求方与数据提供方实质上相同的隐患,这个隐患会产生交换环路关系,导致数据来源不唯一,在后期溯源时系统会报错,导致无法溯源,因此,本实施例基于数据来源唯一原则设置了一种数据交换关系的校验机制,以此来避免交换环路的问题。
具体地,本发明一实施例中,所述数据共享交换模块还配置为执行数据交换:
数据共享交换模块设有调度单元,调度单元根据交换任务发起调度请求;
根据调度请求从数据库中读取交换任务的数据提供方信息和数据需求方信息,对交换任务执行数据交换,同时使用DataX对交换任务进行离线数据同步;
在执行数据交换后,在交换任务对应的数据提供方信息和数据需求方信息中分别累加数据交换次数,并更新数据交换关系。
本实施例中,用户在数据共享交换模块的页面发起交换任务,交换任务中包含了用户想要交换的数据以及用户选择的交换类型,调度单元接收到交换任务后,识别交换任务中的待交换的数据和交换类型并将其加入调度请求中,将调度请求发送至数据共享交换模块的数据库,同时调用DataX进行离线数据同步,从数据库中读取交换任务中待交换的数据,以待交换的数据为起点,分别在数据交换关系中搜索其数据提供方信息和数据需求方信息,根据交换类型确定待交换的数据是想要作为数据提供方还是数据需求方,基于用户选择的交换类型确定此次交换任务的数据交换关系。
在确定了数据交换关系后,便执行数据交换,并在数据交换的两个数据表及字段上累加数据交换次数。将更新后的数据交换关系存储至元数据管理模块和数据共享交换模块的数据库。
具体地,如图2所示,本发明一实施例中,所述数据计算模块包括:
关系存储单元,其配置为调取元数据管理模块中的数据血缘关系和数据共享交换模块中的数据交换关系,根据数据血缘关系和数据交换关系形成字段关系表,字段关系表为来源系统-来源数据库-来源数据表-来源字段-目标字段-目标数据表-目标数据库-目标系统;
第一计算单元,其配置为从字段关系表中提取来源数据表和目标数据表,将来源数据表与目标数据表进行去重,计算得到数据表之间的关系;
第二计算单元,其配置为从字段关系表中提取来源数据库和目标数据库,将来源数据库与目标数据库进行去重,计算得到数据库之间的关系;
第三计算单元,其配置为从字段关系表中提取来源系统和目标系统,将来源系统与目标系统进行去重,计算得到系统之间的关系。
本实施例中,数据血缘关系和数据交换关系为两种关系,其具体展示为两个有向无环图,在形成字段关系表的时候,是将数据血缘关系和数据交换关系中的上下游数据统一成来源数据和目标数据。即数据血缘关系中,一条血缘关系的上游数据作为来源数据,对应会得到来源系统、来源数据库、来源数据表、来源字段,其中,来源系统、来源数据库均可以从元数据管理模块的元数据中获取,相应地,一条血缘关系的下游数据则作为目标数据,对应会得到目标系统、目标数据库、目标数据表、目标字段,其中,目标系统、目标数据库均可以从元数据管理模块的元数据中获取。而数据交换关系中,一条数据交换关系的数据提供方作为来源数据,对应会得到来源系统、来源数据库、来源数据表、来源字段,其中,来源系统、来源数据库均可以从元数据管理模块的元数据中获取,相应地,一条数据交换关系的数据需求方则作为目标数据,对应会得到目标系统、目标数据库、目标数据表、目标字段,其中,目标系统、目标数据库均可以从元数据管理模块的元数据中获取。从数据血缘关系和数据交换关系中提取到所有的数据信息后,统一整理成字段关系表。
本实施例后续需要构建三种元数据地图,相应地,在数据计算模块也设置了三个计算单元,分别得到数据表之间的关系、数据库之间的关系和系统之间的关系。具体地,本实施例是采用去重的方式来得到这三种关系。
具体地,如图3所示,本发明一实施例中,所述元数据地图模块包括:
第一地图单元,其配置为根据数据表、字段之间的关系、数据表之间的关系、数据交换次数绘制数据表元数据地图,数据表元数据地图为图结构,其顶点为数据表、字段及其数据交换次数,其边为字段之间的有向关系;
第二地图单元,其配置为根据数据库、数据表之间的关系、数据库之间的关系绘制数据库元数据地图,数据库元数据地图为图结构,其顶点为数据库及其数据表,其边为数据表之间的有向关系;
第三地图单元,其配置为根据系统、系统之间的关系、数据库之间的关系绘制系统元数据地图,系统元数据地图为图结构,其顶点为系统及其数据库,其边为数据库之间的有向关系。
本实施例中,绘制数据表元数据地图的过程为:
输入数据表;
根据数据表之间的关系,搜索其下游的数据表;
根据数据表之间的关系,搜索其上游的数据表;
根据元数据采集的结果,查询数据表的字段;
将包含字段和数据交换次数的数据表绘制在画布上,作为顶点;
根据字段关系表,从输入数据表的字段为起点,向前搜索上游来源字段,从输入数据表的字段为起点,向后搜索下游目标字段;
将搜索到的上游来源字段和下游目标字段按照有向关系绘制在画布上,作为边。
具体地,本实施例的数据表元数据地图绘制后的简略示意图如图4所示,图4中括号中的数据则表示数据交换次数,本实施例在构建了数据交换关系后,将其融入了数据血缘关系中,也可以视作数据交换关系成了另一种意义上的数据血缘关系。图4是对数据表元数据地图中的7个数据表做了影响分析和溯源分析,影响分析为:以粗框所示的数据表为出发点,当改变了该数据表的数据时,其将会影响到下游两个数据表的数据,即虚线所指的两个数据表,应当知晓的是,图4的示例选择的是刚好具有数据交换关系的三个表,但数据血缘关系所关联的数据表也能应用本实施例的影响分析;溯源分析为:以粗框所示的数据表为出发点,对其进行来源搜索,能得到四个数据表,即实线所指的四个数据表,而在进行来源搜索时,不仅按数据血缘关系搜索,也按数据交换关系搜索,即搜索的是与粗框所示的数据表有关的所有数据表,以对其进行溯源。
请参阅图5,图5中的虚线与实线指代的意义与图4类似,只是溯源分析和影响分析的对象换成了数据库,具体过程在此不再赘述。本实施例中,绘制数据库元数据地图的过程为:
输入数据库;
根据数据库之间的关系,搜索其下游的数据库;
根据数据库之间的关系,搜索其上游的数据库;
根据元数据采集的结果,查询数据库的数据表;
将包含数据表的数据库绘制在画布上,作为顶点;
根据字段关系表,从输入数据库的数据表为起点,向前搜索上游来源数据表,从输入数据库的数据表为起点,向后搜索下游目标数据表;
将搜索到的上游来源数据表和下游目标数据表按照有向关系绘制在画布上,作为边。
请参阅图6,图6中的虚线与实线指代的意义与图4类似,只是溯源分析和影响分析的对象换成了系统,具体过程在此不再赘述。本实施例中,绘制系统元数据地图的过程为:
输入系统;
根据系统之间的关系,搜索其下游的系统;
根据系统之间的关系,搜索其上游的系统;
根据元数据管理模块,查询系统的数据库;
将包含数据库的系统绘制在画布上,作为顶点;
根据字段关系表,从输入系统的数据库为起点,向前搜索上游来源数据库,从输入系统的数据库为起点,向后搜索下游目标数据库;
将搜索到的上游来源数据库和下游目标数据库按照有向关系绘制在画布上,作为边。
以上所述仅为本发明的较佳实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种元数据地图构建系统,其特征在于,包括:
元数据管理模块,其配置为对元数据进行采集,基于数据表构建数据血缘关系,将元数据和数据血缘关系存储至数据库;
构建数据血缘关系的过程包括:
对数据表的表名信息和字段信息进行SQL解析,分析词法和语法,得到AST,AST中含有数据血缘信息;
对AST进行语义分析,通过遍历分析AST,获得数据表的表名和字段;
将数据表的表名和字段根据数据血缘信息进行一一映射,形成数据血缘关系;
数据共享交换模块,其配置为根据数据的交换记录构建数据交换关系,将数据交换关系存储至数据库;
构建数据交换关系的过程包括:
根据需求表名模糊匹配搜索数据表,依据数据血缘关系在已发布的数据表中搜索需求表名的上游数据表和下游数据表,统计搜索结果数据表中上游数据表和下游数据表的数据交换次数;
根据数据交换次数从高到低的顺序对搜索结果数据表进行排序,用户根据排序结果推荐顺序选择数据表作为数据提供方,从元数据管理模块获取数据表对应的表名和字段,整理得到数据提供方信息,数据提供方信息包括最优提供方的数据表、表名、字段和数据交换次数;
用户选择数据表作为数据需求方,从元数据管理模块获取对应的表名和字段,整理得到数据需求方信息,数据需求方信息包括数据需求方的数据表、表名、字段和数据交换次数;
根据数据提供方信息和数据需求方信息构建数据交换关系,每一组数据交换关系为数据提供方信息中的字段与对应的数据需求方信息中的字段之间的一一映射关系;
数据计算模块,其配置为根据数据血缘关系和数据交换关系计算数据表之间的关系、数据库之间的关系和系统之间的关系;
元数据地图模块,其配置为根据数据表之间的关系绘制数据表元数据地图、根据数据库之间的关系绘制数据库元数据地图以及根据系统之间的关系绘制系统元数据地图。
2.如权利要求1所述的一种元数据地图构建系统,其特征在于,所述数据共享交换模块还配置为对数据交换关系进行校验:
步骤一、随机选择一组数据交换关系,将该组数据交换关系中数据提供方信息的数据表作为校验数据表,将该组数据交换关系中数据需求方信息的数据表作为对比数据表;
步骤二、根据校验数据表的表名和字段在元数据管理模块中按照数据血缘关系搜索其上游数据表,得到校验上游数据表;
步骤三、将校验上游数据表与对比数据表进行比对,若校验上游数据表与对比数据表相同,则判定该组数据交换关系异常,对该组数据交换关系予以删除;
步骤四、重复步骤一到步骤三,直至所有的数据交换关系均校验完毕。
3.如权利要求1所述的一种元数据地图构建系统,其特征在于,所述数据共享交换模块还配置为执行数据交换:
数据共享交换模块设有调度单元,调度单元根据交换任务发起调度请求;
根据调度请求从数据库中读取交换任务的数据提供方信息和数据需求方信息,对交换任务执行数据交换,同时使用DataX对交换任务进行离线数据同步;
在执行数据交换后,在交换任务对应的数据提供方信息和数据需求方信息中分别累加数据交换次数,并更新数据交换关系。
4.如权利要求1所述的一种元数据地图构建系统,其特征在于,所述数据计算模块包括:
关系存储单元,其配置为调取元数据管理模块中的数据血缘关系和数据共享交换模块中的数据交换关系,根据数据血缘关系和数据交换关系形成字段关系表,字段关系表为来源系统-来源数据库-来源数据表-来源字段-目标字段-目标数据表-目标数据库-目标系统;
第一计算单元,其配置为从字段关系表中提取来源数据表和目标数据表,将来源数据表与目标数据表进行去重,计算得到数据表之间的关系;
第二计算单元,其配置为从字段关系表中提取来源数据库和目标数据库,将来源数据库与目标数据库进行去重,计算得到数据库之间的关系;
第三计算单元,其配置为从字段关系表中提取来源系统和目标系统,将来源系统与目标系统进行去重,计算得到系统之间的关系。
5.如权利要求4所述的一种元数据地图构建系统,其特征在于,所述元数据地图模块包括:
第一地图单元,其配置为根据数据表、字段之间的关系、数据表之间的关系、数据交换次数绘制数据表元数据地图,数据表元数据地图为图结构,其顶点为数据表、字段及其数据交换次数,其边为字段之间的有向关系;
第二地图单元,其配置为根据数据库、数据表之间的关系、数据库之间的关系绘制数据库元数据地图,数据库元数据地图为图结构,其顶点为数据库及其数据表,其边为数据表之间的有向关系;
第三地图单元,其配置为根据系统、系统之间的关系、数据库之间的关系绘制系统元数据地图,系统元数据地图为图结构,其顶点为系统及其数据库,其边为数据库之间的有向关系。
6.如权利要求5所述的一种元数据地图构建系统,其特征在于,绘制数据表元数据地图的过程为:
输入数据表;
根据数据表之间的关系,搜索其下游的数据表;
根据数据表之间的关系,搜索其上游的数据表;
根据元数据采集的结果,查询数据表的字段;
将包含字段和数据交换次数的数据表绘制在画布上,作为顶点;
根据字段关系表,从输入数据表的字段为起点,向前搜索上游来源字段,从输入数据表的字段为起点,向后搜索下游目标字段;
将搜索到的上游来源字段和下游目标字段按照有向关系绘制在画布上,作为边。
7.如权利要求5所述的一种元数据地图构建系统,其特征在于,绘制数据库元数据地图的过程为:
输入数据库;
根据数据库之间的关系,搜索其下游的数据库;
根据数据库之间的关系,搜索其上游的数据库;
根据元数据采集的结果,查询数据库的数据表;
将包含数据表的数据库绘制在画布上,作为顶点;
根据字段关系表,从输入数据库的数据表为起点,向前搜索上游来源数据表,从输入数据库的数据表为起点,向后搜索下游目标数据表;
将搜索到的上游来源数据表和下游目标数据表按照有向关系绘制在画布上,作为边。
8.如权利要求5所述的一种元数据地图构建系统,其特征在于,绘制系统元数据地图的过程为:
输入系统;
根据系统之间的关系,搜索其下游的系统;
根据系统之间的关系,搜索其上游的系统;
根据元数据管理模块,查询系统的数据库;
将包含数据库的系统绘制在画布上,作为顶点;
根据字段关系表,从输入系统的数据库为起点,向前搜索上游来源数据库,从输入系统的数据库为起点,向后搜索下游目标数据库;
将搜索到的上游来源数据库和下游目标数据库按照有向关系绘制在画布上,作为边。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311097983.0A CN117290355B (zh) | 2023-08-29 | 2023-08-29 | 一种元数据地图构建系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311097983.0A CN117290355B (zh) | 2023-08-29 | 2023-08-29 | 一种元数据地图构建系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117290355A CN117290355A (zh) | 2023-12-26 |
CN117290355B true CN117290355B (zh) | 2024-05-14 |
Family
ID=89247135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311097983.0A Active CN117290355B (zh) | 2023-08-29 | 2023-08-29 | 一种元数据地图构建系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117290355B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017120087A1 (en) * | 2016-01-08 | 2017-07-13 | Microsoft Technology Licensing, Llc | Database operation using metadata of data sources |
CN109614433A (zh) * | 2018-12-13 | 2019-04-12 | 杭州数梦工场科技有限公司 | 业务系统间数据血缘的识别方法、装置、设备及存储介质 |
CN109710703A (zh) * | 2019-01-03 | 2019-05-03 | 北京顺丰同城科技有限公司 | 一种血缘关系网络的生成方法及装置 |
CN113486215A (zh) * | 2021-07-05 | 2021-10-08 | 中国工商银行股份有限公司 | 一种基于数据关联性的数据展示方法、装置及设备 |
CN114510611A (zh) * | 2022-04-20 | 2022-05-17 | 中信证券股份有限公司 | 一种构建元数据血缘图谱的方法、装置及相关设备 |
CN116541887A (zh) * | 2023-07-07 | 2023-08-04 | 云启智慧科技有限公司 | 一种大数据平台数据安全保护方法 |
-
2023
- 2023-08-29 CN CN202311097983.0A patent/CN117290355B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017120087A1 (en) * | 2016-01-08 | 2017-07-13 | Microsoft Technology Licensing, Llc | Database operation using metadata of data sources |
CN109614433A (zh) * | 2018-12-13 | 2019-04-12 | 杭州数梦工场科技有限公司 | 业务系统间数据血缘的识别方法、装置、设备及存储介质 |
CN109710703A (zh) * | 2019-01-03 | 2019-05-03 | 北京顺丰同城科技有限公司 | 一种血缘关系网络的生成方法及装置 |
CN113486215A (zh) * | 2021-07-05 | 2021-10-08 | 中国工商银行股份有限公司 | 一种基于数据关联性的数据展示方法、装置及设备 |
CN114510611A (zh) * | 2022-04-20 | 2022-05-17 | 中信证券股份有限公司 | 一种构建元数据血缘图谱的方法、装置及相关设备 |
CN116541887A (zh) * | 2023-07-07 | 2023-08-04 | 云启智慧科技有限公司 | 一种大数据平台数据安全保护方法 |
Also Published As
Publication number | Publication date |
---|---|
CN117290355A (zh) | 2023-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11977541B2 (en) | Systems and methods for rapid data analysis | |
CN109240901B (zh) | 性能分析方法、性能分析装置、存储介质和电子设备 | |
Vyawahare et al. | A hybrid database approach using graph and relational database | |
CN110019384B (zh) | 一种血缘数据的获取方法、提供血缘数据的方法及装置 | |
CN111382226A (zh) | 一种数据库查询检索方法、装置和电子设备 | |
CN113760891B (zh) | 一种数据表的生成方法、装置、设备和存储介质 | |
CN103970902A (zh) | 一种大量数据情况下的可靠即时检索方法及系统 | |
CN112988782B (zh) | Hive支持交互式查询的方法、装置及存储介质 | |
CN112000773B (zh) | 基于搜索引擎技术的数据关联关系挖掘方法及应用 | |
CN103902582B (zh) | 一种减少数据仓库数据冗余的方法和装置 | |
CN110909126A (zh) | 一种信息查询方法及装置 | |
CN116186174A (zh) | 基于数据分析的数据血缘关系图构建方法及相关设备 | |
CN112634004B (zh) | 征信数据的血缘图谱分析方法与系统 | |
CN117827881A (zh) | 一种基于历史信息的Spark SQL Shuffle任务数优化系统 | |
CN117076742A (zh) | 数据血缘追踪方法、装置及电子设备 | |
CN110580170B (zh) | 软件性能风险的识别方法及装置 | |
US11556531B2 (en) | Crux detection in search definitions | |
CN116610700A (zh) | 查询语句检测方法及装置、存储介质 | |
CN117290355B (zh) | 一种元数据地图构建系统 | |
CN110895529B (zh) | 结构化查询语言的处理方法及相关装置 | |
CN114281845A (zh) | 索引生成方法、装置、电子设备及可读存储介质 | |
CN114185875A (zh) | 一种基于云计算的大数据统一分析处理系统 | |
CN109189833B (zh) | 一种知识库的挖掘方法及装置 | |
CN112540978A (zh) | 宽表生成方法、装置及电子设备 | |
CN117763080B (zh) | 一种技术属性多重相关度计算方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A metadata map construction system Granted publication date: 20240514 Pledgee: China Postal Savings Bank Co.,Ltd. Wuhan Branch Pledgor: Yunqi Intelligent Technology Co.,Ltd. Registration number: Y2024980029917 |