首页> 中国专利> 数据仓库维度表的校验方法及装置

数据仓库维度表的校验方法及装置

摘要

本申请实施例提供了一种数据仓库维度表的校验方法及装置,该方法包括:获取第一维度表,所述第一维度表为待校验的维度表;获取第二维度表,所述第二维度表为宽表中的任一维度表;将所述第一维度主键与所述第二维度主键进行关联,得到第一结果,所述第一维度主键为所述第一维度表的维度主键,所述第二维度主键为所述第二维度表的维度主键;基于所述第一结果,确定所述第一维度表的校验结果。该方法可以将基于数据仓库中的宽表自动确定出维度表是否有误,从而解决从宽表中获取到维度属性与关联维度表后获取到的维度属性不一致的问题,进而提高维度表的校验效率。

著录项

  • 公开/公告号CN112182119A

    专利类型发明专利

  • 公开/公告日2021-01-05

    原文格式PDF

  • 申请/专利权人 中国平安财产保险股份有限公司;

    申请/专利号CN202011066234.8

  • 发明设计人 黄新华;

    申请日2020-09-30

  • 分类号G06F16/28(20190101);G06F16/22(20190101);

  • 代理机构44202 广州三环专利商标代理有限公司;

  • 代理人熊永强

  • 地址 518000 广东省深圳市福田区益田路5033号平安金融中心12、13、38、39、40层

  • 入库时间 2023-06-19 09:27:35

说明书

技术领域

本申请涉及数据库技术领域,尤其涉及一种数据仓库维度表的校验方法及装置。

背景技术

为了更有效地进行数据的分析,数据仓库可以采用星型模型进行建模。星型模型包括事实表和维度表,在将所有的数据逐条的存入到数据仓库中的事实表之后,可以通过与事实表关联的维度表,从不同的角度展现事实表中的数据,从而更好地做出决策。但是事实表中只包含维度表的主键,不对维度表的属性做冗余。用户需要关联维度表来获取维度表的其他属性信息,而维度表是单独的模型,其数据的存储和处理都是独立的,因此,会造成用户从宽表中获取到维度属性与关联维度表后获取到的维度属性不一致的问题。

发明内容

本申请实施例提供了一种数据仓库维度表的校验方法及装置,能够自动确定出维度表是否有误,有效地提高维度表的校验效率。

第一方面,本申请实施例提供一种数据仓库维度表的校验方法,所述方法包括:

获取第一维度表,所述第一维度表为待校验的维度表;

获取第二维度表,所述第二维度表为宽表中的任一维度表;

将所述第一维度主键与所述第二维度主键进行关联,得到第一结果,所述第一维度主键为所述第一维度表的维度主键,所述第二维度主键为所述第二维度表的维度主键;

基于所述第一结果,确定所述第一维度表的校验结果。

可选的,若所述第一维度主键中的记录全部包括所述第二维度主键中的记录,所述第一结果为成功;

若所述第一维度主键中的记录未全部包括所述第二维度主键中的记录,所述第一结果为失败。

可选的,若所述第一维度主键中的记录全部包括所述第二维度主键中的记录,所述方法还包括:

将所述第一维度属性与所述第二维度属性进行匹配,得到第二结果,所述第一维度属性为所述第一维度表的维度属性,所述第一维度属性包括至少一个维度属性,所述第二维度属性为所述第二维度表的维度属性,所述第二维度属性包括至少一个维度属性。

可选的,若所述第一维度属性与所述第二维度属性完全匹配,所述第二结果为成功;

若所述第一维度属性与所述第二维度属性不完全匹配,所述第二结果为失败。

可选的,若所述第一维度属性与所述第二维度属性完全匹配,所述方法还包括:

将所述第一维度属性的属性值饱和数与所述第二维度属性的属性值饱和数进行比较,得到第三结果。

可选的,若所述第一维度属性的属性值饱和数大于所述第二维度属性的属性值饱和数,所述第三结果为成功;

若所述第一维度属性的属性值饱和数小于或等于所述第二维度属性的属性值饱和数,所述第三结果为失败。

可选的,所述基于所述第一结果,确定所述第一维度表的校验结果,包括:

基于所述第一结果、第二结果、第三结果中的任一项确定所述第一维度表的校验结果。

第二方面,本申请实施例提供一种数据仓库维度表的校验装置,所述装置包括:

获取单元,用于获取第一维度表,所述第一维度表为待校验的维度表;

所述获取单元,还用于获取第二维度表,所述第二维度表为宽表中的任一维度表;

关联单元,用于将所述第一维度表与所述第二维度表进行关联,得到第一结果;

确定单元,用于基于所述第一结果,确定所述第一维度表的校验结果。

可选的,若所述第一维度主键中的记录全部包括所述第二维度主键中的记录,所述第一结果为成功;

若所述第一维度主键中的记录未全部包括所述第二维度主键中的记录,所述第一结果为失败。

可选的,若所述第一维度主键中的记录全部包括所述第二维度主键中的记录,所述装置还包括:

匹配单元,用于将所述第一维度属性与所述第二维度属性进行匹配,得到第二结果,所述第一维度属性为所述第一维度表的维度属性,所述第一维度属性包括至少一个维度属性,所述第二维度属性为所述第二维度表的维度属性,所述第二维度属性包括至少一个维度属性。

可选的,若所述第一维度属性与所述第二维度属性完全匹配,所述第二结果为成功;

若所述第一维度属性与所述第二维度属性不完全匹配,所述第二结果为失败。

可选的,若所述第一维度属性与所述第二维度属性完全匹配,所述装置还包括:

比较单元,用于将所述第一维度属性的属性值饱和数与所述第二维度属性的属性值饱和数进行比较,得到第三结果。

可选的,若所述第一维度属性的属性值饱和数大于所述第二维度属性的属性值饱和数,所述第三结果为成功;

若所述第一维度属性的属性值饱和数小于或等于所述第二维度属性的属性值饱和数,所述第三结果为失败。

可选的,所述确定单元具体用于:基于所述第一结果、第二结果、第三结果中的任一项确定所述第一维度表的校验结果。

第三方面,本申请实施例提供一种计算机设备,所述计算机设备包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行本申请实施例第一方面中任一方法所描述步骤的指令。

第四方面,本申请实施例提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面中任一方法所描述的部分或全部步骤。

第五方面,本申请实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面中任一方法所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。

本申请实施例提供一种数据仓库维度表的校验方法及装置,通过获取第一维度表,所述第一维度表为待校验的维度表;获取第二维度表,所述第二维度表为宽表中的任一维度表;将所述第一维度主键与所述第二维度主键进行关联,得到第一结果,所述第一维度主键为所述第一维度表的维度主键,所述第二维度主键为所述第二维度表的维度主键;基于所述第一结果,确定所述第一维度表的校验结果。该方法可以将基于数据仓库中的宽表自动确定出维度表是否有误,从而解决从宽表中获取到维度属性与关联维度表后获取到的维度属性不一致的问题,进而提高维度表的校验效率。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种数据仓库维度表的校验方法的实施场景的示意图;

图2是本申请实施例提供的一种数据仓库维度表的校验方法的流程示意图;

图3a是本申请实施例提供的一种数据仓库维度表的校验装置的功能单元组成框图;

图3b是本申请实施例提供的另一种数据仓库维度表的校验装置的功能单元组成框图;

图4是本申请实施例提供的另一种计算机设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、成功地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

为了更好地理解本申请实施例的方案,下面先对本申请实施例可能涉及的相关术语和概念进行介绍。

(1)数据仓库(Data Warehouse,DW)是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。数据仓库是单个数据存储,出于分析性报告和决策支持目的而创建,为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制。数据仓库由下到上分为细节数据层(Data Warehouse Detail,DWD)、基础数据层(DataWarehouse Base,DWB)、服务数据层(Data Warehouse Service,DWS)。DWD也成ODS,是业务层与数据仓库的隔离层;DWB存储的是客观数据,一般用作中间层,是大量指标的数据层;DWS是基于DWB上的基础数据,整合汇总成分析某一个主题域的服务数据,一般是宽表。

(2)星型模型是一种多维的数据关系,由一个事实表(Fact Table)和一组维度表(Dimension Table)组成。每个维度表都有一个维作为主键,所有维度表的主键组合成事实表的主键。事实表的非主键属性称为事实(Fact),一般是数值或其他可以进行计算的数据;而维度是文字、时间等类型的数据,按这种方式组织数据可以按照不同的维(事实表主键的部分或全部)来对这些事实数据进行求和(summary)、求平均(average)、计数(count)、百分比(percent)等的聚集计算,从而可以从不同的角度数字来分析业务主题的情况。

目前,数据仓库可以采用星型模型进行建模,用户在将所有的数据逐条的存入到数据仓库中的事实表之后,可以通过与事实表关联的维度表,从不同的角度展现事实表中的数据。但是事实表中只包含维度表的主键,不对维度表的属性做冗余。用户需要关联维度表来获取维度表的其他属性信息,而维度表是单独的模型,其数据的存储和处理都是独立的,因此,会造成用户从宽表中获取到维度属性与关联维度表后获取到的维度属性不一致的问题。

为解决上述问题,本申请提出了一种数据仓库维度表的校验方法,该方法包括获取第一维度表,所述第一维度表为待校验的维度表;获取第二维度表,所述第二维度表为宽表中的任一维度表;将所述第一维度主键与所述第二维度主键进行关联,得到第一结果,所述第一维度主键为所述第一维度表的维度主键,所述第二维度主键为所述第二维度表的维度主键;基于所述第一结果,确定所述第一维度表的校验结果。具体地,可以将待校验的维度表的维度主键与宽表中的任一维度表的维度主键进行关联,得到第一结果,基于第一结果,确定待校验维度表的校验结果,从而可以自动确定出维度表是否有误,解决从宽表中获取到维度属性与关联维度表后获取到的维度属性不一致的问题,进而提高维度表的校验效率。

下面结合具体实施例,对本申请进行详细说明。

请参阅图1,图1是本申请实施例提供的一种数据仓库维度表的校验方法的实施场景的示意图,如图1所示,包括数据仓库和终端设备。在所述数据仓库中存储有分析对象的事实表、分析维度的维度表和包括维度属性的宽表;用户可以操作终端设备,获取数据仓库中的维度表和宽表,将维度表和宽表进行关联来对维度表进行校验。其中,在建立数据仓库时,事实表和维度表是通过工作人员建立和生成的。

请参阅图2,图2是本申请实施例提供的一种数据仓库维度表的校验方法的流程示意图,该方法可以应用于如图1所示的应用场景。如图2所示,该方法包括如下步骤:

S210、获取第一维度表,所述第一维度表为待校验的维度表。

在通过数据仓库进行分析时,其中会存储有开发人员按照用户的需求,预先开发好的多张维度表。举例来说,在已构建完成数据仓库中,可以存储维度种类为“时间维”、“区域维”、“客户维”、“产品维”、“部门维”和“项目维”等的维度表,通过这些维度表与事实表建立相互关联的关系,从而可以对数据仓库的事实表中的数据进行分析。事实表中只包含维度表的主键,且维度表中的数据是相互独立的,当维度表中数据进行更新后,用户从宽表中获取到的维度属性和关联维度表后取到的维度属性可能会存在不一致的情况。因此,需要对数据仓库中的维度表进行校验。

其中,数据仓库可以包括多组维度表,每组维度表可以是不同的维度种类,例如,第一组维度表的维度种类可以是时间维,第二组维度表的维度种类可以是产品维,第三组维度表的维度种类可以是区域维。所述第一维度表可以是所述数据仓库中多组维度表中的任一维度表,该第一维度表中的维度属性字段需要进行校验。例如,所述第一维度表为维度表中table1,table1中包含维度主键column20以及维度属性字段colum21、column22、colum23等,维度属性字段colum21、column22、colum23需要被校验。

S220、获取第二维度表,所述第二维度表为宽表中的任一维度表。

其中,维度表中的维度属性可以冗余到宽表里,因此可以通过获取宽表中的维度表来对需要校验的维度表进行校验。所述第二维度表可以是宽表中的维度表,进一步地,所述第二维度表的维度种类与所述第一维度表的维度种类相同,通过将相同维度种类的第一维度表关联第二维度表,根据关联结果,可以了解第一维度表的维度属性值是否合理,是否存在维度属性记录失败、是否存在维度属性值不正确等问题。

S230、将所述第一维度主键与所述第二维度主键进行关联,得到第一结果,所述第一维度主键为所述第一维度表的维度主键,所述第二维度主键为所述第二维度表的维度主键。

在本申请实施例中,第一维度表包括第一维度主键和第一维度属性,第一维度属性中可以包括至少一个维度属性。第二维度表包括第二维度主键和第二维度属性,第二纬度属性中可以包括至少一个维度属性。

具体地,将第二维度主键关联第一维度主键,可以通过连接(join)子句将第一维度主键和第二维度主键进行连接,例如,通过左连接(left join)将第一维度主键与第二维度主键进行关联,以第二维度主键作为基准表,将第一维度主键的记录与第二维度主键的记录进行匹配,返回第二维度主键中所有的记录以及第一维度主键中连接字段相等的记录,若第一维度主键的记录不存在与第二维度主键匹配的记录,则该记录的值置为空(NULL)。其中,在第一维度主键与第二维度主键中的记录不是数值,需要对判断第一维度主键与第二维度主键中的记录的数据类型是否相同,若该记录的数据类型相同,且属于同类数据(名称可以不相同),则第一维度主键中的该记录与第二维度主键中的该记录相匹配。

进一步地,本申请实施例也可以使用右连接(right join)将第二维度主键与第一维度主键进行连接,以第二维度主键作为基准表,返回第二维度主键中所有的记录以及第一维度主键中连接字段相等的记录。即使第一维度主键中没有匹配第二维度主键中的记录,也从第二维度主键中返回所有的记录。

可选的,若所述第一维度主键中的记录全部包括所述第二维度主键中的记录,所述第一结果为成功;若所述第一维度主键中的记录未全部包括所述第二维度主键中的记录,所述第一结果为失败。

其中,根据关联结果,判断第一维度主键与第二维度主键的包含关系,根据该包含关系确定所述第一结果。若有记录在第二维度主键存在,在第一维度主键中不存在,则表示第一维度主键记录不全;若第二维度主键中的所有记录在第一维度主键中均存在,则表示第一维度主键记录成功。

举例说明,第一维度表table1中包含维度主键colum10以及属性字段colum11、colum12、colum13,所有维度属性字段都需要被校验;第二维度表table2中包含维度主键column20以及属性字段colum21、column22、colum23。通过left join table1关联维度主键colum10和table2的维度主键column20,根据关联结果,判断table1关联维度主键colum10和table2的维度主键column20的包含关系。若有table2的维度主键column20中的记录不存在table1的维度主键colum10中,则表示维度表table1记录不全,有失败,则所述第一维度表的第一结果为失败;若table2的维度主键column20中的记录均存在table1的维度主键colum10中,则表示维度表table1记录成功,没有失败,则所述第一维度表的第一结果为成功。

在一种可能的实施例中,若所述第一维度主键中的记录全部包括所述第二维度主键中的记录,所述方法还包括:将所述第一维度属性与所述第二维度属性进行匹配,得到第二结果,所述第一维度属性为所述第一维度表的维度属性,所述第一维度属性包括至少一个维度属性,所述第二维度属性为所述第二维度表的维度属性,所述第二维度属性包括至少一个维度属性。

其中,当校验完第一维度表的维度主键后,还可以进一步对第一维度表中的维度属性进行校验,以校验维度属性的值是否合理、维度属性记录是否失败。

可选的,若所述第一维度属性与所述第二维度属性完全匹配,所述第二结果为成功;若所述第一维度属性与所述第二维度属性不完全匹配,所述第二结果为失败。

具体地,将包括第一维度属性的表与包括第二维度属性的表进行关联,该关联操作可以为左连接或右连接。以包括第二维度属性的表作为基准表,将第一维度属性中的记录与第二维度属性中的记录进行匹配,返回第二维度属性中所有的记录以及第一维度属性中连接字段相等的记录,若第一维度属性的记录不存在与第二维度主键匹配的记录,则该记录的值置为空(NULL)。其中,在第一维度主键与第二维度主键中的记录不是数值,需要对判断第一维度主键与第二维度主键中的记录的数据类型是否相同,若该记录的数据类型相同,且属于同类数据(名称可以不相同),则第一维度主键中的该记录与第二维度主键中的该记录相匹配。根据关联结果,判断第一维度属性与第二维度属性的包含关系,根据该包含关系确定所述第二结果。

举例说明,在第一维度表table1的维度主键colum10与第二维度表table2的维度主键column20匹配时,将table1中维度属性colum11、维度属性colum12和维度属性colum13与table2中维度属性colum21、维度属性colum22、维度属性colum23进行关联。若table1中维度属性colum11、维度属性colum12、维度属性colum13的属性名称、属性值、数据类型与table2中维度属性colum21、维度属性colum22、维度属性colum23的属性名称、属性值、数据类型一一匹配,则表示所述第一维度表table1与第二维度表table2完全匹配,第一维度表的第二结果为成功;若table1中维度属性colum11、维度属性colum12、维度属性colum13的属性名称、属性值、数据类型中任一项与table2中维度属性colum21、维度属性colum22、维度属性colum23的属性名称、属性值、数据类型不匹配时,则所述第一维度表table1与第二维度表table2不匹配,则所述第一维度表table1的第二结果为失败。

在一种可能的实施例中,若所述第一维度属性与所述第二维度属性完全匹配,所述方法还包括:将所述第一维度属性的属性值饱和数与所述第二维度属性的属性值饱和数进行比较,得到第三结果。

其中,属性值饱和数用于指示维度属性的数值填充程度,例如,如果第一维度表的维度属性的值全部为空,则属性值饱和数为0%,如果第一维度表的维度属性的值全部不为空,则属性值饱和数为100%。

可选的,若所述第一维度属性的属性值饱和数大于所述第二维度属性的属性值饱和数,所述第三结果为成功;若所述第一维度属性的属性值饱和数小于或等于所述第二维度属性的属性值饱和数,所述第三结果为失败。

在本申请实施例中,第一维度属性的属性值饱和数大于第二维度属性的属性值饱和数,表示第一维度属性中的记录比第二维度属性中的记录多,第一维度属性记录成功;第一维度属性的属性值饱和数小于或等于第二维度属性的属性值饱和数,表示第一维度属性中的记录比第二维度属性中的记录少,第一维度属性记录不全,有失败。

S240、基于所述第一结果,确定所述第一维度表的校验结果。

可选的,所述基于所述第一结果,确定所述第一维度表的校验结果,包括:基于所述第一结果、第二结果、第三结果中的任一项确定所述第一维度表的校验结果。

具体地,在将第一维度表与第二维度表进行关联后,可以根据第一结果、第二结果或第三结果确定第一维度表是否合理,是否存在维度属性记录失败、是否存在维度属性值不正确等问题。若第一结果为失败,则表示第一维度表的维度主键异常,第一维度表的校验结果为成功;若第一结果为成功,则表示第一维度表的维度主键正常,第一维度表的校验结果为成功;若第一结果、第二结果均为成功,则表示第一维度表的维度主键和维度属性均正常,第一维度表的校验结果为成功;若第一结果为成功,第二结果为失败,则表示第一维度表的维度属性异常,第一维度表的校验结果为失败;若第一结果、第二结果、第三结果均为成功,则表示第一维度表所有记录均正常,第一维度表的校验结果为成功;若第一结果为成功、第二结果为成功、第三结果均为失败,则表示第一维度表的维度属性的属性值饱和数异常,第一维度表的校验结果为失败。

可选的,可以开发校验脚本自动校验数据仓库中的维度表,并将第一结果、第二结果、第三结果和校验结果进行存储,且将这些结果以邮件形式自动发送给相关责任人,以便于监控数据仓库中的维度表。其中,可以根据校验结果了解哪些维度表异常,并重点提示相关责任人进行关注,及时跟进并处理,避免问题扩大,给使用者造成困扰和其他不良影响。进一步地,相关责任人可以根据第一结果、第二结果、第三结果了解维度表的具体异常表现,减少查找异常维度表和处理异常维度表的时间。

可以看出,本申请实施例的数据仓库维度表的校验方法,通过获取第一维度表,所述第一维度表为待校验的维度表;获取第二维度表,所述第二维度表为宽表中的任一维度表;将所述第一维度主键与所述第二维度主键进行关联,得到第一结果,所述第一维度主键为所述第一维度表的维度主键,所述第二维度主键为所述第二维度表的维度主键;基于所述第一结果,确定所述第一维度表的校验结果。该方法可以将基于数据仓库中的宽表自动确定出维度表是否有误,从而解决从宽表中获取到维度属性与关联维度表后获取到的维度属性不一致的问题,进而提高维度表的校验效率。

上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

本申请实施例可以根据上述方法示例对电子设备进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

请参阅图3a,图3a是本申请实施例提供的一种数据仓库维度表的校验装置300的功能单元组成框图,如图3a所示,该装置300包括获取单元310、关联单元320和确定单元,其中,

获取单元310,用于获取第一维度表,所述第一维度表为待校验的维度表;

所述获取单元310,还用于获取第二维度表,所述第二维度表为宽表中的任一维度表;

关联单元320,用于将所述第一维度主键与所述第二维度主键进行关联,得到第一结果,所述第一维度主键为所述第一维度表的维度主键,所述第二维度主键为所述第二维度表的维度主键;

确定单元330,用于基于所述第一结果,确定所述第一维度表的校验结果。

可以看出,本申请实施例的数据仓库维度表的校验装置,获取第一维度表,所述第一维度表为待校验的维度表;获取第二维度表,所述第二维度表为宽表中的任一维度表;将所述第一维度主键与所述第二维度主键进行关联,得到第一结果,所述第一维度主键为所述第一维度表的维度主键,所述第二维度主键为所述第二维度表的维度主键;基于所述第一结果,确定所述第一维度表的校验结果。该方法可以将基于数据仓库中的宽表自动确定出维度表是否有误,从而解决从宽表中获取到维度属性与关联维度表后获取到的维度属性不一致的问题,进而提高维度表的校验效率。

可选的,若所述第一维度主键中的记录全部包括所述第二维度主键中的记录,所述第一结果为成功;若所述第一维度主键中的记录未全部包括所述第二维度主键中的记录,所述第一结果为失败。

可选的,如图3b所示,是本申请实施例提供的另一种数据仓库维度表的校验装置300的功能单元组成框图,若所述第一维度主键中的记录全部包括所述第二维度主键中的记录,所述装置300还包括:

匹配单元340,用于将所述第一维度属性与所述第二维度属性进行匹配,得到第二结果,所述第一维度属性为所述第一维度表的维度属性,所述第一维度属性包括至少一个维度属性,所述第二维度属性为所述第二维度表的维度属性,所述第二维度属性包括至少一个维度属性。

可选的,若所述第一维度属性与所述第二维度属性完全匹配,所述第二结果为成功;若所述第一维度属性与所述第二维度属性不完全匹配,所述第二结果为失败。

可选的,若所述第一维度属性与所述第二维度属性完全匹配,所述装置300还包括:

比较单元350,用于将所述第一维度属性的属性值饱和数与所述第二维度属性的属性值饱和数进行比较,得到第三结果。

可选的,若所述第一维度属性的属性值饱和数大于所述第二维度属性的属性值饱和数,所述第三结果为成功;若所述第一维度属性的属性值饱和数小于或等于所述第二维度属性的属性值饱和数,所述第三结果为失败。

可选的,所述确定单元330具体用于:基于所述第一结果、第二结果、第三结果中的任一项确定所述第一维度表的校验结果。

可以理解的是,本申请实施例的数据仓库维度表的校验装置的各程序模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。

请参阅图4,图4是本申请实施例提供的一种计算机设备的结构示意图,如4图所示,该计算机设备包括存储器、通信接口和处理器,其中,该计算机设备还可以包括通信总线,所述处理器、通信接口和存储器之间可以通过总线相互连接。

其中,上述处理器,用于执行所述存储器上所存放的程序时,实现以下步骤:

获取第一维度表,所述第一维度表为待校验的维度表;获取第二维度表,所述第二维度表为宽表中的任一维度表;将所述第一维度主键与所述第二维度主键进行关联,得到第一结果,所述第一维度主键为所述第一维度表的维度主键,所述第二维度主键为所述第二维度表的维度主键;基于所述第一结果,确定所述第一维度表的校验结果。

进一步地,处理器可以是一个通用中央处理器(Central Processing Unit,CPU)或多个CPU,单块或多块图形处理器(Graphics Processing Unit,GPU),微处理器,特定应用集成电路(Application Specific Integrated Circuit,ASIC),或一个或多个用于控制本发明方案程序执行的集成电路。

存储器可以是只读存储器(Read Only Memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(Random Access Memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(ElectricallyErasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。

在一些示例中,存储器可以是独立存在,通信接口和通信总线与处理器相连接。存储器也可以和处理器集成在一起。通信总线在上述组件之间传送信息。

本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。

本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。

上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、终端设备或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、ROM、RAM、磁盘或光盘等。

以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号