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

数据比对方法、系统、存储介质及电子设备与流程

2021-11-25 00:13:00 来源:中国专利 TAG:


1.本发明属于数据比对领域,具体涉及一种数据比对方法、系统、存储介质及电子设备。


背景技术:

2.在拥有海量数据的背景下,如何将相同数据禁止重复插入,使相似数据进行分组、融合往往是一项难题,其中如何比对相似或相同数据,计算数据相似度是关键的一环。而在可以动态变化的表结构面前,需要更加灵活的进行数据比对操作。
3.现有技术在数据进行存储时,将数据两两比对计算相似度,增加了计算复杂度,在遇到多值字段时不能准确识别数据之间的相似度,而造成准确率不高的情况。


技术实现要素:

4.本技术实施例提供了一种数据比对方法、系统、存储介质及电子设备,以至少解决现有的数据比对方法准确率低的问题。
5.本发明提供了一种数据比对方法,其中,包括:
6.获取步骤:获取需要进行比对的数据的唯一标识id,根据所述唯一标识id 获取所述数据,根据所述数据获得entry;
7.判断步骤:判断所述entry的value值是否为空,根据判断结果查询数据库中和所述value值相似的数据并抽取进masterdatalist列表;
8.获取最大匹配数据步骤:遍历所述masterdatalist列表,比对所述 masterdatalist列表中每个数据的唯一标识id的匹配次数,根据比对结果获得最大匹配数据;
9.存入步骤:比较所述匹配次数与count值,根据比较结果将所述数据与所述最大匹配数据放入所述数据库。
10.上述数据比对方法,其中,所述获取步骤包括:
11.数据获取步骤:获取需要进行比对数据的唯一标识id,根据所述唯一标识 id获取所述数据;
12.entry获取步骤:根据所述数据的表id获取所述表id的元数据信息,根据所述元数据信息过滤出所述数据的主属性,生成map,遍历所述map,获取所述 entry。
13.上述数据比对方法,其中,所述判断步骤包括:
14.继续遍历步骤:如果所述entry的value为空,则继续遍历;
15.判断多值字段步骤:如果所述entry的value值不为空则查看所述元数据信息中字段是否为多值字段;
16.抽取步骤:如果是所述多值字段则需要将所述value值用多指分隔符分割,根据key值查询所述数据库中和所述value相似的数据抽取进所述列表 masterdatalist。
17.上述数据比对方法,其中,所述存入步骤包括:
18.分割点构建步骤:如果所述匹配次数小于所述count值则将所述数据与所述最大匹配数据分在一组并存入所述数据库;
19.比对步骤:如果所述匹配次数大于等于所述count值则将所述字段一一比对,输出比对结果;
20.输出步骤:当所述比对结果为有不同所述字段则将数据与所述最大匹配数据分在一组存入所述数据库,当所述比对结果为无不相同所述字段则说明所述数据重复,舍弃该条数据。
21.本发明还提供了一种数据比对系统,其中,包括:
22.获取模块,所述获取模块获取需要进行比对的数据的唯一标识id,根据所述唯一标识id获取所述数据,根据所述数据获得entry;
23.判断模块,所述判断模块判断所述entry的value值是否为空,根据判断结果查询数据库中和所述value值相似的数据并抽取进masterdatalist列表;
24.获取最大匹配数据模块,所述获取最大匹配数据模块遍历所述 masterdatalist列表,比对所述masterdatalist列表中每个数据的唯一标识 id的匹配次数,根据比对结果获得最大匹配数据;
25.存入模块,所述存入模块比较所述匹配次数与count值,根据比较结果将所述数据与所述最大匹配数据放入所述数据库。
26.上述数据比对系统,其中,所述获取模块包括:
27.数据获取单元,所述数据获取单元获取需要进行比对数据的唯一标识id,根据所述唯一标识id获取所述数据;
28.entry获取单元,所述entry获取单元根据所述数据的表id获取所述表id 的元数据信息,根据所述元数据信息过滤出所述数据的主属性,生成map,遍历所述map,获取所述entry。
29.上述数据比对系统,其中,所述判断模块包括:
30.继续遍历单元,如果所述entry的value为空,所述继续遍历单元则继续遍历;
31.判断多值字段单元,如果所述entry的value值不为空则所述判断多值字段单元查看所述元数据信息中字段是否为多值字段;
32.抽取单元,如果是所述多值字段则所述抽取单元需要将所述value值用多指分隔符分割,根据key值查询所述数据库中和所述value相似的数据抽取进所述列表masterdatalist。
33.上述数据比对系统,其中,所述存入模块包括:
34.分割点构建单元,如果所述匹配次数小于所述count值则所述分割点构建单元将所述数据与所述最大匹配数据分在一组并存入所述数据库;
35.比对单元,如果所述匹配次数大于等于所述count值则所述比对单元将所述字段一一比对,输出比对结果;
36.输出单元,当所述比对结果为有不同所述字段则所述输出单元将数据与所述最大匹配数据分在一组存入所述数据库,当所述比对结果为无不相同所述字段则说明所述数据重复,舍弃该条数据。
37.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器
等类似词语并不表示数量限制,可表示单数或复数。本技术所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本技术所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本技术所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本技术所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
54.下面结合附图所示的各实施方式对本发明进行详细说明,但应当说明的是,这些实施方式并非对本发明的限制,本领域普通技术人员根据这些实施方式所作的功能、方法、或者结构上的等效变换或替代,均属于本发明的保护范围之内。
55.在详细阐述本发明各个实施例之前,对本发明的核心发明思想予以概述,并通过下述若干实施例予以详细阐述。
56.实施例一:
57.本发明提供一种数据比对方法,本发明主要的技术路线如图1所示,具体步骤如下:
58.请参照图2,图2是音频数据分析方法的流程图。如图2所示,本发明的数据比对方法包括:
59.获取步骤s1:获取需要进行比对的数据的唯一标识id,根据所述唯一标识 id获取所述数据,根据所述数据获得entry;
60.判断步骤s2:判断所述entry的value值是否为空,根据判断结果查询数据库中和所述value值相似的数据并抽取进masterdatalist列表;
61.获取最大匹配数据步骤s3:遍历所述masterdatalist列表,比对所述 masterdatalist列表中每个数据的唯一标识id的匹配次数,根据比对结果获得最大匹配数据;
62.存入步骤s4:比较所述匹配次数与count值,根据比较结果将所述数据与所述最大匹配数据放入所述数据库。
63.请参照图3,图3是获取步骤s1的流程图。如图3所示,所述获取步骤s1 包括:
64.数据获取步骤s11:获取需要进行比对数据的唯一标识id,根据所述唯一标识id获取所述数据;
65.entry获取步骤s12:根据所述数据的表id获取所述表id的元数据信息,根据所述元数据信息过滤出所述数据的主属性,生成map,遍历所述map,获取所述entry。
66.请参照图4,图4是判断步骤s2的流程图。如图4所示,所述判断步骤s2 包括:
67.继续遍历步骤s21:如果所述entry的value为空,则继续遍历;
68.判断多值字段步骤s22:如果所述entry的value值不为空则查看所述元数据信息中字段是否为多值字段;
69.抽取步骤s23:如果是所述多值字段则需要将所述value值用多指分隔符分割,根
据key值查询所述数据库中和所述value相似的数据抽取进所述列表 masterdatalist。
70.请参照图5,图5是存入步骤s4的流程图。如图5所示,所述存入步骤s4 包括:
71.分割点构建步骤s41:如果所述匹配次数小于所述count值则将所述数据与所述最大匹配数据分在一组并存入所述数据库;
72.比对步骤s42:如果所述匹配次数大于等于所述count值则将所述字段一一比对,输出比对结果;
73.输出步骤s43:当所述比对结果为有不同所述字段则将数据与所述最大匹配数据分在一组存入所述数据库,当所述比对结果为无不相同所述字段则说明所述数据重复,舍弃该条数据。
74.具体地说,本方案在动态变化的表结构的情况下,灵活的匹配数据,计算数据相似度,避免相同数据重复存储,将相似的数据分组以备后续数据融合。
75.进一步,本发明提出一种基于关键字匹配相似数据进行数据比对的方法:
76.在进行数据存储时,先根据存储的元数据信息获取关键字段及多值字段,遍历关键字段数据值并计数,从已存储的数据中抽取该字段相似数据值,计算被匹配数据的匹配次数。若最大匹配次数大于等于计数值,则抽取该条最大匹配次数的数据b,与待匹配数据a进行比对,若没有不相同的字段值则舍弃该条重复数据。否则将数据a与数据b放在一组待后续数据融合。
77.再进一步,如图1所示,首先获取需要进行比对的数据a的唯一标识id,根据该条唯一标识获取a的数据,再获取存储a的表id,以获取该表的元数据信息(字段信息),根据元数据信息过滤出a的主属性,生成map<字段id,字段值>,遍历map,获取每个entry<字段id,字段值>(<key,value>),如果该 entry的value为空,则继续遍历。如果不为空则查看元数据信息中该字段是否为多值字段,如果是多值字段则需要将value值用多指分隔符分割,根据key 值查询数据库中和value相似的数据抽取进列表masterdatalist,count值加一。
78.遍历masterdatalist,根据列表中每个数据的唯一标识生成map<数据唯一标识,匹配次数(列表中数据个数)>,比对匹配次数,若没有匹配的相似数据则生成新分组标识,存入数据库。若匹配到则获取最大匹配数据b,如果匹配次数小于count值则将数据a与数据b分在一组存入数据库,则如果匹配次数大于等于count值则将字段一一比对,若有不同值则将数据a与数据b分在一组存入数据库,若无不相同字段则说明数据a重复,舍弃该条数据。
79.实施例二:
80.请参照图6,图6是本发明的数据比对系统的结构示意图。如图6所示本发明的一种数据比对系统,其中,包括:
81.获取模块,所述获取模块获取需要进行比对的数据的唯一标识id,根据所述唯一标识id获取所述数据,根据所述数据获得entry;
82.判断模块,所述判断模块判断所述entry的value值是否为空,根据判断结果查询数据库中和所述value值相似的数据并抽取进masterdatalist列表;
83.获取最大匹配数据模块,所述获取最大匹配数据模块遍历所述 masterdatalist列表,比对所述masterdatalist列表中每个数据的唯一标识 id的匹配次数,根据比对结果获得最大匹配数据;
read

onlymemory,简称为eeprom)、电可改写rom(electrically alterable read

onlymemory,简称为earom)或闪存(flash)或者两个或更多个以上这些的组合。在合适的情况下,该ram可以是静态随机存取存储器(static random

accessmemory,简称为sram)或动态随机存取存储器(dynamic random access memory,简称为dram),其中,dram可以是快速页模式动态随机存取存储器(fast pagemode dynamic random access memory,简称为fpmdram)、扩展数据输出动态随机存取存储器(extended date out dynamic random access memory,简称为edodram)、同步动态随机存取内存(synchronous dynamic random

accessmemory,简称sdram)等。
100.存储器82可以用来存储或者缓存需要处理和/或通信使用的各种数据文件,以及处理器81所执行的可能的计算机程序指令。
101.处理器81通过读取并执行存储器82中存储的计算机程序指令,以实现上述实施例中的任意一种数据比对方法。
102.在其中一些实施例中,电子设备还可包括通信接口83和总线80。其中,如图7所示,处理器81、存储器82、通信接口83通过总线80连接并完成相互间的通信。
103.通信接口83用于实现本技术实施例中各模块、装置、单元和/或设备之间的通信。通信端口83还可以实现与其他部件例如:外接设备、图像/数据采集设备、数据库、外部存储以及图像/数据处理工作站等之间进行数据通信。
104.总线80包括硬件、软件或两者,将电子设备的部件彼此耦接在一起。总线80包括但不限于以下至少之一:数据总线(data bus)、地址总线(addressbus)、控制总线(control bus)、扩展总线(expansion bus)、局部总线(localbus)。举例来说而非限制,总线80可包括图形加速接口(accelerated graphicsport,简称为agp)或其他图形总线、增强工业标准架构(extended industrystandard architecture,简称为eisa)总线、前端总线(front side bus,简称为fsb)、超传输(hyper transport,简称为ht)互连、工业标准架构 (industry standard architecture,简称为isa)总线、无线带宽(infiniband) 互连、低引脚数(low pin count,简称为lpc)总线、存储器总线、微信道架构(micro channel architecture,简称为mca)总线、外围组件互连(peripheralcomponent interconnect,简称为pci)总线、pci

express(pci

x)总线、串行高级技术附件(serial advanced technology attachment,简称为sata) 总线、视频电子标准协会局部(video electronics standards associationlocal bus,简称为vlb)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线80可包括一个或多个总线。尽管本技术实施例描述和示出了特定的总线,但本技术考虑任何合适的总线或互连。
105.该电子设备可以基于数据比对,从而实现结合图2

图5描述的方法。
106.另外,结合上述实施例中数据比对方法,本技术实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种数据比对方法。
107.以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
108.综上所述,基于本发明的有益效果在于,本发明避免数据库产生大量冗余数据;本
发明能够提升匹配效率,避免了将数据两两比较,减少计算复杂度;本发明对多值字段进行特殊处理,能够提升匹配准确度。
109.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明保护范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本发明的保护范围应以所附权利要求的保护范围为准。
再多了解一些

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

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

相关文献