一种数据质量评估方法、装置、电子设备及介质与流程
未命名
07-29
阅读:127
评论:0
1.本技术涉及数据处理技术领域,具体涉及一种数据质量评估方法、装置、电子设备及介质。
背景技术:
2.随着计算机和网络技术的发展,各行各业都逐渐信息化,全球步入大数据时代,在数据开发的过程中,数据从产生、抽取转换和加载(extraction-transformation-loading,etl)处理、加工、融合、流转,到最终呈现,数据之间自然会形成这种关系,这就是数据血缘关系。数据血缘关系属于数据治理中的一个重要概念,说的是在数据溯源的过程中找到相关数据之间的联系。但在实际的工作中,为了计算得到一份数据,不同的开发者可能会有不同的方案,比如会选择不同的数据表,执行不同的操作,从而也就会形成不同的数据血缘关系。因此随着工作的进行,难免会出现一些不合理的数据血缘关系,往往会影响数据库中数据的质量。
技术实现要素:
3.本技术实施例提供一种数据质量评估方法、装置、设备及介质,用于解决现有技术中由于一些不合理的数据血缘关系影响数据库中数据质量的问题。
4.第一方面,本技术实施例提供一种数据质量评估方法,所述方法包括:
5.获取数据库中包括的多个数据表;分别根据每个所述数据表的表名,确定所述数据表对应的数据依赖关系,得到多个数据依赖关系;任一数据表对应的数据依赖关系包括所述任一数据表的上游数据层和所述任一数据表的当前数据层;所述任一数据表的上游数据层用于表示所述任一数据表的来源;根据预存的数据依赖质量类别与数据依赖关系之间的映射关系,确定所述各个数据依赖关系的数据依赖质量类别;根据所述各个数据依赖关系的数据依赖质量类别和预设的各个数据依赖质量类别的权重,确定所述数据库的数据依赖质量。
6.基于上述方案,通过对系统中包括的各个数据依赖关系进行分类以及根据各个数据依赖质量类别的权重,确定数据库的数据依赖质量,从而实现对数据库的数据质量的评估。通过数据库的数据质量的评估可以为数据库的数据治理工作提供优化方向,对多个数据库的横向对比也提供了依据。
7.在一种可能的实现方式中,所述获取数据库中包括的多个数据表之前,所述方法还包括:根据所述多个数据表从产生到应用的流程,将所述数据库中的数据表进行分层处理,得到多个数据层;所述多个数据层依次包括:原始数据层、规范数据层、主题数据层、维度数据层、汇总数据层和应用数据层;所述原始数据层用于描述不对所述数据表中的数据进行处理的层级,所述规范数据层用于描述对所述数据表中的数据进行规范化处理不做数据关联的层级,所述主题数据层用于描述数据表中根据业务主题对数据进行关联的层级,所述维度数据层用于描述数据表中包括事实数据表中事实记录的特性的层级,所述汇总数
据层用于描述数据表中包括通用性的维度和指标的层级,所述应用数据层用于描述数据表面向实际使用场景的层级;针对所述数据库的任一数据表,根据所述数据表的当前数据层和上游数据层,设置所述数据表的表名。
8.基于上述方案,根据数据从产生到应用的流程顺序,将数据表分为多个数据层,并根据数据表所属数据层设置数据表的表名,可以清晰地确定数据依赖关系,使得相关工作人员可以方便地根据数据依赖关系对数据质量进行评估。
9.在一种可能的实施例中,所述数据依赖质量类别包括第一类别、第二类别和第三类别;所述第三类别的待优化级别高于所述第二类别,所述第二类别的待优化级别高于所述第一类别。
10.基于上述方案,可以根据数据依赖关系的待优化级别高低对其进行分类,从而根据各个数据依赖关系的类别确定数据库的数据依赖质量。
11.在一种可能的实施例中,所述第一类别与如下至少一种数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为原始数据层,当前数据层为规范数据层;所述数据依赖关系的上游数据层为规范数据层,当前数据层为主题数据层或维度数据层;所述数据依赖关系的上游数据层为主题数据层或维度数据层,当前数据层为汇总数据层或应用数据层;所述数据依赖关系的上游数据层为汇总数据层,当前数据层为应用数据层。
12.基于上述方案,可以通过判断数据依赖关系是否为与第一类别具有映射关系的数据依赖关系来确定该数据依赖关系是否属于第一类别。
13.在一种可能的实施例中,所述第二类别与如下数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为规范数据层,当前数据层为汇总数据层或应用数据层。
14.基于上述方案,可以通过判断数据依赖关系是否为与第二类别具有映射关系的数据依赖关系来确定该数据依赖关系是否属于第二类别。
15.在一种可能的实施例中,所述第三类别与如下至少一种数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为原始数据层,当前数据层为除规范数据层以外的任意一层;所述数据依赖关系的上游数据层所在层级位于当前数据层所在层级之后。
16.基于上述方案,可以通过判断数据依赖关系是否为与第三类别具有映射关系的数据依赖关系来确定该数据依赖关系是否属于第三类别。
17.在一种可能的实施例中,所述根据所述各个数据依赖关系的数据依赖质量类别和预设的各个数据依赖质量类别的权重,确定所述数据库的数据依赖质量,包括:根据各个数据依赖关系的数据依赖质量类别确定所述多个数据依赖关系的数据依赖质量类别集合;确定每个所述数据依赖质量类别在所述数据依赖质量类别集合的占比;根据每个所述数据依赖质量类别的占比和每个所述数据依赖质量类别对应的权重,确定所述数据库的数据依赖质量。
18.基于上述方案,可以根据各个数据依赖关系所属的数据依赖质量类别对应的权重以及数据依赖质量类别的占比,确定数据库的数据依赖质量,进而对数据库中的数据质量进行评估。
19.第二方面,本技术提供一种数据质量评估装置,所述装置包括:
20.获取单元,用于获取数据库中包括的多个数据表;
21.处理单元,用于执行以下处理:分别根据每个所述数据表的表名,确定所述数据表
对应的数据依赖关系,得到多个数据依赖关系;任一数据表对应的数据依赖关系包括所述任一数据表的上游数据层和所述任一数据表的当前数据层;所述任一数据表的上游数据层用于表示所述任一数据表的来源;根据预存的数据依赖质量类别与数据依赖关系之间的映射关系,确定所述各个数据依赖关系的数据依赖质量类别;根据所述各个数据依赖关系的数据依赖质量类别和预设的各个数据依赖质量类别的权重,确定所述数据库的数据依赖质量。
22.在一种可能的实施例中,所述获取单元获取数据库中包括的多个数据表之前,所述处理单元还用于:根据所述多个数据表从产生到应用的流程,将所述数据库中的数据表进行分层处理,得到多个数据层;所述多个数据层依次包括:原始数据层、规范数据层、主题数据层、维度数据层、汇总数据层和应用数据层;所述原始数据层用于描述不对所述数据表中的数据进行处理的层级,所述规范数据层用于描述对所述数据表中的数据进行规范化处理不做数据关联的层级,所述主题数据层用于描述数据表中根据业务主题对数据进行关联的层级,所述维度数据层用于描述数据表中包括事实数据表中事实记录的特性的层级,所述汇总数据层用于描述数据表中包括通用性的维度和指标的层级,所述应用数据层用于描述数据表面向实际使用场景的层级;针对所述数据库的任一数据表,根据所述数据表的当前数据层和上游数据层,设置所述数据表的表名。
23.在一种可能的实施例中,所述数据依赖质量类别包括第一类别、第二类别和第三类别;所述第三类别的待优化级别高于所述第二类别,所述第二类别的待优化级别高于所述第一类别。
24.在一种可能的实施例中,所述第一类别与如下至少一种数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为原始数据层,当前数据层为规范数据层;所述数据依赖关系的上游数据层为规范数据层,当前数据层为主题数据层或维度数据层;所述数据依赖关系的上游数据层为主题数据层或维度数据层,当前数据层为汇总数据层或应用数据层;所述数据依赖关系的上游数据层为汇总数据层,当前数据层为应用数据层。
25.在一种可能的实施例中,所述第二类别与如下数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为规范数据层,当前数据层为汇总数据层或应用数据层。
26.在一种可能的实施例中,所述第三类别与如下至少一种数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为原始数据层,当前数据层为除规范数据层以外的任意一层;所述数据依赖关系的上游数据层所在层级位于当前数据层所在层级之后。
27.在一种可能的实施例中,所述处理单元根据所述各个数据依赖关系的数据依赖质量类别和预设的各个数据依赖质量类别的权重,确定所述数据库的数据依赖质量时,具体用于:根据各个数据依赖关系的数据依赖质量类别确定所述多个数据依赖关系的数据依赖质量类别集合;确定每个所述数据依赖质量类别在所述数据依赖质量类别集合的占比;根据每个所述数据依赖质量类别的占比和每个所述数据依赖质量类别对应的权重,确定所述数据库的数据依赖质量。
28.第三方面,本技术提供一种电子设备,包括:
29.存储器,用于存储程序指令;
30.处理器,用于调用所述存储器中存储的程序指令,按照获得的程序指令执行第一方面中任一项所述的方法包括的步骤。
31.第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被计算机执行时,使所述计算机执行第一方面中任一项所述的方法。
32.第五方面,本技术提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行第一方面中任一项所述的方法。
附图说明
33.图1为本技术实施例提供的一种数据质量评估方法应用的系统结构示意图;
34.图2为本技术实施例提供的一种数据质量评估方法的流程图;
35.图3为本技术实施例提供的一种数据质量评估装置的结构图;
36.图4为本技术实施例提供的一种电子设备的结构图。
具体实施方式
37.为使本技术的目的、技术方案和优点更加清楚明白,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互任意组合。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以按不同于此处的顺序执行所示出或描述的步骤。
38.本技术的说明书和权利要求书及上述附图中的术语“第一”和“第二”是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的保护。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本技术中的“多个”可以表示至少两个,例如可以是两个、三个或者更多个,本技术实施例不做限制。
39.本技术技术方案中,对数据的采集、传播、使用等,均符合国家相关法律法规要求。
40.在介绍本技术实施例所提供的数据质量评估方法之前,为了便于理解,首先对下面对本技术实施例的技术背景进行详细介绍。
41.目前,在数据开发的过程中,数据从产生、etl处理、加工、融合、流转,到最终呈现,数据之间自然会形成数据血缘关系。数据血缘关系属于数据治理中的一个重要概念,说的是在数据溯源的过程中找到相关数据之间的联系。但在实际的工作中,为了计算得到一份数据,不同的开发者可能会有不同的方案,比如会选择不同的数据表,执行不同的操作,从而也就会形成不同的数据血缘关系。因此随着工作的进行,难免会出现一些不合理的数据血缘关系,往往会影响数据库中数据的质量。
42.有鉴于此,本技术实施例提供了一种数据质量评估方法,该方法中,根据数据库中各个数据表的表名确定数据库中存在的多个数据依赖关系。其中数据依赖关系可以包括数据血缘关系。然后可以通过数据依赖质量类别与数据依赖关系之间的映射关系,确定各个
数据依赖关系所属的数据依赖质量类别。最后可以根据数据依赖质量类别对应的权重,确定数据库的数据依赖质量,从而实现对数据库的数据质量的评估。通过上述方法,可以为数据库的数据治理工作提供优化方向,对多个数据库的横向对比也提供了依据。
43.参阅图1为本技术实施例提供的数据质量评估方法应用的系统架构示意图。该系统可以为服务器100,包括:存储器110、处理器120和通信接口130。其中,通信接口130可以用于获取数据库中包括的多个数据表,处理器120是服务器100的控制中心,利用各种接口和线路连接整个服务器100的各个部分,通过运行或执行存储在存储器110内的软件程序或模块,以及调用存储在存储器110内的数据,执行服务器100的各种功能和处理数据。可选地,处理器120可以包括一个或多个处理单元。存储器110可以为高速随机存取存储器,还可以为非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。需要说明的是,上述图1所示的结构仅是一种示例,本技术实施例对此不做限定。
44.参阅图2为本技术实施例提供的一种数据质量评估方法的流程图,可包括以下流程:
45.s201,获取数据库中包括的多个数据表。
46.在一些实施例中,对于不同的业务或不同的项目,可以构建不同的数据库。也即数据库a中包括项目a的各个数据表,数据库b中包括项目b的各个数据表。
47.在另一些实施例中,数据库中可以包括多个业务或多个项目的数据表,也即数据库c中可以既包括项目a的各个数据表,又包括项目b的各个数据表。
48.一种可能的实现方式中,在获取数据库中包括的多个数据表之前,还可以根据多个数据表从产生到应用的流程,将数据库中的数据表进行分层处理,得到多个数据层。然后可以针对数据库的任一数据表,根据数据表的当前数据层和上游数据层分别对应的数据层,设置数据表的表名。其中,多个数据层按照从数据产生到应用的流程顺序,依次包括以下a)~f):
49.a)原始数据层,用于描述不对数据表中的数据进行处理的层级,在该层级通常以数据快照方式存放数据。
50.b)规范数据层,用于描述对数据表中的数据进行规范化处理不做数据关联的层级。其中,规范化处理可以包括编码转化、清洗、脱敏等。
51.c)主题数据层,用于描述数据表中根据业务主题对数据进行关联的层级。例如可以根据业务主题对属于规范数据层的数据表进行管理,形成业务主题相关的指标、维度、属性关联在一起的宽表。则该宽表的当前数据层即为主题数据层。
52.d)维度数据层,用于描述数据表中包括事实数据表中事实记录的特性的层级,可以看作是用户来分析数据的窗口。
53.e)汇总数据层,用于描述数据表中包括通用性的维度和指标的层级,该层级的数据表可以用于支持业务需求开发。
54.f)应用数据层,用于描述数据表面向实际使用场景的层级,比如面向报表、大盘、应用等场景。
55.在一个示例中,根据数据表的当前数据层和上游数据层,设置数据表的表名时,可以先确定预先设置的各个数据层对应的标识,然后可以将表名设置为数据表上游数据层对应的标识_当前数据层对应的标识_数据表相关信息对应的标识。其中,数据表相关信息可
以为数据内容、数据类型等信息。
56.举例来说,假设一个数据表当前数据层为规范数据层,上游数据层为原始数据层。并且该数据表相关信息对应的标识为test,规范数据层对应的标识为gf,原始数据层对应的标识为ys,则该数据表的表名可以设置为gf_ys_test。
57.需要说明的是,上述表名设置方法为示例性的,还可以通过其他方式进行设置,使得表名可以体现数据表的当前数据层和上游数据层即可,本技术对此不作限定。
58.s202,分别根据每个数据表的表名,确定数据表对应的数据依赖关系,得到多个数据依赖关系。
59.其中,任一数据表对应的数据依赖关系包括任一数据表的上游数据层和任一数据表的当前数据层。任一数据表的上游数据层用于表示该数据表的来源,例如,数据表a的上游数据层为原始数据层,则该数据表a是通过某一原始数据层的数据表得到的。
60.s203,根据预存的数据依赖质量类别与数据依赖关系之间的映射关系,确定各个数据依赖关系的数据依赖质量类别。
61.一种可能的实现方式中,数据依赖质量类别包括第一类别、第二类别和第三类别。其中第一类别为健康的,可以长期保留的数据依赖关系。第二类别为亚健康,不能长期保留,但可以暂时保留的数据依赖关系。第三类别为不健康的,需要优化的数据依赖关系。也即第三类别的待优化级别高于第二类别,第二类别的待优化级别高于第一类别。
62.在一些实施例中,数据依赖质量类别与数据依赖关系之间的映射关系可以如表1所示。
63.表1数据依赖质量类别与数据依赖关系之间的映射关系表
[0064][0065]
其中,由于无需聚合的应用数据层数据表可以直接使用主题数据层的数据表,因此当数据依赖关系中的当前数据层为应用数据层,上游数据层为主题数据层时可以确定该数据依赖关系属于第一类别。汇总数据层的数据表可以临时使用规范数据层的数据表,但待数据稳定后需要把加工逻辑整合到主题数据层中,因此当数据依赖关系中的当前数据层为规范数据层,上游数据层为汇总数据层时可以确定该数据依赖关系属于第二类别。由于无需聚合的应用数据层数据表可以临时使用规范数据层的数据表,但待数据稳定后要把加工逻辑整合到主题数据层中,因此当数据依赖关系中的当前数据层为应用数据层,上游数据层为规范数据层时可以确定该数据依赖关系属于第二类别。
[0066]
由于只有规范数据层的数据表可使用原始数据层的数据表,因此当数据依赖关系中的上游数据层为原始数据层,当前数据层为除规范数据层外的其他数据层时,可以确定该数据依赖关系属于第三类别。由于对数据库中的数据表进行分层处理时,是按照从数据产生到应用的流程顺序进行的,因此所有反向数据依赖关系,也即上游数据层所在层级位于当前数据层所在层级之后时均可以确定属于第三类别,为不健康的数据依赖关系,急需优化。
[0067]
在一个示例中,在s202得到多个数据依赖关系后,可以分别确定各个数据依赖关系中的上游数据层和当前数据层。然后根据各个数据依赖关系中的上游数据层和当前数据层确定各个数据依赖关系所属的数据依赖质量类别。举例来说,得到的多个数据依赖关系
包括:关系1、关系2和关系3。其中关系1中上游数据层为原始数据层,当前数据层为规范数据层。关系2中上游数据层为原始数据层,当前数据层为主题数据层。关系3中上游数据层为规范数据层,当前数据层为应用数据层。则根据如表1所示的数据依赖质量类别与数据依赖关系之间的映射关系可以确定关系1属于第一类别,关系2属于第三类别,关系3属于第二类别。
[0068]
在一些实施例中,可以通过颜色来标识不同的数据依赖质量类别,例如可以通过绿色标识第一类别,通过黄色标识第二类别,通过红色标识第三类别。通过比较醒目的红色来标识急需优化的数据依赖关系,可以使得数据依赖关系优化的方向一目了然,便于相关工作人员后续对数据库中的数据进行优化管理。
[0069]
s204,根据各个数据依赖关系的数据依赖质量类别和预设的各个数据依赖质量类别的权重,确定数据库的数据依赖质量。
[0070]
一种可能的实现方式中,可以根据各个数据依赖关系的数据依赖质量类别确定多个数据依赖关系的数据依赖质量类别集合。确定每个数据依赖质量类别在数据依赖质量类别集合的占比。根据每个数据依赖质量类别的占比和每个数据依赖质量类别对应的权重,确定数据库的数据依赖质量,其中,数据库的数据依赖质量可以满足公式(1)。
[0071]
w= a%*w1+b%*w2+c%* w3
ꢀꢀꢀꢀꢀꢀꢀꢀ
公式(1)
[0072]
式中,w为数据库的数据依赖质量。a为第一类别的占比,b为第二类别的占比,c为第三类别的占比。w1为第一类别的权重,w2为第二类别的权重,w3为第三类别的权重。
[0073]
举例来说,假设得到的多个数据依赖关系包括:关系1~关系5。可以在s203确定各个数据依赖关系的数据依赖质量类别:关系1属于第一类别,关系2属于第一类别,关系3属于第三类别,关系4属于第二类别,关系5属于第一类别。则多个数据依赖关系的数据依赖质量类别集合可以包括3个第一类别,1个第二类别和1个第三类别。则第一类别的占比为60%,第二类别为20%,第三类别为20%。假设第一类别的权重为1,第二类别的权重为0.8,第三类别的权重为0.6,则数据库的数据依赖质量为:1*60%+0.8*20%+0.6*20%=0.88。
[0074]
在一个示例中,还可以设置数据库的初始分值为预设分数,然后可以根据每个数据依赖质量类别的占比和每个数据依赖质量类别对应的权重,确定数据库的数据依赖质量对应的得分可以满足公式(2)。
[0075]
w=s+a%*w1+b%*w2+c%* w3
ꢀꢀꢀꢀꢀꢀꢀꢀ
公式(2)
[0076]
式中,s为数据库的初始分值。
[0077]
例如可以设置预设分数为100分,第一类别的权重是0分,第二类别的权重-5分,第三类别的权重是-10分。假设得到的多个数据依赖关系包括:关系1~关系5。且在s203确定各个数据依赖关系的数据依赖质量类别:关系1属于第一类别,关系2属于第一类别,关系3属于第三类别,关系4属于第二类别,关系5属于第一类别。则多个数据依赖关系的数据依赖质量类别集合可以包括3个第一类别,1个第二类别和1个第三类别。则第一类别的占比为60%,第二类别为20%,第三类别为20%。则据库的数据依赖质量为100+0*60%+(-5)*20%+(-10)*20%=97。
[0078]
需要说明的是,初始分值以及各个数据依赖质量类别的权重可以是根据经验或实际情况预设的,本技术对此不作限定。
[0079]
基于上述方案,通过对系统中包括的各个数据依赖关系进行分类以及根据各个数
据依赖质量类别的权重,确定数据库的数据依赖质量,从而实现对数据库的数据质量的评估。通过数据库的数据质量的评估可以为数据库的数据治理工作提供优化方向,对多个数据库的横向对比也提供了依据。
[0080]
基于同一发明构思,本技术实施例提供一种数据质量评估装置,请参照图3,该装置包括:
[0081]
获取单元301,用于获取数据库中包括的多个数据表;
[0082]
处理单元302,用于执行以下处理:分别根据每个所述数据表的表名,确定所述数据表对应的数据依赖关系,得到多个数据依赖关系;任一数据表对应的数据依赖关系包括所述任一数据表的上游数据层和所述任一数据表的当前数据层;所述任一数据表的上游数据层用于表示所述任一数据表的来源;根据预存的数据依赖质量类别与数据依赖关系之间的映射关系,确定所述各个数据依赖关系的数据依赖质量类别;根据所述各个数据依赖关系的数据依赖质量类别和预设的各个数据依赖质量类别的权重,确定所述数据库的数据依赖质量。
[0083]
在一种可能的实施例中,所述获取单元301获取数据库中包括的多个数据表之前,所述处理单元302还用于:根据所述多个数据表从产生到应用的流程,将所述数据库中的数据表进行分层处理,得到多个数据层;所述多个数据层依次包括:原始数据层、规范数据层、主题数据层、维度数据层、汇总数据层和应用数据层;所述原始数据层用于描述不对所述数据表中的数据进行处理的层级,所述规范数据层用于描述对所述数据表中的数据进行规范化处理不做数据关联的层级,所述主题数据层用于描述数据表中根据业务主题对数据进行关联的层级,所述维度数据层用于描述数据表中包括事实数据表中事实记录的特性的层级,所述汇总数据层用于描述数据表中包括通用性的维度和指标的层级,所述应用数据层用于描述数据表面向实际使用场景的层级;针对所述数据库的任一数据表,根据所述数据表的当前数据层和上游数据层,设置所述数据表的表名。
[0084]
在一种可能的实施例中,所述数据依赖质量类别包括第一类别、第二类别和第三类别;所述第三类别的待优化级别高于所述第二类别,所述第二类别的待优化级别高于所述第一类别。
[0085]
在一种可能的实施例中,所述第一类别与如下至少一种数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为原始数据层,当前数据层为规范数据层;所述数据依赖关系的上游数据层为规范数据层,当前数据层为主题数据层或维度数据层;所述数据依赖关系的上游数据层为主题数据层或维度数据层,当前数据层为汇总数据层或应用数据层;所述数据依赖关系的上游数据层为汇总数据层,当前数据层为应用数据层。
[0086]
在一种可能的实施例中,所述第二类别与如下数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为规范数据层,当前数据层为汇总数据层或应用数据层。
[0087]
在一种可能的实施例中,所述第三类别与如下至少一种数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为原始数据层,当前数据层为除规范数据层以外的任意一层;所述数据依赖关系的上游数据层所在层级位于当前数据层所在层级之后。
[0088]
在一种可能的实施例中,所述处理单元302根据所述各个数据依赖关系的数据依赖质量类别和预设的各个数据依赖质量类别的权重,确定所述数据库的数据依赖质量时,具体用于:根据各个数据依赖关系的数据依赖质量类别确定所述多个数据依赖关系的数据
依赖质量类别集合;确定每个所述数据依赖质量类别在所述数据依赖质量类别集合的占比;根据每个所述数据依赖质量类别的占比和每个所述数据依赖质量类别对应的权重,确定所述数据库的数据依赖质量。
[0089]
基于上述方法的同一构思,参见图4,为本技术实施例提供的一种电子设备的结构示意图,该电子设备包括至少一个处理器402,以及与至少一个处理器402连接或称耦合的存储器401,此外,电子设备还可以包括通信接口403。电子设备可以通过通信接口403和其它设备进行信息交互。
[0090]
示例性的,所述通信接口403可以是收发器、电路、总线、模块、管脚或其它类型的通信接口。当该电子设备为芯片类的装置或者电路时,该电子设备中的通信接口403也可以是输入输出电路,可以输入信息(或称,接收信息)和输出信息(或称,发送信息),处理器为集成的处理器或者微处理器或者集成电路或则逻辑电路,处理器可以根据输入信息确定输出信息。
[0091]
本技术实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理器402可能和存储器401、通信接口403协同操作。本技术中不限定上述处理器402、存储器401以及通信接口403之间的具体连接介质。
[0092]
可选的,参见图4,所述处理器402、所述存储器401以及所述通信接口403之间通过总线相互连接。所述总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0093]
在本技术实施例中,存储器401作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器401可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(random access memory,ram)、静态随机访问存储器(static random access memory,sram)、可编程只读存储器(programmable read only memory,prom)、只读存储器(read only memory,rom)、带电可擦除可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、磁性存储器、磁盘、光盘等等。存储器401是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本技术实施例中的存储器401还可以是电路或者其它任意能够实现存储功能的装置,用于存储指令、计算机程序和/或数据。
[0094]
在本技术实施例中,处理器402可以是通用处理器,例如中央处理器(cpu)、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的数据质量评估方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0095]
通过对处理器402进行设计编程,可以将前述实施例中介绍的数据质量评估方法所对应的代码固化到芯片内,从而使芯片在运行时能够执行前述的数据质量评估方法的步
骤,如何对处理器402进行设计编程为本领域技术人员所公知的技术,这里不再赘述。
[0096]
在一个或多个实施例中,存储器401存储有可被至少一个处理器402执行的指令,至少一个处理器402通过调用存储器401存储的指令或者计算机程序,可以实现上述任一方法的步骤。
[0097]
基于同一发明构思,本技术实施例提供一种计算机可读存储介质,计算机程序产品包括:计算机程序代码,当计算机程序代码在计算机上运行时,使得计算机执行如前文论述任一的数据质量评估方法。由于上述计算机可读存储介质解决问题的原理与数据质量评估方法相似,因此上述计算机可读存储介质的实施可以参见方法的实施,重复之处不再赘述。
[0098]
基于同一发明构思,本技术实施例还提供了一种计算机程序产品,该计算机程序产品包括:计算机程序代码,当该计算机程序代码在计算机上运行时,使得计算机执行如前文论述任一的数据质量评估方法。由于上述计算机程序产品解决问题的原理与数据质量评估方法相似,因此上述计算机程序产品的实施可以参见方法的实施,重复之处不再赘述。
[0099]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0100]
本技术是参照根据本技术的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0101]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0102]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列用户操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0103]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
技术特征:
1.一种数据质量评估方法,其特征在于,所述方法包括:获取数据库中包括的多个数据表;分别根据每个所述数据表的表名,确定所述数据表对应的数据依赖关系,得到多个数据依赖关系;任一数据表对应的数据依赖关系包括所述任一数据表的上游数据层和所述任一数据表的当前数据层;所述任一数据表的上游数据层用于表示所述任一数据表的来源;根据预存的数据依赖质量类别与数据依赖关系之间的映射关系,确定所述各个数据依赖关系的数据依赖质量类别;根据所述各个数据依赖关系的数据依赖质量类别和预设的各个数据依赖质量类别的权重,确定所述数据库的数据依赖质量。2.如权利要求1所述的方法,其特征在于,所述获取数据库中包括的多个数据表之前,所述方法还包括:根据所述多个数据表从产生到应用的流程,将所述数据库中的数据表进行分层处理,得到多个数据层;所述多个数据层依次包括:原始数据层、规范数据层、主题数据层、维度数据层、汇总数据层和应用数据层;所述原始数据层用于描述不对所述数据表中的数据进行处理的层级,所述规范数据层用于描述对所述数据表中的数据进行规范化处理不做数据关联的层级,所述主题数据层用于描述数据表中根据业务主题对数据进行关联的层级,所述维度数据层用于描述数据表中包括事实数据表中事实记录的特性的层级,所述汇总数据层用于描述数据表中包括通用性的维度和指标的层级,所述应用数据层用于描述数据表面向实际使用场景的层级;针对所述数据库的任一数据表,根据所述数据表的当前数据层和上游数据层,设置所述数据表的表名。3.如权利要求2所述的方法,其特征在于,所述数据依赖质量类别包括第一类别、第二类别和第三类别;所述第三类别的待优化级别高于所述第二类别,所述第二类别的待优化级别高于所述第一类别。4.如权利要求3所述的方法,其特征在于,所述第一类别与如下至少一种数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为原始数据层,当前数据层为规范数据层;所述数据依赖关系的上游数据层为规范数据层,当前数据层为主题数据层或维度数据层;所述数据依赖关系的上游数据层为主题数据层或维度数据层,当前数据层为汇总数据层或应用数据层;所述数据依赖关系的上游数据层为汇总数据层,当前数据层为应用数据层。5.如权利要求3所述的方法,其特征在于,所述第二类别与如下数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为规范数据层,当前数据层为汇总数据层或应用数据层。6.如权利要求3所述的方法,其特征在于,所述第三类别与如下至少一种数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为原始数据层,当前数据层为除规范数据层以外的任
意一层;所述数据依赖关系的上游数据层所在层级位于当前数据层所在层级之后。7.如权利要求1-6任一项所述的方法,其特征在于,所述根据所述各个数据依赖关系的数据依赖质量类别和预设的各个数据依赖质量类别的权重,确定所述数据库的数据依赖质量,包括:根据各个数据依赖关系的数据依赖质量类别确定所述多个数据依赖关系的数据依赖质量类别集合;确定每个所述数据依赖质量类别在所述数据依赖质量类别集合的占比;根据每个所述数据依赖质量类别的占比和每个所述数据依赖质量类别对应的权重,确定所述数据库的数据依赖质量。8.一种数据质量评估装置,其特征在于,所述装置包括:获取单元,用于获取数据库中包括的多个数据表;处理单元,用于执行以下处理:分别根据每个所述数据表的表名,确定所述数据表对应的数据依赖关系,得到多个数据依赖关系;任一数据表对应的数据依赖关系包括所述任一数据表的上游数据层和所述任一数据表的当前数据层;所述任一数据表的上游数据层用于表示所述任一数据表的来源;根据预存的数据依赖质量类别与数据依赖关系之间的映射关系,确定所述各个数据依赖关系的数据依赖质量类别;根据所述各个数据依赖关系的数据依赖质量类别和预设的各个数据依赖质量类别的权重,确定所述数据库的数据依赖质量。9.如权利要求8所述的装置,其特征在于,所述获取单元获取数据库中包括的多个数据表之前,所述处理单元还用于:根据所述多个数据表从产生到应用的流程,将所述数据库中的数据表进行分层处理,得到多个数据层;所述多个数据层依次包括:原始数据层、规范数据层、主题数据层、维度数据层、汇总数据层和应用数据层;所述原始数据层用于描述不对所述数据表中的数据进行处理的层级,所述规范数据层用于描述对所述数据表中的数据进行规范化处理不做数据关联的层级,所述主题数据层用于描述数据表中根据业务主题对数据进行关联的层级,所述维度数据层用于描述数据表中包括事实数据表中事实记录的特性的层级,所述汇总数据层用于描述数据表中包括通用性的维度和指标的层级,所述应用数据层用于描述数据表面向实际使用场景的层级;针对所述数据库的任一数据表,根据所述数据表的当前数据层和上游数据层,设置所述数据表的表名。10.如权利要求9所述的装置,其特征在于,所述数据依赖质量类别包括第一类别、第二类别和第三类别;所述第三类别的待优化级别高于所述第二类别,所述第二类别的待优化级别高于所述第一类别。11.如权利要求10所述的装置,其特征在于,所述第一类别与如下至少一种数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为原始数据层,当前数据层为规范数据层;所述数据依赖关系的上游数据层为规范数据层,当前数据层为主题数据层或维度数据
层;所述数据依赖关系的上游数据层为主题数据层或维度数据层,当前数据层为汇总数据层或应用数据层;所述数据依赖关系的上游数据层为汇总数据层,当前数据层为应用数据层。12.如权利要求10所述的装置,其特征在于,所述第二类别与如下数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为规范数据层,当前数据层为汇总数据层或应用数据层。13.如权利要求10所述的装置,其特征在于,所述第三类别与如下至少一种数据依赖关系之间具有映射关系:所述数据依赖关系的上游数据层为原始数据层,当前数据层为除规范数据层以外的任意一层;所述数据依赖关系的上游数据层所在层级位于当前数据层所在层级之后。14.如权利要求8-13任一所述的装置,其特征在于,所述处理单元根据所述各个数据依赖关系的数据依赖质量类别和预设的各个数据依赖质量类别的权重,确定所述数据库的数据依赖质量时,具体用于:根据各个数据依赖关系的数据依赖质量类别确定所述多个数据依赖关系的数据依赖质量类别集合;确定每个所述数据依赖质量类别在所述数据依赖质量类别集合的占比;根据每个所述数据依赖质量类别的占比和每个所述数据依赖质量类别对应的权重,确定所述数据库的数据依赖质量。15.一种电子设备,其特征在于,包括:存储器,用于存储程序指令;处理器,用于调用所述存储器中存储的程序指令,按照获得的程序指令执行权利要求1-7中任一项所述的方法包括的步骤。16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被计算机执行时,使所述计算机执行如权利要求1-7中任一项所述的方法。17.一种计算机程序产品,其特征在于,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行上述如权利要求1-7中任一项所述的方法。
技术总结
本申请涉及数据处理技术领域,具体涉及一种数据质量评估方法、装置、电子设备及介质,用于解决现有技术中由于一些不合理的数据血缘关系影响数据库中数据质量的问题。该方法包括:获取数据库中包括的多个数据表;分别根据每个数据表的表名,确定数据表对应的数据依赖关系,得到多个数据依赖关系;任一数据表对应的数据依赖关系包括任一数据表的上游数据层和任一数据表的当前数据层;任一数据表的上游数据层用于表示任一数据表的来源;根据预存的数据依赖质量类别与数据依赖关系之间的映射关系,确定各个数据依赖关系的数据依赖质量类别;根据各个数据依赖关系的数据依赖质量类别和预设的各个数据依赖质量类别的权重,确定数据库的数据依赖质量。据库的数据依赖质量。据库的数据依赖质量。
技术研发人员:王志谦
受保护的技术使用者:建信金融科技有限责任公司
技术研发日:2023.02.21
技术公布日:2023/7/26
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
