用于在第一表和第二表之间进行域匹配的方法和装置的制造方法

文档序号:9453068阅读:324来源:国知局
用于在第一表和第二表之间进行域匹配的方法和装置的制造方法
【技术领域】
[0001] 本发明涉及一种用于在第一表和第二表之间进行域匹配的方法和装置。
【背景技术】
[0002] 随着网络应用的普及,网络上会出现很多同质的数据信息,但是数据结构的表示 却不一致。例如一些用户数据会保存在Excel中,但是随着数据数量的增多,数据参数的个 数有所增加,因此另外一些用户数据会保存在数据库中。为了获得一个全局统一的数据视 图,有必要找出这些数据源之间的对应关系。
[0003]大多数的数据匹配只是基于数据域的元信息,例如域名称的相似度和域类型的相 似度等。但是在有些情况下,域名称可能会有很大的不同。例如,在Excel的一个表中可能 用"corporate"这个表头来代表公司名称,而在数据库的另一个表中则用"enterprise"代 表公司名称。在这种情况下,使用传统技术在这两个表之间进行域匹配的结果就不理想。
[0004]针对现有技术中存在的缺陷,提出本申请。

【发明内容】

[0005]在下文中给出关于本发明的简要概述,以便提供关于本发明的某些方面的基本理 解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关 键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念, 以此作为稍后论述的更详细描述的前序。
[0006]本发明的一个主要目的在于提供一种用于在第一表和第二表之间进行域匹配的 方法和装置,以至少克服现有的问题。
[0007]根据本发明的一个方面,提供了一种用于在第一表和第二表之间进行域匹配的方 法,包括:基于第一表和第二表的域统计信息,确定第一表的候选关键域和第二表的候选关 键域;分别计算第一表的每个候选关键域与第二表的每个候选关键域的相似度,以获得匹 配的一个或多个关键域对;及基于匹配的一个或多个关键域对,计算除了一个或多个关键 域对之外的、第一表的每个剩余域与第二表的每个剩余域的相似度,以获得匹配的一个或 多个剩余域对。
[0008]根据本发明的又一个方面,提供了一种用于在第一表和第二表之间进行域匹配的 装置,包括:候选关键域确定单兀,被配置成基于第一表和第二表的域统计信息,确定第一 表的候选关键域和第二表的候选关键域;关键域对获得单元,被配置成分别计算第一表的 每个候选关键域与第二表的每个候选关键域的相似度,以获得匹配的一个或多个关键域 对;及剩余域对获得单元,被配置成基于匹配的一个或多个关键域对,计算除了一个或多个 关键域对之外的、第一表的每个剩余域与第二表的每个剩余域的相似度,以获得匹配的一 个或多个剩余域对。
[0009]另外,本发明的实施例还提供了用于实现上述方法的计算机程序。
[0010] 此外,本发明的实施例还提供了至少计算机可读介质形式的计算机程序产品,其 上记录有用于实现上述方法的计算机程序代码。
[0011] 根据本发明实施例的方法和装置,在对两个表进行域匹配的过程中,首先识别出 关键域及其匹配关系,然后利用匹配的关键域来对非关键域(剩余域)进行匹配,从而提高 了匹配的准确性。
[0012] 通过以下结合附图对本发明的最佳实施例的详细说明,本发明的这些以及其它优 点将更加明显。
【附图说明】
[0013] 参照下面结合附图对本发明实施例的说明,会更加容易地理解本发明的以上和其 它目的、特点和优点。附图中的部件只是为了示出本发明的原理。在附图中,相同的或类似 的技术特征或部件将采用相同或类似的附图标记来表示。
[0014] 图1是示意性地示出根据本发明的实施例的用于在第一表和第二表之间进行域 匹配的方法的流程图;
[0015] 图2是示意性地示出根据本发明的实施例的用于计算取值相似度的方法的流程 图;
[0016] 图3示出了待匹配的两个表的部分信息;
[0017] 图4示出了对图3中的两个表所计算出的相似度矩阵及所获得的匹配的多个关键 域对;
[0018] 图5是示意性地示出根据本发明的实施例的用于进行一致化处理的方法的流程 图;
[0019] 图6示意性地示出了映射和简化处理的过程;
[0020] 图7示意性地示出了在一致化处理之后再对剩余域进行匹配的方法的流程图;
[0021] 图8示意性地示出了对于图3中的示例所计算出的两个值的相似度;
[0022] 图9示意性地示出了更新后的相似度矩阵以及获得的匹配的域对;
[0023] 图10是示意性地示出根据本发明的一个实施例的用于在第一表和第二表之间进 行域匹配的装置的框图;
[0024] 图11是示意性地示出根据本发明的一个实施例的用于在第一表和第二表之间进 行域匹配的装置中所包括的关键域对获得单元的示例框图;
[0025] 图12是示意性地示出根据本发明的另一实施例的用于在第一表和第二表之间进 行域匹配的装置的框图;
[0026] 图13是示意性地示出根据本发明的另一实实施例的用于在第一表和第二表之间 进行域匹配的装置中所包括的剩余域对获得单元的示例框图;
[0027] 图14示出了可以用于实施本发明的用于在第一表和第二表之间进行域匹配的方 法和装置的计算设备的举例的结构图。
【具体实施方式】
[0028] 下面参照附图来说明本发明的实施例。在本发明的一个附图或一种实施方式中描 述的元素和特征可以与一个或更多个其它附图或实施方式中示出的元素和特征相结合。应 当注意,为了清楚的目的,附图和说明中省略了与本发明无关的、本领域普通技术人员已知 的部件和处理的表示和描述。
[0029] 图1是示意性地示出根据本发明的实施例的用于在第一表和第二表之间进行域 匹配的方法的流程图。以下参照图1来描述根据本发明的实施例的用于在第一表和第二表 之间进行域匹配的方法。
[0030] 在图1中的步骤S101,基于第一表和第二表的域统计信息,确定第一表的候选关 键域和第二表的候选关键域。候选关键域可以是域值不重复、域值不为无效或空值并且域 值类型一致的域。
[0031] 在每个表中,总有几个关键域。例如在一个记录个人信息的表中,关键域可能是 "身份证号"或是"姓名"等。在某些情况下,两个或三个域可以联合起来作为关键域。对于 表中的每条记录,关键域的域值都是唯一的、不重复的。注意,这里所说的关键域与数据库 中的表的主键不完全一致。因为在数据库的表中,主键一般都是"id"号,它的取值是自动 增长的,并且一般不代表实际意义,所以本发明在确定关键域时通常忽略表的主键。
[0032] 域统计信息可以包括:(1)域的取值没有重复数据;(2)域的取值不包含无效 (null)或空值;(3)域的取值的数值类型一致。域统计信息包括第(3)项"域的取值的数 值类型一致"是因为,在Excel表的某些列中,有可能用来取代数值类型,从而这样的域 不适合作为关键域。
[0033] 在图1中的步骤S102,分别计算第一表的每个候选关键域与第二表的每个候选关 键域的相似度(即,协同相似度),以获得匹配的一个或多个关键域对。
[0034] 可以根据候选关键域的名称相似度、类型相似度以及取值相似度,计算第一表的 每个候选关键域与第二表的每个候选关键域的相似度。可以通过下面的公式1来计算两个 候选关键域之间的相似度:
[0035] sim(cpl, cp2) = al*名称相似度+bl*类型相似度+(l-al_bl)*取值相似度 (公式1)
[0036] 其中,cpl是利用域统计信息过滤后的第一表的候选关键域集合中的某个候选 关键域,cp2是利用域统计信息过滤后的第二表的候选关键域集合中的某个候选关键域, sim(cpl,cp2)表不cpl和cp2之间的相似度;al和bl为系数,系数al、bl和(1-al-bl)分 别与名称相似度、类型相似度及取值相似度相乘之后取和就得到了候选关键域cpl和cp2 之间的相似度。
[0037] 两个候选关键域的名称相似度可以通过编辑距离来计算,编辑距离算法可以参考 http://en. wikipedia. org/wiki/Levenshtein_distance〇
[0038] 两个候选关键域的类型如果相同则它们的类型相似度为1,两候选关键域的类型 如果不相同则它们的类型相似度为〇。
[0039] 针对第一表的一个候选关键域与第二表的一个候选关键域,可以通过图2中的方 法来计算取值相似度。
[0040] 在步骤S201,获取第一域值集合cvl和第二域值集合cv2,第一域值集合cvl是第 一表的一个候选关键域的域值的集合,第二域值集合cv2是第二表的一个候选关键域的域 值的集合。
[0041] 在步骤S202,分别计算第一域值集合cvl和第二域值集合cv2的交集和并集。
[0042] 在步骤S203,通过将交集中的域值的个数除以并集中的域值的个数,计算取值相 似度。
[0043] 该方法可以通过下面的公式2来表示:
[0044]
[0045] 其中,sim(cvl,cv2)表示第一域值集合cvl和第二域值集合cv2的取值相似度。
[0046] 如果通过上述方法计算出的两个候选关键域cpl、cp2之间的相似度 sim(cpl,cp2)大于设定的阈值,则将两个候选关键域进行匹配。
[0047] 确定候
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1