《元数据在异构数据源集成中的应用研究》由会员分享,可在线阅读,更多相关《元数据在异构数据源集成中的应用研究(2页珍藏版)》请在金锄头文库上搜索。
1、科 技 信 息1.引言随着时代的不断发展,人类对科学领域的研究也在不断地深入 。为了应对具体研究领域技术(如生物信息学)高速发展而引发的数据存储 、分析等的应用需求,新的数据库不断建立,存储的数据呈指数级增长,研究人员需要的数据也开始不只限于某个单一数据库,而是分散在多个相关数据源中 。对高度复杂的海量实验数据进行存储 、共享与整合成为了科学研究中最重要的问题之一 。目前,各个大型数据库是由不同的研究机构在不同技术与科研条件下根据其自身的需要建立的,研究或应用的背景也各不相同,从而形成语法 、语义 、模式等方面的异构 。除此之外,这些数据库大都具有分布 、自治和动态的特点,给科研人员的访问和使
2、用带来了极大的影响 。伴随着研究发展而新建立的数据库也有类似的问题 。诸多的异构数据源严重影响了数据的共享与整合,给研究工作造成了许多困难 。多年来,人们试图通过各种办法来解决数据整合的问题 。联邦数据库 、中间件和数据仓库等技术在不同的着重点和应用上部分解决了数据共享问题,然而数据源模式的异构问题还是没有从根本上得到解决 。元数据是关于数据的数据,是对数据源所存储数据的详细描述,不仅包含了数据的名称 、类型等信息,还提供了数据的上下文描述信息,例如数据的来源 、取值范围 、业务规则等 。如果将各数据源的元数据按照一个统一的标准提取出来集中存放在一个元数据库中,并映射到按照用户的查询要求而建立
3、的用户模式上,就能够通过解析用户模式得到对应的各数据源模式查询;对各数据源查询结果进行连接 、合并等操作,并按用户模式进行输出,就能够实现数据的共享和整合 。基于以上分析,我们提出了基于元数据的数据资源共享与整合方案,本文讨论的内容是整个方案中的一个组成部分,采用了用户模式与数据源模式之间互相映射的方法解决数据集成的问题,主要对建立用户模式 、生成用户模式与数据源元数据映射以及生成查询语句完成查询进行阐述 。2.工作基础在引言部分中已经介绍过,元数据包含了对数据源中数据的详细描述 。因此,通过抽取各数据源的元数据,可以对要集成的数据源在结构上有一个更直观的认识 。与数据仓库的集成方法相比,使用
4、元数据进行数据集成有以下特点:(1)元数据库中存储的是各数据源的结构信息,按照统一的元数据标准进行描述后集中存放在元数据库中,能够保持各数据源的结构特征 。(2)建立元数据库所抽取的多个数据源的元数据与海量的实验数据相比存储压力要小得多,而且由于各数据源的结构相对保持稳定,结构基本不会变化或变化较小,元数据更新频率远低于数据更新频率,同时在查询时是通过元数据直接访问相关的数据源,能够保证查询结果的准确与全面 。CWM 体系结构及裁减情况(深色区域为裁减后的部分)公共仓库元模型(Common Warehouse Metamodel, CWM)是一个完整的描述数据仓库和业务分析领域的元模型,提供了
5、构建元数据所需的语法和语义 。CWM 元模型具有良好的树状层次结构和继承机制,已经获得了广泛的支持,成为了元数据的一个重要标准 。刘文杰等设计并实现了一个元数据提取与导入工具 MetaPro 1.0,提供了一个基于 CWM 元模型的元数据集成解决方案,能够根据各相关数据源 DBMS 的 SQL 脚本生成元数据库,并针对不同 DBMS 生成的 SQL 脚本建立了相应的处理模块 。由于 CWM 过于复杂和庞大,因此 MetaPro 1.0 对其进行了适当的裁减,既保持了该元数据标准在数据整合应用领域的通用型与兼容性,又剔除了 CWM 中与数据整合无关的部分,缩小了元数据标准的规模,形成了一个适用于
6、多数据源数据集成的公共元数据标准(如图所示) 。该工具是整个整合方案的基础和重要组成部分 。通过该工具生成的元数据库可以访问需要进行集成的各异构数据源,为本文讨论的内容奠定了基础 。3.关键技术研究元数据库的建立解决了数据访问的障碍,而按照用户的查询需求对异构数据进行整合则是最终目标 。本节将针对实现数据整合的关键问题进行讨论 。3.1 建立用户模式由于研究的不断深入,数据整合的需求使得相关知识领域内出现了一些公认的规范,例如生物信息学的基因本体(Gen Ontology,GO),使得各数据源对数据语义的描述有了统一的参照标准,方便了研究人员对数据的访问和理解,为数据集成奠定了软件上的基础 。
7、但是由于应用目的和背景不同, “同一概念从不同数据源中可得到完全不同的属性信息 ”。因此对于用户来说,数据集成就是将从各数据源得到的数据按照查询需求进行清理与整合,以 GO 等规范作为连接的媒介,转换为用户所希望的样式 。整合后的数据在概念上依然是按 “表 ”或 “视图 ”的形式存在的,而且每列的数据都来源于各异构数据源,整合时可能会因为类型不同而出现错误 。因此,有必要根据用户需求建立相应的用户模式,统一查询的数据类型和名称 。我们借鉴了 DBMS 对视图的管理形式,用户在建立自己的模式时类似于建立了一个虚拟的表,可以定义并管理 “表名 ”、“字段名 ”、“类型 ”和 “字段长度 ”等相关内
8、容,并且按照查询需求的不同可以建立多个虚拟表,根据需要随时可以进行调整 。用户模式的 “字段 ”就是用户需要的属性信息,其类型和长度体现了用户对查询结果的要求 。这种建立虚拟表的方式相当于定义了用户模式的元数据,因此在存储上与数据源元数据的形式相同,都是整合方案数据库中的数据 。这也为建立用户模式与数据源元数据之间的映射做了准备 。3.2 生成用户模式与数据源元数据之间的映射只有用户模式是不够的,它必须与数据源元数据产生关联才能从数据源获得需要的数据 。因此,用户模式与数据源元数据之间的映射就成为了一个不可缺少的重要步骤 。映射的依据就是以用户模式为参照,由用户选择需要整合的表,将需要集成的具
9、有相同语义的数据源元数据关联到相关的用户模式 “字段 ”上,这时不同的数据源就会以用户模式为媒介相互产生一定的关联,只要对用户模式及相应的映射关系进行分析就能得到各数据源的实际查询语句,实现对异构数据源的查询 。需要注意的是这种映射对已确定的用户模式和数据源来说是唯一的,不能出现用户模式的同一 “字段 ”与数据源表中多个字段对应或数据源表中的同一字段与用户模式的多个 “字段 ”相对应的情况 。3.3 生成查询语句完成查询通过分析用户模式及其对应的映射关系,就能把用户模式的查询分解为对各异构数据源的查询,再把各数据源的查询结果按照用户模式进行整合及清理后,就是用户模式所希望得到的结果 。具体步骤
10、如下:(1)根据需要对用户模式进行裁减,生成用户视图,并选择相应的映射关系 。(2)对用户视图进行分析,根据用户视图的 “字段 ”以及相应的映射关系确定每个数据源需要查询的字段,并用用户视图的 “字段 ”作为数据源表的字段的别名;如果用户视图 “字段 ”在数据源中没有映射关系,则数据源字段以 NULL 或空值进行代替 。(3)根据确定的数据源字段生成各数据源的查询语句 。(4)按照各数据源在映射中的先后顺序,从头到尾依次对查询语句以存放公认的规范内容的字段为关键字进行外连接操作,并且每次的连接结果都作为新的查询语句与下一个进行外连元数据在异构数据源集成中的应用研究武警指挥学院训练部指挥演练模拟
11、中心 郭 超摘 要针对具体应用领域内数据源所具有的分布 、异构和动态等特性,本文提出一种基于元数据的 、以用户模式为媒介关联各数据源模式的方法,主要讨论了建立用户模式 、模式映射以及生成查询语句等方法和过程;估计了查询时可能遇到的问题,提供了相应的解决方式,以实现对多种异构数据源的整合查询 。关键词计算机软件 数据集成 元数据 异构数据源(下转第 596 页)计算机与网络595 科 技 信 息接并消除重复字段,直到生成一个完整的查询语句 。(5)执行生成的查询语句,完成查询,并按用户视图的样式输出 。根据设计的构想,集成查询体系的示意图如图 2 所示 。图 2 集成查询体系示意图4.问题及改进
12、使用模式映射的方式,通过用户模式连接各异构数据源,在一定程度上实现了数据整合的目的 。但是来自不同数据源的数据,在数据内容 、数据格式 、数据质量等方面有着很大差别,无法保证数据的一致性;数据类型转换是以用户模式为标准的,如果用户模式在建立时不完善,在实施数据整合时可能会遇到数据格式不能转换(例如将 VARCHAR型数据转换为 INT 型)或数据转换格式后丢失信息等棘手问题(例如用户模式字段长度不够);由于对事物认识的角度不同,导致用户对数据源模式语义的理解也可能会产生歧义,生成的用户模式无法得到预计的结果 。下一步工作将主要用来解决这些问题 。由于数据存放于各数据源,内容 、格式 、质量无法
13、由用户模式修改,所以只能在建立用户模式时通过使用长度足够大的 、兼容性较好的数据类型如 VARCHAR 等尽量保持数据的原貌 。语义理解的问题可以通过引入本体的方式来解决 。使用本体来标注数据源的元数据后,用户不用在数据源模式和用户模式之间进行反复的映射操作,只要在建立用户模式时对虚拟表的 “字段 ”进行本体术语的标注就能和数据源元数据产生关联,用户模式和数据源模式的语义都由本体来体现,在理解上不会产生歧义;而且可以利用本体进行推理,体现各数据源元数据之间在概念层次上的关系,进一步扩展应用的范围 。除此之外,还要进一步完善对用户模式查询语句的分析与重写,改进各数据源查询结果的清理与连接等操作的
14、性能,以提高运行的效率 。5.结束语本文主要介绍了一种异构数据源集成方案实现异构数据源集成时的主要实现方法 。作为基于元数据的集成办法,它通过定义用户模式与各数据源模式的映射解决数据异构的问题,使各数据源中有关联的数据在集成后能够按照用户希望的方式进行展现 。相关的工作将在后续文章中进行介绍 。参考文献1黎建辉,佘怀化,阎保平.基于元数据的关系数据库语义集成方法J.计算机工程,2008,34(6):54-56.2刘文杰,宁洪,王挺等.面向蛋白质组学数据库的元数据提取与导入工具J.计算机工程与科学.3杨森,夏燕,曹顺良等.语义异构生物数据源中的数据集成与更新J.计算机工程,2008,34(8):
15、38-40.4丁建华,彭政,王飞.生物数据仓库研究及应用J.计算机工程与应用,2005,12(5):192-194.5林毅,宁洪,王挺等.基于本体的生物信息集成研究C.第五届软件工程大会论文集,2008,18-20.(上接第 595 页)一 、前言时常有带分机电话的宽带用户反映网速慢 、掉线 、丢包等现象,但在同一网络上的其它用户都正常,究其原因有多方面,如:电脑 、配置 、外线质量 、距离 、使用技巧等,但有一条,宽带网用户接入盒使用不当也是原因之一 。二 、接入盒的原理图 1接入盒的原理就是带通滤波器,各端口起着相互隔离分频作用,使数据流与话路各行其道 。三 、正确接入方法图 2四 、错误
16、接入方法之一图 3五 、分析1 、当用户只有一个主机时,按图 1 接入后,宽带使用无问题 。2 、当用户家需分机时,采用图 1 方法,需电话分机线与主机一同并在 PHNOE(TEL)端口上 。3 、当错误接入时,如图 2,外线与话机就无隔离作用 。当用户使用话机呼入呼出时,就影响正在上网的宽带了,有时会使之掉线 、网速慢 、丢包等故障,同时也影响用户通话质量 。4 、采用错误接入时,即使用户不在通话等,也影响线路,因为话机是容性负载直接跨接在外线上,线路未优化,影响上网 、网速等 。六 、解决方法1 、根据原理(图 1),严格按照正确方法接入 。2 、上网时,甩掉各分机,只留接在 PHONE(TEL)端子上话机 。3 、对于用户家里是暗线的且门头上只有一对线进入,有多只分机的,我们需和用户协商同意,建议把接入盒装在门头上,且再单放一对明线至家中宽带房间,便可按原理图 1 接入 。4 、建议对用户家中的布线分析,找出并接各房间的线的节点,在暗线盒上分别进行甩断 、接入等处理 。使之符合图 1 原理 。5 、使用多只接入盒做隔离