一种分布式地学元数据同步实现方法及系统的制作方法

文档序号:6575133阅读:197来源:国知局

专利名称::一种分布式地学元数据同步实现方法及系统的制作方法
技术领域
:本发明涉及地学元数据同步技术,特别涉及一种分布式地学元数据同步实现方法及系统。
背景技术
:通过各行业部门部署的对地球表面及深部的长期调查监测以及各类地学科研项目,我国已经积累了丰富的地学数据资源。特别是随着近几十年来对地观测技术的发展,地学数据资源的获取变得越来越容易。然而,由于缺乏有效的地学数据共享,数据资源难以流通,分布在不同地理位置、行业部门和科研单位的数据资源主要还是在数据采集、生产单位内部使用,行业部门和科研项目往往为了不同的目的重复进行数据资源的投资和建设。地学数据资源是在一定时空范围下产生的,具有典型的时空特性、区域集成性、学科交叉性,数据类型和格式复杂多样。因此,实现分散、异构地学数据资源共享的一种行之有效的办法就是元数据。元数据是关于数据的数据,能够对数据资源的主要内容、时空范围、数据格式、数据质量以及数据资源的获取方式进行描述。数据拥有者通过元数据告诉数据使用者有什么样的数据、这些数据在哪里、怎么获取这些数据资源等信息,数据使用者根据上述信息通过在线下载或离线联系等方式获取数据,从而实现地学数据资源的共享。以元数据为核心的数据共享系统一般分为集中式和分布式。集中式数据共享系统是指数据拥有者基于网络将数据资源统一汇交到一个数据共享系统中,数据使用者也都从这个共享系统中査询和获取所需要的数据资源。分布式数据共享系统是指根据地域或学科的需求,设置多个物理上分布、逻辑上统一的数据共享系统,数据拥有者根据数据资源的特点将数据资源汇交到对应的数据共享系统中,数据使用者登录到某一个数据共享系统中査询和获取自己所需要的数据资源。集中式数据共享系统由于只依靠一个数据共享系统进行元数据的汇交、数据的查询和获取,具有简单、容易维护等优点,但由于所有的数据服务都依靠一个系统进行,因此也存在着网络负担过重,不同学科或区域数据资源难于管理等问题。分布式数据共享系统依靠物理上分布、逻辑上统一的多个数据共享系统对外提供服务,各个学科或区域数据共享系统能够很好地对本学科或本区域的数据资源进行管理,当然分布式的数据共享系统相对于集中式的数据共享系统要复杂得多,而且要想这些分布式的系统能够统一为用户提供数据共享服务,必须解决分布式系统间元数据的同步。由于地学数据资源具有典型的时空特性、区域集成性和学科交叉性等特点,因此,地学数据资源的共享往往采用分布式的网络体系。分布式的地学元数据同步一般来讲有两种形式对等式和总分式。所谓对等式地学元数据同步是指分布式网络体系下的每个系统都是对等的,各系统的元数据分别要同步到其他系统中;总分式地学元数据同步是指分布式网络体系下有一个系统作为总中心,其他系统作为分中心,总中心和分中心是不对等的,所有分中心的元数据都同步到总中心,通过总中心实现元数据的全局搜索和访问。对等式的元数据同步机制由于一个系统的元数据需要分别同步到其他的每一个系统,如果分布式体系下的系统数量多的话,这种同步工作所消耗的开支是巨大的,而且任何一个系统出问题都会对这种同步产生影响。总分式的元数据同步机制中各分中心只与总中心进行元数据的同步,分中心相互之间并不进行元数据同步,依靠总中心可以对各分中心的元数据质量进行监控,并提供全局的元数据服务,这种机制效率高、相对稳定,但对总中心要求较高。本发明涉及的就是一种总分式的分布式元数据同步管理的方法。分布式元数据同步管理主要依靠的协议包括Z39.50、OAI-PMH和WebServices。Z39.50是"信息检索应用服务定义和协议规范"的简称,是美国国家标准化组织于1988年公布的。它是在网络上传输数据的高层协议,不涉及数据库的名称和具体结构,也不考虑数据库的具体实现,能够实现异构元数据的互操作。基于Z39.50的分布式信息检索的具体步骤是首先将Z39.50网关安装在网络服务器上,当用户发送检索请求时,Z39.50网关将其转化为Z39.50支持的标准格式,然后创建若干个并发的Z39.50客户进程,将用户检索请求同时递交给用户选定的多个Z39.50服务器,最后接收多个Z39.50服务器返回的检5索结果,经过处理后转化为HTML格式,返回给用户。Z39.50存在的主要问题是它是一个重量级的协议,体系庞大,标准的实施需要软件开发者了解数据结构、网络通讯、编码解码等,是一种复杂的操作模式,这使其在通用领域、一般检索和P2P检索中的应用受到很大局限。OAI-PMH(OpenArchivesInitiativeProtocolforMetadataHarvesting,简称OAI)协议是美国数字图书馆联盟、网络信息联盟等组织提出的一个应用框架,其目的是实现分散的、不同系统平台之间的元数据交换和共享。OAI协议支持两种角色数据提供者和服务提供者。数据提供者对来自服务提供者的请求做出响应,以OAI要求的格式向服务提供者提供元数据;服务提供者利用收割器收割元数据。OAI协议存在的主要问题一是规定数据提供方必须统一使用都柏林元数据标准,非都柏林元数据在使用之前要先进行转换;二是采用收割机制,会因为频繁收割加重系统的负担,特别是数据提供方元数据变化不大时,会造成资源的巨大浪费。上述两种协议采用的都是"收割"方式的元数据同步,元数据全局搜索时总中心每次都要去收割分中心的元数据或者是定时收割一次,每次都到分中心去收割存在耗时过长的问题,而定时收割又存在元数据搜索结果不实时的问题。同时,这种机制总中心无法对收割上来的分中心元数据质量进行控制。
发明内容本发明所要解决的技术问题在于,提供一种分布式地学元数据同步实现方法及系统,解决分布式软件体系下地学元数据的实时推送和同步的问题,提高分布式地学元数据的质量。为达到上述目的,本发明提供的分布式地学元数据同步实现方法,包括地学元数据同步服务部署步骤,用于将地学元数据操作功能封装成的地学元数据同步服务,并部署该地学元数据服务在总中心和分中心的网络服务器上;地学元数据同步实施步骤,基于所述地学元数据同步服务进行分中心和总中心的地学元数据同步。上述分布式地学元数据同步实现方法,其特征在于,所述地学元数据同步服务部署步骤进一步包括步骤SlOl,利用网络服务技术将地学元数据操作的功能函数封装成地学元数据同步服务;步骤S102,将所述封装成的地学元数据同步服务部署在总中心和分中心的网络服务器上。上述分布式地学元数据同步实现方法,其特征在于,所述地学元数据操作的功能函数主要包括判断元数据是否存在的函数existedMetdata、添加元数据的函数addMetadata、更新元数据的函数updateMetadata、删除元数据的函数deleteMetadata、获取元数据状态的函数getMetadataState、更新元数据状态的函数updateMetadataState和获取元数据的函数getMetadata。上述分布式地学元数据同步实现方法,其特征在于,所述地学元数据的标准包括标识信息、内容信息、分发信息、数据质量和元数据参考信息。上述分布式地学元数据同步实现方法,其特征在于,所述总中心和分中心根据分工不同分别部署功能不同的元数据同步服务,所述总中心的元数据同步服务的功能函数包括判断元数据是否存在的函数existedMetdata、添加元数据的函数addMetadata、更新元数据的函数updateMetadata、获取元数据状态的函数getMetadataState、更新元数据状态的函数updateMetadataState和获取元数据的函数getMetadata;所述分中心的元数据同步服务的功能函数包括更新元数据的函数updateMetadata、删除元数据的函数deleteMetadata、获取元数据的函数getMetadata、获取元数据状态的函数getMetadataState、更新元数据状态的函数updateMetadataState。上述分布式地学元数据同步实现方法,其特征在于,所述分布式地学元数据同步实施步骤进一步包括分中心将元数据实时推送或更新到总中心的步骤;总中心将元数据审査修改内容实时同步到分中心的步骤。上述分布式地学元数据同步实现方法,其特征在于,所述分中心将元数据实时推送或更新到总中心的步骤进一步包括.-分中心对汇交上来的元数据进行审查,审查通过后,调用总中心的元数据同步服务,将该元数据推送到总中心;分中心对已经发布的元数据进行修改时,同步改变元数据在总中心和分中心的状态,修改完成后,调用总中心的元数据同步服务,同步将该元数据的修改内容更新到总中心;分中心对已经发布的元数据进行删除时,需要向总中心提出删除请求,请求通过时,调用总中心的元数据同步服务,同步在总中心和分中心删除该元数据。上述分布式地学元数据同步实现方法,其特征在于,所述总中心将元数据审査修改内容实时同步到分中心的步骤进一步包括总中心对分中心推送上来的元数据进行审査,审査通过对外发布,同时自动调用分中心的元数据同步服务,更新该元数据在分中心的状态;总中心对已经发布的元数据进行修改时,不改变元数据的状态,修改完成后,同时自动调用分中心的元数据同步服务,将元数据的修改内容同步更新到分中心。上述分布式地学元数据同步实现方法,其特征在于,所述分布式地学元数据同步实施步骤还包括,一在分中心或者总中心调用元数据同步服务失败时,自动发送调用失败信息到总中心或分中心的步骤。进一步的,本发明还提供了一种实现方法的系统,包括地学元数据封装模块,用于将地学元数据操作功能封装成的地学元数据同歩服务,并部署该地学元数据同歩服务在总中心和分中心的网络服务器上;地学元数据同步实施模块,基于所述地学元数据同步服务进行分中心和总中心的地学元数据同步。与现有技术相比,本发明中分布式地学元数据同步方法的实现,通过部署在总中心和分中心的元数据同步服务,可以使得分中心能够实时将元数据推送或者更新到总中心,总中心能够对分中心的元数据进行质量和安全的审查修改并决定是否发布,总中心的审査修改内容也能够实时同步到分中心。该方法可以适应不同的元数据标准,不仅能够保障分中心元数据在总中心和分中心的实时同步,而且通过推送机制,避免了收割方式造成的资源浪费,提高了对外服务的元数据质量。图1为本发明的分布式地学元数据同步实现方法的流程图2为本发明中基于元数据同步服务的分布式地学元数据同步流程图;图3为本发明中实现分布式地学元数据同步方法的系统示意框图。具体实施例方式下面结合附图和具体实施例对本发明的技术方案进行详细的描述,以进一步说明本发明之目的、方案及功效,所提供的附图和实施例并非用于限定本发明的权利要求保护范围。本发明的分布式地学元数据同步实现的基本思路是利用网络服务技术对地学元数据操作功能进行封装,形成地学元数据同步服务,并将地学元数据同步服务分别部署在总中心和分中心。通过地学元数据同步服务实现分中心元数据在分中心和总中心间的实时同步。具体的实施分两个过程地学元数据同步服务部署和基于元数据同步服务实施分布式地学元数据同步。参考图l,本发明的分布式地学元数据同步实现方法包括步骤S10:地学元数据同步服务部署步骤,用于将地学元数据操作功能封装成的地学元数据同步服务,并部署该地学元数据服务在总中心和分中心的网络服务器上;步骤S20:地学元数据同步实施步骤,基于所述地学元数据同步服务进行分中心和总中心的地学元数据同步。上述地学元数据同步服务部署步骤S10进一步包括步骤S101:利用网络服务技术将地学元数据操作功能封装成地学元数据同步服务。利用网络服务将地学元数据操作的功能函数封装成地学元数据同步服务。网络服务是一种部署在网络上的对象组件,建立在标准的Internet协议之上,能够运行在不同的操作系统上,为不同的软件应用互操作提供标准的方式。一旦网络服务配置好后,其它应用程序和网络服务就可以直接发现和调用该服务。网络服务采用XML(EXtensibleMarkupLanguage,可扩展置标语言)描述数据,使用WSDL(WebServicesDescriptionLanguage,网络描述语言)来描述月艮务,UDDI(UniversalDescription,DiscoveryandIntegration,通用描述、发5见和集成)来发布、査找服务,采用SOAP(SimpleObjectAccessProtocol,简单对象访问协议)来执行服务调用。地学元数据操作的功能函数主要包括判断元数据是否存在的函数existedMetdata、添加元数据的函数addMetadata、更新元数据的函数updateMetadata、删除元数据的函数deleteMetadata、获取元数据状态的函数getMetadataState、更新元数据状态的函数updateMetadataState和获取元数据的函数getMetadata。各函数的接口如表1所示。表<table>tableseeoriginaldocumentpage10</column></row><table>据。地学元数据标准模式如后所示。地学元数据标准包括标识信息、内容信息、分发信息、数据质量和元数据参考信息五个模块构成。标识信息模块主要记录数据资源的标识信息,包括:地学数据的名称、采用的语言、字符编码、数据集内容摘要、关键词等;内容信息主要记录地学数据资源内容的时间和空间范围,所属的分类体系等;分发信息主要包括地学数据资源的分发格式和分发方式、分发者及联系方式等;质量信息包括数据资源非量化的数据质量说明、数据的处理步骤以及量化的质量报告信息等;元数据参考信息包括元数据标识、元数据语言、元数据创建时间以及所采用元数据标准的名称和版本等。地学元数据标准的XMLSchema文件举例如下〈7xmlversion=〃l.0〃encoding-〃UTF-8"7〉<xs:schemaxmlns="http://www.geodata,cn/metadata/GeociataCore"xmlns:xs="http:〃ww.w3-org/2001/XMLSchemaTtargetNamespace="http://Ww.geodata,cn/metadata/GeodataCore"elementFormDefault=〃qualified"attributeFormDefault二"unqualified〃>〈xs:elementnan]e-〃geodataCoreMeta〃type=〃geodataCoreMetaType"〉《xs:annotation〉《\s:doc,entation〉地学核心兀数据〈/xs:documentation〉(/xs:annotation〉</xs:eletnent〉<xs:elementname="ResponsibleParty〃type="ResponsiblePartyType"〉<xs:annotaticm>〈xs:documentation〉负责方,对引用资源负责的人或单位的名称和地址位息.〈/xs:dociunentation〉〈/xsramiotation></xs:element>〈xs:elementname="Address"type二"AddressType"〉〈xs:annotation〉〈xs:documentation〉地址,';/联系人或联系举位联系的物埋地址和ili了-邮件地址〈/xs:docunientation〉</xs:annotation〉</xs:element〉<xs:co卿lexTypename二〃AddressType"〉<xs:sequence><xs:elementname=〃deliveryPoint〃type二"xs:string"naxOccurs=〃unboundecT〉<xs:annotation>〈xs:doc腦entation〉详细地址,位置的讦:细地址.〈/xs:documentation〉</xs:annotation></xs:element〉〈xs:elenientnamecit;/'type="xs:string〃minOccurs="0〃〉<xs:armotation〉<xs:documentation〉所/"城市,所/|-:城市.</xs:documentation></xs:annotation〉</xs:element〉<xs:elementname=〃administrativeArea"minOccurs="0〃><xs:annotation〉〈xs:documentation〉所在行政区,所在省,自治区,直辖市.</xs:documentation〉</xs:annotation〉<xs:simpleType〉<xs:restrictionbasexs:string"<xs::enumeration知\<xs::enumeration"灭津巿'7〉〈xs::enumeration《xs::enumerationV3lue="山两fT7〉<xs:enumerationvalue二"香f巷半^&nT政区'〉〈xs:enumerationvalue澳门特別行政区V〉</xs:restriction〉</xsrsimpleType></xs:element〉<xs:elementname=〃postalCode〃type=〃xs:string"〉<xs:armotation>〈xs:documentation〉邮政乡扁ii马,山li政全扁5马.</xs:documentation〉〈/xs:annotation></xs:element〉<xs:elementname=〃country〃〉<xs:annota1:ion>〈xs:doc匿ntation〉所/l.:闺家,所?l:闺家.</xs:doc匿ntation>〈/xs:annotation〉<xs:simpleType>《\s:resU'irTionbase〃xs:string"〉<xs:enumerationvalue二"阿尔巴尼亚'7〉<xs:enunierationvalue二"阿根廷"/〉<xs:enumerationvalue二"中非共和闺〃Z〉<xs:eruimerationvalue二"中闺V〉仏s:restriction〉</xs:simpleType〉</xs:element〉〈xs:elementname=〃electronicMailAddress〃type="xs:string"maxOccurs=〃unbounded〃><xs:3nnotation〉<xs:documentation〉元数据标-准名利:,f丸tffl勺:^数据f示准名禾尔〈/xs:documentation〉</xs:annotation>〈/xs:element〉<xs:elementname="metadataStandarciVersion"type="xs:string"minOccurs="0"〉〈xs:annotation〉〈xs:documentation〉乂i;数据+;i^隹JK本,f丸行的;/t数据+示隹!K本〈/xs:docijmentation〉</xs:annotation〉</xs:element〉</xs:sequence></xs:complexType></xs:schema〉步骤S102:将地学元数据同步服务部署在总中心和分中心的网络服务器上。将地学元数据同步服务分别部署在总中心和分中心的网络服务器上。地学元数据同步服务部署体系如图1所示。总中心和分中心根据分工的不同,部署的元数据同步服务的功能略有不同。总中心的元数据同步服务所包含的功能函数判断元数据是否存在、增加元数据、更新元数据、获取元数据、获取元数据状态和更新元数据状态;分中心的元数据同步服务(描述语言如下的DataCenter.wsdl所示)所包含的功能函数更新元数据、删除元数据、获取元数据、获取元数据状态和更新元数据状态。总中心的元数据同步服务描述语言举例如下MainCenter.wsdl所示<xmlversion="l.0"encoding="UTF-8"〉<wsdl:definitionsxmlns:印acheso印二〃http:〃xm1.apache,org/xml-soap〃xmlns:implhttp://service,geodata.cn〃xmlns:intf=〃http://service,geodata.cn〃xmlns:wsdl="http:〃schemas.xmlsoap.org/wsdl/"xmlns:wsdlsoap二"htl;p:Z/schemas.xmlsoap.org/wsdl/soap,xmlns:xsfhttp:〃ww,w3.org/2001/XMLSchema"targetNamespace二"http://service,geodata.crT>〈、vsdl:types〉<schemaelementFormDefault=〃qualified〃targetNamespace="http:〃service.geodata.en<complexType〉<sequence〉<element.name=〃xml〃type=〃xsd:string7〉<eiementname=〃userNanie〃type="xsd:string'7〉</wsdl:port丁ype〉<、v'sdl:bindingname=〃MainCenterSoapBinding〃type二〃impl:MainCenter"〉"「sdlsoap:bindingstvle="document〃transport=〃http:〃schemas.xmlso叩,org/soap/http'7〉<、vsdl:oper己tionname=〃addMetadata"〉<wsdlsoap:operstion/><wsdl:inputname=〃addMetadataRequest"〉〈wsdlso印rbodyuse=〃literal7〉</wsdl:i叩ut〉<wsdloutputnameyaddMetadataRespcmse〃〉<wsdlsoap:bodyuse="1iteral7〉</Vsdl:output〉〈/wsdl:operation><wsdl:operationname="updateMetadata〃〉〈、vsdls03p:operation/><wsdl:inputname二"updateMetadataRecjijest〃〉〈wsdlsoap:bodyuse="literal7〉</wsdl:input>〈wscl]:outputnanip,"getMe"ladaUiStateRespo!ise"〉xmlns=〃http://www.w3,org/2001/XMLSchema〃>〈wsdlso即bodyuse二〃litei"a1/7〉</wsdl:output〉</wsdl:operation><wsdl:operationname=〃existedMetadata"〉<wsdlsoap:operation/)<\vsdl:inputname=〃existedMetadataRequest"〉《vsd1soap:bodyuse=〃litera17〉</wsdl:i叩ut〉<wsdl:outputname=〃existedMetadataResponse〃〉<wsdlsoap:bodyuse二〃literal7〉</wsdl:output></wsdl.'operation〉<wsdl:operationname=〃ge1:Metadata〃><wsdlsoap:operation/〉<wsdl:inputname="getMetadataRequest〃〉<wsdlsoap:bodyuse=〃literal'7〉〈/、vsdl:input〉<wsdi:outputname=〃getMetadataResponse〃〉<wsd1soap:bodyuse="1itera17〉</Vsdl:output〉</wsdloperation></wsdl.'binding〉<wsdl:servicename=〃MainCenterService〃〉<wsdl:portname="MainCenter〃binding=〃impl:MainCenterSoapBinding〃>〈wsdlsoap:addresslocation=〃http://www.geodata.cn/MetadataService2Zservices/MainCentei、7〉〈/wsdl:port〉</wsdl:service〉〈/wsdl:definitions>DataCenter.wsdlGxmlversion=〃l.0〃encoding=〃UTF-8""<wsdi:definitionsxmlns:apachesoap="http:〃xml.apache,org/xml-soap〃xmlns:impl=〃http://service,geodata.cn〃xmlns:intf=〃http:〃service,geodata,cn〃xmlns:wsdl="http://schemss.xmlsoap.org/wsdl/〃xmlns:wscllso叩二"http:〃schemas.xmlsoap.org/wsdl/soap/"扁〗ns:xs〔l'hUp:〃画-.w3.org/2001/XMLSche,"targctN測es卩ac(、-"hUp://service.geoclala.(、n〃〉〈wsdl:types>〈schen〗aelementFormDefault="qualified"targetN舰espace二〃http:〃service.geodata.crTxmlns'http:〃稀v.w3.oi、g/2001/XMLSchema〃〉<elementname二〃deleteMetadal:a"><complexType〉<sequence〉<elementnan〗e="id"tvpe="xsd:string7〉<elementnafiie二〃userName〃type=〃xsd:string7〉<wsdl:portname=〃DataCenter〃binding=〃impl:DataCenterSoapBinding〃><wsdlsoap:addresslocation="http://***:8086/MetadataService2/services/DataCenter〃/〉</wsdl:port〉</Vsdl:service〉</wsdl:definitions〉图2所示的基于元数据同步服务的分布式地学元数据同步实现流程,包括以下几个实施步骤步骤S201:在分中心对用户汇交上来的元数据进行审查。在分中心对用户汇交的元数据进行审查,包括元数据的规范性、完整性、可读性和正确性等方面的审査。如果审查通过则进入步骤S203;否则进入步骤S202。步骤S202:审査不通过的元数据,调用分中心本地的元数据状态更新函数updateMetadataState将元数据的状态设置为未通过审查,等待用户修改。审査不通过时要求填写审査不通过的原因。步骤S203:审査通过后,分中心调用总中心的元数据同步服务。如果远程连接建立成功则进入步骤S206,否则进入步骤S204。步骤S204:分中心与总中心连接建立失败,系统以E-mail或者其它方式自动向总中心发送调用失败信息,通知总中心检查服务器。步骤S205:调用分中心本地的元数据状态更新函数updateMetadataState将元数据的状态设置为待推送。远程服务器连通后,分中心可以重新将待推送的元数据推送到总中心。步骤S206:远程服务器连接成功后,系统自动调用总中心的元数据同步服务将元数据推送到总中心。推送到总中心时,首先调用元数据同步服务的existedMetadata接口通过元数据唯一标识判断该元数据是否在总中心存在,如果不存在则调用元数据同步服务的addMetdata接口,将该元数据的XML文件传送到总中心,在总中心添加一条元数据;如果存在则调用元数据同步服务的updateMetadata接口通过元数据唯一的标识更新总中心对应的元数据。步骤S207:分中心元数据成功推送或更新到总中心后,再调用分中心本地的updateMetadataState函数将分中心本地的元数据状态设置为待发布。至此分中心对元数据的审查工作完成。步骤S208:总中心对分中心推送上来的元数据进行规范性、完整性、可读性和正确性以及安全性等方面的审査。审査后决定分中心的元数据是否可以对外发布,并进入步骤209。步骤S209:总中心调用分中心的元数据同步服务。如果调用不成功,则进入步骤S210;如果调用成功,则视步骤S208中的审査结果,分别进入步骤S214和步骤S212。步骤S210:如果总中心调用分中心的元数据同步服务没有成功时,总中心系统以E-mail或者其它方式自动向分中心发送调用失败信息,通知分中心检査相应的网络服务。步骤S211:总中心调用分中心元数据同步服务不成功时,在总中心不更新本地的元数据状态,元数据状态仍为待发布。步骤S212:如果总中心认为分中心元数据质量或安全方面有问题时,需要调用分中心的元数据同步更新服务updateMetadataState接口,将分中心元数据状态设置为审査未通过并填写未通过原因。分中心在査看到审査未通过的元数据以及未通过的原因后,对元数据进行修改后可再次推送元数据,重新进入步骤S203。步骤S213:分中心元数据审查未通过,除了远程更新分中心元数据的状态,还要将总中心的本地元数据状态也设置成审查未通过。步骤S214:总中心对分中心的元数据审査通过后,需要调用分中心的元数据同步服务updateMetadata接口,将分中心元数据状态设置为己发布。如果总中心在审査过程中对分中心的元数据内容进行了修改,则需要同时调用分中心元数据同步服务的updateMetadata接口将元数据修改内容同步给分中心。步骤S215:分中心元数据审査通过并对外发布,除了远程更新分中心元数据的状态,还要将总中心的本地的元数据状态也设置为已发布。分中心对己发布的元数据进行修改时,将调用总中心元数据同步服务的updateMetadataState接口以及本地的元数据状态更新函数同歩改变该元数据在总中心和分中心的状态,由原来的已发布状态变成待审査状态。修改完成后,重复步骤S203,分中心同步将该元数据的修改内容更新到总中心。总中心对已发布的元数据进行修改时,不改变元数据的状态,修改完成后,重复步骤S214,同步将元数据的修改内容更新到分中心。分中心对已发布的元数据不能直接删除,想要删除时可以向总中心提出删除请求。总中心同意删除后,首先调用分中心元数据同步服务的deleteMetadata接口将该元数据在分中心删除,然后在总中心调用本地的元数据删除函数也将该元数据在总中心删除。如果总中心调用分中心元数据同步服务失败,则自动发E-mail或者以其他形式通知分中心管理员,在总中心和分中心都不进行删除操作。根据本发明,多个异构地学数据共享系统部署应用元数据同步服务可以有两种方式一种是直接部署,一种是适当改造后部署。直接部署是针对底层元数据处理操作采用了本发明提出的元数据处理操作函数的数据共享系统,可以直接将地学元数据同步服务部署在这些系统上;适当改造部署是指底层元数据处理操作没有采用本发明提出的元数据处理操作函数的异构数据共享系统,这些系统首先需要按照本发明提出的地学元数据同步服务的接口,实现对元数据的各项操作功能,然后再部署地学元数据同步服务。下面结合一个应用实例地球系统科学数据共享网说明这两种方式。地球系统科学数据共享网是由一个总中心和13个分中心构成的分布式地学数据共享系统。以极地区域分中心为例,目前极地区域分中心采用中国南北极数据中心开发的软件,其元数据标准采用的是DIF(DirectoryInterchangeFormat,目录交换格式)。为了能够实现极地区域分中心与总中心之间的元数据同步,首先在极地区域分中心软件中实现本发明提出的分中心元数据同步服务的操作接口(更新元数据、删除元数据、获取元数据、获取元数据状态和更新元数据状态),再部署分中心元数据同步服务,以便总中心能够通过分中心元数据同步服务接口,对极地区域分中心底层的元数据库进行同步更新;然后再在极地区域分中心软件的元数据审核功能中增加对总中心元数据同步服务的调用功能,使得极地区域分中心在元数据审查后就能够将分中心的元数据实时推送到总中心。通过上面的适当改造,实现极地区域分中心的元数据在分中心与总中心间的同步管理。基于地球系统科学数据共享网的地学元数据同步的具体实现流程是(以黄土高原区域分中心和总中心的同步为例,其他分中心与总中心的元数据同步类1.黄土高原区域分中心对用户在黄土高原区域分中心系统中发布的元数据进行审査,如"黄土高原水土保持统计数据集",对该数据集的元数据进行逐项审査,包括元数据标题是否规范、关键词是否合理、是否正确填写了数据集的时空范围等。2.如果该元数据合格的话,分中心将审査通过这条元数据,如果不合格则调用分中心本地的updateMetadataState函数,将该元数据的状态设置为审查未通过,同时填写审查不通过的原因,等待用户的修改。如果审查通过这条元数据,将连接部署在总中心的元数据同步服务,如果连接不成功,则发送E-mail给总中心,通知总中心连接不成功。同时调用分中心本地的updateMetadataState函数,将该元数据的状态设置为待推送;如果连接成功,则调用总中心元数据同步服务的existedMetadata接口,通过元数据唯一标识判断"黄土高原水土保持统计数据集"是否在总中心存在。如果该元数据已经在总中心存在则调用总中心元数据同步服务的updateMetadata接口,将修改后的"黄土高原水土保持统计数据集"的XML更新到总中心,同时调用updateMetadataState接口,将该元数据的状态在总中心设置为待发布;如果该元数据在总中心不存在则调用总中心元数据同步服务的addMetadata接口,将"黄土高原水土保持统计数据集"元数据添加到总中心,同时调用updateMetadataState接口,将该元数据的状态在总中心设置为待发布;最后调用分中心本地的updateMetadataState函数,将该元数据的状态在分中心本地也设置为待发布。3.总中心对黄土高原区域分中心推送上来的"黄土高原水土保持统计数据集"元数据进行逐项的审査,特别是安全保密方面的审查。如果审査不通过,需要填写审查不通过的原因,然后总中心调用分中心的元数据同步更新服务。如果调用不成功则发E-mail给分中心的管理员,通知分中心远程服务连接不通;如果调用成功则通过分中心元数据同步更新服务的UpdateMetadataState接口将分中心的元数据状态设置为审查未通过,同时在总中心本地也将元数据状态设置为审査未通过。如果审査通过,则调用分中心元数据同步更新服务的UpdateMetadataState接口将分中心元数据状态设置为已发布,同时将总中心本地的元数据状态也设置为已发布。至此,黄土高原区域分中心的"黄土高原水土保持统计数据集"元数据经过分中心和总中心的两级审核对外发布了。不仅保证了分中心元数据向总中心的实时更新,而且确保了元数据的质量。4.如果用户或分中心在黄土高原区域分中心共享系统中对于已发布的"黄土高原水土保持统计数据集"元数据进行了修改,则元数据的状态被重新设置为待审查,重新回到第1步骤。5.如果用户或分中心在黄土高原区域分中心共享系统中想删除己发布的"黄土高原水土保持统计数据集"元数据,首先调用总中心地学元数据同步服务的UpdateMetadataState接口,将该元数据的状态设置为待删除,同时将分中心本地该元数据的状态也设置为待删除;总中心审査后,如果同意删除,则先调用黄土高原区域分中心元数据同步服务的ddeteMetadata接口,将该元数据首先在分中心删除,然后在总中心本地也将这条元数据删除。如果不同意删除,首先调用黄土高原区域分中心元数据同步服务的UpdateMetadataState接口,将该元数据在分中心的状态重新设置为已发布,然后在总中心本地也将该条元数据状态恢复为已发布。本发明还提供了一种实现上述同步方法的系统,包括地学元数据封装模块IOI,用于将地学元数据操作功能封装成的地学元数据同步服务,并部署该地学元数据同步服务在总中心和分中心的网络服务器上;地学元数据同步实施模块102,基于所述地学元数据同步服务进行分中心和总中心的地学元数据同步。虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。权利要求1、一种分布式地学元数据同步实现方法,其特征在于,包括地学元数据同步服务部署步骤,用于将地学元数据操作功能封装成地学元数据同步服务,并部署该地学元数据服务在总中心和分中心的网络服务器上;地学元数据同步实施步骤,基于所述地学元数据同步服务进行分中心和总中心的地学元数据同步。2、根据权利要求1所述的分布式地学元数据同步实现方法,其特征在于,所述地学元数据同步服务部署步骤进一步包括步骤S101,利用网络服务技术将地学元数据操作的功能函数封装成地学元数据同步服务;步骤S102,将所述封装成的地学元数据同步服务部署在总中心和分中心的网络服务器上。3、根据权利要求2所述的分布式地学元数据同步实现方法,其特征在于,所述地学元数据操作的功能函数主要包括判断元数据是否存在的函数existedMetdata、添加元数据的函数addMetadata、更新元数据的函数updateMetadata、删除元数据的函数deleteMetadata、获取元数据状态的函数getMetadataState、更新元数据状态的函数updateMetadataState和获取元数据的函数getMetadata。4、根据权利要求l、2或3所述的分布式地学元数据同步实现方法,其特征在于,所述地学元数据的标准包括标识信息、内容信息、分发信息、数据质量和元数据参考信息。5、根据权利要求2所述的分布式地学元数据同步实现方法,其特征在于,所述总中心和分中心根据分工不同分别部署功能不同的元数据同步服务,所述总中心的元数据同步服务的功能函数包括判断元数据是否存在的函数existedMetdata、添加元数据的函数addMetadata、更新元数据的函数updateMetadata、获取元数据状态的函数getMetadataState、更新元数据状态的函数updateMetadataState和获取元数据的函数getMetadata;所述分中心的元数据同步服务的功能函数包括更新元数据的函数updateMetadata、删除元数据的函数deleteMetadata、获取元数据的函数getMetadata、获取元数据状态的函数getMetadataState、更新元数据状态的函数updateMetadataState。6、根据权利要求1所述的分布式地学元数据同步实现方法,其特征在于,所述分布式地学元数据同步实施步骤进一步包括分中心将元数据实时推送或更新到总中心的步骤;总中心将元数据审查修改内容实时同步到分中心的步骤。7、根据权利要求6所述的分布式地学元数据同步实现方法,其特征在于,所述分中心将元数据实时推送或更新到总中心的步骤进一步包括分中心对汇交上来的元数据进行审查,审查通过后,调用总中心的元数据同步服务,将该元数据推送到总中心;分中心对已经发布的元数据进行修改时,同步改变元数据在总中心和分中心的状态,修改完成后,调用总中心的元数据同步服务,同步将该元数据的修改内容更新到总中心;分中心对已经发布的元数据进行删除时,需要向总中心提出删除请求,请求通过时,调用总中心的元数据同步服务,同步在总中心和分中心删除该元数据。8、根据权利要求6所述的分布式地学元数据同步实现方法,其特征在于,所述总中心将元数据审査修改内容实时同步到分中心的步骤进一步包括总中心对分中心推送上来的元数据进行审査,审查通过对外发布,同时自动调用分中心的元数据同步服务,更新该元数据在分中心的状态;总中心对已经发布的元数据进行修改时,不改变元数据的状态,修改完成后,同时自动调用分中心的元数据同步服务,将元数据的修改内容同步更新到分中心。9、根据权利要求6所述的分布式地学元数据同步实现方法,其特征在于,所述分布式地学元数据同步实施步骤还包括,在分中心或者总中心调用元数据同步服务失败时,自动发送调用失败信息到总中心或分中心的步骤。10、一种实现上述权利要求19中任一项所述方法的实现系统,包括地学元数据封装模块,用于将地学元数据操作功能封装成的地学元数据同步服务,并部署该地学元数据同步服务在总中心和分中心的网络服务器上;地学元数据同步实施模块,基于所述地学元数据同步服务进行分中心和总中心的地学元数据同步。全文摘要本发明公开了一种分布式地学元数据同步实现方法及系统,该方法包括地学元数据同步服务部署步骤,用于将地学元数据操作功能封装成的地学元数据同步服务,并部署该地学元数据服务在总中心和分中心的网络服务器上;地学元数据同步实施步骤,基于所述地学元数据同步服务进行分中心和总中心的地学元数据同步。本发明解决了分布式软件体系下地学元数据的实时推送和同步的问题。文档编号G06F17/30GK101625691SQ20091008866公开日2010年1月13日申请日期2009年7月7日优先权日2009年7月7日发明者敏冯,佳宋,廖顺宝,杨雅萍,诸云强申请人:中国科学院地理科学与资源研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1