关于语义网格环境中异构数据资源整合的研究
- 格式:pdf
- 大小:1.45 MB
- 文档页数:7
关于多元异构数据集成融合技术研究摘要:文章分析了多源异构数据的融合技术,包括数据采集、数据清洗、数据融合分析等。
我们提出了多源异构数据融合技术的应用:一是实现科技决策,二是实现项目查重功能。
关键词:多元异构;数据集成;融合技术一、引言随着信息与网络技术的发展,许多企业或组织机构在管理运作中积累了大量数据,比如业务运作、客户、产品和人员等。
由于各种数据和信息对企业和组织机构的运营和管理等方面的重要性,大量的信息系统、管理系统被广泛应用于企业和组织机构的各个部门。
这些独立的业务子系统虽然提高了局部的效率和应用性。
但是,在应用或数据等层面上,这些业务子系统是彼此分离的,它们分别采用了不同的数据库系统以及使用了不同的应用开发技术。
各系统的业务逻辑不同,而且在数据库的建设上没有遵循统一的标准。
随着时间的推移,每个部门或单位都是一个独立的数据源,每个数据源都是异构的,因而他们之间的信息和组织都不一样,这就构成了一个巨大的异构数据环境。
本文的主要任务就是对现有的数据集成技术进行探讨,并简要对相关问题发展现状进行讨论二、多源异构数据融合技术的分析多源异构数据融合技术涉及数据采集、数据清洗、数据融合分析三个阶段,针对每个阶段我们首先进行了通用技术研发,然后结合相关科技平台的应用场景,在通用技术的基础上进行了专项开发、调优处理,满足具体的应用需求。
1.数据采集多源数据来源是结构化数据(关系型数据库)、非结构化数据(文件数据、文本数据、图片数据等)和网络爬虫技术获取的数据,结构化数据和非结构化数据来源项目本身和通过与相关系统对接获取,网络爬虫数据是从互联网上获取数据。
网页爬取结果需要进行去重处理,考虑爬取网页数量非常庞大,对网页去重进行优化处理。
网页爬取结果处理是从网页上获取数据后对其进行分析、清洗、转换和存储的关键步骤。
以下是处理网页爬取结果的一些常用技术和方法:一是解析HTML:使用HTML解析库(如Beautiful Soup、 lxml、html.parser)来解析网页的HTML结构,从中提取需要的数据。
基于时空数据的异构数据融合与集成算法研究随着时空数据的快速增长和异构数据的广泛应用,如何有效地融合和集成时空数据成为了研究的热点问题。
本文将从理论和应用两个方面,对基于时空数据的异构数据融合与集成算法进行深入研究。
一、理论研究1. 异构数据融合理论异构数据融合是指将来自不同来源、不同类型、不同结构的时空数据进行整合,以提取更全面、准确、一致的信息。
在异构数据融合中,需要解决如何对不同类型的时空数据进行统一建模、如何处理不同精度和分辨率的时空信息等问题。
2. 异构数据集成理论异构数据集成是指将来自不同领域、不同地域以及不同时间段的时空信息进行整合分析。
在异构数据集成中,需要解决如何处理来自多个源头的信息冲突和一致性问题,以及如何建立有效地模型来描述多源信息之间的关系等问题。
3. 异质性度量与处理在基于时空信息融合与集成算法中,需要对异质性进行度量和处理。
异质性度量可以通过计算不同数据源之间的相似性和差异性来实现,而处理异质性可以通过数据变换、特征选择和特征融合等方法来实现。
二、应用研究1. 空间数据融合与集成算法空间数据融合与集成算法是基于空间信息的异构数据融合与集成研究的重要内容。
通过对不同空间分辨率、不同投影方式以及不同坐标系的空间数据进行整合,可以提高对地球表面特征和过程的认识。
2. 时间数据融合与集成算法时间数据融合与集成算法是基于时间信息的异构数据融合与集成研究的重要内容。
通过对不同时段、不同频率以及不同时间尺度下的时间数据进行整合,可以揭示出地球表面特征和过程随时间变化的规律。
3. 时空关联分析时空关联分析是基于时空信息进行关联规则挖掘和模式识别研究的重要内容。
通过对时空信息中存在关联关系或相似模式进行挖掘,可以帮助人们更好地理解地球表面特征和过程之间的相互作用。
三、算法研究1. 基于统计方法的时空数据融合与集成算法基于统计方法的时空数据融合与集成算法是一种常用的数据融合与集成方法。
通过建立统计模型,对不同类型、不同分辨率、不同精度的时空数据进行整合,可以提高对地球表面特征和过程的认识。
多源异构数据融合技术研究及应用随着信息化技术的快速发展,各种异构数据源的产生与积累日益增加。
这些异构数据的特点是数据结构、类型、格式、存储方式等各异,存在数据冗余和不一致性问题。
如何将这些异构数据源进行有效的融合,提取有价值的信息成为了当前研究的热点之一、多源异构数据融合技术可以有效地解决这些问题,具有广泛的应用前景。
数据预处理是多源异构数据融合的第一步,其目的是对原始数据进行规范化处理和清洗,以确保数据的一致性和完整性。
常见的预处理方法包括数据清理、数据转换、数据集成和数据归档等。
数据清理主要是对数据进行去噪、去冗余和去错误等操作,以减小对后续数据处理的干扰。
数据转换是将不同数据源中的数据进行统一编码,方便数据融合过程中的比较和匹配。
数据集成是将不同数据源的数据进行整合,以便后续的数据挖掘和分析。
数据归档则是将数据按照一定的规则进行分类和存储,方便以后的查找和利用。
数据集成是多源异构数据融合的核心环节,其目的是将不同数据源中的数据进行统一整合,以便后续的数据挖掘和分析。
数据集成的方法主要包括模式匹配、实例匹配和决策合并等。
模式匹配是将不同数据源中的数据按照一定的规则进行匹配,以找到相同或相似的数据元素。
实例匹配是将不同数据源中的数据按照一定的规则进行比较和匹配,以找到相同的数据实例。
决策合并则是将不同数据源中的决策结果进行整合,以得到更准确和可靠的决策结果。
数据挖掘是多源异构数据融合的最终目标,其目的是从融合后的数据中提取有价值的信息和知识。
数据挖掘的方法主要包括分类、聚类、关联规则和时序分析等。
分类是将融合后的数据划分为不同的类别,以便进行有针对性的分析和处理。
聚类则是将融合后的数据按照一定的规则进行分组和归类,以便发现数据之间的关联性和相似性。
关联规则是寻找融合后的数据中的关联关系和规律,以便预测未来的行为和趋势。
时序分析则是对融合后的数据进行时间序列的分析和预测,以便预测未来的动态变化。
多源异构数据的有效整合技术研究随着信息技术的不断发展和互联网的普及,社会各个领域产生的数据呈现出多样化和异构化的特点。
这些数据分布在不同的来源和格式中,使得数据整合成为了一项具有挑战性的任务。
多源异构数据的有效整合技术的研究旨在解决数据的一致性、完整性和可用性等问题,以便更好地利用这些数据为决策提供支持。
本文将从数据整合的必要性、存在的问题以及有效整合技术的研究方向进行探讨。
1. 数据整合的必要性在现代社会,各个领域产生的数据种类繁多,包括结构化数据(如数据库中的表格)、半结构化数据(如XML文件)、非结构化数据(如文本、图片、视频等)。
这些数据来源各异,格式不尽相同。
因此,对这些数据进行整合是必要的。
数据整合可以消除数据冗余,减少数据存储和管理的成本。
同时,通过整合多源异构数据,我们可以获得更全面、更准确的信息,为决策提供更有力的支持。
2. 多源异构数据整合存在的问题在进行多源异构数据整合时,我们面临着一系列的挑战和问题。
首先,不同的数据源可能使用不同的编码方式和数据标准,导致数据的格式不兼容,难以进行统一的整合。
此外,数据的质量、可靠性和一致性也是需要解决的问题。
由于数据可能来自不同的来源,其质量和可靠性存在差异,这会影响整合后数据的质量。
此外,由于数据整合涉及多个不同的数据源,数据的一致性也需要被保证,以避免不一致的数据对分析和决策的影响。
3. 数据整合技术的研究方向为了解决多源异构数据整合所面临的问题,研究者提出了一系列的技术和方法。
以下是一些主要的研究方向:3.1 数据匹配与集成数据匹配是多源异构数据整合中的关键环节。
数据匹配的目标是找到不同数据源中相似或相对应的数据元组,以便进行有效的整合。
数据匹配可以基于相同的数据上下文、语义映射、机器学习等方法进行。
数据集成则将匹配后的数据进行合并,形成一个一致且完整的数据集合。
3.2 数据转换与映射由于多源异构数据的格式不同,数据的转换与映射是实现数据整合的另一个重要环节。
异构数据融合中的数据治理与管理技术研究随着信息技术的快速发展和互联网的广泛应用,各个行业和领域中产生了大量的异构数据。
这些异构数据来源广泛,格式不一,难以统一管理和融合。
因此,研究如何进行异构数据融合中的数据治理与管理成为了一个重要课题。
本文将从理论和实践两个方面探讨这一课题,并提出相应的解决方案。
首先,我们需要明确什么是异构数据。
异构数据是指来自不同来源、不同格式、不同结构、不同语义的各种类型的数据。
例如,结构化数据库中存储着大量关系型表格;文本文件中包含了大量自然语言文本;图像文件包含了大量图像信息等等。
这些异构数据之间存在着巨大差异,如何将它们进行融合并提取有用信息成为了一个挑战。
在进行异构数据融合之前,我们首先需要进行数据治理与管理。
所谓“治理”是指对于各种类型、来源、格式等差异性较大的原始数据进行整理、清洗和标准化等操作;而“管理”是指对于整理好的数据进行存储、索引和查询等操作。
数据治理与管理的目的是为了提高数据的质量和可用性,为后续的数据融合提供良好的基础。
在进行数据治理与管理时,我们需要解决以下几个关键问题。
首先是数据清洗。
由于异构数据来源广泛,其质量参差不齐,可能存在错误、冗余、不一致等问题。
因此,我们需要对原始数据进行清洗操作,去除其中的噪声和错误,并保证其一致性和准确性。
其次是数据标准化。
由于异构数据存在不同格式和结构,我们需要对其进行标准化操作,使得它们能够在同一平台上进行统一管理和融合。
最后是数据集成与索引。
异构数据融合需要将各个来源、格式、结构等差异较大的原始数据集成到一个统一的平台上,并建立索引以便于后续查询。
在实践中,我们可以借鉴一些已有技术来解决上述问题。
首先是使用机器学习算法来进行自动化清洗操作。
机器学习算法可以通过学习大量样本来自动识别并去除噪声和错误,并提高清洗效率和准确性。
其次是使用本体论技术来进行数据标准化操作。
本体论技术可以对异构数据进行语义建模,使得它们能够在同一平台上进行统一管理和融合。
异构数据库技术的研究与实践异构数据库技术,是指不同类型、不同结构的数据库系统之间进行融合、整合、共享的技术。
它具有很高价值和实用性,近年来已得到广泛应用。
本文将从异构数据库技术的基本概念、应用场景、关键技术、发展趋势等方面进行论述,以期使读者对异构数据库技术有更加深入的了解。
一、异构数据库技术的基本概念异构数据库技术是多个不同型号、不同结构的数据库之间进行交互、共享、集成的技术。
异构数据库的实现需要解决如下问题:数据的语意(Semantic)和结构(Structure)的描述方法、异构数据的逻辑互操作能力、异构数据的物理互操作能力等问题。
异构数据库技术是解决异构数据集成问题的有效手段。
异构数据集成的大部分问题是由于不同组织机构、不同应用系统、不同数据库管理系统中所使用的数据模型、数据结构、数据语言不同所造成的,这些问题可以通过合理运用异构数据库的技术来解决。
二、异构数据库技术的应用场景异构数据库技术适用于以下应用领域:1、数据库整合异构数据库技术可以将多个类型、多个结构的数据库进行整合,从而形成一个大型的复合数据库。
通过异构数据库技术,可以实现异构数据库之间的数据共享和互通,减少了信息孤岛,提高了数据共享利用率。
2、异构数据的共享随着信息化进程的不断发展,数据库中的数据已经具有了很高的价值,而很多企事业单位内部的数据库多为异构数据库,无法进行互通和共享。
通过异构数据库技术,可以将分散在不同数据库之中的数据整合起来进行管理和查询,提高了数据的共享利用率。
3、数据挖掘数据挖掘是从大量的数据中发现有价值的知识和信息的过程。
异构数据库中存储了大量的数据,通过异构数据库技术,可以将这些数据矿藏挖掘出来,获取更多的商业价值和决策支持信息。
4、数据集成异构数据库技术可以将不同数据源的数据进行集成,从而形成一个统一的数据源。
通过数据集成,可以最大限度地充分利用各个数据源的有用信息,进而为决策者提供更为准确的决策支持信息。
多源异构数据融合方法的发展及其应用研究随着互联网和移动互联网的兴起,各行各业所产生的数据量也愈加庞大,数据呈现多源异构的特点。
针对这样的特点,多源异构数据融合方法的发展逐渐成为研究热点。
本文将首先介绍多源异构数据融合的概念和意义,其次探讨了多源异构数据融合的应用研究以及相关技术的发展情况;最后对未来的多源异构数据融合技术的发展方向进行了展望。
一、多源异构数据融合的概念和意义1.1概念多源异构数据融合是指来自不同来源、不同形式且存在异构性的数据的综合与处理。
这些数据可以来自不同的传感器、不同的网络系统、不同的地理位置和不同的数据挖掘系统,而且数据之间存在语义、格式和粒度上的差异。
多源异构数据的融合可以将不同的数据源进行统一的存储和管理、一致的处理和分析,从而为科学研究和实际生产提供了基础和支撑,也能帮助企业、机构以及政府更好地理解市场、用户以及政策,并提高效率和决策的准确性。
1.2意义在数据的发展趋势下,发现数据价值和知识的关系越来越紧密,数据的融合成为了数据处理的必要方式。
多源异构数据融合的目的是提供不同视角的数据以及不同属性的数据,增强数据之间的联系与相互作用。
通过将数据融合,可以使数据得到更好的运用,提高数据的价值。
同时,多源异构数据融合还可以解决数据不一致、数据缺失和数据质量问题,从而提高数据的准确性和可靠性。
对于业务流程中需要的综合信息和分析,多源异构数据的融合也能满足客户需求和统计分析的需要。
二、多源异构数据融合的应用研究与技术发展2.1应用研究数据库领域,通过对自然界、社会环境、人类行为等方面的观察和分析,研究数据融合的各种算法和方法,深入了解数据间的联系与规律,以此挖掘数据的更多价值,为数据处理提供分析依据。
地理信息系统领域,多源图像配准、遥感图像统一处理、精细地物提取等研究都需要结合多源异构数据融合技术。
环境预警和公共卫生领域,针对海量的生态环境和卫生数据进行融合处理,可以更方便快捷地获取发现潜在的生态和卫生灾害,以及动态管理海量环境数据。
异构数据融合中的数据聚合与分析技术研究随着信息技术的快速发展和互联网的普及,大数据已经成为当今社会中的热门话题。
大数据的产生和应用给我们带来了许多机遇和挑战。
然而,由于大数据的异构性,如何对不同来源、不同格式、不同结构的数据进行聚合与分析成为了一个亟待解决的问题。
本文将对异构数据融合中的数据聚合与分析技术进行研究。
一、异构数据融合1. 异构数据概念异构数据是指来源于不同系统、不同领域、不同结构和格式的多种类型和多源头信息。
这些信息可能来自于传感器网络、社交媒体、云计算等各种渠道,它们具有高度复杂性和多样性。
2. 异构数据融合挑战由于异构数据具有高度复杂性和多样性,使得它们难以直接进行整合。
主要存在以下挑战:(1)结构差异:来自不同系统或领域的异构数据可能存在着完全不同或部分相似但没有一致性结构。
(2)语义差异:异构数据可能使用不同的术语和语义,导致数据的语义不一致。
(3)数据质量:异构数据的质量可能不同,包括准确性、完整性和一致性等。
(4)规模和速度:异构数据可能具有海量的规模和高速的产生速度,对处理能力提出了更高要求。
3. 异构数据融合方法为了解决异构数据融合的挑战,研究者们提出了一系列方法:(1)模式匹配:通过识别和匹配异构数据中相似或相同的模式来进行融合。
(2)语义映射:通过建立不同源头之间的映射关系来解决语义差异问题。
(3)规范化:将异构数据转化为统一格式或结构,以便进行整合分析。
(4)知识图谱:通过建立知识图谱来描述和组织异构数据之间的关系。
二、数据聚合与分析技术1. 数据聚合概念在进行大规模分析之前,需要将来自多个源头、多个格式、多个结构的异构数据进行聚合。
聚合是将多个来源或者格式不同但具有相似结构或含义的信息整合在一起形成一个统一的数据集的过程。
2. 数据聚合方法数据聚合方法可以分为以下几类:(1)物理聚合:将异构数据物理存储在一起,形成一个统一的存储空间,如数据仓库或数据湖。
(2)逻辑聚合:通过逻辑操作,将异构数据进行关联和整合,形成一个统一的视图。
第42卷 第2期2006年3月 南京大学学报(自然科学)J OU RNAL OF NANJ IN G UN IV ERSIT Y(NA TU RAL SCIENCES)Vol.42,No.2Mar.ω2006计算机软件新技术研究进展专栏关于语义网格环境中异构数据资源整合的研究3李庆忠,王 栋33(山东大学计算机科学与技术学院,济南,250061)摘 要: 目前,许多电子政务系统面临着一个共同的问题,这就是所谓的“信息孤岛”问题,解决该问题的关键是如何将现有数据资源进行有效的整合.而语义网格理论的提出,为这一难题的解决提供了一个新的思路.应用语义网格理论,针对劳动力市场信息化的应用需求,构造了语义网格模型L F2Grid,并且实现了一种利用本体整合分布式异构数据库资源的机制,有效地解决了这一问题.关键词: 劳动力市场,开放网格服务结构(O GSA),语义网格,本 体,网格服务中图分类号: TN393.0H eterogeneous Data R esources Integrating inSemantic G rid EnviromentL i Qi ng2Zhong,W ang Don g(School of Computer Science and Technology,Shandong University,Jinan,250061,China)Abstract: At present,many e2govenment systems are up against a common problem,namely inf ormation island. In the face of more and more distributed heterogeneous data resources,it becomes very hard to use all of the information in a correct,uniform and effective way.It is the key for resolving that problem to integrate the data sources in existence.The traditional methods in this domain including data federation and data warehouse technology etc.But the products of these technologys doesn’t work well together with the legatary systems and call for much pay.The semantic grid theory which combines semantic web and the grid brings us a new method to do the job. With the help of ontologys in semantic grid,we can standardize vocabularys f rom different databases.This is the base to remedy the problem of semantic heterogeneity.Basing on the theory,this paper puts forwards a prototype of semantic grid called Labour Force Grid(L F2Grid)and implements a mechanism of mapping f rom ontology to databases as well as a arithmetic for constructing ing these components L F2Grid can convert a user’s demand into SQL statements for each database and integrate the results to form a complete one.The mechanism and its arithmetics successf ully solved the problem about how to make use of distributed heterogeneous data resources synthetically and provides grid customers with services which are of high efficiency and easy to use.K ey w ords: labour market,open grid service architecture(O GSA),semantic grid,ontology,grid service3 33基金项目:山东省科技攻关计划“基于语义的应用集成平台研究”(2004GG2201096)收稿日期:2005-12-07通讯联系人,E2mail:wangdong@ 网格[1]是一个集成的计算与资源环境,试图汇聚分布于网络上的各种高性能计算、服务器、数据库、仪器设备、软件、知识等资源,在动态的、包含多个机构的虚拟组织中,进行资源共享和问题解决.目前网格可以采用两种基本结构:五层沙漏结构和开放网格服务结构. Labour Force Grid(L F2Grid)采用了开放网格服务结构.开放网格服务结构(Open Grid Service Architect ure,O GSA)[2]是全球网格论坛GGF(Global Grid Forum)的重要标准建议,也是最新的一种网格体系结构,被称为下一代的网格结构.O GSA是以服务为中心的,在O GSA中,服务的概念非常广泛,包括各种计算资源、存储资源、网络应用程序以及各种终端设备.现有的大多数网格社区都是围绕为终端用户提供计算服务而实现的,它们缺少解决领域问题的服务和知识服务.而人们对语义网(semantic web)[3]的研究恰恰给网格研究者们提供了一个契机,使得网格社区从目前的计算网格向一个带有一系列领域问题解决服务和知识服务的语义网格(semantic grid)[4]方向发展.在语义网格中,信息和服务具有定义良好的含义,能够更好地帮助人和机器完成协作.劳动力市场信息化,就是利用信息技术通过计算机和网络实现劳动就业和劳动保障业务的自动处理.目前国内大多数城市都已经建立了自己的劳动力市场信息系统,但是他们的数据库不仅在地理上是分布的更是异构的,各系统之间不能互相访问,这对于跨区域开展业务造成了极大不便,不能很好地满足用户的需要.为了解决这一问题消除“信息孤岛”,本文结合O GSA和语义网技术,构造了语义网格模型L F2Grid,L F2Grid是与O GSA标准兼容的网格模型,它遵循并且扩展了O GSI规定的标准接口,针对该标准不支持语义的缺陷,L F2 Grid加入了本体、元数据、本体-数据库映射等相关机制,成为了一个真正意义上的语义网格.在此基础上,本文提出了一种新的利用本体整合分布式异构数据库资源的机制.该机制通过将数据库词汇映射到本体概念上解决了语义异构问题,并且实现了相应的查询构造算法,有效地解决了劳动力市场领域的异构数据资源整合问题.1 LF2G rid基本框架L F2Grid的基本结构划分为3部分:客户端、L F2Grid核心组件以及L F2Grid资源.如图1所示.(1)L F2Grid主要通过客户端展现给用户,用户可以通过Grid Portal(网格门户,以下简称GP)的图形化界面方便地使用网格.在GP中用户可以浏览领域本体,并且按照本体词汇描述自己的需求,GP会把用户的要求发送到网格中,网格调用一系列相应服务,最后把产生的结果在GP中显示给用户.在客户端还可以有其他的应用程序运行,为此L F2Grid提供了Grid Application Interface(网格应用程序接口).另外,网格管理员还可以通过Monitor and Management Tool(监控和管理工具)来维护L F2Grid的正常运行.(2)L F2Grid核心组件是整个网格运行的基础和关键部分.核心组件的设计主要用于支撑网格服务的开发、部署、运行和调试,集中解决各类资源的共享和协作等问题.L F2Grid核心组件包括:①Regist ry wit h Metadata(带有元数据的注册中心,以下简称RM)主要用于服务的注册和发现,参考Web Service的注册中心L F2Grid 加入了用来进行服务描述的元数据(metadata),服务元数据以XML的形式保存在注册中心.当L F2Grid使用者准备创建一个服务的时候,他需要用本体(Ontology)[5]中的概念对自己的服务进行描述,这样在查询某个服务时,就可以利用语义匹配进行准确的查找.另外RM中还保存有本体-数据库映射表,该表用于实现分布式异构数据库资源的整合.在RM的基础上,L F2Grid提供了一个Semantic Regist ry Service(语义注册服务),用于实现语义注册、注销和查询功能.・241・南京大学学报(自然科学) 第42卷图1 LF2G rid基本结构Fig.1 Architecture of LF2G rid ②为了更好的支持语义L F2Grid引入了本体,一个本体是一个共享概念模型的形式化和显式的说明,也就是说本体准确地描述了一个领域内的概念体系.用户可以使用本体中的概念从语义角度描述服务即服务元数据,服务元数据保存在RM中,可以提供更基于语义的服务匹配.L F2Grid利用从数据库中的表和字段名到本体中概念节点及其属性的映射实现了从语义角度有效地整合分布式异构数据资源.本体采用从数据库中抽取的方式建立再由相关方面的专家进行修改,保存在采用OWL(Web Ontology Language)[6]描述的概念图文件中.本体对外提供了Ontology Service服务,以支持本体的维护和查询.③Mapper Service(映射服务)是L F2Grid 中的核心服务之一,主要为其它服务提供从GSH(Grid Service Handle,网格服务句柄)到GSR(Grid Service Reference,网格服务引用)的映射[7].④Agent Service(代理服务)是专门用来帮助用户使用网格资源和服务而设计的一个服务,Agent Service Factory(代理服务工厂)为每一个用户生成一个代理服务实例,该实例负责与GP交互并且在网格中代表用户的身份调用服务,L F2Grid以此来实现用户权限管理.代理服务位于网格基础框架之中,这使它的运行具有更大的优势.⑤Common Service(通用服务)是一系列・341・ 第2期李庆忠,王 栋:语义网格环境中异构数据资源整合为整个虚拟组织提供公共能力的网格服务.L F 2Grid 的业务功能主要由领域服务、通用服务和资源服务实现,通用服务主要负责与特定业务逻辑无关的底层功能例如数据统计、存储空间分配等等,需要经常被其它网格服务调用.⑥Domain Specific Service (领域服务)是对领域相关的常用功能进行抽象而得到的一组服务,一个领域服务可以通过调用一系列网格中的其它服务例如资源服务来完成一个相对完整的功能.领域服务的创建主要取决于业务处理的需要,在创建L F 2Grid 时,我们同时创建了就业管理、失业管理、再就业优惠待遇管理、失业保险、职业介绍等主要功能的领域服务,在L F 2Grid 的运行过程中,也可动态添加服务.⑦Task Monitor and Management Mechanism (任务监控和管理机制)负责监控,调度和管理L F 2Grid 中运行的程序,使得网格系统可以正确、高效地运行.⑧Grid Qo S Mechanism (网格服务质量机制)负责跟踪网格服务的运行,最终记录服务质量.L F 2Grid 的后续版本将支持用户或第三方机构对所调用的服务给出评价,该评价会作为服务质量元数据保存在RM 中,为基于Qo S 的服务查找提供方便. ⑨Grid Security Mechanism (网格安全机制)负责监控网格的安全运行,保障L F 2Grid 不受外界恶意侵害的影响.(3)在劳动力市场应用领域,LF 2G rid 资源包括网格中用于保存劳动就业和保障信息的关系数据库,提供下载服务的政策法规文件以及提供上传下载服务的就业指导材料、培训课件等资源.由于这些资源可能隶属于不同的组织具有独立的访问策略,因此LF 2G rid 应用环境的异构性、分布性和自治性就凸显出来.为了解决这个问题,本文提出了Resource Service (资源服务)的概念,这是一组用于封装各类异构资源的网格服务,它们具有统一的接口,更易于使用和管理.在L F 2Grid 中,数据库是一类最重要的资源,这些数据库在地理上是分布的,采用的结构不尽相同[8],为此,L F 2Grid 设计了Database Service (数据库服务)[9],数据库服务是一种部署在网格数据库上的资源服务,对于每一个分布式异构数据库我们开发了一个运行在其上的数据库服务.部署在具体资源上能够保证服务的有效性和更高的执行效率.数据库服务负责数据查询和维护等操作,它们接收来自代理服务或者领域服务的包含SQL 语句的请求XML 文档,执行相应操作后返回结果XML 文档.图2 本体-数据库映射机制Fig.2 Ontology 2d atab ase m apping mechanism・441・南京大学学报(自然科学) 第42卷2 使用本体整合分布式异构数据资源 分布式异构数据资源的整合是L F2Grid一个重要任务,为实现这一目标L F2Grid采用了本体-数据库映射机制.首先,利用Protégé的Data Genie插件实现了从数据库自动抽取本体,然后请领域专家对得到的本体进行修改完善.得到本体之后利用映射机制手动生成本体-数据库映射表,映射机制如图2所示:把关系数据库中的表名和字段名分别映射到本体中的概念及其属性上,把关系数据库中的外键采用概念之间的联系表示,为每个这样的联系设立了名为外键名的属性用来存放该外键的字段名.这样,虽然两个数据库采用了不同的表名和字段名,通过映射机制,它们仍然指向了本体中相同的概念.L F2Grid中的本体-数据库映射表保存在RM中,其中详细记录了本体中的各个节点在数据库中是表名还是字段名以及在每个数据库中采用的名称,如表1所示,这样每当网格中增加数据库资源或已有数据库表结构发生变化时都需要维护该表,这个工作是通过手动完成的.因为一个数据库一旦开始存储数据之后,其表结构是很少发生变化的,而增加数据库也是很少发生的,即使发生手动维护也是可以接受的.通过映射表,L F2Grid可以将采用本体概念描述的用户需求自动转换成对相应数据库的操纵语句,从而实现分布式异构数据资源的整合,该算法如算法1所示(数据库操作以查询为例).表1 本体-数据库映射表T able1 Ontology2Datab ase m apping table 本体概念节点类型Database1Database2招聘岗位表 名Post Table Table05岗位名称字段名PostName Col01所需人数字段名Number Col02薪 酬字段名Salary Col03算法1 利用本体-数据库映射表构造数据库查询语句输入:用户在本体中点击的概念节点序列及输入的查询条件.输出:应用于第k个关系数据库的SQL语句算法:(1)statement=“SEL ECT”;//statament负责存放构造的SQL语句(2)for节点序列中的每个节点P i do//以下构造SEL ECT部分(3)if P i具有输出标志//表示P i为用户选择作为输出的属性(4)then statement=statement+“P i,”;//添加P i于SEL ECT之后(5)end if(6)end for(7)statement=statement-“,”+“FROM”;//以下构造FROM部分(8)for节点序列中的每个节点P i do(9)if P i为非叶节点//P i代表数据库中的表名(10)then statement=statement+“P i,”;//添加P i于FROM之后(11)end if(12)end for(13)statement=statement-“,”+“W H ERE”;(14)for节点序列中的每个节点P i do//以下构造多表连接部分(15)if P i,P(i+1)都为非叶节点//P i,P(i+1)代表数据库中的表名(16)then statement=statement+“P i.(联系P i P(i+1).外键名)=P(i+1).(联系P i P(i+1).外键名)AND”;//构造两表连接(17)end if(18)end for(19)for节点序列中的每个节点P i do//以下构造查询条件部分(20)if P i具有查询条件标志//表示P i是用户的查询控制变量(21)then statament=statement+用户输入的条件;//添加查询条件・541・ 第2期李庆忠,王 栋:语义网格环境中异构数据资源整合(22)end if (23)end for//已得到采用本体词汇表达的SQL 语句(24)for statement 中的每个词汇C l do//以下将此SQL 进行转化(25)if C l 为本体词汇(26)then 采用第k 个数据库的词汇代替C i ;//利用映射表进行替换(27)end if (28)end for//已得到第k 个数据库的查询语句3 算法评估招聘信息查询是劳动就业部门的一项常见业务,下面以这一业务为例模拟算法1的运行.假设用户A 希望“查询所有正在招聘软件工程师的公司”.首先,他通过GP 浏览本体,选择“单位”节点,这时"单位"节点的所有属性会出现在浏览器中,用户在“单位名称”属性上点击右键选择显示输出(系统此时开始记录节点序列),然后他点击“单位”节点得到所有属性和与之有关联的其它节点,此时用户可以看到“招聘岗位”节点(参见图3),点击该节点以显示属性,最后在属性“岗位名称”上点击右键选择查询条件“=”并输入“软件工程师”.图3 本体示例Fig.3 Ontology illustration 由此,系统得到用户在本体中点击的节点序列:“单位名称”、“单位”、“招聘岗位”、“岗位名称”和查询条件.用户选择执行查询后,算法1的执行步骤如下:1.对于具有输出标志的节点“单位名称”构造“SEL ECT 单位名称”;2.增加“FROM ”得到“SEL EC T 单位名称FROM ”;3.对于非叶节点“单位”和“招聘岗位”在查询语句中添加“单位,招聘岗位”;4.增加“W H ERE ”得到“SEL EC T 单位名称FROM 单位,岗位名称W H ERE ”;5.对于连续的两个非叶节点“单位”和“招聘岗位”在查询语句中添加“单位.单位编号=招聘岗位.单位编号AND ”;6.对于具有查询条件标志的节点“岗位名称”利用用户输入的查询条件构造“岗位名称=软件工程师”并添加到查询语句中;7.得到了一个完整的以本体概念表达的查询语句“SEL EC T 单位名称FROM 单位,招聘岗位W H ERE 单位.单位编号=招聘岗位.单位编号AND 岗位名称=软件工程师”;8.将该语句按照本体-数据库映射表转化为应用于某个数据库的查询语句(以Database1为例)得到SEL EC T ComNameFROM Company ,Post Table W H ERECompany.ComNum=Post Num AND・641・南京大学学报(自然科学) 第42卷PostName=‘软件工程师’可见按照算法1,系统可以有效地将用户的需求转化为对每一个分布式数据库资源的查询语句.通过分析可知,算法1的时间复杂度为O (n3m),其中n为查询所需的概念节点序列中节点的个数,m为本体-数据库映射表的长度.在实际应用中,n的值不可能很大;而m也可看作本体库中概念的总数,劳动力市场的领域本体所含的概念总数约为103~104个,并且本体库中所含概念总数是较为稳定的,不会随着业务的增加而明显增大.因此,算法1的时间复杂度不会随着n的增加而变坏,是完全可以接受的.4 总 结基于对语义网格理论地研究,本文提出了一个面向服务的语义网格模型L F2Grid,L F2 Grid符合O GSA标准并且从语义角度扩展了O GSA[10].为了解决劳动力市场信息化过程中出现的“信息孤岛”问题,在L F2Grid的基础上,本文提出了一种利用本体实现的整合机制及其查询构造算法,这一方法成功地实现了对于分布式异构数据库资源的整合.今后的研究重点是:一、如何以最小的代价把原有的劳动力市场应用系统及其数据库最大程度地移植到L F2Grid中,更好地实现代码重用;二、对算法1进行改进使其可以处理更复杂的异构情况.R eferences[1] Foster I,Kesselman C.The Grid2:Blueprint fora new computing inf rastructure.San Francisco:Morgan Kauf mann,2004,224~262.[2] Foster I,Kesselman C,Nick J M,et al.The physiology of the grid:An open grid service ar2chitecture for distributed systems integration.ht2tp:///research/papers/ogsa.pdf,2002-06-22.[3] Berners2Lee T,Hendler J,Lassila O.The se2mantic web.Scientific American,2001,279(5):34~43.[4] Mario C,Domenico T.Semantics and knowledgegrids:Building the next2generation grid.IEEEIntelligent Systems,2004,19(1):56~63. [5] Deng Z H,Tang S W,Zhang M,et al.Overviewof ontology.Acta Scientiarum Naturalium Uni2versitatis Pekinensis,2002,38(5):730~738.(邓志鸿,唐世渭,张 铭等.Ontology研究综述.北京大学学报(自然科学),2002,38(5):730~738).[6] W3C.OWL web ontology language overview./TR/owl2features,2004-02-10.[7] Tuecke S,Czajkowski K,Foster I,et al.Opengrid services inf rastructure.http://www.ggf.org/documents/GFD.15.pdf,2003-06-27. [8] Shao J Y,Zhou B X,Xu N R,et al.Heteroge2nous multidatabases interconnection based onODBC.Journal of Nanjing University(NaturalSciences),2000,36(3):351~356.(邵家玉,周伯鑫,徐南荣等.基于ODBC的异构数据库互连.南京大学学报(自然科学),2000,36(3):351~356).[9] Tuecke S,Czajkowski K,Poster I.Grid servicespecification./research/papers.htme,2002-06-13.[10]Talia D.The open grid services architecture:Where the grid meets the web.IEEE InternetComputing,2002,6(6):67~71.・741・ 第2期李庆忠,王 栋:语义网格环境中异构数据资源整合。