一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

元数据驱动的数据巡检和版本管理方法、装置及电子设备与流程

2022-03-23 09:20:58 来源:中国专利 TAG:


1.本发明实施例涉及数据巡检技术领域,尤其涉及一种元数据驱动的数据巡检和版本管理方法、装置及电子设备。


背景技术:

2.数据已经成为各个行业中的重要资产,数据质量的好坏直接关系到信息的精准度,也影响到行业正常运作及数据的完整性。因此,需要保证各数据的准确性和统一性。
3.目前,保证数据的准确性和统一性的确定方式是对数据定期进行全量巡检。但是,由于系统中的存储的数据量大,进行全量巡检会导致速度慢、不具有针对性的问题,而且,难以确定数据巡检后数据的变化情况。
4.在医疗数据中存在大量诸如备份数据、中间数据、临时数据等数据,对这些数据进行全量巡检浪费资源且无实际业务意义。因此,通过全量巡检的方式无法有针对性的对有意义的数据进行巡检和更新。并且,对不同医疗数据的数据源缺乏统一、便捷的接入方式,对接入后获取的数据的版本无法进行规范管理和展示。


技术实现要素:

5.本发明实施例提供了一种元数据驱动的数据巡检和版本管理方法、装置及电子设备,以实现提升数据巡检速度以及针对性,并对数据巡检中的差异进行记录的技术效果。
6.第一方面,本发明实施例提供了一种元数据驱动的数据巡检和版本管理方法,该方法包括:
7.基于至少一个目标数据源,分别建立与各目标数据源的通信连接,并根据各所述目标数据源建立初始元数据集,为所述初始元数据集中的每个元数据建立元数据版本号;其中,所述初始元数据集中包括外接元数据和剩余元数据;
8.根据所述初始元数据集中的外接元数据,建立存储目录,并为所述存储目录中的各目录项建立目录版本号;
9.当接收到第一巡检指令时,基于所述第一巡检指令以及所述目标数据源,对所述存储目录中与各目录项相关联的外接元数据进行巡检,基于巡检结果更新所述外接元数据、所述外接元数据的元数据版本号以及与更新的外接元数据相对应的目录项的目录版本号;
10.当接收到第二巡检指令时,基于所述第二巡检指令以及所述目标数据源,对所述初始元数据集中的剩余元数据进行巡检,基于巡检结果更新所述剩余元数据以及所述剩余元数据的元数据版本号。
11.第二方面,本发明实施例还提供了一种元数据驱动的数据巡检和版本管理装置,该装置包括:
12.初始元数据集建立模块,用于基于至少一个目标数据源,分别建立与各目标数据源的通信连接,并根据各所述目标数据源建立初始元数据集,为所述初始元数据集中的每
个元数据建立元数据版本号;其中,所述初始元数据集中包括外接元数据和剩余元数据;
13.存储目录建立模块,用于根据所述初始元数据集中的外接元数据,建立存储目录,并为所述存储目录中的各目录项建立目录版本号;
14.第一巡检模块,用于当接收到第一巡检指令时,基于所述第一巡检指令以及所述目标数据源,对所述存储目录中与各目录项相关联的外接元数据进行巡检,基于巡检结果更新所述外接元数据、所述外接元数据的元数据版本号以及与更新的外接元数据相对应的目录项的目录版本号;
15.第二巡检模块,用于当接收到第二巡检指令时,基于所述第二巡检指令以及所述目标数据源,对所述初始元数据集中的剩余元数据进行巡检,基于巡检结果更新所述剩余元数据以及所述剩余元数据的元数据版本号。
16.第三方面,本发明实施例还提供了一种电子设备,所述电子设备包括:
17.一个或多个处理器;
18.存储装置,用于存储一个或多个程序,
19.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明实施例任一所述的元数据驱动的数据巡检和版本管理方法。
20.第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例任一所述的元数据驱动的数据巡检和版本管理方法。
21.本发明实施例的技术方案,通过基于至少一个目标数据源,分别建立与各目标数据源的通信连接,并根据各目标数据源建立初始元数据集,为初始元数据集中的每个元数据建立元数据版本号,以采集获取各目标数据源中的元数据并分配元数据版本号。进而,根据初始元数据集中的外接元数据,建立存储目录,并为存储目录中的各目录项建立目录版本号,以建立存储目录并分配目录版本号。当接收到第一巡检指令时,基于第一巡检指令以及目标数据源,对存储目录中与各目录项相关联的外接元数据进行巡检,基于巡检结果更新外接元数据、外接元数据的元数据版本号以及与更新的外接元数据相对应的目录项的目录版本号;当接收到第二巡检指令时,基于第二巡检指令以及目标数据源,对初始元数据集中的剩余元数据进行巡检,基于巡检结果更新剩余元数据以及剩余元数据的元数据版本号,解决了由于目标数据源较多,而导致的数据巡检数据量大,耗时长,以及难以确定数据巡检前后数据差异的问题,实现了通过目录项对数据元进行划分,提升数据巡检速度以及针对性,并对数据巡检中的差异进行记录的技术效果。
附图说明
22.为了更加清楚地说明本发明示例性实施例的技术方案,下面对描述实施例中所需要用到的附图做一简单介绍。显然,所介绍的附图只是本发明所要描述的一部分实施例的附图,而不是全部的附图,对于本领域普通技术人员,在不付出创造性劳动的前提下,还可以根据这些附图得到其他的附图。
23.图1为本发明实施例一所提供的一种元数据驱动的数据巡检和版本管理方法的流程示意图;
24.图2为本发明实施例二所提供的一种元数据驱动的数据巡检和版本管理方法的流
程示意图;
25.图3为本发明实施例二所提供的一种元数据驱动的数据巡检和版本管理系统的结构示意图;
26.图4为本发明实施例二所提供的一种针对巡检结果进行的处理操作进行审查的流程示意图;
27.图5为本发明实施例三所提供的一种元数据驱动的数据巡检和版本管理装置的结构示意图;
28.图6为本发明实施例四所提供的一种电子设备的结构示意图。
具体实施方式
29.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
30.实施例一
31.图1为本发明实施例一所提供的一种元数据驱动的数据巡检和版本管理方法的流程示意图,本实施例可适用于对接入的数据源中的元数据进行数据巡检和版本管理的情况,该方法可以由元数据驱动的数据巡检和版本管理装置来执行,该装置可以通过软件和/或硬件的形式实现,该硬件可以是电子设备,可选的,电子设备可以是移动终端、pc端、服务器等。
32.如图1所述,本实施例的方法具体包括如下步骤:
33.s110、基于至少一个目标数据源,分别建立与各目标数据源的通信连接,并根据各目标数据源建立初始元数据集,为初始元数据集中的每个元数据建立元数据版本号。其中,目标数据源可以是数据集成所对应的各种数据来源,是提供所需要数据的器件或原始媒体,例如数据库、数据服务器等。初始元数据集可以是各个目标数据源中的元数据所组成的数据集。元数据可以是数据的数据,例如:数据库、表、列、索引、存储过程、视图等元数据信息,通过元数据可以为数据质量管理等业务功能提供信息支撑。元数据版本号可以是针对不同的元数据建立的相互独立的版本号。初始元数据集中包括外接元数据和剩余元数据。外接元数据可以是各外接平台需要获取的元数据,外接平台可以理解为第三方业务平台等,如:数据质量平台、商业智能(business intelligence,bi)平台等。剩余元数据可以是初始元数据集中的元数据除去外接元数据的剩余部分的元数据,例如备份数据、中间数据、临时数据等。
34.具体的,根据实际需求确定出需要建立连接的至少一个目标数据源,并与这些目标数据源建立通信连接,以获取目标数据源中的全部元数据。进而,对获取的全部元数据进行整合得到初始元数据集,并为初始元数据集中的每个元数据建立元数据版本号。此时,元数据版本号可以是初始元数据版本号,例如v1.0等。
35.示例性的,若目标数据源为院内手麻库a,则可以通过数据采集适配模块连接库a并获取元数据生成初始元数据集,并为初始元数据集中的各元数据赋予初始元数据版本号,如v1.0。
36.s120、根据初始元数据集中的外接元数据,建立存储目录,并为存储目录中的各目
录项建立目录版本号。
37.其中,存储目录可以是根据元数据的不同层次结构所构建的元数据目录,层次结构包含但不限于数据域,数据来源,数据类型等。目录项可以是存储目录中各级目录的内容。目录版本号可以是针对不同的目录项建立的相互独立的版本号。
38.具体的,根据外接平台从初始元数据集中确定出外接元数据,并将外接元数据按照一定的层次结构来构建存储目录。进而,可以针对存储目录中的不同目录项分别建立目录版本号。此时,目录版本号可以是初始目录版本号,例如v1.0等。
39.示例性的,存储目录中各目录项对应的数据均引用自采集适配模块获取的数据集,可以将数据集中的数据按数据根据目录项进行划分,例如:按照处理流向数据湖,数据中心,数据领域,数据超市进行划分,此流向可依据医疗需求进行动态的增删,上述按照流向确定的目录项可以进一步的进行逻辑层划分得到下述目录项,例如:库-表-字段三级层次对应的目录项。可以理解的是,数据元属于字段级别。数据元的属性包含但不限于所属逻辑层、数据类型、类型长度、允许值等,对于每个数据元都有一个版本号。同样的,对于库、表也存在属性和版本号,例如:库的库类型、库连接串、主从库等属性,表的表类型、表资源标识、表描述等属性。当后续数据巡检检测到上述任意一个属性被修改时,会对应产生新的版本号和版本历史记录。
40.示例性的,对初始元数据集内允许引入进存储目录的数据,存储目录中引用的数据的版本号可以直接继承采集适配得到的版本号(未被允许的不影响版本号),若存储目录内的数据变动(包括但不限于人为变动、巡检修改变动),则变动的数据元在采集适配模块的版本号会根据修改次数变动,例如:修改为v1.1、v1.2等,存储目录对应的数据的版本号可以直接引用修改后的版本号。
41.s130、当接收到第一巡检指令时,基于第一巡检指令以及目标数据源,对存储目录中与各目录项相关联的外接元数据进行巡检,基于巡检结果更新外接元数据、外接元数据的元数据版本号以及与更新的外接元数据相对应的目录项的目录版本号。
42.其中,第一巡检指令可以是针对存储目录关联的各外接元数据进行数据巡检的代码或命令等。巡检结果可以是针对数据巡检后确定数据是否存在不同的结果,例如:巡检结果可以包括存在差异和不存在差异等。
43.具体的,当接收到第一巡检指令时,可以基于第一巡检指令触发基于存储目录的数据巡检操作,根据各目标数据源对存储目录中各目录项对应的外接元数据进行数据巡检,得到巡检结果。若巡检结果为存在差异,则对存在差异的外接元数据进行更新,并对与该外接元数据相对应的元数据版本号进行更新,例如:从v1.0更新为v2.0等。进一步的,外接元数据的更新会导致与更新的外接元数据相对应的目录项的关联内容发生变化,因此,对与更新的外接元数据相对应的目录项的目录版本号进行更新。
44.示例性的,针对库进行数据巡检的巡检结果可以包括一致和不一致两种。其中,一致表示该库下所有表内容都一致;不一致表示该库下存在至少一个表有区别。针对表或字进行数据巡检的巡检结果可以包括一致、不一致、新增和缺失四种。
45.s140、当接收到第二巡检指令时,基于第二巡检指令以及目标数据源,对初始元数据集中的剩余元数据进行巡检,基于巡检结果更新剩余元数据以及剩余元数据的元数据版本号。
46.其中,第二巡检指令可以是针对存储目录之外的各剩余元数据进行数据巡检的代码或命令等。
47.具体的,当接收到第二巡检指令时,可以基于第二巡检指令触发度剩余元数据的数据巡检操作,根据各目标数据源对各剩余元数据进行数据巡检,得到巡检结果。若巡检结果为存在差异,则对存在差异的剩余元数据进行更新,并对与该剩余元数据相对应的元数据版本号进行更新,例如:从v1.0更新为v2.0等。
48.在医疗场景下,通过本实施例的技术方案,可以解决由于his(hospital information system,医院信息系统)/lis(laboratory information management system,实验室信息管理系统)等原始业务库的数据量大,而导致的全量巡检耗时长的问题。通过对数据进行不同目录项的分类,如根据业务逻辑层进行划分,每个业务逻辑层下有对应的业务库,如rdr(research data repository,科研数据中心)/cdr(clinical data repository,临床数据中心)等,进而,根据分类结果确定存储目录对应的数据。在使用过程中,医院信息科人员或科室医生可以根据实际业务需求选择所需的存储目录,以有针对性的进行数据核查或其他操作。
49.本发明实施例的技术方案,通过基于至少一个目标数据源,分别建立与各目标数据源的通信连接,并根据各目标数据源建立初始元数据集,为初始元数据集中的每个元数据建立元数据版本号,以采集获取各目标数据源中的元数据并分配元数据版本号。进而,根据初始元数据集中的外接元数据,建立存储目录,并为存储目录中的各目录项建立目录版本号,以建立存储目录并分配目录版本号。当接收到第一巡检指令时,基于第一巡检指令以及目标数据源,对存储目录中与各目录项相关联的外接元数据进行巡检,基于巡检结果更新外接元数据、外接元数据的元数据版本号以及与更新的外接元数据相对应的目录项的目录版本号;当接收到第二巡检指令时,基于第二巡检指令以及目标数据源,对初始元数据集中的剩余元数据进行巡检,基于巡检结果更新剩余元数据以及剩余元数据的元数据版本号,解决了数据巡检数据量大,耗时长,以及难以确定数据巡检前后数据差异的问题,实现了提升数据巡检速度以及针对性,并对数据巡检中的差异进行记录的技术效果。
50.实施例二
51.图2为本发明实施例二所提供的一种元数据驱动的数据巡检和版本管理方法的流程示意图,本实施例在上述各实施例的基础上,针对存储目录的建立方式以及数据巡检的具体方式可参见本实施例的技术方案。其中,与上述各实施例相同或相应的术语的解释在此不再赘述。
52.如图2所述,本实施例的方法具体包括如下步骤:
53.s210、基于至少一个目标数据源,分别建立与各目标数据源的通信连接,并根据各目标数据源建立初始元数据集,为初始元数据集中的每个元数据建立元数据版本号。
54.具体的,根据实际需求与至少一个目标数据源建立通信连接,以获取目标数据源中的全部元数据。进而,对获取的全部元数据进行整合得到初始元数据集,并为初始元数据集中的每个元数据建立元数据版本号。
55.可选的,可以通过下述方式确定目标数据源,并与目标数据源建立通信连接:
56.根据数据源连接信息中的数据源信息,确定至少一个目标数据源;根据数据源连接信息中的配置信息,建立与至少一个目标数据源的通信连接。
57.其中,数据源连接信息可以是指示连接数据源的信息。数据源信息可以是标识数据源的各种基本信息,例如:数据源名称、数据源标识、存储位置等。配置信息可以包括连接数据源所需的账号、密码、ip(internet protocol,网际互连协议)地址等。
58.具体的,根据数据源连接信息中提及的目标数据源的数据源名称、数据源标识、存储位置等,可以定位到目标数据源。进而,根据目标数据源连接信息中的配置信息与定位到的目标数据源进行匹配登录,建立通信连接,以便于后续获取目标数据源中的数据。
59.可选的,可以通过下述步骤建立初始元数据集,并分配元数据版本号:
60.步骤一、采集各目标数据源中的元数据,根据预设巡检项以及各目标数据源对元数据进行数据巡检,并根据数据巡检后的元数据建立初始元数据集。
61.其中,巡检配置可以用于根据目标数据源中的数据对采集到的元数据进行数据巡检的字段,预设巡检项包括数据类型、数据长度、数据元定义以及元数据模型中的至少一种。巡检内容可以包括:数据库连接异常、数据库新增表、数据库删除表、数据表新增字段、数据表删除字段、字段属性更改等。
62.具体的,从各目标数据源中采集得到各元数据,并对采集得到的元数据进行全量的数据巡检,以保证装载的元数据的完整性和准确性。进而,根据预设巡检项对装载的元数据进行逐一巡检,在元数据通过数据巡检后,将数据巡检后的元数据进行整合,建立初始元数据集。
63.步骤二、针对初始元数据集中的每个元数据,建立与元数据相对应的初始元数据版本号。
64.其中,初始元数据版本号可以是预先设置的用于标识原始元数据的版本号,例如:v1.0等。
65.具体的,为初始元数据集中的每个元数据建立与每个元数据相对应的初始元数据版本号,以标识这些元数据是初始采集得到
66.的元数据。若后续针对元数据进行更新,则可以将元数据版本号进行更新,从v1.0更新为v2.0,从v1.1更新为v1.2等。
67.s220、从初始元数据集中确定与外接平台相对应的外接元数据。
68.其中,外接平台可以是使用初始元数据集中的数据的平台,例如:业务平台等。
69.具体的,根据各外接平台的数据需求,从初始元数据集中确定出与数据需求相匹配的元数据,作为外接元数据。
70.s230、根据与各外接元数据相对应的数据域,对各外接元数据进行划分。
71.其中,数据域可以是数据流向中各个阶段,例如:数据湖(data lake,dl)、数据中心(data center,dc)、数据领域(data domain)、数据集市(data market)等。示例性的,dl可以用于存放完整的外接元数据。dc可以用于初步整合dl中的外接元数据。数据领域中可以用于根据不同的数据领域且依据预设标准对数据进行加工后,将dc中的同一数据领域整合在一起。数据集市可以用于存储外接元数据的衍生数据。
72.具体的,根据外接平台的需求以及数据流向,可以将外接元数据根据不同的数据域进行划分,以便后续匹配存储目录中的各目录项。
73.需要说明的是,根据数据域对各外接元数据进行划分是本实施例中的一种元数据划分方式,还可以根据不同的划分方式进行划分,例如:项目需求、平台需求等。
74.s240、根据数据域的层次结构确定存储目录的各目录项,并根据各外接元数据的划分结果建立各外接元数据与所各目录项的对应关系,并为存储目录中的各目录项建立目录版本号。
75.具体的,根据数据域的层次结构构建各层级的目录项,构建存储目录的结构。进而,根据外接元数据的划分结果,将外接元数据与各目录项进行匹配,建立外接元数据与目录项的对应关系。并且,可以为存储目录中的各目录项分配一个初始目录版本号。
76.s250、当接收到第一巡检指令时,基于第一巡检指令以及目标数据源,对存储目录中与各目录项相关联的外接元数据进行巡检,基于巡检结果更新外接元数据、外接元数据的元数据版本号以及与更新的外接元数据相对应的目录项的目录版本号。
77.具体的,当接收到第一巡检指令时,根据各目标数据源对存储目录中各目录项对应的外接元数据进行数据巡检,得到巡检结果。若巡检结果为存在差异,则对存在差异的外接元数据进行更新,对与该外接元数据相对应的元数据版本号进行更新,并且,对与更新的外接元数据相对应的目录项的目录版本号进行更新。
78.可选的,巡检内容可以包括:数据库连接异常、数据库新增表、数据库删除表、数据表新增字段、数据表删除字段、字段属性更改等。
79.可选的,在后续数据巡检时,针对巡检结果,可以对外接元数据进行部分更新或全部更新,更新选择的具体数据可以根据需求进行选择,在本实施例中不做具体限定。
80.可选的,可以通过下述步骤基于第一巡检指令执行以存储目录为基准点的数据巡检:
81.步骤一、对第一巡检指令进行解析,确定与第一巡检指令相对应的巡检目录项。
82.其中,巡检目录项可以是第一巡检指令中所携带的待巡检的目录项,可以是至少一个目录项。
83.具体的,对第一巡检指令进行解析,从解析结果中确定出第一巡检指令所携带的巡检目录项,以根据巡检目录项对外接元数据进行数据巡检。
84.步骤二、根据与巡检目录项相对应的外接元数据的数据血缘,从目标数据源中确定待巡检数据源。
85.其中,数据血缘可以是用于描述数据的来源去向等,主要可以包含:数据的来源、数据的加工方式、映射关系以及数据出口等。巡检数据源可以是对巡检目录项进行巡检时需要匹配的目标数据源。
86.示例性的,数据血缘用于向上追溯一个数据对象的数据来源。例如:第一种情况,domain目录项下存在名为“住院时长”的字段,此字段来源为上层dc的“入院时间”和“出院时间”。第二种情况,下游数据直接引用上游的数据,如院内原始业务库的患者标识被下游数据表引用。
87.具体的,在确定巡检目录项之后,可以确定与巡检目录项相对应的外接元数据,进而,根据确定出的外接元数据的数据血缘,溯源确定出这些外接元数据的数据来源,即巡检数据源。
88.步骤三、根据待巡检数据源,对与巡检目录项相对应的外接元数据进行数据巡检。
89.具体的,从待巡检数据源中,获取其中与巡检目录项相对应的外接元数据相对应的元数据。根据从待巡检数据源中获取的元数据对与巡检目录项相对应的外接元数据进行
数据巡检,以得到巡检结果。
90.步骤四、若根据巡检结果对与巡检目录项相对应的外接元数据进行更新,则对进行更新的外接元数据的元数据版本号进行更新,根据更新前的外接元数据和更新后的外接元数据生成外接元数据更新记录,并对与进行更新的外接元数据相对应的巡检目录项的目录版本号进行更新。
91.其中,外接元数据更新记录可以是记录更新前后外接元数据的记录。
92.具体的,若巡检结果为存在差异,并对与巡检目录项相对应的外接元数据进行更新,则表明外接元数据发生改变,可以对进行更新的外接元数据的元数据版本号进行更新。为了对外接元数据的变化进行记录,可以将更新前的外接元数据和更新后的外接元数据进行整合,得到外接元数据更新记录。例如:将更新前json格式的外接元数据和更新后json格式的外接元数据组合在一起,作为本次更新的外接元数据更新记录。由于是以巡检目录项为基准点进行的数据巡检,因此当外接元数据发生变化时,需要对巡检目录项的目录版本号进行更新,以表示与巡检目录项相对应的外接元数据发生了变化。
93.示例性的,在对外接元数据的元数据版本号进行更新可以理解为:将外接元数据的初始元数据版本号作为当前元数据版本号,对外接元数据进行数据巡检,若根据巡检结果对外接元数据进行更新,则对当前元数据版本号进行更新,并将更新后的当前元数据版本号作为新的当前元数据版本号,返回执行对外接元数据进行数据巡检的操作。需要说明的是,针对目录项的目录版本号以及后续提及的剩余元数据的元数据版本号的更新操作也可以使用类似的方式,在此不再赘述。
94.s260、当接收到第二巡检指令时,基于第二巡检指令以及目标数据源,对初始元数据集中的剩余元数据进行巡检,基于巡检结果更新剩余元数据以及剩余元数据的元数据版本号。
95.具体的,当接收到第二巡检指令时,可以基于第二巡检指令触发度剩余元数据的数据巡检操作,根据各目标数据源对各剩余元数据进行数据巡检,得到巡检结果。若巡检结果为存在差异,则对存在差异的剩余元数据进行更新,并对与该剩余元数据相对应的元数据版本号进行更新。
96.可选的,可以通过下述步骤基于第二巡检指令执行以剩余元数据为基准点的数据巡检:
97.步骤一、根据初始元数据集中的剩余元数据,从目标数据源中确定待巡检数据源。
98.其中,巡检数据源可以是对剩余元数据进行巡检时需要匹配的目标数据源。
99.具体的,针对初始元数据集中的各个剩余元数据,确定与剩余元数据相对应的待巡检数据源,例如:通过剩余元数据的数据血缘从目标数据源中确定出待巡检数据源。
100.步骤二、根据待巡检数据源,对与剩余元数据进行数据巡检。
101.具体的,从待巡检数据源中采集与剩余元数据相对应的数据信息,并将确定出的数据信息与剩余元数据进行比对,以进行数据巡检。
102.步骤三、若根据巡检结果对与剩余元数据进行更新,则对进行更新的剩余元数据的元数据版本号进行更新,根据更新前的剩余元数据和更新后的剩余元数据生成剩余元数据更新记录。
103.其中,剩余元数据更新记录可以是记录更新前后剩余元数据的记录。
104.具体的,若巡检结果为存在差异,并对与剩余元数据进行更新,则表明剩余元数据发生改变,可以对进行更新的剩余元数据的元数据版本号进行更新。为了对剩余元数据的变化进行记录,可以将更新前的剩余元数据和更新后的剩余元数据进行整合,得到剩余元数据更新记录。例如:将更新前json格式的剩余元数据和更新后json格式的剩余元数据组合在一起,作为本次更新的剩余元数据更新记录。
105.在上述各实施例的基础上,由于巡检结果为存在差异,就会进行元数据的更新,可能会存在更新频繁,针对没有必要更新的元数据也会进行更新,浪费时间和资源。因此,可以在数据巡检之后,元数据更新之前,增加审核操作,具体可以是:
106.步骤一、若巡检结果为存在差异,则生成请求审核指令,以获取审核结果。
107.其中,审核指令可以是请求对元数据的差异进行审核以确定是否进行同步更新的指令,审核指令中可以携带存在差异的元数据标识、差异等。审核结果可以是针对元数据的差异进行审核得到的是否进行元数据更新的结果,例如:审核结果可以包括审核通过和审核不通过。
108.具体的,若巡检结果为存在差异,则基于存在差异的元数据生成审核指令,并将审核指令发送至审核人员的终端设备,以获取审核结果。
109.需要说明的是,审核指令中可以指示存在差异的元数据的位置信息,审核人员根据位置信息调取元数据进行人工审核,以判断是否需要进行同步更新。审核指令中还可以直接携带存在差异的元数据,例如:name与namecn,审核人员可以直接根据审核指令中携带的信息判断是否需要进行同步更新。
110.步骤二、若审核结果为审核不通过,则保持外接元数据和剩余元数据不变。
111.其中,审核不通过表示忽略差异,即不需要对存在差异的元数据进行更新的审核结果。
112.具体的,若审核结果为审核不通过,则表明数据巡检出的元数据的差异没有必要进行更新,可以忽略,因此可以保持外接元数据和剩余元数据不变,以继续使用。
113.需要说明的是,可以针对每一条存在差异的元数据进行分别审核,那么,不同的存在差异的元数据的审核结果可能不同,可以根据不同的审核结果分别执行后续操作。
114.步骤三、若审核结果为审核通过,则更新外接元数据并执行基于巡检结果更新外接元数据的元数据版本号以及各目录项的目录版本号的操作和/或基于巡检结果更新剩余元数据以及剩余元数据的元数据版本号的操作。
115.其中,审核通过表示同步差异,即需要对存在差异的元数据进行数据同步更新的审核结果。
116.具体的,若审核结果为审核通过,则需要针对审核结果对应的元数据进行同步更新。若同步更新的元数据为外接元数据,则在更新外接元数据后,执行基于巡检结果更新外接元数据的元数据版本号以及各目录项的目录版本号的操作。若同步更新的元数据为剩余接元数据,则在更新剩余元数据后,执行基于巡检结果更新剩余元数据以及剩余元数据的元数据版本号的操作。
117.示例性的,针对于审核的方式,可以分为对库、表、字段的审核,可实现:指定忽略、指定同步,和一键批量忽略和同步,以及版本发布-将该层级下所有事件都进行发版的功能。对于存在差异的巡检结果都可以走审批流程的管控,如:一键忽略操作需要审批人员审
批通过才会生效。
118.在上述各实施例的基础上,为了根据业务需求选择不同的数据巡检基准点进行数据巡检,可以通过下述方式生成第一巡检指令和/或第二巡检指令:
119.若当前时刻达到预设巡检周期,则生成第一巡检指令和/或第二巡检指令。
120.其中,预设巡检周期可以是预先设定的进行数据巡检的周期,例如:1天等,预设巡检周期可以根据数据巡检需求进行人为设定和修改,在本实施例中不做具体限定。
121.具体的,若当前时刻达到预先设定的数据巡检周期的时候,表明需要对存储的元数据进行数据巡检,此时,可以生成第一巡检指令和/或第二巡检指令,以对外接元数据和/或剩余元数据进行数据巡检。
122.需要说明的是,预设巡检周期可以包括第一巡检周期和第二巡检周期,若当前时刻达到第一巡检周期,则生成第一巡检指令;若当前时刻达到第二巡检周期,则生成第二巡检指令。
123.若检测到针对至少一个目录项的巡检触发行为,则根据至少一个目录项生成第二巡检指令。
124.其中,巡检触发行为可以是针对目录项对应的外接元数据进行数据巡检的操作行为,例如:巡检触发行为可以是点击目录项的巡检控件、执行针对目录项进行巡检的代码等行为。
125.具体的,当检测到针对至少一个目录项的巡检触发行为,则确定巡检触发行为所对饮的至少一个目录项,进而,根据至少一个目录项生成第二巡检指令,以对这些目录项对应的外接元数据进行数据巡检。
126.作为上述各实施例的可选实施方案,图3为本发明实施例二所提供的一种元数据驱动的数据巡检和版本管理系统的结构示意图,其中,与上述各实施例相同或相应的术语的解释在此不再赘述。
127.如图3所示,元数据驱动的数据巡检和版本管理系统包括数据采集适配模块以及存储目录模块。
128.本发明实施例的技术方案基于一个执行主体执行的,即基于元数据驱动的数据巡检和版本管理系统执行的。基于元数据驱动的数据巡检和版本管理系统中的数据采集适配模块,可以建立该系统与每个数据源(目标数据源)之间的通信连接,以从各数据源获取数据。
129.数据采集适配模块可以通过ip、账号、密码等基础信息完成对数据源中各类型数据库信息和具体表、字段内容的采集,并实现相应采集库和应用得关联,为后期存储目录提供数据基础和血缘解析定位。
130.具体的,元数据驱动的数据巡检和版本管理系统会将指定的外部的数据源中的数据装载入采集适配模块。在首次数据装载过程中,会同时做全量的数据巡检,巡检项(预设巡检项)包括并不限于:数据类型、数据类型长度、数据元定义、元模型等,并同时记录此数据的初始版本(初始元数据版本号)。数据在首次纳入至数据采集适配模块时,会被分配一个初始版本,如v1.0的版本号,后续无论是人为修改还是巡检自动修改修改均会在此对此初始版本的基础上进行更新,同时记录数据版本的修改历史。
131.将数据通过采集适配模块装载后,通过存储目录模块建立对采集到的数据的引
用,得到存储目录。
132.其中,存储目录中对应的数据来源为采集适配模块,但不一定是采集适配模块中采集的全部数据。存储目录所对应的是各平台(外接平台)所用到的所有数据,如库、表、字段信息,血缘信息、元模型等。
133.需要说明的是,版本更新不需要手动设置,在进行编辑和删除等敏感操作会有操作审批(审核指令),审批通过后即自动记录版本和生成修改前后的差异记录(外接元数据更新记录和/或剩余元数据更新记录)。
134.在数据巡检过程中,可以通过下述两种方式进行数据巡检:
135.方式1:若针对装载入数据采集适配模块但存储目录未引用的元数据(剩余元数据)进行数据巡检,以数据源中的数据为基准点,对数据进行巡检核查。
136.方式2:若针对装载入数据采集适配模块中且已被存储目录引用并关联了相关应用的元数据进行数据巡检(外接元数据),则以存储目录内的数据为基准点,对数据源进行巡检核查。
137.对于巡检结果,只对不一致的巡检结果(存在差异)进行记录,两种方式的版本记录方式一致:记录数据更新前后的差异。
138.关于操作审批的过程可以参考下述示例。示例性的,若数据巡检针对的元数据:a库-b表-字段名称name,数据巡检后发现数据源中a库b表字段名称name中的name已更改为namecn。此时,审核人员具有两个选择:1、忽略差异(审核不通过),2、同步差异(审核通过)。若选择忽略差异,则不在关注任何差异,保持元数据不变;若选择同步差异,则将数据源中的元数据同步至系统中,即将name改为namecn,在同步过程中即创建name和namecn的两个版本记录,由于系统中针对每个数据都分配一个唯一标识,即可通过该唯一标识查询此数据的所有版本记录。
139.可选的,针对巡检结果进行的处理操作可以进行审查,具体流程如图4所示,具体的,对有差异的巡检结果的处理操作包括忽略操作和同步操作两种。对巡检结果和针对巡检结果选择的处理操作提交审核,若审核通过,则系统根据选择的处理操作执行忽略操作或同步操作;若审核不通过,则结束该审核流程,可以返回执行对有差异的巡检结果选择处理操作。
140.可选的,系统中可以设置定时任务,以定时进行全库数据扫描,定时周期可以预设为每天,同时支持人为修改定时周期。
141.通过元数据驱动的数据巡检和版本管理系统,可以从页面上直观的看出不同基准点的数据差异,以便于从不同基准点视角来讨论、解决、数据差异和版本确定的问题。并且,在数据巡检时提供了定时巡检和手动巡检两种方式,定时巡检的数据量大并且巡检全面,手动巡检的巡检范围小且具有针对性,针对不同的需求进行巡检,对数据的管理存在极大的便利。
142.本发明实施例的技术方案,通过基于至少一个目标数据源,分别建立与各目标数据源的通信连接,并根据各目标数据源建立初始元数据集,为初始元数据集中的每个元数据建立元数据版本号,以采集获取各目标数据源中的元数据并分配元数据版本号。进而,从初始元数据集中确定与外接平台相对应的外接元数据,根据与各外接元数据相对应的数据域,对各外接元数据进行划分,根据数据域的层次结构确定存储目录的各目录项,并根据各
外接元数据的划分结果建立各外接元数据与所各目录项的对应关系,并为存储目录中的各目录项建立目录版本号,以建立存储目录并分配目录版本号。当接收到第一巡检指令时,基于第一巡检指令以及目标数据源,对存储目录中与各目录项相关联的外接元数据进行巡检,基于巡检结果更新外接元数据、外接元数据的元数据版本号以及与更新的外接元数据相对应的目录项的目录版本号;当接收到第二巡检指令时,基于第二巡检指令以及目标数据源,对初始元数据集中的剩余元数据进行巡检,基于巡检结果更新剩余元数据以及剩余元数据的元数据版本号,解决了数据巡检数据量大,耗时长,以及难以确定数据巡检前后数据差异的问题,实现了提升数据巡检速度以及针对性,并对数据巡检中的差异进行记录的技术效果。
143.实施例三
144.图5为本发明实施例三所提供的一种元数据驱动的数据巡检和版本管理装置的结构示意图,该装置包括:初始元数据集建立模块310、存储目录建立模块320、第一巡检模块330以及第二巡检模块340。
145.其中,初始元数据集建立模块310,用于基于至少一个目标数据源,分别建立与各目标数据源的通信连接,并根据各所述目标数据源建立初始元数据集,为所述初始元数据集中的每个元数据建立元数据版本号;其中,所述初始元数据集中包括外接元数据和剩余元数据;存储目录建立模块320,用于根据所述初始元数据集中的外接元数据,建立存储目录,并为所述存储目录中的各目录项建立目录版本号;第一巡检模块330,用于当接收到第一巡检指令时,基于所述第一巡检指令以及所述目标数据源,对所述存储目录中与各目录项相关联的外接元数据进行巡检,基于巡检结果更新所述外接元数据、所述外接元数据的元数据版本号以及与更新的外接元数据相对应的目录项的目录版本号;第二巡检模块340,用于当接收到第二巡检指令时,基于所述第二巡检指令以及所述目标数据源,对所述初始元数据集中的剩余元数据进行巡检,基于巡检结果更新所述剩余元数据以及所述剩余元数据的元数据版本号。
146.可选的,初始元数据集建立模块310,还用于根据数据源连接信息中的数据源信息,确定至少一个目标数据源;根据所述数据源连接信息中的配置信息,建立与所述至少一个目标数据源的通信连接。
147.可选的,初始元数据集建立模块310,还用于采集各所述目标数据源中的元数据,根据预设巡检项以及各所述目标数据源对所述元数据进行数据巡检,并根据数据巡检后的元数据建立初始元数据集;其中,所述预设巡检项包括数据类型、数据长度、数据元定义以及元数据模型中的至少一种;针对所述初始元数据集中的每个元数据,建立与所述元数据相对应的初始元数据版本号。
148.可选的,存储目录建立模块320,还用于从所述初始元数据集中确定与外接平台相对应的外接元数据;根据与各所述外接元数据相对应的数据域,对各所述外接元数据进行划分;根据所述数据域的层次结构确定存储目录的各目录项,并根据各所述外接元数据的划分结果建立各所述外接元数据与所各所述目录项的对应关系。
149.可选的,第一巡检模块330,还用于对所述第一巡检指令进行解析,确定与所述第一巡检指令相对应的巡检目录项;根据与所述巡检目录项相对应的外接元数据的数据血缘,从所述目标数据源中确定待巡检数据源;根据所述待巡检数据源,对与所述巡检目录项
相对应的外接元数据进行数据巡检;若根据巡检结果对与所述巡检目录项相对应的外接元数据进行更新,则对进行更新的外接元数据的元数据版本号进行更新,根据更新前的外接元数据和更新后的外接元数据生成外接元数据更新记录,并对与进行更新的外接元数据相对应的巡检目录项的目录版本号进行更新。
150.可选的,第二巡检模块340,还用于根据所述初始元数据集中的剩余元数据,从所述目标数据源中确定待巡检数据源;根据所述待巡检数据源,对与所述剩余元数据进行数据巡检;若根据巡检结果对与所述剩余元数据进行更新,则对进行更新的剩余元数据的元数据版本号进行更新,根据更新前的剩余元数据和更新后的剩余元数据生成剩余元数据更新记录。
151.可选的,所述装置还包括:审核模块,用于若所述巡检结果为存在差异,则生成请求审核指令,以获取审核结果;若所述审核结果为审核不通过,则保持所述外接元数据和所述剩余元数据不变;若所述审核结果为审核通过,则更新所述外接元数据并执行基于巡检结果更新所述外接元数据的元数据版本号以及各目录项的目录版本号的操作和/或基于巡检结果更新所述剩余元数据以及所述剩余元数据的元数据版本号的操作。
152.可选的,所述装置还包括:巡检指令生成模块,用于若当前时刻达到预设巡检周期,则生成所述第一巡检指令和/或所述第二巡检指令;或,若检测到针对至少一个目录项的巡检触发行为,则根据所述至少一个目录项生成所述第二巡检指令。
153.本发明实施例的技术方案,通过基于至少一个目标数据源,分别建立与各目标数据源的通信连接,并根据各目标数据源建立初始元数据集,为初始元数据集中的每个元数据建立元数据版本号,以采集获取各目标数据源中的元数据并分配元数据版本号。进而,根据初始元数据集中的外接元数据,建立存储目录,并为存储目录中的各目录项建立目录版本号,以建立存储目录并分配目录版本号。当接收到第一巡检指令时,基于第一巡检指令以及目标数据源,对存储目录中与各目录项相关联的外接元数据进行巡检,基于巡检结果更新外接元数据、外接元数据的元数据版本号以及与更新的外接元数据相对应的目录项的目录版本号;当接收到第二巡检指令时,基于第二巡检指令以及目标数据源,对初始元数据集中的剩余元数据进行巡检,基于巡检结果更新剩余元数据以及剩余元数据的元数据版本号,解决了数据巡检数据量大,耗时长,以及难以确定数据巡检前后数据差异的问题,实现了提升数据巡检速度以及针对性,并对数据巡检中的差异进行记录的技术效果。
154.本发明实施例所提供的元数据驱动的数据巡检和版本管理装置可执行本发明任意实施例所提供的元数据驱动的数据巡检和版本管理方法,具备执行方法相应的功能模块和有益效果。
155.值得注意的是,上述装置所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明实施例的保护范围。
156.实施例四
157.图6为本发明实施例四所提供的一种电子设备的结构示意图。图6示出了适于用来实现本发明实施例实施方式的示例性电子设备40的框图。图6显示的电子设备40仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
158.如图6所示,电子设备40以通用计算设备的形式表现。电子设备40的组件可以包括
但不限于:一个或者多个处理器或者处理单元401,系统存储器402,连接不同系统组件(包括系统存储器402和处理单元401)的总线403。
159.总线403表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。
160.电子设备40典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备40访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
161.系统存储器402可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)404和/或高速缓存405。电子设备40可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统406可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线403相连。系统存储器402可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
162.具有一组(至少一个)程序模块407的程序/实用工具408,可以存储在例如系统存储器402中,这样的程序模块407包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块407通常执行本发明所描述的实施例中的功能和/或方法。
163.电子设备40也可以与一个或多个外部设备409(例如键盘、指向设备、显示器410等)通信,还可与一个或者多个使得用户能与该电子设备40交互的设备通信,和/或与使得该电子设备40能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口411进行。并且,电子设备40还可以通过网络适配器412与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器412通过总线403与电子设备40的其它模块通信。应当明白,尽管图6中未示出,可以结合电子设备40使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
164.处理单元401通过运行存储在系统存储器402中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的元数据驱动的数据巡检和版本管理方法。
165.实施例五
166.本发明实施例五还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种元数据驱动的数据巡检和版本管理方法,该方法包括:
167.基于至少一个目标数据源,分别建立与各目标数据源的通信连接,并根据各所述目标数据源建立初始元数据集,为所述初始元数据集中的每个元数据建立元数据版本号;其中,所述初始元数据集中包括外接元数据和剩余元数据;
168.根据所述初始元数据集中的外接元数据,建立存储目录,并为所述存储目录中的各目录项建立目录版本号;
169.当接收到第一巡检指令时,基于所述第一巡检指令以及所述目标数据源,对所述存储目录中与各目录项相关联的外接元数据进行巡检,基于巡检结果更新所述外接元数据、所述外接元数据的元数据版本号以及与更新的外接元数据相对应的目录项的目录版本号;
170.当接收到第二巡检指令时,基于所述第二巡检指令以及所述目标数据源,对所述初始元数据集中的剩余元数据进行巡检,基于巡检结果更新所述剩余元数据以及所述剩余元数据的元数据版本号。
171.本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
172.计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
173.计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。
174.可以以一种或多种程序设计语言或其组合来编写用于执行本发明实施例操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c ,还包括常规的过程式程序设计语言——诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
175.注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献