CN117349358B - 基于分布式图处理框架的数据匹配与合并的方法和系统 - Google Patents
基于分布式图处理框架的数据匹配与合并的方法和系统 Download PDFInfo
- Publication number
- CN117349358B CN117349358B CN202311639898.2A CN202311639898A CN117349358B CN 117349358 B CN117349358 B CN 117349358B CN 202311639898 A CN202311639898 A CN 202311639898A CN 117349358 B CN117349358 B CN 117349358B
- Authority
- CN
- China
- Prior art keywords
- data
- unique identification
- matching
- identification code
- uniquely identifiable
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 61
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000004364 calculation method Methods 0.000 claims abstract description 97
- 238000012546 transfer Methods 0.000 claims abstract description 38
- 238000012216 screening Methods 0.000 claims abstract description 17
- 238000007781 pre-processing Methods 0.000 claims abstract description 11
- 238000005070 sampling Methods 0.000 claims description 57
- 238000012360 testing method Methods 0.000 claims description 42
- 238000010586 diagram Methods 0.000 claims description 31
- 238000004891 communication Methods 0.000 claims description 24
- 230000000007 visual effect Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 16
- 238000003860 storage Methods 0.000 claims description 12
- 238000013507 mapping Methods 0.000 claims description 10
- 238000002372 labelling Methods 0.000 claims description 4
- 238000009826 distribution Methods 0.000 abstract description 5
- 230000006399 behavior Effects 0.000 description 14
- 238000004422 calculation algorithm Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 4
- 238000001914 filtration Methods 0.000 description 4
- 239000000047 product Substances 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000004927 fusion Effects 0.000 description 3
- 238000012550 audit Methods 0.000 description 2
- 238000004140 cleaning Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000005065 mining Methods 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000007795 chemical reaction product Substances 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000011985 exploratory data analysis Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/219—Managing data history or versioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H10/00—ICT specially adapted for the handling or processing of patient-related medical or healthcare data
- G16H10/60—ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Epidemiology (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Primary Health Care (AREA)
- Public Health (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供基于分布式图处理框架的数据匹配与合并的方法和系统,该方法包括:从多个数据源的数据提取出需要匹配与合并的数据字段,对该数据字段对应的数据进行预处理后统一汇总至数据中转表,并根据匹配计算模型对中转表中的数据进行筛选,筛选出可唯一识别数据,基于分布式图处理框架将属于同一主体的多个可识别字段建立连通图,通过连通图对应的唯一识别码在目标数据表中进行检索,若存在与唯一识别码属于同一主体历史唯一识别码,将连通图对应的可唯一识别数据合并至该主体的原始数据,反之,直接将该可唯一识别数据和唯一识别码加入目标数据表。本发明能够有效降低同一用户数据散乱分布的概率,使多次合并后的数据仍可追溯到合并前的数据。
Description
技术领域
本发明涉及信息数据处理技术领域,尤其涉及基于分布式图处理框架的数据匹配与合并的方法和系统。
背景技术
企业级患者主索引(Enterprise Master Patient Index,EMPI)是一种用于管理患者身份信息的系统。EMPI通过使用特定的匹配算法和标识交叉索引机制,将来自不同数据源和应用的患者信息进行识别、匹配和去重,从而为每个患者分配一个唯一且持久的全局标识。通过EMPI,可以避免重复登记、重复检查和重复诊疗等问题,提高患者信息的质量和完整性,促进跨机构和跨平台的数据共享和协作,支持个性化医疗、精准医疗、健康管理等服务。EMPI通过使用特定的匹配算法和标识交叉索引机制,将来自不同数据源和应用的患者信息进行识别、匹配和去重,从而为每个患者分配一个唯一且持久的全局标识。
现有的技术方案查询某一主体的所有信息时,需要经过多次反查,增加了查询时间和成本;多数据源内含有大量的重复信息,需对信息进行筛选,影响查询效率和准确性;难以对已经匹配过的数据进行修正,不利于针对主体进行后续的数据分析与应用,无法发现主体之间的潜在联系和规律。
另外,在大数据场景下,由于网络延迟等因素,数据的迟到、漏到和补到是常见现象,即使是来自同一数据源的数据,也可能存在录入和处理顺序不一致的情况。使得即使经过企业级患者主索引处理的数据仍会存在数据不一致性和冗余性,导致用户数据散乱分布,在同一个数据主体多次合并后数据不可追溯,给数据分析和应用带来困难和误差。
发明内容
有鉴于此,本发明实施例的目的在于提供一种基于分布式图处理框架的数据匹配与合并的方法和系统,以解决现有技术中在大数据场景下由于数据不一致性和冗余性,导致用户数据散乱分布,同一个数据主体多次合并后数据不可追溯的技术问题。
为达到上述目的,第一方面,本发明实施例提供一种基于分布式图处理框架的数据匹配与合并的方法,所述方法包括:
从多个数据源的数据中提取需要匹配与合并的数据字段,对所述数据字段对应的数据进行预处理后汇总至数据中转表;
从所述数据中转表中按照预设的匹配计算模型筛选出可唯一识别数据,每个所述可唯一识别数据对应的主体包括多个可识别字段;
使用分布式图处理框架将属于同一主体的多个可识别字段作为顶点建立边的关系,形成多张连通图,并将最小所述顶点的值作为每张所述连通图的唯一识别码;
通过所述唯一识别码在目标数据表中进行检索,当所述目标数据表中存在与所述唯一识别码具有相同主体的历史唯一识别码时,将所述连通图对应的可唯一识别数据合并至历史唯一识别码对应的原始数据,并更新所述目标数据表的历史唯一识别码;当所述目标数据表中不存在与所述唯一识别码具有相同主体的历史唯一识别码时,直接将所述连通图对应的可唯一识别数据和所述唯一识别码加入所述目标数据表。
在一些可能的实施方式中,所述方法还包括:所述的更新所述目标数据表的历史唯一识别码,具体包括:
将所述连通图的唯一识别码与所述历史唯一识别码进行比较;
当所述连通图的唯一识别码小于所述历史唯一识别码时,则将所述唯一识别码更新至所述目标数据表连通图;
当所述连通图的唯一识别码大于所述历史唯一识别码时,则将所述历史唯一识别码赋予所述连通图,并更新所述目标数据表。
在一些可能的实施方式中,当未检索到预设所述与所述连通图的主体相同的原连通图时,直接将所述连通图对应的数据加入所述目标数据表。
在一些可能的实施方式中,对于所述数据中转表中筛选后的不可唯一识别数据,根据所述匹配计算模型对所述不可唯一识别数据分别与所述目标数据表中的数据进行相似匹配得分计算,获得每一个所述不可唯一识别数据与所述目标数据表中的数据的匹配得分,根据所述匹配得分的数值将所述不可唯一识别数据分类加入至目标数据表中。
在一些可能的实施方式中,所述的根据所述匹配得分的数值将所述不可唯一识别数据分类加入至所述目标数据表中,具体包括:
如果所述不可唯一识别数据的最高匹配得分的数值低于在所述匹配计算模型中设定的低阈值,则确定该不可唯一识别数据不与所述目标数据表中的数据匹配,将所述不可唯一识别数据作为新数据加入到所述目标数据表中,并标注该不可唯一识别数据为新数据;
如果所述不可唯一识别数据的最高匹配得分的数值高于在所述匹配计算模型中设定的高阈值,则确定该不可唯一识别数据与所述目标数据表中的数据有高度相似性,将所述不可唯一识别数据与所述目标数据表中匹配得分最高的数据合并,并标注该不可唯一识别数据为融合数据;
如果所述不可唯一识别数据的最高匹配得分的数值位于所述低阈值和高阈值之间,则确定该所述不可唯一识别数据与所述目标数据表中的数据具有相似性,则将所述不可唯一识别数据加入人工审核表中,根据人工审核结果将所述不可唯一识别数据加入所述目标数据表中,并标注所述不可唯一识别数据为待审核数据,根据人工审核结果将所述不可唯一识别数据分类加入到所述目标数据表中。
在一些可能的实施方式中,在所述的从多个数据源的数据中提取需要匹配与合并的数据字段,对所述数据字段对应的数据进行预处理后汇总至数据中转表之后,还包括:
获取多个匹配计算模型;
根据预设的抽样规则从所述数据中转表中抽取预设数量的数据样本,并将所述数据样本存储至数据抽样表;
根据多个所述匹配计算模型分别对所述数据抽样表中的数据进行内部的数据匹配度检测,获取多个抽样测试结果;并将多个所述抽样测试结果进行比较,根据比较的结果选取合适的匹配计算模型。
在一些可能的实施方式中,所述的获取多个匹配计算模型具体包括:
任意选定一个所述数据源作为输入数据,建立所述输入数据与所述目标数据表之间的数据字段映射关系;
根据所述数据字段映射关系选取需要计算的数据字段和计算的匹配方式,根据所述计算的匹配方式选择所述需要计算的数据字段的不同的权重占比,生成多个匹配计算模型;
在一些可能的实施方式中,所述方法还包括:
根据多个所述匹配计算模型分别计算所述数据抽样表中的每条抽样数据与其它抽样数据之间的匹配得分,并按照所述匹配得分的数值进行分类展示;
如果最高匹配得分的数值低于在所述匹配计算模型中设定的低阈值时,则确定该抽样数据不与其它抽样数据匹配,将该抽样数据单独展示在可视化界面上;
如果最高匹配得分的数值高于在所述匹配计算模型中设定的低阈值,则确定该抽样数据与其它数据有一定的相似性,将该抽样数据和与之匹配得分的数值最高的抽样数据一同展示在可视化界面上。
第二方面,本发明实施例提供了一种基于分布式图处理框架的数据匹配与合并的系统,所述系统包括:
数据汇总模块,用于从多个数据源的数据中提取需要匹配与合并的数据字段,对所述数据字段对应的数据进行预处理后汇总至数据中转表;
数据筛选模块,用于从所述数据中转表中按照预设的匹配计算模型筛选出可唯一识别数据,所述可唯一识别数据对应的主体包括多个可识别字段;
分布式图处理框架模块,用于使用分布式图处理框架将属于同一主体的多个可识别字段作为顶点建立边的关系,形成多张连通图,并将最小所述顶点的值作为每张所述连通图的唯一识别码;
合并与更新模块,用于通过所述唯一识别码在目标数据表中进行检索,当所述目标数据表中存在与所述唯一识别码具有相同主体的历史唯一识别码时,将所述连通图对应的可唯一识别数据合并至历史唯一识别码对应的原始数据,并更新所述目标数据表的历史唯一识别码;当所述目标数据表中不存在与所述唯一识别码具有相同主体的历史唯一识别码时,直接将所述连通图对应的可唯一识别数据和所述唯一识别码加入所述目标数据表。
第三方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述的任意一种基于分布式图处理框架的数据匹配与合并的方法。
第四方面,本发明实施例提供了一种电子设备,其包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现所述的任意一种基于分布式图处理框架的数据匹配与合并的方法。
上述技术方案具有如下有益效果:
本发明提供了一种基于分布式图处理框架的数据匹配与合并的方法和系统,该方法包括:从多个数据源的数据提取出需要匹配与合并的数据字段,对该数据字段对应的数据进行预处理后统一汇总至数据中转表,并根据匹配计算模型对中转表中的数据进行筛选,筛选出可唯一识别数据,基于分布式图处理框架将属于同一主体的多个可识别字段建立连通图,通过连通图对应的唯一识别码在目标数据表中进行检索,若存在与唯一识别码属于同一主体历史唯一识别码,将连通图对应的可唯一识别数据合并至该主体的原始数据,反之,直接将该可唯一识别数据和唯一识别码加入目标数据表。本发明实施例能够有效降低同一用户数据散乱分布的概率,并使多次合并后的数据仍可追溯到合并前的数据,并使得已产生的分析结果能够更好地得到复用。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明实施例的一种基于分布式图处理框架的数据匹配与合并的方法的流程图;
图2是本发明实施例的一种将数据中转表中的数据形成连通图的示意图;
图3是本发明实施例的一种抽样测试的流程图;
图4为本发明实施例的一种基于分布式图处理框架的数据匹配与合并的架构图;
图5是本发明实施例的一种基于分布式图处理框架的数据匹配与合并的系统的结构框图;
图6是本发明实施例的另一种基于分布式图处理框架的数据匹配与合并的系统的结构框图;
图7是本发明实施例的抽样测试模块的结构框图;
图8是本发明实施例的一种计算机可读存储介质的功能框图;
图9是本发明实施例的一种电子设备的功能框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例一
图1是本发明实施例的一种基于分布式图处理框架的数据匹配与合并的方法的流程图,如图1所示,该方法包括如下步骤:
步骤S11,从多个数据源的数据中提取需要匹配与合并的数据字段,对数据字段对应的数据进行预处理后汇总至数据中转表。
具体的,当通过可视化界面发起数据匹配与合并的请求后,系统会从不同来源的数据(即一个或多个数据源的数据)中提取出需要进行匹配与合并的数据字段,并对提取的数据字段对应的多个数据源的数据进行清洗和格式化等预处理操作,然后将预处理后的数据汇总至数据中转表,对数据中转表中的数据进行匹配与合并处理,可提高后续数据处理的效率。
步骤S12,从数据中转表中按照预设的匹配计算模型筛选出可唯一识别数据,每个可唯一识别数据对应的主体包括多个可识别字段。
本实施例中,每一个主体根据预设的匹配计算模型会有多个可识别字段,多个可识别字段中包括可唯一识别字段和相似识别字段,例如身份证、手机号、医保卡等,如果某一个或多个可识别字段与匹配计算模型中的可唯一识别字段匹配,则确定为该主体数据为可唯一识别数据,如果多个可识别字段中没有与匹配计算模型中匹配的可唯一识别字段,则确定该数据为不可唯一识别数据,如果可唯一识别数据中任何一个可识别字段的值出现在了新的数据中,则认为新数据与原有数据属于同一个主体。
步骤S13,使用分布式图处理框架将属于同一主体的多个可识别字段作为顶点建立边的关系,形成多张连通图,并将最小顶点的值作为每张连通图的唯一识别码。其中,一张连通图可以有多个顶点,最小顶点的值为各个顶点中数值最小的值。
具体的,分布式图处理框架Spark GraphX是一种用于处理大规模图数据的计算框架。它们通常提供了对图计算和图挖掘的简洁易用的接口,极大地方便了对分布式图处理的需求。常见的分布式图处理框架包括GraphX、GraphScope、NetworkX、CuGraph、GraphLab等。Spark GraphX是一个用于图计算和图挖掘的分布式框架,它通过引入顶点和边属性的有向多重图来实现分布式图处理的需求,并将分布式图(graph-parallel)计算和分布式数据(data-parallel)统一到一个系统中,这个系统拥有一个唯一的组合API(ApplicationProgramming Interface,应用程序编程接口),来高效地执行复杂的图形算法。通过SparkGraphX,可以将数据同时视为图和集合,实现探索性分析和迭代图算法等功能。SparkGraphX可以与Spark的其他组件(如Spark SQL、MLlib、Streaming等)兼容,它利用Spark的缓存、容错和分布式计算能力,高效地处理海量的图数据,并且提供了丰富的图算法库,包括网页排名算法(PageRank)、连通分量、标签传播等。Spark GraphX通常被用来进行机器学习和数据挖掘工作,从图数据中发现有洞察力的见解和模式。
图2是本实施例的一种将数据中转表中的数据形成连通图的示意图,如图2所示,通过分布式图处理框架将属于同一主体的多个可识别字段作为顶点建立边的关系,形成多张连通图,即根据主体的可识别字段针对不同的主体建立不同的连通图,一个主体对应一张连通图。例如,某个数据中转表中有三条数据,即数据1、数据2和数据3,数据1包括姓名1、手机号1、医保卡号1和身份证号1等可唯一识别数据,数据2包括姓名2、手机号2、医保卡号2和身份证号2等可唯一识别数据,数据3包括姓名3、手机号3、医保卡号3和身份证号3等可唯一识别数据,即身份证号可以作为可唯一识别数据,医保卡号也可作为可唯一识别数据,手机号同样可以作为可唯一识别数据,那么在制作连通图时,如果发现数据1和数据2在以身份证作为可唯一识别字段的匹配计算模型下,因为具有同样的身份证号,则认定数据1和数据2属于同一个主体,例如姓名为张三和张二的两个人,由于登记的时候可能少写了一横,致使两人的姓名不同,但是两人的身份证号一致,就可以确定姓名1张三和姓名2张二属于同一主体,此时可以将两个连通图合并至一个连通图中,即将可识别字段身份证1、医保卡1、姓名1、姓名2、手机号1和手机号2作为顶点形成一张连通图(此时,由于医保卡号2和身份证号2分别与医保卡号1和身份证号1相同,所以图中将身份证号2与身份证号1在形成连通图时合并为身份证1,将医保卡号2与医保卡号1在形成连通图时合并为医保卡1),每一个顶点对应一个值,即身份证1的号码、医保卡1的卡号、手机号1的号码、手机号2的号码、姓名1的名字和姓名2的名字,而数据3与数据1和数据2的身份证号不同,则认为不属于同一个主体,则将可识别字段姓名3、手机号3、医保卡3和身份证3作为顶点单独形成一张连通图,同样每一个顶点对应一个值,即将姓名3这个顶点对应的名字、手机号3这个顶点对应的号码、医保卡3这个顶点对应的卡号和身份证3这个顶点对应的身份证号。
本实施例中,将最小顶点的值作为每个连通图的唯一识别码,另外,本实施例还提供了一种确定最小顶点的值的方法,例如可以使用MD5前端加密的方式将每一个连通图对应的顶点的值(输入值)进行加密,每一个顶点的值都会以32位16进制的小写字符串返回,将最小字符串值确定为最小顶点的值,并将这个字符串作为可唯一识别码;其中,MD5为Message Digest Algorithm,消息摘要算法第五版。
步骤S14,通过唯一识别码在目标数据表中进行检索,当目标数据表中存在与唯一识别码具有相同主体的历史唯一识别码时,将连通图对应的可唯一识别数据合并至历史唯一识别码对应的原始数据,并更新目标数据表的历史唯一识别码;当目标数据表中不存在与唯一识别码具有相同主体的历史唯一识别码时,直接将连通图对应的可唯一识别数据和唯一识别码加入目标数据表。
本实施例中,目标数据表即为要合并的数据表,每一张连通图都有唯一识别码,通过每张连通图的唯一识别码检索目标数据表,例如,在目标数据表中输入了身份证号,也就是顶点的值,可以在目标数据表中查询到与该唯一识别码具有相同主体的历史唯一识别码,也可以称为最小识别码,以及该最小识别码对应的主体的所有信息,然后将连通图对应的可唯一识别数据合并至该主体,将主体对应的表中能与唯一可识别数据进行匹配的数据取出后,根据对应的字段,取出两者对应的值,主体对应目标数据表中的值是列表,可唯一识别数据是一个值,将可唯一识别数据加入该主体对应目标数据表后对目标数据表进行去重,即将主体对应的目标数据表中的数据与唯一可识别数据取并集,同时更新目标数据表中的历史唯一识别码,也就是最小识别码。如果在目标数据表中没有检索到与唯一识别码对应的主体相同的历史唯一识别码,则说明该可唯一识别数据是一个新主体数据,直接将该新主体数据的唯一识别码和可唯一识别数据写入目标数据表中。
本实施例中,更新目标数据表的唯一识别码具体包括:将连通图中的唯一识别码与原连通图中的唯一识别码进行比较;如果唯一识别码与历史唯一识别码一致,则不需要更新;如果连通图的唯一识别码小于历史唯一识别码,则将连通图的唯一识别码更新至目标数据表中;如果连通图的唯一识别码大于历史唯一识别码,则将目标数据表中的历史唯一识别码赋予连通图。
具体的,目标数据表中包括历史唯一识别码和其对应的原始数据源,历史唯一识别码是原来形成的连通图的唯一识别码,也可以称为最小识别码;当现有的可唯一识别数据形成连通图后,会将连通图中的顶点数据与目标数据表中的顶点数据进行匹配,如果匹配上了,将唯一识别码与历史识别码比较,即比较两者之间的最小识别码。如果匹配上顶点数据的连通图的最小识别码比在目标数据表中的最小识别码小,则将目标数据表中该最小识别码转换为连通图中的最小识别码。反之,则将目标数据表的最小识别码赋予连通图的最小识别码,最后将连通图中在目标数据表中不存在的顶点数据与该顶点数据对应的最小识别码存入目标数据表。
本实施例基于分布式图处理框架Spark GraphX,可以利用其强大的并行计算能力和内存计算优势,提高数据合并的效率和性能;还可以对新老数据建立关系,对可建立关系的老数据进行再次合并,降低同一用户数据散乱分布的概率,提高数据的一致性和完整性;另外,本发明实施例可以根据老数据查询到合并后的新数据,实现数据的透明化和可追溯性,方便数据的分析和应用。
在一些实施例中,该方法还可以包括:对于数据中转表中筛选后的不可唯一识别数据,根据匹配计算模型对不可唯一识别数据分别与目标数据表中的数据进行相似匹配得分计算,获得每一个不可唯一识别数据与目标数据表中的数据的匹配得分,根据匹配得分的数值将不可唯一识别数据分类加入至目标数据表中。
具体的,在步骤S12中,筛选出了可唯一识别数据后,在数据中转表中还剩余有不可唯一识别数据,本实施例正是针对这一部分数据进行的匹配与合并。本实施例中,在可视化界面发起数据匹配与合并请求后,可以选择合适的匹配计算模型,根据匹配计算模型对不可唯一识别数据分别与目标数据表中的数据进行相似匹配得分计算,根据匹配计算模型选取的计算方式为相似识别时,可以设置各个字段的权重占比,例如,姓名权重占比30%,出生日期权重占比25%,地址权重占比15%,手机号权重占比30%,另外,还有保留字段,记为行为1,用于做数据的去重合并,不参与合并计算,根据各个可识别字段值加权求和的值(即每一个字段权重与可识别字段值的乘积再求和)等于匹配的得分值获得每一个不可唯一识别数据与目标数据表中的数据的匹配得分,根据匹配得分的数值将不可唯一识别数据分类加入至目标数据表中。
具体的,每一个匹配计算模型都会有一个低阈值和高阈值,用于评价每一条数据的相似性,例如,如果不可唯一识别数据的最高匹配得分的数值低于在匹配计算模型中设定的低阈值,则确定该数据不与目标数据表中的数据匹配,将不可唯一识别数据作为新数据加入到目标数据表中,并标注该不可唯一识别数据为新数据。
例如,如果不可唯一识别数据的最高匹配得分的数值高于在匹配计算模型中设定的高阈值,则确定该数据与目标数据表中的数据有高度相似性,将不可唯一识别数据与目标数据表中匹配得分最高的数据合并,并标注该不可唯一识别数据为融合数据;如果不可唯一识别数据的最高匹配得分的数值位于低阈值和高阈值之间,则确定该不可唯一识别数据与目标数据表中的数据具有相似性,则将不可唯一识别数据加入人工审核表中,根据人工审核结果将不可唯一识别数据加入目标数据表中,并标注不可唯一识别数据为待审核数据,根据人工审核结果将不可唯一识别数据分类加入到目标数据表中。如果人工审核后,认为该不可唯一识别数据与目标数据表中的其他数据不具有相似性,判别为新数据,则直接将该不可唯一识别数据加入到目标数据表中;如果人工审核后,认为该不可唯一识别数据与目标数据表中的数据具有一定的相似性,判别为可融合数据,可以将该不可唯一识别数据和与其相似的数据合并至目标数据表中。
另外,系统在人工审核时还会展示该不可唯一识别数据与其他数据之间匹配的具体规则和得分,以方便查看。
图3是本发明实施例的一种抽样测试的流程图,如图3所示,在一些实施例中,在可视化界面发起数据匹配与合并请求后,且在执行正式匹配与合并之前,通过抽样测试进行评估,以选出可使数据达到最佳可融合性的模型版本,可以对多个数据源的数据进行抽样测试,具体抽样测试流程包括如下步骤:
步骤S21,获取多个匹配计算模型。
步骤S22,根据预设的抽样规则从数据中转表中抽取预设数量的数据样本,并将数据样本存储至数据抽样表;其中,预设的抽样规则可以是定抽样比例、随机抽样或指定特定过滤条件抽取一部分数据作为抽样数据。
步骤S23,根据多个匹配计算模型分别对数据抽样表中的数据进行内部的数据匹配度检测,获取多个抽样测试结果;并将多个抽样测试结果进行比较,根据比较的结果选取合适的匹配计算模型。
本实施例中,步骤S21具体包括:任意选定一个数据源作为输入数据,建立输入数据与目标数据表之间的数据字段映射关系,例如,数据数据源中含有字段:数据源姓名,数据源出生日期,数据源身份证号,数据源社保卡号,数据源医保卡号,数据源地址,数据源手机号,数据源行为1,数据源行为2,数据源行为3,数据源喜欢的颜色,数据源喜欢的食物;目标数据表中含有字段:姓名,出生日期,身份证号,社保卡号,医保卡号,地址,手机号和行为1建立的对应的映射关系:数据源姓名对应姓名,数据源出生日期对应出生日期,数据源身份证号对应身份证号,数据源社保卡号对应社保卡号,数据源医保卡号对应医保卡号,数据源地址对应地址,数据源手机号对应手机号,数据源行为1对应行为1;根据映射关系选取需要计算的数据字段和计算的匹配方式,根据计算的匹配方式选择需要计算的数据字段的不同的权重占比,例如,姓名权重占比30%,出生日期权重占比25%,地址权重占比15%,手机号权重占比30%,行为1仅仅作为保留字段,不参与合并计算,生成多个匹配计算模型。即,对于每一个可识别字段可以选择不同的权重占比,每一种权重占比可以形成一种匹配计算模型,不同的权重占比就可以形成多个不同的匹配计算模型。
步骤S23具体包括:根据多个匹配计算模型分别计算数据抽样表中的每条抽样数据与其它抽样数据之间的匹配得分,并按照匹配得分的数值进行分类展示,获取多个抽样测试结果;如果最高匹配得分的数值低于在匹配计算模型中设定的低阈值时,则确定该抽样数据不与其它抽样数据匹配,将该抽样数据单独展示在可视化界面上;如果最高匹配得分的数值高于在匹配计算模型中设定的低阈值,则确定该数据与其它数据有一定的相似性,将该抽样数据和与之匹配得分的数值最高的抽样数据一同展示在可视化界面上。同时,系统还会展示该数据和与之匹配得分最高的数据的具体规则匹配方式和匹配得分的数值。
本实施例中,按照每一个匹配计算模型计算出来的抽样测试结果都会展示在可视化界面上,可以一目了然地看到每一个抽样测试的结果,方便将这些抽样测试结果进行对比,选择出合适的匹配计算模型用于后续的数据匹配与合并。
另外,为了使本领域技术人员更加理解本发明实施例提供的技术方案,下面对本发明实施例提供的基于分布式图处理框架的数据匹配与合并的方法进行详细说明。图4为本发明实施例的一种基于分布式图处理框架的数据匹配与合并的架构图,具体的:
S1,可视化界面发起数据匹配与合并请求。
S2,当接收到可视化界面发起数据匹配与合并的请求后,系统会从不同来源的数据(即多个数据源的数据)中提取出需要进行匹配与合并的数据字段,并对提取的数据字段对应的多个数据源的数据进行清洗和格式化等操作,然后将处理后的数据汇总至数据中转表。
S3,抽样测试获取合适的匹配计算模型,在可视化界面发起数据匹配与合并请求后,且在执行正式匹配与合并流程之前,通过抽样测试选出匹配计算模型版本,该选出的模型版本可以使数据达到最佳可融合性,可以对多个数据源的数据进行抽样测试,获得合适的匹配计算模型。
S4,根据匹配计算模型对数据中转表中的数据进行筛选,在数据中转表中有两种数据,一种是可唯一识别数据,另一种是不可唯一识别数据,对于筛选出来的可唯一识别数据,执行S51,对于不可唯一识别数据,执行S52。
S51,使用分布式图处理框架形成多张连通图,每个连通图具有唯一识别码,具体的,通过分布式图处理框架将属于同一主体的多个可识别字段作为顶点建立边的关系,形成多张连通图,即根据主体的可识别字段针对不同的主体建立不同的连通图,一个主体对应一张连通图。
判断目标数据表中是否存在与唯一识别码属于同一主体的最小唯一识别码,如果否,即不存在相同的主体,直接将该连通图对应的可唯一识别数据写入目标数据表;如果是,即存在相同的主体,则判断唯一识别码是否大于最小识别码,如果是,则将最小识别码赋给连通图,并将可唯一识别数据合并至该主体;如果否,将最小识别码替换为唯一识别码,并将可唯一识别数据合并至该主体,其中,最小识别码为原始连通图的唯一识别码,也称为历史唯一识别码。
S52,相似匹配得分计算,并将匹配得分的数值与匹配计算模型的高阈值和低阈值进行比较,当匹配得分的数值位于高阈值和低阈值之间时,加入人工复核表进行人工复核;当匹配得分的数值低于低阈值,判别为新数据,直接加入目标数据表;当匹配得分的数值高于高阈值,判别为可融合数据,合并至目标数据表;如果人工复核时,判别为新数据,直接加入目标数据表;如果人工复核时,判别为可融合数据,合并至目标数据表。
S6,结果展示,合并或者加入目标数据表后会在可视化界面进行结果展示。
本发明实施例提供的一种基于分布式图处理框架的数据匹配与合并方法,能够有效降低同一用户数据散乱分布的概率,并使多次合并后的数据仍可追溯到合并前的数据,并使得已产生的分析结果能够更好地得到复用,解决了大数据场景下数据不一致性和冗余性,以及在数据主体多次合并后数据不可追溯问题。
实施例二
图5是本发明实施例的一种基于分布式图处理框架的数据匹配与合并的系统的结构框图,如图5所示,该系统100包括:
数据汇总模块101,用于从多个数据源的数据中提取需要匹配与合并的数据字段,对数据字段对应的数据进行预处理后汇总至数据中转表;
数据筛选模块102,用于从所述数据中转表中按照预设的匹配计算模型筛选出可唯一识别数据,所述可唯一识别数据对应的主体包括多个可识别字段;
分布式图处理框架模块103,用于使用分布式图处理框架将属于同一主体的多个可识别字段作为顶点建立边的关系,形成多张连通图,并将最小顶点的值作为每张连通图的唯一识别码;
合并与更新模块104,用于通过唯一识别码检索要合并的目标数据表,当目标数据表中存在与连通图的唯一识别码具有相同主体的历史唯一识别码时,将所述连通图对应的可唯一识别数据合并至历史唯一识别码对应的原始数据,并更新所述目标数据表的历史唯一识别码;当所述目标数据表中不存在与连通图的唯一识别码具有相同主体的历史唯一识别码时,直接将连通图对应的可唯一识别数据和所述唯一识别码加入目标数据表。
在一些实施例中,该装置还可以包括匹配得分计算模块,对于数据中转表中筛选后的不可唯一识别数据,根据匹配计算模型对不可唯一识别数据分别与目标数据表中的数据进行相似匹配得分计算,获得每一个不可唯一识别数据与目标数据表中的数据的匹配得分,根据匹配得分的数值将不可唯一识别数据分类加入至目标数据表中。
具体的,在数据筛选模块102筛选出了可唯一识别数据后,在数据中转表中还剩余有不可唯一识别数据,本实施例正是针对这一部分数据进行的匹配与合并。本实施例中,在可视化界面发起数据匹配与合并请求后,可以选择合适的匹配计算模型,根据匹配计算模型对不可唯一识别数据分别与目标数据表中的数据进行相似匹配得分计算,根据匹配计算模型选取的计算方式为相似识别时,可以设置各个字段的权重占比,例如,姓名权重占比30%,出生日期权重占比25%,地址权重占比15%,手机号权重占比30%,行为1仅仅作为保留字段,用于做数据的去重合并,不参与合并计算,根据各个可识别字段值加权求和的值(即每一个字段权重与可识别字段值的乘积再求和)等于匹配的得分值获得每一个不可唯一识别数据与目标数据表中的数据的匹配得分,根据匹配得分的数值将不可唯一识别数据分类加入至目标数据表中。
具体的,每一个匹配计算模型都会有一个低阈值和高阈值,用于评价每一条数据的相似性,例如,如果不可唯一识别数据的最高匹配得分的数值低于在匹配计算模型中设定的低阈值,则确定该数据不与目标数据表中的数据匹配,将不可唯一识别数据作为新数据加入到目标数据表中,并标注该不可唯一识别数据为新数据。
例如,如果不可唯一识别数据的最高匹配得分的数值高于在匹配计算模型中设定的高阈值,则确定该数据与目标数据表中的数据有高度相似性,将不可唯一识别数据与目标数据表中匹配得分最高的数据合并,并标注该不可唯一识别数据为融合数据;如果不可唯一识别数据的最高匹配得分的数值位于低阈值和高阈值之间,则确定该不可唯一识别数据与目标数据表中的数据具有相似性,则将不可唯一识别数据加入人工审核表中,根据人工审核结果将不可唯一识别数据加入目标数据表中,并标注不可唯一识别数据为待审核数据,根据人工审核结果将不可唯一识别数据分类加入到目标数据表中。如果人工审核后,认为该不可唯一识别数据与目标数据表中的其他数据不具有相似性,判别为新数据,则直接将该不可唯一识别数据加入到目标数据表中;如果人工审核后,认为该不可唯一识别数据与目标数据表中的数据具有一定的相似性,判别为可融合数据,可以将该不可唯一识别数据和与其相似的数据合并至目标数据表中。
图6是本发明实施例的另一种基于分布式图处理框架的数据匹配与合并的系统的结构框图,如图6所示,在一些实施例中,本系统100还可以包括抽样测试模块105,即为在数据筛选模块102进行筛选之前,以评估选用哪一个匹配计算模型可以使数据达到最佳可融合性,可以调用抽样测试模块105进行测试,以选择合适的匹配计算模型。
即本系统分为两部分,一部分是对数据进行抽样测试,另一部分是对数据进行匹配与合并,数据抽样测试位于对数据进行匹配与合并之前,系统可以选择是否进行抽样测试,如果用户在进行匹配与合并时,不经过测试即可选择合适的匹配计算模型时,可以直接进行匹配与合并而无需测试,如果在数据匹配与合并时,不知道使用哪一个匹配计算模型可以使得数据达到的最佳可融合性,那么就可以选择调用抽样测试模块105进行测试。
具体的,在可视化界面发起数据匹配与合并请求后,且在执行正式匹配与合并之前,通过抽样测试进行评估,以选出可使数据达到最佳可融合性的模型版本,可以对多个数据源的数据进行抽样测试。图7是本发明实施例的抽样测试模块的结构框图,如图7所示,该抽样测试模块105包括:
获取子模块1051,用于获取多个匹配计算模型。
抽取子模块1052,用于根据预设的抽样规则从数据中转表中抽取预设数量的数据样本,并将数据样本存储至数据抽样表;其中,预设的抽样规则可以是定抽样比例、随机抽样或指定特定过滤条件抽取一部分数据作为抽样数据。
匹配和比较子模块1053,用于根据多个匹配计算模型分别对数据抽样表中的数据进行内部的数据匹配度检测,获取多个抽样测试结果;并将多个抽样测试结果进行比较,根据比较的结果选取合适的匹配计算模型。
本实施例中,获取子模块1051具体用于:任意选定一个数据源作为输入数据,建立输入数据与目标数据表之间的数据字段映射关系,例如,数据数据源中含有字段:数据源姓名,数据源出生日期,数据源身份证号,数据源社保卡号,数据源医保卡号,数据源地址,数据源手机号,数据源行为1,数据源行为2,数据源行为3,数据源喜欢的颜色,数据源喜欢的食物;目标数据表中含有字段:姓名,出生日期,身份证号,社保卡号,医保卡号,地址,手机号和行为1建立的对应的映射关系:数据源姓名对应姓名,数据源出生日期对应出生日期,数据源身份证号对应身份证号,数据源社保卡号对应社保卡号,数据源医保卡号对应医保卡号,数据源地址对应地址,数据源手机号对应手机号,数据源行为1对应行为1;根据映射关系选取需要计算的数据字段和计算的匹配方式,根据计算的匹配方式选择需要计算的数据字段的不同的权重占比,例如,姓名权重占比30%,出生日期权重占比25%,地址权重占比15%,手机号权重占比30%,行为1仅仅作为保留字段,不参与合并计算,生成多个匹配计算模型。即,对于每一个可识别字段可以选择不同的权重占比,每一种权重占比可以形成一种匹配计算模型,不同的权重占比就可以形成多个不同的匹配计算模型。
匹配和比较子模块1053具体用于:根据多个匹配计算模型分别计算数据抽样表中的每条抽样数据与其它抽样数据之间的匹配得分,并按照匹配得分的数值进行分类展示,获取多个抽样测试结果;如果最高匹配得分的数值低于在匹配计算模型中设定的低阈值时,则确定该抽样数据不与其它抽样数据匹配,将该抽样数据单独展示在可视化界面上;如果最高匹配得分的数值高于在匹配计算模型中设定的低阈值,则确定该数据与其它数据有一定的相似性,将该抽样数据和与之匹配得分的数值最高的抽样数据一同展示在可视化界面上。同时,系统还会展示该数据和与之匹配得分最高的数据的具体规则匹配方式和匹配得分的数值。
本实施例中,按照每一个匹配计算模型计算出来的抽样测试结果都会展示在可视化界面上,可以一目了然地看到每一个抽样测试的结果,方便将这些抽样测试结果进行对比,选择出合适的匹配计算模型用于后续的数据匹配与合并。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
实施例三
图8是本发明实施例的一种计算机可读存储介质的功能框图。如图8所示,本发明实施例还提供了一种计算机可读存储介质300,计算机可读存储介质300内存储有用于执行本方法实施例中各个步骤的程序代码310,实现:
从多个数据源的数据中提取需要匹配与合并的数据字段,对所述数据字段对应的数据进行预处理后汇总至数据中转表;
从所述数据中转表中按照预设的匹配计算模型筛选出可唯一识别数据,所述可唯一识别数据对应的主体包括多个可识别字段;
使用分布式图处理框架将属于同一主体的多个可识别字段作为顶点建立边的关系,形成多张连通图,并将最小顶点的值作为每张连通图的唯一识别码;
通过唯一识别码检索要合并的目标数据表,当目标数据表中存在与连通图的唯一识别码具有相同主体的历史唯一识别码时,将连通图对应的可唯一识别数据合并至所述历史唯一识别码对应的原始数据,并更新所述目标数据表的历史唯一识别码;当所述目标数据表中不存在与连通图的唯一识别码具有相同主体的历史唯一识别码时,直接将连通图对应的可唯一识别数据和唯一识别码加入所述目标数据表。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。当然,还有其它方式的可读存储介质,例如量子存储器、石墨烯存储器等等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
实施例四
图9是本发明实施例的一种电子设备的功能框图。本发明实施例还提供一种电子设备,请参考图9,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其它业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是工业标准体系结构ISA总线、外设部件互连标准PCI总线或扩展工业标准结构EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成基于分布式图处理框架的数据匹配与合并系统。处理器,执行存储器所存放的程序,并具体用于执行图1至图4所示实施例揭示的一种基于分布式图处理框架的数据匹配与合并的方法。
上述如图1至图4所示实施例揭示的一种基于分布式图处理框架的数据匹配与合并的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(CentralProcessing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application SpecificIntegratedCircuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
当然,除了软件实现方式之外,本发明的电子设备并不排除其它实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、车载人机交互设备、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
虽然本发明提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。
本发明是参照根据本发明实施例的方法、设备、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于装置、电子设备及可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (8)
1.一种基于分布式图处理框架的数据匹配与合并的方法,其特征在于,所述方法包括:
从多个数据源的数据中提取需要匹配与合并的数据字段,对所述数据字段对应的数据进行预处理后汇总至数据中转表;
从所述数据中转表中按照预设的匹配计算模型筛选出可唯一识别数据,每个所述可唯一识别数据对应的主体包括多个可识别字段;
使用分布式图处理框架将属于同一主体的多个可识别字段作为顶点建立边的关系,形成多张连通图,并将最小所述顶点的值作为每张所述连通图的唯一识别码;
通过所述唯一识别码在目标数据表中进行检索,当所述目标数据表中存在与所述唯一识别码具有相同主体的历史唯一识别码时,将所述连通图对应的可唯一识别数据合并至所述历史唯一识别码对应的原始数据,并更新所述目标数据表的历史唯一识别码;当所述目标数据表中不存在与所述唯一识别码具有相同主体的历史唯一识别码时,直接将所述连通图对应的可唯一识别数据和所述唯一识别码加入所述目标数据表;
其中,在所述的从多个数据源的数据中提取需要匹配与合并的数据字段,对所述数据字段对应的数据进行预处理后汇总至数据中转表之后,还包括:获取多个匹配计算模型;根据预设的抽样规则从所述数据中转表中抽取预设数量的数据样本,并将所述数据样本存储至数据抽样表;根据多个所述匹配计算模型分别对所述数据抽样表中的数据样本进行内部的数据匹配度检测,获取多个抽样测试结果;并将多个所述抽样测试结果进行比较,根据比较的结果选取匹配计算模型;
所述的获取多个匹配计算模型具体包括:任意选定一个所述数据源作为输入数据,建立所述输入数据与所述目标数据表之间的数据字段映射关系;根据所述数据字段映射关系选取需要计算的数据字段和计算的匹配方式,根据所述计算的匹配方式选择所述需要计算的数据字段的不同的权重占比,生成多个匹配计算模型。
2.根据权利要求1所述的方法,其特征在于,所述的更新所述目标数据表的历史唯一识别码,具体包括:
将所述连通图的唯一识别码与所述历史唯一识别码进行比较;
当所述连通图的唯一识别码小于所述历史唯一识别码时,则将所述唯一识别码更新至所述目标数据表连通图;
当所述连通图的唯一识别码大于所述历史唯一识别码时,则将所述历史唯一识别码赋予所述连通图,并更新所述目标数据表。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对于所述数据中转表中筛选后的不可唯一识别数据,根据所述匹配计算模型对所述不可唯一识别数据分别与所述目标数据表中的数据进行相似匹配得分计算,获得每一个所述不可唯一识别数据与所述目标数据表中的数据的匹配得分,根据所述匹配得分的数值将所述不可唯一识别数据分类加入至所述目标数据表中。
4.根据权利要求3所述的方法,其特征在于,所述的根据所述匹配得分的数值将所述不可唯一识别数据分类加入至所述目标数据表中,具体包括:
如果所述不可唯一识别数据的最高匹配得分的数值低于在所述匹配计算模型中设定的低阈值,则确定该不可唯一识别数据不与所述目标数据表中的数据匹配,将所述不可唯一识别数据作为新数据加入到所述目标数据表中,并标注该不可唯一识别数据为新数据;
如果所述不可唯一识别数据的最高匹配得分的数值高于在所述匹配计算模型中设定的高阈值,则确定该不可唯一识别数据与所述目标数据表中的数据有高度相似性,将所述不可唯一识别数据与所述目标数据表中匹配得分最高的数据合并,并标注该不可唯一识别数据为融合数据;
如果所述不可唯一识别数据的最高匹配得分的数值位于所述低阈值和高阈值之间,则确定该所述不可唯一识别数据与所述目标数据表中的数据具有相似性,则将所述不可唯一识别数据加入人工审核表中,根据人工审核结果将所述不可唯一识别数据加入所述目标数据表中,并标注所述不可唯一识别数据为待审核数据。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据多个所述匹配计算模型分别计算所述数据抽样表中的每条抽样数据与其它抽样数据之间的匹配得分,并按照所述匹配得分的数值进行分类展示;
如果最高匹配得分的数值低于在所述匹配计算模型中设定的低阈值时,则确定该抽样数据不与其它抽样数据匹配,将该抽样数据单独展示在可视化界面上;
如果最高匹配得分的数值高于在所述匹配计算模型中设定的低阈值,则确定该抽样数据与其它数据有相似性,将该抽样数据和与之匹配得分的数值最高的抽样数据一同展示在可视化界面上。
6.一种基于分布式图处理框架的数据匹配与合并的系统,其特征在于,所述系统包括:
数据汇总模块,用于从多个数据源的数据中提取需要匹配与合并的数据字段,对所述数据字段对应的数据进行预处理后汇总至数据中转表;
数据筛选模块,用于从所述数据中转表中按照预设的匹配计算模型筛选出可唯一识别数据,所述可唯一识别数据对应的主体包括多个可识别字段;
分布式图处理框架模块,用于使用分布式图处理框架将属于同一主体的多个可识别字段作为顶点建立边的关系,形成多张连通图,并将最小所述顶点的值作为每张所述连通图的唯一识别码;
合并与更新模块,用于通过所述唯一识别码在目标数据表中进行检索,当所述目标数据表中存在与所述唯一识别码具有相同主体的历史唯一识别码时,将所述连通图对应的可唯一识别数据合并至历史唯一识别码对应的原始数据,并更新所述目标数据表的历史唯一识别码;当所述目标数据表中不存在与所述唯一识别码具有相同主体的历史唯一识别码时,直接将所述连通图对应的可唯一识别数据和所述唯一识别码加入所述目标数据表;
其中,在所述的数据筛选模块之前,还包括抽样测试模块,所述抽样测试模块包括:
获取子模块,用于获取多个匹配计算模型;
获取子模块,用于根据预设的抽样规则从所述数据中转表中抽取预设数量的数据样本,并将所述数据样本存储至数据抽样表;
匹配和比较子模块,用于根据多个所述匹配计算模型分别对所述数据抽样表中的数据样本进行内部的数据匹配度检测,获取多个抽样测试结果;并将多个所述抽样测试结果进行比较,根据比较的结果选取匹配计算模型;
所述获取子模块具体用于:任意选定一个所述数据源作为输入数据,建立所述输入数据与所述目标数据表之间的数据字段映射关系;根据所述数据字段映射关系选取需要计算的数据字段和计算的匹配方式,根据所述计算的匹配方式选择所述需要计算的数据字段的不同的权重占比,生成多个匹配计算模型。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任意一项所述的一种基于分布式图处理框架的数据匹配与合并的方法。
8.一种电子设备,其特征在于,其包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1-5中任意一项所述的一种基于分布式图处理框架的数据匹配与合并的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311639898.2A CN117349358B (zh) | 2023-12-04 | 2023-12-04 | 基于分布式图处理框架的数据匹配与合并的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311639898.2A CN117349358B (zh) | 2023-12-04 | 2023-12-04 | 基于分布式图处理框架的数据匹配与合并的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117349358A CN117349358A (zh) | 2024-01-05 |
CN117349358B true CN117349358B (zh) | 2024-02-20 |
Family
ID=89363539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311639898.2A Active CN117349358B (zh) | 2023-12-04 | 2023-12-04 | 基于分布式图处理框架的数据匹配与合并的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117349358B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110415107A (zh) * | 2019-07-26 | 2019-11-05 | 同盾控股有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN110543586A (zh) * | 2019-09-04 | 2019-12-06 | 北京百度网讯科技有限公司 | 多重用户身份融合方法、装置、设备及存储介质 |
CN111064604A (zh) * | 2019-12-09 | 2020-04-24 | 中国科学院信息工程研究所 | 一种基于多视角motif融合的网络表示系统及方法 |
CN111209330A (zh) * | 2019-12-31 | 2020-05-29 | 北京明略软件系统有限公司 | 一种识别一致行动人的方法及系统 |
CN112101238A (zh) * | 2020-09-17 | 2020-12-18 | 浙江商汤科技开发有限公司 | 聚类方法及装置、电子设备和存储介质 |
CN113868475A (zh) * | 2021-09-22 | 2021-12-31 | 广州云徙科技有限公司 | 基于多渠道消费者数据整合方法、系统、设备及介质 |
CN114399006A (zh) * | 2022-03-24 | 2022-04-26 | 山东省计算中心(国家超级计算济南中心) | 基于超算的多源异构图数据融合方法及系统 |
CN114862449A (zh) * | 2022-04-12 | 2022-08-05 | 上海虎瑾信息技术有限公司 | 唯一自然人标识计算的方法、装置、电子设备和存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9400767B2 (en) * | 2013-12-17 | 2016-07-26 | International Business Machines Corporation | Subgraph-based distributed graph processing |
US20230359648A1 (en) * | 2022-05-06 | 2023-11-09 | Walmart Apollo, Llc | Systems and methods for determining entities involved in multiple transactions |
-
2023
- 2023-12-04 CN CN202311639898.2A patent/CN117349358B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110415107A (zh) * | 2019-07-26 | 2019-11-05 | 同盾控股有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN110543586A (zh) * | 2019-09-04 | 2019-12-06 | 北京百度网讯科技有限公司 | 多重用户身份融合方法、装置、设备及存储介质 |
CN111064604A (zh) * | 2019-12-09 | 2020-04-24 | 中国科学院信息工程研究所 | 一种基于多视角motif融合的网络表示系统及方法 |
CN111209330A (zh) * | 2019-12-31 | 2020-05-29 | 北京明略软件系统有限公司 | 一种识别一致行动人的方法及系统 |
CN112101238A (zh) * | 2020-09-17 | 2020-12-18 | 浙江商汤科技开发有限公司 | 聚类方法及装置、电子设备和存储介质 |
CN113868475A (zh) * | 2021-09-22 | 2021-12-31 | 广州云徙科技有限公司 | 基于多渠道消费者数据整合方法、系统、设备及介质 |
CN114399006A (zh) * | 2022-03-24 | 2022-04-26 | 山东省计算中心(国家超级计算济南中心) | 基于超算的多源异构图数据融合方法及系统 |
CN114862449A (zh) * | 2022-04-12 | 2022-08-05 | 上海虎瑾信息技术有限公司 | 唯一自然人标识计算的方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117349358A (zh) | 2024-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2009302657B2 (en) | Detection of confidential information | |
Clavel et al. | Missing data estimation in morphometrics: how much is too much? | |
US10943181B2 (en) | Just in time classifier training | |
CN107729376B (zh) | 保险数据审核方法、装置、计算机设备及存储介质 | |
CN115827895A (zh) | 一种漏洞知识图谱处理方法、装置、设备及介质 | |
CN111241389A (zh) | 基于矩阵的敏感词过滤方法、装置、电子设备、存储介质 | |
CN110674360B (zh) | 一种用于数据的溯源方法和系统 | |
CN110990274A (zh) | 一种生成测试案例的数据处理方法、装置及系统 | |
CN113254352A (zh) | 测试案例的测试方法、装置、设备及存储介质 | |
CN113407536A (zh) | 表数据的关联方法、装置、终端设备及介质 | |
CN117909392B (zh) | 一种智能化数据资产盘点的方法和系统 | |
CN114168565A (zh) | 业务规则模型的回溯测试方法、装置、系统及决策引擎 | |
CN112698861A (zh) | 源代码克隆识别方法及系统 | |
CN113157671A (zh) | 一种数据监控方法及装置 | |
CN117349358B (zh) | 基于分布式图处理框架的数据匹配与合并的方法和系统 | |
CN109144999B (zh) | 一种数据定位方法、装置及存储介质、程序产品 | |
CN110727711A (zh) | 基金数据库中异常数据检测方法、装置和计算机设备 | |
CN110796178A (zh) | 决策模型训练方法及样本特征选择方法、装置和电子设备 | |
CN113254787B (zh) | 事件分析方法、装置、计算机设备及存储介质 | |
CN114490415A (zh) | 业务测试方法、计算机设备、存储介质和计算机程序产品 | |
Ledel et al. | Broccoli: Bug localization with the help of text search engines | |
CN114021716A (zh) | 一种模型训练的方法、系统及电子设备 | |
Novendra et al. | Emerging Trends in Code Quality: Introducing Kotlin-Specific Bad Smell Detection Tool for Android Apps | |
CN111177132B (zh) | 关系型数据的标签清洗方法、装置、设备及存储介质 | |
CN110532317B (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 |