CN109918397B - 一种数据匹配方法、装置和存储介质 - Google Patents
一种数据匹配方法、装置和存储介质 Download PDFInfo
- Publication number
- CN109918397B CN109918397B CN201910061834.6A CN201910061834A CN109918397B CN 109918397 B CN109918397 B CN 109918397B CN 201910061834 A CN201910061834 A CN 201910061834A CN 109918397 B CN109918397 B CN 109918397B
- Authority
- CN
- China
- Prior art keywords
- element value
- object data
- value
- matching
- specified
- 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
Images
Landscapes
- Image Analysis (AREA)
Abstract
本说明书实施例公开了一种数据匹配方法、装置和存储介质,涉及数据处理领域,所述方法包括:获取对象数据表,所述对象数据表中包括用于标识对象的指定元素,确定所述对象数据表对应的规则矩阵,所述对象数据表包括所述指定元素、与所述指定元素对应的元素对、以及与所述元素对对应的匹配属性,所述指定元素为所述元素对中的元素之一,根据所述指定元素,将所述元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果,根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果。通过本说明书实施例可以提高处理效率。
Description
技术领域
本申请涉及数据处理领域,特别涉及一种数据匹配方法、装置和存储介质。
背景技术
数据匹配,顾名思义,通过一些规则对与数据库中的数据进行匹配,以得到符合规则对要求的对象数据。在传统的数据匹配过程中,都是基于对一张数据量较大的数据表中的每条数据逐步遍历规则对,以判断该表中的每条数据是否符合规则对要求。在实际的数据匹配过程中,这种方法往往需要耗费大量的时间才能完成。此外,随着数据库中对象数据的不断增加,数据匹配的处理时间会随着对象数据的增加,呈线性增长。
综上,由于传统数据匹配方式需要将数据量较大的数据表加载到内存中,庞大的数据量导致了较长的数据匹配时间。因此,现有的传统数据匹配方式处理时间长、效率低。
发明内容
本说明书实施方式的目的是提供一种数据匹配方法、装置和存储介质,以提高处理效率。
为实现上述目的,本说明书实施例提供了一种数据匹配方法,可以包括:
获取对象数据表;其中,所述对象数据表中包括用于标识对象的指定元素;
确定所述对象数据表对应的规则矩阵;其中,所述规则矩阵包括所述指定元素、与所述指定元素对应的元素对、以及与所述元素对对应的匹配属性,所述指定元素为所述元素对中的元素之一;
根据所述指定元素,将所述元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果;
根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果。
进一步地,所述方法的另一个实施例中,所述根据所述指定元素,将所述元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果,可以包括:
根据规则矩阵中的指定元素值,确定对象数据表中的元素对;
根据所述元素对,在所述对象数据表中,确定所述指定元素值对应的第一元素值和第二元素值;其中,所述第一元素值为所述元素对中一个元素的值,所述第二元素值为所述元素对中另一个元素的值;
将所述第一元素值与所述规则矩阵中的第三元素值、以及所述第二元素值与所述规则矩阵中的第四元素值进行比较,得到比较结果;其中所述第三元素值和所述第四元素值在所述规则矩阵中与所述指定元素值对应。
进一步地,所述方法的另一个实施例中,所述根据所述指定元素,将所述元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果,可以包括:
根据规则矩阵中的指定元素,确定对象数据表中的元素对;
根据所述元素对,在所述对象数据表中,确定所述指定元素对应的第一元素值和第二元素值,以及,在所述规则矩阵中,确定所述指定元素对应的第三元素值和第四元素值;
将所述第一元素值和所述第三元素值,以及所述第二元素值和所述第四元素值进行比较,得到比较结果。
进一步地,所述方法的另一个实施例中,所述根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果,还可以包括:
判断第一元素值与第三元素值是否相同,且第二元素值与第四元素值是否相同;
当匹配属性为匹配时,如果所述第一元素值与所述第三元素值相同,但所述第二元素值与所述第四元素值不同时,或,如果所述第二元素值与所述第四元素值相同,但所述第一元素值与所述第三元素值不同时,则确定指定元素对应的对象数据未满足规则对的匹配要求;
当匹配属性为非匹配时,如果所述第一元素值与所述第三元素值相同,且所述第二元素值与所述第四元素值相同时,则确定所述指定元素对应的对象数据未满足规则对的匹配要求。
进一步地,所述方法的另一个实施例中,在确定所述指定元素对应的对象数据的匹配结果之后,还可以包括:
将未满足规则对匹配要求的对象数据进行滤除,得到满足规则对匹配要求的对象数据。
进一步地,所述方法的另一个实施例中,所述确定所述对象数据表对应的规则矩阵,可以包括:
获取规则定义表中的元素对以及匹配属性;其中,所述规则定义表与所述对象数据表一一对应;
确定所述元素对中的指定元素;
根据所述规则定义表和所述指定元素,得到所述对象数据表对应的规则矩阵。
另一方面,本申请提供了一种数据匹配装置,可以包括:
获取模块,可以用于获取对象数据表;其中,所述对象数据表中包括用于标识对象的指定元素;
确定模块,可以用于确定所述对象数据表对应的规则矩阵;其中,所述规则矩阵包括所述指定元素、与所述指定元素对应的元素对、以及与所述元素对对应的匹配属性,所述指定元素为所述元素对中的元素之一;
比较模块,可以用于根据所述指定元素,将所述元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果;
匹配模块,可以用于根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果。
进一步地,所述装置的另一个实施例中,所述比较模块,可以包括:
确定单元,可以用于根据规则矩阵中的指定元素值,确定对象数据表中的元素对;
所述确定单元,还可以用于根据所述元素对,在所述对象数据表中,确定所述指定元素值对应的第一元素值和第二元素值;其中,所述第一元素值为所述元素对中一个元素的值,所述第二元素值为所述元素对中另一个元素的值;
比较单元,可以用于将所述第一元素值与所述规则矩阵中的第三元素值、以及所述第二元素值与所述规则矩阵中的第四元素值进行比较,得到比较结果;其中所述第三元素值和所述第四元素值在所述规则矩阵中与所述指定元素值对应。
进一步地,所述装置的另一个实施例中,所述比较模块,还可以包括:
确定模块,可以用于根据规则矩阵中的指定元素,确定对象数据表中的元素对;
所述确定模块,还可以用于根据所述元素对,在所述对象数据表中,确定所述指定元素对应的第一元素值和第二元素值,以及,在所述规则矩阵中,确定所述指定元素对应的第三元素值和第四元素值;
比较模块,可以用于将所述第一元素值和所述第三元素值,以及所述第二元素值和所述第四元素值进行比较,得到比较结果。
进一步地,所述装置的另一个实施例中,所述匹配模块,可以包括:
判断单元,可以用于判断第一元素值与第三元素值是否相同,且第二元素值与第四元素值是否相同;
匹配单元,可以用于当匹配属性为匹配时,如果所述第一元素值与所述第三元素值相同,但所述第二元素值与所述第四元素值不同时,或,如果所述第二元素值与所述第四元素值相同,但所述第一元素值与所述第三元素值不同时,则确定指定元素对应的对象数据未满足规则对的匹配要求;
所述匹配单元,还可以用于当匹配属性为非匹配时,如果所述第一元素值与所述第三元素值相同,且所述第二元素值与所述第四元素值相同时,则确定所述指定元素对应的对象数据未满足规则对的匹配要求。
进一步地,所述装置的另一个实施例中,还可以包括:
滤除模块,可以用于将未满足规则对匹配要求的对象数据进行滤除,得到满足规则对匹配要求的对象数据。
又一方面,本申请还提供了一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现:
获取对象数据表;其中,所述对象数据表中包括用于标识对象的指定元素;
确定所述对象数据表对应的规则矩阵;其中,所述规则矩阵包括所述指定元素、与所述指定元素对应的元素对、以及与所述元素对对应的匹配属性,所述指定元素为所述元素对中的元素之一;
根据所述指定元素,将所述元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果;
根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果。
本申请实施例,通过获取对象数据表,其中,所述对象数据表中包括用于标识对象的指定元素,再确定所述对象数据表对应的规则矩阵,其中,所述规则矩阵包括所述指定元素、与所述指定元素对应的元素对、以及与所述元素对对应的匹配属性,所述指定元素为所述元素对中的元素之一,又根据所述指定元素,将所述元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果,最后根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果。该方法可以为每个对象配置不同的指定元素,并基于所述指定元素,生成与对象数据表对应的规则矩阵,在数据匹配时,通过所述指定元素,能够在生成的规则矩阵中精准、快速地查找到与所述对象相关的所有规则对,简化了规则对的数据量,从而有效地解决了处理时间长等问题,大大提高了处理效率此外,还能够防止服务器内存的长期占用,利用资源释放和利用。
附图说明
为了更清楚地说明本申请实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一些实施例提供的一种数据匹配方法的方法流程示意图;
图2为本说明书一些实施例提供的一种数据匹配装置的模块结构示意图;
图3为本说明书另一些实施例提供的一种数据匹配装置的模块结构示意图;
图4为本说明书一些实施例提供的比较模块的结构示意图;
图5为本说明书另一些实施例提供的比较模块的结构示意图;
图6为本说明书一些实施例提供的匹配模块的结构示意图;
图7为本说明书一些实施例提供的计算机存储介质的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都应当属于本申请保护的范围。
在传统的数据匹配过程中,通常需要通过一些规则对,对数据库中的每条数据进行逐条遍历规则对,以判断该表中的每条数据是否符合预设规则对的要求。在实际的数据匹配过程中,但需要匹配的对象数据量较大时,这种方法往往需要消耗大量的时间才能处理完。为了解决上述问题,本说明书实施例通过获取对象数据表,其中,所述对象数据表中包括用于标识对象的指定元素,再确定所述对象数据表对应的规则矩阵,其中,所述规则矩阵包括所述指定元素、与所述指定元素对应的元素对、以及与所述元素对对应的匹配属性,所述指定元素为所述元素对中的元素之一,又根据所述指定元素,将所述元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果,最后根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果。该方法可以为每个对象配置不同的指定元素,并基于所述指定元素,生成与对象数据表对应的规则矩阵,在数据匹配时,通过所述指定元素,能够在生成的规则矩阵中精准、快速地查找到与所述对象相关的所有规则对,简化了规则对的数据量,从而有效地解决了处理时间长等问题,大大提高了处理效率,此外,还能够防止服务器内存的长期占用,利用资源释放和利用。
图1是本说明书一些实施例提供的一种数据匹配方法的方法流程示意图,本申请提供的数据匹配方法可以包括:
S101:获取对象数据表,其中,所述对象数据表中包括用于标识对象的指定元素。
在一些具体的实施例中,可以通过从数据库中获取待匹配对象的所有元素和对应的元素值,并按照对象所在的区域,将同一对象所有的元素和对应的元素值分配到同一个Hash分组内,得到不同的Hash分组,并且按照对象配置指定元素,生成基于指定元素值的多条对象数据。值得注意的是,所述对象和所述元素可以是一对多的对应关系,也可以是一对一的对应关系,本申请对此不作限制。所述元素和所述元素值可以是一对多的对应关系,也可以是一对一的对应关系,本申请对此不作限制。
表1对象1的属性和属性值
柜员号 | 2432345 |
机构号 | 251647 |
角色号 | 00RC01 |
系统号 | CSAR |
NBL角色号 | 0AM001 |
上级机构号 | 123123 |
终端号 | DJSK78 |
在一些具体的实施方式中,如表1所示,只展示了对象1的部分对象属性和单个属性值,可以得出对象1的元素分别为柜员号、机构号、角色号、系统号、NBL角色号、上级机构号以及终端号,这些元素所对应的元素值分别为:2432345、251647、00RC01、CSAR、0AM001、123123以及DJSK78。根据对象1配置的角色号和NBL角色号,可以生成对象1的2条数据,如表2所示,其中,ID可以是唯一标识一个对象的编号,所述指定元素用于取角色号或NBL角色号中不为空的值,所述执行区间是为对象1所分配的执行区间,通过将不同的对象在不同的执行区间内执行,既能提高处理效率,又能防止内存溢出。其中,每个元素所对应的值可以是数字和/或字母和/或特殊字符和/或文字,本申请对此不作限制。
表2对象数据表
在本说明书的另一些实施例中,所述获取预设的对象数据表,还可以获取待匹配的多个对象所在的执行区域,在所述执行区域内,将同一个对象的所有元素和对应的元素值分配到同一个Hash组内,得到多个所述对象的Hash分组。譬如:假设根据柜员A、B和C的属性和属性值,得到上述三个柜员所对应的元素和元素值分别为,柜员A:元素XA、YA,元素XA和YA所对应的元素值分别为XA[1]、XA[2]、YA[1]和YA[2];柜员B:元素XB、YB、和ZB,元素XB、YB和ZB所对应的元素值分别为XB[1]、XB[2]、YB[1]、ZB[1]、ZB[2]和ZB[3];柜员C:元素XC,元素XC所对应的元素值分别为XC[1]、XC[2]、XC[3]和XC[4]。将柜员A的所有元素和元素值设置为对象组1、柜员B的所有元素和元素值设置为对象组2和柜员C的所有元素和元素值设置为对象组3。
在一些具体的实施方式中,上述对象组1、对象组2和对象组3中的元素和元素值均按照固定的顺序存放,如对象组1的元素顺序为:XA、YA,元素XA所对应的元素值顺序为:XA[1]、XA[2],元素YA所对应的元素值顺序为:YA[1]、YA[2];如对象组2的元素顺序为:XB、YB、ZB,元素XB所对应的元素值顺序为:XB[1]、XB[2],元素YB所对应的元素值顺序为:YB[1],元素ZB所对应的元素值顺序为:ZB[1]、ZB[2]、ZB[3];如对象组2的元素顺序为:XC,元素XC所对应的元素值顺序为:XC[1]、XC[2]、XC[3]、XC[4]。本申请对元素和元素值的存放顺序不作限制。上述对象组1、对象组2和对象组3被分配在不同的执行区间内进行执行,例如:对象组1在1区、对象组2在2区和对象组3在3区,又例如:对象组1和对象组2在A区、对象组3在B区,又例如:对象组1、对象组2和对象组3均在1101区。本申请对此不作限制。通过将不同的对象在不同的执行区间内执行,既能提高处理效率,又能防止内存溢出。
在另一些具体的实施方式中,假设柜员1的元素分别为:柜员号、机构号、核心角色号以及NBL角色号,其中柜员号所对应的取值依次为:2432345、2432347和2432351,机构号所对应的取值依次为:251645、251647、251648和251659,核心角色号所对应的取值为:00RC01;柜员2的元素分别为柜员号、核心角色号、NBL角色号、系统号以及上级机构号,其中柜员号所对应的取值依次为:2432443和2432467,NBL角色号所对应的取值为:0AM002,系统号所对应的取值依次为:CSAR和CSAP,上级机构号所对应的取值依次为:123123、123124和123132。由于柜员1的NBL核心角色号和柜员2的核心角色号为空值,可以得出柜员1所对应的对象组的指定元素值为00RC01,柜员2所对应的对象组的第指定元素值为0AM002。根据上述分析,建立柜员1和柜员2所对应的对象数据表如下表3所示:
表3对象数据表
其中,i和j可以取任意正整数,本申请对此不作限制。
S102:确定所述对象数据表对应的规则矩阵,其中,所述规则矩阵包括所述指定元素、与所述指定元素对应的元素对、以及与所述元素对对应的匹配属性,所述指定元素为所述元素对中的元素之一。
在一些具体的实施例中,可以获取规则定义表中的元素对以及匹配属性,其中,所述规则定义表与所述对象数据表一一对应,确定所述元素对中的指定元素,最后根据所述规则定义表和所述指定元素,得到所述对象数据表对应的规则矩阵。
表4规则定义表
元素1 | 元素1的值 | 元素2 | 元素2的值 | 匹配属性 |
角色号 | 00RC01 | 上级机构号 | 123123 | 非匹配 |
NBL角色号 | 0AM001 | 上级机构号 | 123123 | 匹配 |
在一些具体的实施方式中,规则对<X,Y,T>,通常由两个元素和一个标识组成,其中,所述X和Y用以标识元素,T用以标识所述规则对的匹配属性,X可以是X[i],也可以是X[s],本申请对此不作限制。Y可以是Y[j],也可以是Y[t],本申请对此不作限制。所述T可以是t,也可以是TAG,本申请对此不作限制。所述匹配属性可以用文字或数字表示,譬如:匹配和非匹配,又譬如:可以用1标识规则对的匹配属性为匹配,也可以用0标识规则对的匹配属性为非匹配,等,本申请对此不作限制。如表4所示,是一个对象1的规则定义表,其中包括部分规则对。在表4中,此时规则对的两个元素分别为元素1和元素2,当元素1的值为角色号所对应的值00RC01,元素2的值为上级机构号所对应的值123123时,规则对的匹配属性为非匹配;当元素1的值为角色号所对应的值0AM001,元素2的值为上级机构号所对应的值123123时,规则对的匹配属性为匹配。
在另一些具体的实施方式中,如表5所示,为表3中所有对象对应的规则定义表。根据表3中的规则对中两个元素,得到柜员1和柜员2的指定元素和指定元素值。
表5规则定义表
在一些具体的实施方式中,根据规则定义表生成规则矩阵,如表6所示,表6是由表4的规则定义表生成的规则矩阵,其中指定元素是由规则对中的角色号或NBL角色号确定的,根据表4、所述指定元素以及对应的指定元素值,就可以得到表6所对应的规则矩阵。
表6规则矩阵
角色号 | NBL角色号 | 上级机构号 | 指定元素 | 匹配属性 |
00RC01 | 123123 | 00RC01 | 非匹配 | |
0AM001 | 123123 | 0AM001 | 匹配 |
在另一些具体的实施方式中,如表7所示,表7是由表5的规则定义表生成的规则矩阵,其中指定元素是由规则对中的角色号或NBL角色号确定的,同样地,根据表5、所述指定元素以及对应的指定元素值,就可以得到表7所对应的规则矩阵。
表7规则矩阵
值得注意的是,上述实施例和实施方式只是为了便于解释本申请,基于此,还可以得到其它的实施例和实施方式,本申请对此不作限制。
S103:根据所述指定元素,将所述元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果。
在一些具体的实施例中,可以根据规则矩阵中的指定元素值,确定对象数据表中的元素对,再根据所述元素对,在所述对象数据表中,确定所述指定元素值对应的第一元素值和第二元素值,其中,所述第一元素值为所述元素对中一个元素的值,所述第二元素值为所述元素对中另一个元素的值,最后将所述第一元素值与所述规则矩阵中的第三元素值、以及所述第二元素值与所述规则矩阵中的第四元素值进行比较,得到比较结果;其中所述第三元素值和所述第四元素值在所述规则矩阵中与所述指定元素值对应。
在一些具体的实施方式中,如表6所示,获取指定元素值00RC01,再根据所述指定元素值,从表2中确定第一元素值为00RC01,第二元素值为123123,最后将所述第一元素值与表6中对应的第三元素值00RC01,以及将所述第二元素值与表6中对应的第四元素值123123分别进行比较,得到所述第一元素值和所述第三元素值相等,且所述第二元素值和所述第四元素值也相等的比较结果。
在另一些具体的实施例中,可以根据规则矩阵中的指定元素,确定对象数据表中的元素对,再根据所述元素对,在所述对象数据表中,确定所述指定元素对应的第一元素值和第二元素值,以及,在所述规则矩阵中,确定所述指定元素对应的第三元素值和第四元素值,最后将所述第一元素值和所述第三元素值,以及所述第二元素值和所述第四元素值进行比较,得到比较结果。
在另一些具体的实施方式中,可以根据表7中的指定元素,确定表3中的指定对象,再根据元素对中确定表3中的第一元素和第二元素,以及表5中的第三元素和第四元素,最后将所述第一元素值和所述第三元素值进行比对,且将所述第二元素值和所述第四元素值进行比对,获得比对结果,如:指定元素可以是00RC01,指定对象可以是柜员1,所述第一元素可以是X[1],所述第二元素可以是Z[1],所述第三元素可以X[1],所述第四元素可以是Z[1],所述第一元素值可以是2432345,所述第二元素值可以是00RC01,所述第三元素值可以是2432345,所述第四元素值可以是00RC01,由此可以得到所述第一元素值和所述第三元素值相同,且所述第二元素值和所述第四元素值相同的比较结果。
S104:根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果。
在一些具体的实施例中,可以判断第一元素值与第三元素值是否相同,且第二元素值与第四元素值是否相同,当匹配属性为匹配时,如果所述第一元素值与所述第三元素值相同,但所述第二元素值与所述第四元素值不同时,或,如果所述第二元素值与所述第四元素值相同,但所述第一元素值与所述第三元素值不同时,则确定指定元素对应的对象数据未满足规则对的匹配要求,当匹配属性为非匹配时,如果所述第一元素值与所述第三元素值相同,且所述第二元素值与所述第四元素值相同时,则确定所述指定元素对应的对象数据未满足规则对的匹配要求。
在一些具体的实施方式中,如表6中所示,当指定元素为00RC01,且第一元素值为00RC01,第二元素值为123123,第三元素值为00RC01,第四元素值为123123时,由于当前规则对的匹配属性为非匹配,也就是说,由于所述第一元素值和所述第三元素值相同,且所述第二元素值和所述第四元素值也相同,未满足非匹配的预设要求,因此在对象数据表2中,基于所述指定元素00RC01的对象数据未满足规则对的匹配要求,故可以将所述对象数据进行滤除,得到满足规则对的匹配要求的对象数据。
值得注意的是,上述实施例和实施方式只是为了方便解释本说明书,基于此还可以得到其它的实施例和实施方式,本说明书对此不作限制。
基于上述所述的数据匹配方法,本说明书一个或多个实施例还提供了一种数据匹配装置。所述的装置可以包括使用了本说明书实施例所述方法的系统(包括分布式系统)、软件(应用)、模块、组件、服务器、客户端等并结合必要的实施硬件的装置。基于同一创新构思,本说明书实施例提供的一个或多个实施例中的装置如下面的实施例所述。由于装置解决问题的实现方案与方法相似,因此本说明说实施例具体的装置的实施方式可以参见前述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构思的。
具体地,图2是本说明书一些实施例提供的一种数据匹配装置的模块结构示意图。如图2所示,本申请中提供的数据匹配装置包括:获取模块201、确定模块202、比较模块203以及匹配模块204。
获取模块201,可以用于获取对象数据表;其中,所述对象数据表中包括用于标识对象的指定元素;
确定模块202,可以用于确定所述对象数据表对应的规则矩阵;其中,所述规则矩阵包括所述指定元素、与所述指定元素对应的元素对、以及与所述元素对对应的匹配属性,所述指定元素为所述元素对中的元素之一;
比较模块203,可以用于根据所述指定元素,将所述元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果;
匹配模块204,可以用于根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果。
图3是本说明书另一些实施例提供的一种数据匹配装置的模块结构示意图,如图3所示,本申请中提供的数据匹配装置包括:获取模块301、确定模块302、比较模块303以及匹配模块304以及滤除模块305。
获取模块301,可以用于获取对象数据表;其中,所述对象数据表中包括用于标识对象的指定元素;
确定模块302,可以用于确定所述对象数据表对应的规则矩阵;其中,所述规则矩阵包括所述指定元素、与所述指定元素对应的元素对、以及与所述元素对对应的匹配属性,所述指定元素为所述元素对中的元素之一;
比较模块303,可以用于根据所述指定元素,将所述元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果;
匹配模块304,可以用于根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果;
滤除模块305,可以用于将未满足规则对匹配要求的对象数据进行滤除,得到满足规则对匹配要求的对象数据。
图4是本说明书一些实施例提供的比较模块的结构示意图,如图4所示,在上述实施例的基础上,所述比较模块203或303可以包括:确定单元401以及比较单元402。
确定单元401,可以用于根据规则矩阵中的指定元素值,确定对象数据表中的元素对;
所述确定单元401,还可以用于根据所述元素对,在所述对象数据表中,确定所述指定元素值对应的第一元素值和第二元素值;其中,所述第一元素值为所述元素对中一个元素的值,所述第二元素值为所述元素对中另一个元素的值;
比较单元402,可以用于将所述第一元素值与所述规则矩阵中的第三元素值、以及所述第二元素值与所述规则矩阵中的第四元素值进行比较,得到比较结果;其中所述第三元素值和所述第四元素值在所述规则矩阵中与所述指定元素值对应。
图5是本说明书另一些实施例提供的比较模块的结构示意图,如图5所示,在上述实施例的基础上,所述比较模块203或303可以包括:确定单元501以及比较单元502。
确定模块501,可以用于根据规则矩阵中的指定元素,确定对象数据表中的元素对;
所述确定模块501,还可以用于根据所述元素对,在所述对象数据表中,确定所述指定元素对应的第一元素值和第二元素值,以及,在所述规则矩阵中,确定所述指定元素对应的第三元素值和第四元素值;
比较模块502,可以用于将所述第一元素值和所述第三元素值,以及所述第二元素值和所述第四元素值进行比较,得到比较结果。
图6是本说明书一些实施例提供的匹配模块的结构示意图,如图6所示,在上述实施例的基础上,所述匹配判断模块204或304可以包括:判断单元601和匹配单元602。
判断单元601,可以用于判断第一元素值与第三元素值是否相同,且第二元素值与第四元素值是否相同;
匹配单元602,可以用于当匹配属性为匹配时,如果所述第一元素值与所述第三元素值相同,但所述第二元素值与所述第四元素值不同时,或,如果所述第二元素值与所述第四元素值相同,但所述第一元素值与所述第三元素值不同时,则确定指定元素对应的对象数据未满足规则对的匹配要求;
为实现上述目的,本说明书一些实施例提供了一种数据匹配装置的结构示意图,如图7所示,所述装置可以包括存储器、处理器、以及存储在所述存储器上的计算机程序,所述计算机程序被所述处理器运行时可以执行如下步骤:
获取对象数据表;其中,所述对象数据表中包括用于标识对象的指定元素;
确定所述对象数据表对应的规则矩阵;其中,所述规则矩阵包括所述指定元素、与所述指定元素对应的元素对、以及与所述元素对对应的匹配属性,所述指定元素为所述元素对中的元素之一;
根据所述指定元素,将所述元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果;
根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果。
本说明书实施例,通过获取包含不同执行区间的对象数据表,并确定所述对象数据表对应的规则矩阵,再根据配置的所述指定元素,将所述元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果,又根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果,最后根据所述匹配结果,将未满足规则对匹配要求的对象数据进行滤除,得到满足规则对匹配要求的对象数据,有效地解决了内存溢出风险、数据处理时间长等问题,大大降低了内存溢出的风险,提高了处理效率。
需要说明的,上述所述的装置根据方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书实施例提供的一种数据匹配方法和装置可以在计算机中由处理器执行相应的程序指令来实现,如使用windows操作系统的C++语言在PC端实现、linux系统实现,或其它例如使用android、iOS系统程序设计语言在智能终端实现,以及基于量子计算机的处理逻辑实现等。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片2。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog2。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
本领域技术人员也知道,除了以纯计算机可读程序代码方式实现客户端、服务器以外,完全可以通过将方法步骤进行逻辑编程来使得客户端、服务器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种客户端、服务器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施方式或者实施方式的某些部分所述的方法。
本说明书中的各个实施方式均采用递进的方式描述,各个实施方式之间相同相似的部分互相参见即可,每个实施方式重点说明的都是与其他实施方式的不同之处。尤其,针对服务器、客户端、装置以及计算机存储介质的实施方式来说,均可以参照前述方法的实施方式的介绍对照解释。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
虽然通过实施方式描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。
Claims (13)
1.一种数据匹配方法,其特征在于,所述方法包括:
获取对象数据表;其中,所述对象数据表中包括用于标识对象的指定元素;
确定所述对象数据表对应的规则矩阵;其中,所述规则矩阵包括所述指定元素、与所述指定元素对应的元素对、以及与所述元素对对应的匹配属性,所述指定元素为所述元素对中的元素之一;
根据所述指定元素,将所述规则矩阵中的元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果;
根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果。
2.根据权利要求1所述的方法,其特征在于,所述根据所述指定元素,将所述规则矩阵中的元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果,包括:
根据规则矩阵中的指定元素值,确定对象数据表中的元素对;
根据所述元素对,在所述对象数据表中,确定所述指定元素值对应的第一元素值和第二元素值;其中,所述第一元素值为所述元素对中一个元素的值,所述第二元素值为所述元素对中另一个元素的值;
将所述第一元素值与所述规则矩阵中的第三元素值、以及所述第二元素值与所述规则矩阵中的第四元素值进行比较,得到比较结果;其中所述第三元素值和所述第四元素值在所述规则矩阵中与所述指定元素值对应。
3.根据权利要求1所述的方法,其特征在于,所述根据所述指定元素,将所述规则矩阵中的元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果,包括:
根据规则矩阵中的指定元素,确定对象数据表中的元素对;
根据所述元素对,在所述对象数据表中,确定所述指定元素对应的第一元素值和第二元素值,以及,在所述规则矩阵中,确定所述指定元素对应的第三元素值和第四元素值;
将所述第一元素值和所述第三元素值,以及所述第二元素值和所述第四元素值进行比较,得到比较结果。
4.根据权利要求2或3所述的方法,其特征在于,所述根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果,包括:
判断第一元素值与第三元素值是否相同,且第二元素值与第四元素值是否相同;
当匹配属性为匹配时,如果所述第一元素值与所述第三元素值相同,但所述第二元素值与所述第四元素值不同时,或,如果所述第二元素值与所述第四元素值相同,但所述第一元素值与所述第三元素值不同时,则确定指定元素对应的对象数据未满足规则对的匹配要求;
当匹配属性为非匹配时,如果所述第一元素值与所述第三元素值相同,且所述第二元素值与所述第四元素值相同时,则确定所述指定元素对应的对象数据未满足规则对的匹配要求。
5.根据权利要求1所述的方法,其特征在于,在确定所述指定元素对应的对象数据的匹配结果之后,还包括:
将未满足规则对匹配要求的对象数据进行滤除,得到满足规则对匹配要求的对象数据。
6.根据权利要求1所述的方法,其特征在于,所述确定所述对象数据表对应的规则矩阵,包括:
获取规则定义表中的元素对以及匹配属性;其中,所述规则定义表与所述对象数据表一一对应;
确定所述元素对中的指定元素;
根据所述规则定义表和所述指定元素,得到所述对象数据表对应的规则矩阵。
7.一种数据匹配装置,其特征在于,所述装置包括:
获取模块,用于获取对象数据表;其中,所述对象数据表中包括用于标识对象的指定元素;
确定模块,用于确定所述对象数据表对应的规则矩阵;其中,所述规则矩阵包括所述指定元素、与所述指定元素对应的元素对、以及与所述元素对对应的匹配属性,所述指定元素为所述元素对中的元素之一;
比较模块,用于根据所述指定元素,将所述规则矩阵中的元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果;
匹配模块,用于根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果。
8.根据权利要求7所述的装置,其特征在于,所述比较模块,包括:
确定单元,用于根据规则矩阵中的指定元素值,确定对象数据表中的元素对;
所述确定单元,还用于根据所述元素对,在所述对象数据表中,确定所述指定元素值对应的第一元素值和第二元素值;其中,所述第一元素值为所述元素对中一个元素的值,所述第二元素值为所述元素对中另一个元素的值;
比较单元,用于将所述第一元素值与所述规则矩阵中的第三元素值、以及所述第二元素值与所述规则矩阵中的第四元素值进行比较,得到比较结果;其中所述第三元素值和所述第四元素值在所述规则矩阵中与所述指定元素值对应。
9.根据权利要求7所述的装置,其特征在于,所述比较模块,包括:
确定模块,用于根据规则矩阵中的指定元素,确定对象数据表中的元素对;
所述确定模块,还用于根据所述元素对,在所述对象数据表中,确定所述指定元素对应的第一元素值和第二元素值,以及,在所述规则矩阵中,确定所述指定元素对应的第三元素值和第四元素值;
比较模块,用于将所述第一元素值和所述第三元素值,以及所述第二元素值和所述第四元素值进行比较,得到比较结果。
10.根据权利要求7所述的装置,其特征在于,所述匹配模块,还包括:
判断单元,用于判断第一元素值与第三元素值是否相同,且第二元素值与第四元素值是否相同;
匹配单元,用于当匹配属性为匹配时,如果所述第一元素值与所述第三元素值相同,但所述第二元素值与所述第四元素值不同时,或,如果所述第二元素值与所述第四元素值相同,但所述第一元素值与所述第三元素值不同时,则确定指定元素对应的对象数据未满足规则对的匹配要求;
所述匹配单元,还用于当匹配属性为非匹配时,如果所述第一元素值与所述第三元素值相同,且所述第二元素值与所述第四元素值相同时,则确定所述指定元素对应的对象数据未满足规则对的匹配要求。
11.根据权利要求7所述的装置,其特征在于,还包括:
滤除模块,用于将未满足规则对匹配要求的对象数据进行滤除,得到满足规则对匹配要求的对象数据。
12.一种数据匹配装置,包括存储器、处理器、以及存储在所述存储器上的计算机程序,其特征在于,所述计算机程序被所述处理器运行时执行如下步骤:
获取对象数据表;其中,所述对象数据表中包括用于标识对象的指定元素;
确定所述对象数据表对应的规则矩阵;其中,所述规则矩阵包括所述指定元素、与所述指定元素对应的元素对、以及与所述元素对对应的匹配属性,所述指定元素为所述元素对中的元素之一;
根据所述指定元素,将所述规则矩阵中的元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果;
根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果。
13.一种计算机存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现以下步骤:
获取对象数据表;其中,所述对象数据表中包括用于标识对象的指定元素;
确定所述对象数据表对应的规则矩阵;其中,所述规则矩阵包括所述指定元素、与所述指定元素对应的元素对、以及与所述元素对对应的匹配属性,所述指定元素为所述元素对中的元素之一;
根据所述指定元素,将所述规则矩阵中的元素对与所述对象数据表中的元素对进行元素值比较,获得比较结果;
根据所述匹配属性和所述比较结果,确定所述指定元素对应的对象数据的匹配结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910061834.6A CN109918397B (zh) | 2019-01-23 | 2019-01-23 | 一种数据匹配方法、装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910061834.6A CN109918397B (zh) | 2019-01-23 | 2019-01-23 | 一种数据匹配方法、装置和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109918397A CN109918397A (zh) | 2019-06-21 |
CN109918397B true CN109918397B (zh) | 2021-04-27 |
Family
ID=66960499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910061834.6A Active CN109918397B (zh) | 2019-01-23 | 2019-01-23 | 一种数据匹配方法、装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109918397B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102012918A (zh) * | 2010-11-26 | 2011-04-13 | 中金金融认证中心有限公司 | 一种规律挖掘和执行系统及其方法 |
CN102880650A (zh) * | 2012-08-27 | 2013-01-16 | 中国工商银行股份有限公司 | 一种数据匹配方法及装置 |
CN103294791A (zh) * | 2013-05-13 | 2013-09-11 | 西安电子科技大学 | 一种可扩展标记语言模式匹配方法 |
US8626696B2 (en) * | 2007-05-01 | 2014-01-07 | International Business Machines Corporation | Method and system for approximate string matching |
CN108154160A (zh) * | 2017-12-27 | 2018-06-12 | 苏州科达科技股份有限公司 | 车牌颜色识别方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8219596B2 (en) * | 2010-03-08 | 2012-07-10 | Sap Ag | System and method of optimizing performance of schema matching |
-
2019
- 2019-01-23 CN CN201910061834.6A patent/CN109918397B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8626696B2 (en) * | 2007-05-01 | 2014-01-07 | International Business Machines Corporation | Method and system for approximate string matching |
CN102012918A (zh) * | 2010-11-26 | 2011-04-13 | 中金金融认证中心有限公司 | 一种规律挖掘和执行系统及其方法 |
CN102880650A (zh) * | 2012-08-27 | 2013-01-16 | 中国工商银行股份有限公司 | 一种数据匹配方法及装置 |
CN103294791A (zh) * | 2013-05-13 | 2013-09-11 | 西安电子科技大学 | 一种可扩展标记语言模式匹配方法 |
CN108154160A (zh) * | 2017-12-27 | 2018-06-12 | 苏州科达科技股份有限公司 | 车牌颜色识别方法及系统 |
Non-Patent Citations (1)
Title |
---|
基于模式矩阵匹配的关联规则挖掘算法;吴仁堂 等;《内蒙古农业大学学报(自然科学版)》;20090930;第30卷(第3期);第190-193页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109918397A (zh) | 2019-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100362479C (zh) | 基于自动化测试脚本对被测对象进行测试的方法和系统 | |
US11176086B2 (en) | Parallel copying database transaction processing | |
CN107203465B (zh) | 系统接口测试方法及装置 | |
CN102915344B (zh) | 一种sql语句处理方法及装置 | |
CN109947804B (zh) | 数据集合查询的优化方法、装置、服务器和存储介质 | |
CN103559025A (zh) | 一种采用聚类方式进行软件重构的方法 | |
JP6570156B2 (ja) | データベースシステム最適化の方法、システム、電子装置及び記憶媒体 | |
CN104461531A (zh) | 一种报表系统自定义函数的实现方法 | |
CN109684393A (zh) | 数据采集方法、计算机可读存储介质及终端设备 | |
CN112162915A (zh) | 一种测试数据生成方法、装置、设备及存储介质 | |
CN111309753B (zh) | 结构化查询语句的优化方法、装置、设备及存储介质 | |
US20100005203A1 (en) | Method of Merging and Incremantal Construction of Minimal Finite State Machines | |
CN103593182A (zh) | 一种采用聚类方式进行软件重构的方法 | |
CN113051725B (zh) | 基于通用型辅助变量法的det与relap5耦合的动态特性分析方法 | |
CN109918397B (zh) | 一种数据匹配方法、装置和存储介质 | |
CN103793653A (zh) | 一种基于树优化的程序依赖关系分析方法及系统 | |
CN111163060B (zh) | 一种基于应用组的转发方法、设备以及系统 | |
CN111026916B (zh) | 文本描述的转换方法、装置、电子设备及存储介质 | |
CN108681554B (zh) | 一种利用正则表达式的匹配方法、装置及设备 | |
CN110866007A (zh) | 大数据应用和表的信息管理方法、系统和计算机设备 | |
CN115878654A (zh) | 一种数据查询的方法、装置、设备及存储介质 | |
CN111984684B (zh) | 数据处理方法及装置 | |
CN110895529B (zh) | 结构化查询语言的处理方法及相关装置 | |
CN103631951A (zh) | 一种基于元数据的批量取数函数的合并方法和装置 | |
CN113868138A (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 |