数据集成

一. 数据集成的基本概念

在信息化建设初期,由于缺乏有效合理的规划和协作,信息孤岛的现象普遍存在,大量的冗余数据和垃圾数据存在于信息系统中,数据质量得不到保证,信息的利用效率明显低下.为了解决这个问题,数据集成技术[62]应运而生.数据集成技术是协调数据源之间不匹配问题[63−67],将异构、分布、自治的数据集成在一起,为用户提供单一视图,使得可以透明地访问数据源.系统数据集成主要指异构数据集成,重点是数据标准化和元数据中心的建立.

  • 数据标准化:数据标准化的作用在于提高系统的可移植性、互操作性、可伸缩性、通用性和共享性.数据集成依据的数据标准包括属性数据标准、网络应用标准和系统元数据标准.
  • 名词术语词典、数据文件属性字典、菜单词典及各类代码表等为系统公共数据,在此基础上促成系统间的术语、名称、代码的统一,促成属性数据统一的维护管理;
  • 元数据中心的建立:在建立元数据标准的基础上,统一进行数据抽取、格式转换、重组、储存,实现对各业务系统数据的整合.经处理的数据保存在工作数据库中,库中所有属性数据文件代码及各数据文件中的属性项代码均按标准化要求编制,在整个系统中保持唯一性,可以迅速、准确定位.各属性项的文字值及代码,也都通过词库建设进行标准化处理,实现一词一义.建立元数据中心的基本流程如下图所示.
    在这里插入图片描述

二. 数据集成方法

数据规范和数据交换的完成,对数据集成的有效进行提供了很大的帮助,但在数据集成时仍然需要解决以下难题.
首先是异构性.数据异构分为两个方面:其一,不同数据源数据的结构不同,此为结构性异构;其二,不同数据源的数据项在含义上有差别,此为语义性异构;其次是数据源的异地分布性;最后是数据源的自治性.数据源可以改变自身的结构和数据,这就要求数据集成系统应具有鲁棒性.
为了解决这些难题,现在有模式集成方法、数据复制方法和基于本体的方法这几种典型的数据集成方法:

2.1 模式集成方法

模式集成方法为用户提供统一的查询接口,通过中介模式访问实时数据,该模式直接从原始数据库检索信息.该方法的实现共分为 4 个主要步骤:源数据库的发现、查询接口模式的抽取、领域源数据库的分类和全局查询接口集成[68−73].
在这里插入图片描述
模式集成方法依赖于中介模式与原始源模式之间的映射[74],并将查询转换为专用查询,以匹配原始数据库的模式.这种映射可以用两种方式指定:作为从中介模式中的实体到原始数据源中的实体的映射——全局视图(GAV)方法[75],或者作为从原始源中的实体到中介模式——本地视图(LAV)方法的映射[76].后一种方法需要更复杂的推理来解析对中介模式的查询[67,77,78],但是可以更容易地将新数据源添加到稳定中介模式中.
模式集成方法的优点是为用户提供了统一的访问接口和全局数据视图;缺点是用户使用该方法时经常需要访问多个数据源,存在很大的网络延迟,数据源之间没有进行交互.

2.2 数据复制方法

数据复制方法是将用户可能用到的其他数据源的数据预先复制到统一的数据源中,用户使用时,仅需访问单一的数据源或少量的数据源.数据复制方法提供了紧密耦合的体系结构,数据已经在单个可查询的存储库中进行物理协调,因此解析查询通常需要很少的时间[79],系统处理用户请求的效率显著提升;但在使用该方法时,数据复制需要一定的时间,所以数据的实时一致性不好保证.
该方法的过程是:先提取各个异构数据源中的数据,然后转换、加载到数据仓库中,用户在访问数据仓库查找数据时,类似访问普通数据库.对于经常更新的数据集,数据仓库方法不太可行,需要连续重新执行提取、转换、加载(ETL)过程以进行同步.根据数据复制方法的优缺点可以看出:数据源相对稳定或者用户查询模式已知或有限的时候,适合采用数据复制方法.数据仓库方法示意图如图 7 所示.
在这里插入图片描述
下面举例说明这两种集成方法具体应用的区别:目前我们想要设计一个应用程序,该应用程序的功能为用户可以利用该程序查询到自己所在城市的任何信息,包括天气信息、人口统计信息等.传统的思想是,把所有这些信息保存在一个后台数据库中,但是这种广度的信息收集起来难度大且成本高,即使收集到这些资源,它们也可能会复制已有数据库中的数据,不具备实时性.
此时,我们选择模式集成方法解决该应用程序面临的问题,让开发人员构建虚拟模式——全局模式,然后对各个单独的数据源进行“包装”,这些“包装”只是将本地查询结果(实际上是由相对应的网站或数据库返回的结果)转换为易于处理的表单,当使用该应用程序的用户查询数据时,看似是本地查询,实则数据集成系统会将此查询转换为相应数据源上的相应查询.最后,虚拟数据库将这些查询的结果反馈给用户.如果我们选择使用数据复制方法来解决此问题的话,首先,我们需要把所有的数据信息复制到数据仓库中,每当数据(如天气情况)有所更新时,我们也要手动集成到系统中.所以,两种数据集成方法的使用需根据具体的
情形来选择.

2.3 基于本体的数据集成

根据上述介绍,数据异构有两个方面:前两种方法都是针对解决结构异构而提出的解决方案;而本体技术致力于解决语义性异构问题.语义集成过程中,一般通过冲突检测、真值发现等技术来解决冲突,常见的冲突解决策略有如下 3 类:冲突忽略、冲突避免和冲突消解.冲突忽略是人工干预把冲突留给用户解决;冲突避免是对所有的情形使用统一的约束规则;冲突消解又分为 3 类:一是基于投票的方法采用简单的少数服从多数策略;二是基于质量的方法,此方法在第 1 种方法的基础上考虑数据来源的可信度;三是基于关系的方法,此方法在第 2 种方法的基础上考虑不同数据来源之间的关系.
本体是对某一领域中的概念及其之间关系的显式描述,基于本体的数据集成系统允许用户通过对本体描述的全局模式的查询来有效地访问位于多个数据源中的数据[81].陶春等人针对基于本体的 XML 数据集成的查询处理提出了优化算法[82].目前,基于本体技术的数据集成方法有 3 种,分别为:单本体方法、多本体方法和混合本体方法.
本体是对某一领域中的概念及其之间关系的显式描述,基于本体的数据集成系统允许用户通过对本体描述的全局模式的查询来有效地访问位于多个数据源中的数据[81].陶春等人针对基于本体的 XML 数据集成的查询处理提出了优化算法[82].目前,基于本体技术的数据集成方法有 3 种,分别为:单本体方法、多本体方法和混合本体方法.
由于单本体方法所有的数据源都要与共享词汇库全局本体关联,应用范围很小,且数据源的改变会影响全局本体的改变.为了解决单本体方法的缺陷,多本体方法应运而生.多本体方法的每个数据源都由各自的本体进行描述,它的优点是数据源的改变对本体的影响小,但是由于缺少共享的词汇库,不同的数据源之间难以比较,数据源之间的共享性和交互性相对较差.混合本体方法的提出,解决了单本体和多本体方法的不足:混合本体的每个数据源的语义都由它们各自的本体进行描述,解决了单本体方法的缺点.混合本体还建立了一个全局共享词汇库以解决多本体方法的缺点,如图所示.混合本体方法有效地解决了数据源间的语义异构问题.
在这里插入图片描述


版权声明:本文为weixin_44726976原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。