CN101604323A - 一种地理空间模型整合与共享的方法及其系统 - Google Patents
一种地理空间模型整合与共享的方法及其系统 Download PDFInfo
- Publication number
- CN101604323A CN101604323A CNA2009100887438A CN200910088743A CN101604323A CN 101604323 A CN101604323 A CN 101604323A CN A2009100887438 A CNA2009100887438 A CN A2009100887438A CN 200910088743 A CN200910088743 A CN 200910088743A CN 101604323 A CN101604323 A CN 101604323A
- Authority
- CN
- China
- Prior art keywords
- model
- geographic space
- space model
- request
- dll
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000010354 integration Effects 0.000 claims abstract description 81
- 230000002452 interceptive effect Effects 0.000 claims abstract description 22
- 238000007726 management method Methods 0.000 claims description 27
- 238000004364 calculation method Methods 0.000 claims description 17
- 238000006243 chemical reaction Methods 0.000 claims description 17
- 238000012986 modification Methods 0.000 claims description 8
- 230000004048 modification Effects 0.000 claims description 8
- 238000013497 data interchange Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 description 34
- 238000012821 model calculation Methods 0.000 description 5
- 238000011160 research Methods 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 241000270295 Serpentes Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 238000007789 sealing Methods 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 238000003900 soil pollution Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Landscapes
- Instructional Devices (AREA)
Abstract
本发明涉及地理空间模型共享与集成的方法及系统,方法包括:步骤1,修改地理空间模型,实现对模型整合编程接口的支持;步骤2,加载地理空间模型,通过模型整合编程接口获取地理空间模型的相关元数据信息,将地理空间模型添加到模型共享服务中;步骤3,模型终端节点发送符合OGC标准规定的请求,模型共享服务接收请求,根据请求进行对应操作,将操作结果转换为符合OGC标准规定的数据返回给模型终端节点;如果请求中包含输入地理空间模型的数据,则将数据转换为模型整合编程接口定义的数据,如果请求要求对地理空间模型进行操作,则将请求的操作转换为模型整合编程接口定义的交互操作。本发明能够在网络上对地理空间模型进行整合与共享。
Description
技术领域
本发明涉及地球科学计算与分布式计算领域,尤其涉及一种地理空间模型整合与共享的方法及其系统。
背景技术
地学研究是人类认识周围的自然环境的重要手段,其研究成果对进一步开展研究和社会经济综合应用具有重要的价值。地学研究成果多样,包括:论文、专著、数据、模型不同形式。目前,对论文、专著、数据方面的共享和利用已经较为成熟,但模型的共享和利用则大大滞后,而造成这一现象的主要因素在于:缺少合理有效的地理空间模型整合与共享的方法,本发明中地理空间模型为地理空间科学计算模型的简称。
通过与常见计算模型相比较,地理空间模型除具有可运行、可重用、动态输出等公共特点以外,还具有以下特点:使用地理空间数据,数据结构复杂多样,数据量相对较大;大部分地理空间计算模型来自分散的地学科研人员,表现形式和实现方式不一;承载一定的地学过程或地学规律,具有知识版权。
因此,对地学模型的整合与共享的关键在于如何利用以地理空间数据为特征的地理空间模型。
从上个世纪末开始,面对当时已有的地理空间模型,许多组织或研究者尝试采用更有效的模型开发方法,以降低模型重用的难度,提高新模型开发和模型集成的效率,一些与地理空间模型共享和集成相关的研究和项目也相继开展。基于单机环境的模型集成系统,如美国地质调查局开发的MMS(Modular Modeling System,模块模型系统),出处The modular modelingsystem (MMS)-The physical process modeling component of adatabase-centered decision support system for water and powermanagement,Water,Air,&Soil Pollution,90(1),303-311;基于网络的模型共享与集成系统,如基于CORBA的GIS应用服务器的设计和实现,武汉理工大学学报(信息与管理工程版),2004,26(01),基于公共对象请求代理结构(Common Object Request Broker Architecture,CORBA)实现的地理信息系统(Geographic Information System,GIS)应用服务器。现有技术存在如下问题:
模型的共享和再利用只能够在单机或受限的环境中开展,如上述MMS系统仅适用于单机环境,而基于CORBA的GIS应用服务器则只能够通过COBRA协议进行访问,存在很大的局限性;
只适合于较为简单和基础的模型,采用封闭的数据交换和模型交互方法,如上述系统均采用自行设计的数据交换和功能交互方法;
模型的改造和利用均不能脱离模型体共享方式,只适合于能够获取到模型实体并能够在模型体上进行修改的情况,而大量不能够完全开放的模型则不能被集成,模型来源非常有限,如通过MMS共享模型需要在源代码的基础上进行修改,不仅受限于可获得源代码的模型,而且代码改造的工程量通常比较大。
发明内容
为解决上述问题,本发明提供了一种地理空间模型整合与共享的方法及其系统,能够在网络上对地理空间模型进行整合与共享。
本发明公开了地理空间模型共享与集成的方法,包括:
步骤1,修改地理空间模型,实现对用于定义整合要求的模型整合编程接口的支持;
步骤2,加载所述地理空间模型,通过所述模型整合编程接口获取所述地理空间模型的相关元数据信息,将所述地理空间模型添加到模型共享服务中;
步骤3,模型终端节点发送符合OGC标准规定的请求,模型共享服务接收所述请求,根据所述请求进行对应操作,将操作结果转换为符合OGC标准规定的数据返回给所述模型终端节点;如果所述请求中包含输入地理空间模型的数据,则将所述数据转换为所述模型整合编程接口定义的数据,如果所述请求要求对地理空间模型进行操作,则将请求的操作转换为所述模型整合编程接口定义的交互操作。
所述模型整合编程接口,用于定义每个地理空间模型提供共享功能的数据形式,实现交互操作的函数,以及地理空间模型对应的元数据描述。
所述1进一步为,通过直接方式或间接方式修改地理空间模型,实现对用于定义整合要求的模型整合编程接口的支持;
所述直接方式为,整理所述地理空间模型,在所述地理空间模型中添加用于支持所述模型整合编程接口的代码;
所述间接方式为,在所述地理空间模型中添加用于支持模型整合编程接口并同所述地理空间模型交互的代理模块。
所述步骤2中在通过所述模型整合编程接口获取所述地理空间模型的相关元数据信息后还包括:
步骤41,将所述地理空间模型的相关元数据信息存储到模型管理库中;
所述步骤3进一步为,
步骤42,模型终端节点发送符合OGC标准规定的获得地理空间模型的信息的请求;
步骤43,模型共享服务接收所述请求,从所述模型管理库中调用请求获得的信息,并将获得的信息按OGC标准规定返回给所述模型终端节点。
所述步骤3进一步为,
步骤51,模型终端节点发送符合OGC标准规定的调用地理空间模型的请求,
步骤52,模型共享服务接收所述请求,从所述请求中获得以OGC标准规定的空间数据交换格式表达的输入参数;
步骤53,模型共享服务将所述输入参数转化为符合所述模型整合编程接口定义的数据,用配置的控制参数和转化的输入参数初始化请求指定的地理空间模型的一个新建的模型实例或已建的空闲的模型实例,进行计算;
步骤54,模型共享服务将计算结果转换为OGC标准规定的空间数据交换表达方式,返回给所述模型终端节点。
所述步骤3进一步为,
步骤61,模型终端节点发送符合OGC标准规定的查询地理空间模型的运行状态的请求;
步骤62,模型共享服务获取所述请求对应的地理空间模型的实例的运行状态,将获得的运行状态转换为OGC标准规定的形式,返回所述模型终端节点。
本发明还公开了地理空间模型共享与集成的系统,所述地理空间模型经过修改,支持用于定义整合要求的模型整合编程接口,所述系统包括:模型终端节点和模型共享服务节点,
所述模型共享服务节点进一步包括模型服务功能模块;
所述模型服务功能模块进一步包括模型共享服务模块、模型管理库模块、模型运行池和GML编码/解码器,
所述模型管理库模块,用于加载所述地理空间模型,通过所述模型整合编程接口获取所述地理空间模型的相关元数据信息,将所述相关元数据信息存储到模型管理库中,将所述地理空间模型添加到模型共享服务中;
所述模型终端节点,用于发送符合OGC标准规定的请求,以及接收模型共享服务模块的返回结果;
所述模型共享服务模块,用于接收所述请求,根据所述请求进行对应操作,将操作结果转换为符合OGC标准规定的数据返回给所述模型终端节点;在请求中包含输入地理空间模型的数据时,启动所述GML编码/解码器将所述数据转换为所述模型整合编程接口定义的数据;在请求要求对所述地理空间模型进行操作时,请求所述模型运行池完成操作,启动所述GML编码/解码器将所述操作结果转换为符合OGC标准规定的数据,返回给所述模型终端节点;
所述GML编码/解码器,用于将数据在所述模型整合编程接口定义的形式和OGC标准规定的形式间转换;
所述模型运行池,用于将请求的操作转换为所述模型整合编程接口定义的交互操作。
所述模型整合编程接口,用于定义每个地理空间模型提供共享功能的数据形式,实现交互操作的函数,以及地理空间模型对应的元数据描述。
对所述地理空间模型的修改进一步为,通过直接方式或间接方式修改地理空间模型,实现对用于定义整合要求的模型整合编程接口的支持;
所述直接方式为,整理所述地理空间模型,在所述地理空间模型中添加用于支持所述模型整合编程接口的代码;
所述间接方式为,在所述地理空间模型中添加用于支持模型整合编程接口并同所述地理空间模型交互的代理模块。
在模型终端节点发送符合OGC标准规定的获得地理空间模型的信息的请求时;
所述模型共享服务模块进一步用于接收所述请求,从所述模型管理库中调用请求获得的信息,并将获得的信息按OGC标准规定返回给所述模型终端节点;
或者,
在模型终端节点发送符合OGC标准规定的调用地理空间模型的请求时,
所述模型共享服务模块进一步用于接收所述请求,从所述请求中获得以OGC标准规定的空间数据交换格式表达的输入参数,启动所述GML编码/解码器转化所述输入参数,调用所述模型运行池完成计算,启动所述GML编码/解码器转化计算结果,返回转化的计算结果给所述模型终端节点,
所述GML编码/解码器进一步用于将所述输入参数转化为符合所述模型整合编程接口定义的数据,将所述计算结果转换为OGC标准规定的空间数据交换表达方式,
所述模型运行池进一步用于用配置的控制参数和转化的输入参数初始化请求指定的地理空间模型的一个新建的模型实例或已建的空闲的模型实例,进行计算;
或者,
在所述模型终端节点发送符合OGC标准规定的查询地理空间模型实例的运行状态的请求时;
所述模型共享服务模块进一步用于请求所述模型运行池以获取所述请求对应的地理空间模型实例的运行状态,启动所述GML编码/解码器以将获得的运行状态转换为OGC标准规定的形式,返回所述模型终端节点。
本发明的有益效果在于,基于开放的地理空间过程交互标准和地理空间数据交换标准,实现在网络上对具有地理空间特征的地学模型的功能的分布式共享,使任意支持OGC(Open Geospatial Consortium,开放地理空间协会)标准的工具和系统都可以共享地学模型的计算能力,避免了传统封闭式调用接口对系统、平台的限制和依赖问题;通过模型整合编程接口,规范化整合不同内容和实现方式的地学空间模型;通过模型共享平台,实现对模型共享服务中模型计算过程管理、数据转换等方面的支持,使模型开发者仅需要关注如何实现模型整合的编程接口,降低了模型共享改造的工程量。
附图说明
图1是本发明的方法流程图;
图2是本发明的系统结构图;
图3是具体实施例中实现地理空间模型共享的系统结构图;
图4是具体实施例中实现地理空间模型整合的示意图。
具体实施方式
下面结合附图,对本发明做进一步的详细描述。
本发明方法包括:
步骤S101,修改地理空间模型,实现对模型整合编程接口的支持。
步骤S101有两种具体实施方式。
具体实施方式一,整理所述地理空间模型;在所述地理空间模型中添加用于支持所述模型整合编程接口的代码。
具体实施方式二,在所述地理空间模型中添加用于支持模型整合编程接口并同所述地理空间模型交互的代理模块。
模型整合编程接口,用于定义对地理空间模型进行整合的具体要求。地理空间模型通过实现对的模型整合编程接口的支持,从而提供整合需要的各项信息和调用方法。
本实施例用在模型整合编程接口中,用于定义每个地理空间模型提供共享功能的数据形式、用于交互操作的函数,以及相应的元数据描述。
元数据以标注(Annotation)的方式标注在操作或模型上,实现对模型、操作、数据不同层次的描述和限定。元数据标注包括分别用于标注模型(GeoProcess)、输入参数(GeoInput)和输出参数(GeoOutput)的3种标注类型。不同标注类型均包括基本的元数据信息,包括:标题(Title)、描述(Description)、关键词(Keywords)、相关元数据(Metadata),此外输入参数还包括必选(Required)信息,以标识是否是可选输入参数。
对于地理空间数据,在编程级别采用GeoAPI定义的地理要素类型作为地理空间数据的类型。对数据的操作包括3部分:参数设置和获取操作、计算函数(calculate函数)、以及可选函数。
交互操作包括输入操作、输出操作、执行命令操作。
交互操作中输入和输出参数分别以“setXXX”和“getXXX”的函数形式提供,且用相应的标注方式进行标注,可用参数类型见表1。
计算函数定义了抛出异常,但没有输入和输出参数。
通过实现模型整合编程接口中定义的可选函数,地理空间模型可以向模型共享服务提供其运行状态等信息,使共享服务能够准确地了解地理空间模型运行状态,并进行相应控制。该措施通常对于计算量大且计算时间长的地理空间模型。为了同时兼顾小计算量地理空间模型,将上述操作对应函数定义为可选状态。上述可选操作包括:
例如,可以不支持:
getPercent返回整形值,代表进度百分比。
getStatus返回字符串,代表当前的运行状态。
cancel没有返回值,通过调用该函数终端模型的当前运行过程。
表1
步骤S102,加载所述地理空间模型,通过所述模型整合编程接口获取所述地理空间模型的相关元数据信息,将所述地理空间模型添加到模型共享服务中。
步骤S102中在通过所述模型整合编程接口获取所述地理空间模型的相关元数据信息后还包括:将所述地理空间模型的相关元数据信息存储到模型管理库中。
步骤S103,模型终端节点发送符合OGC标准规定的请求,模型共享服务接收所述请求,根据所述请求进行对应操作,并将所述请求中用于输入到地理空间模型的数据转换为符合所述模型整合编程接口定义的数据,输入地理空间模型,将所述地理空间模型返回给模型终端节点的数据转换为符合OGC标准规定的数据返回给所述模型终端节点。
在模型终端节点请求获得地理空间模型的信息时,所述步骤S103进一步为,模型终端节点发送符合OGC标准规定的获得地理空间模型的信息的请求;模型共享服务接收所述请求,从所述模型管理库中调用请求获得的信息,并将获得的信息按OGC标准规定返回给所述模型终端节点。
在模型终端节点请求地理空间模型运行时,所述步骤S103进一步为,模型终端节点发送符合OGC标准规定的调用地理空间模型的请求;模型共享服务接收所述请求,从所述请求中获得以OGC标准规定的空间数据交换格式表达的输入参数;模型共享服务将所述输入参数转化为符合所述模型整合编程接口定义的数据,用配置的控制参数和转化的输入参数初始化请求指定的地理空间模型的一个计算实例,进行计算;模型共享服务将计算结果转换为OGC标准规定的空间数据交换表达方式,返回给所述模型终端节点。
在模型终端节点请求查询地理空间模型信息时,所述步骤3进一步为,模型终端节点发送符合OGC标准规定的查询地理空间模型的运行状态的请求;模型共享服务获取所述请求对应的地理空间模型的实例的运行状态,将获得的将获得的运行状态转换为OGC标准规定的形式,返回所述模型终端节点。
一种地理空间模型共享与集成的系统如图2所示,所述地理空间模型为经过修改,对用于定义整合要求的模型整合编程接口的支持的地理空间模型,所述系统包括:模型终端节点201和模型共享服务节点202。
模型整合编程接口,用于定义每个地理空间模型提供共享功能的数据形式,实现交互操作的函数,以及地理空间模型对应的元数据描述。
对地理空间模型的修改进一步为,通过直接方式或间接方式修改地理空间模型,实现对用于定义整合要求的模型整合编程接口的支持。所述直接方式为,整理所述地理空间模型,在所述地理空间模型中添加用于支持所述模型整合编程接口的代码。所述间接方式为,在所述地理空间模型中添加用于支持模型整合编程接口并同所述地理空间模型交互的代理模块。
模型共享服务节点202进一步包括模型服务功能模块100,所述模型服务功能模块100进一步包括模型共享服务模块101、模型管理库模块102、模型运行池103和GML编码/解码器104,如图3所示。GML(Geography MarkupLanguage)为地理标记语言。
模型管理库模块102,用于加载所述地理空间模型,通过所述模型整合编程接口获取所述地理空间模型的相关元数据信息,将所述相关元数据信息存储到模型管理库中,将所述地理空间模型添加到模型共享服务中。
模型终端节点201,用于发送符合OGC标准规定的请求,以及接收模型共享服务模块的返回结果。
模型共享服务模块101,用于接收所述请求,根据所述请求进行对应操作,将操作结果转换为符合OGC标准规定的数据返回给所述模型终端节点201;在请求中包含输入地理空间模型的数据时,启动所述GML编码/解码器104将所述数据转换为所述模型整合编程接口定义的数据;在请求要求对所述地理空间模型进行操作时,请求所述模型运行池103完成操作,启动所述GML编码/解码器104将所述操作结果转换为符合OGC标准规定的数据表达方式,返回给所述模型终端节点201。
GML编码/解码器104,用于将数据在所述模型整合编程接口定义的形式和OGC标准规定的形式间转换。
模型运行池103,用于将请求的操作转换为所述模型整合编程接口定义的交互操作。
在模型终端节点201发送符合OGC标准规定的获得地理空间模型的信息的请求时;模型共享服务模块101进一步用于接收所述请求,从所述模型管理库中调用请求获得的信息,并将获得的信息按OGC标准规定返回给所述模型终端节点201。
在模型终端节点201发送符合OGC标准规定的调用地理空间模型的请求时,模型共享服务模块101进一步用于接收所述请求,从所述请求中获得以OGC标准规定的空间数据交换格式表达的输入参数,启动所述GML编码/解码器104转化所述输入参数,请求模型运行池103完成计算,启动GML编码/解码器104转化计算结果,返回转化的计算结果给所述模型终端节点201;GML编码/解码器104进一步用于将所述输入参数转化为符合所述模型整合编程接口定义的数据,将所述计算结果转换为OGC标准规定的空间数据交换表达方式;模型运行池103进一步用于用配置的控制参数和转化的输入参数初始化请求指定的地理空间模型的一个新建的模型实例或已建的空闲的模型实例,进行计算。
具体而言,模型运行池103转换地理空间模型的参数,在OGC形式和模型整合编程接口之间转换,包括输入、输出和状态。并且,模型运行池103以队列方式管理地理空间模型进程,一个地理空间模型会有多个实例同时运行,以处理客户端的并发请求。而且由于创建新模型实例消耗资源,本发明将完成计算的模型实例,放到队列中,以在收到请求后先在队列中搜索空闲的模型实例,如果没有找到,才去创建新的模型实例,该完成计算的模型实例为空闲的模型实例。为了控制系统资源的占用,由该队列设置有最大队列长度。
在模型终端节点201发送符合OGC标准规定的查询地理空间模型的运行状态的请求时;模型共享服务模块101进一步用于请求模型运行池103以获取所述请求对应的地理空间模型的实例的运行状态,启动GML编码/解码器104以将获得的运行状态转换为OGC标准规定的形式,返回模型终端节点201。
本发明的一个具体实施例如下所述。
实现步骤S101的具体方式如下。
实施方式一,采用直接实现的方法实现对模型整合编程接口的支持。
直接实现方法为在地理空间模型体中直接实现对模型整合编程接口的支持。通过修改已有地理空间模型代码,添加对模型整合编程接口支持所需的函数。
通过向模型体添加一部分代码,使扩展后模型体程序能够提供模型整合编程接口定义的操作,达到共享模型到模型共享平台的要求。根据是否修改模型体,可以采取两种不同方法:直接继承和代理模块。其中直接继承方式通过直接修改模型体源代码,扩展模型体程序,实现模型整合编程接口;代理模块方式则通过中间代理模块中介模型体与模型共享平台的调用过程,由中间代理模块实现整合编程接口,模型体则维持原状。
如图4所示,第一模型A包括两个部分:第一模型编程接口A1和第一模型体A2。
具体的实施过程包括:
步骤S111,在第一模型体A2的基础上,整理待共享的地理空间模型。
整理的具体实施方法为分析待共享的模型体,根据修改模型的难度,例如是否可获取源代码,以及代码的模块化程度等,选择“直接扩展”或“代理模块”方法,实现对模型整合编程接口。
模型体指地理空间计算程序,是地理空间模型的算法的计算机实现,其表现方式是可执行或可调用的程序,如EXE二进制程序、可调用的DLL模块和JAVA模块(JAR文件)。
步骤S112,在该地理空间模型添加支持模型整合编程接口所需的代码,该添加部分为第一模型编程接口A1。
步骤S112进一步为,继承计算接口(calculate接口);添加输入和输出参数变量,设置输入参数对应的设置函数(set函数),设置输出参数对应的获取函数(get函数);提供必要的计算函数(calculate),在该函数内部启动模型计算流程;添加其他可选函数,支持取消计算过程、获取计算过程状态等可选操作。
在实施方式二中采用代理模块的方法。
代理模块实现方法为通过提供模型代理而间接实现对模型整合编程接口的支持。代理模块一方面实现对模型整合编程接口的支持,另一方面与模型体交互。在图4中,第二模型B通过代理模块实现了对模型整合编程接口的支持,因此包括:模型代理模块B1和第二模型体B2,模型代理模块B1进一步包括用于支持模型整合编程接口的第二模模型编码接口B11和用于与模型体进行交互的交互模块B12。
具体的实施步骤包括:
步骤S121,在第二模型体B2的基础上,开发交互模块B12。
步骤S121进一步为,选择交互方式,对于能够提供API的模型,采用直接调用或封装后间接调用的交互方式;对于不能够提供API的Console程序,通过设置参数或重定向输入输出流的交互方式;实现模型的交互过程和错误控制过程。
步骤S122,在该地理空间模型中添加对支持模型整合编程接口所需的代码,该添加部分为第二模型编程接口B11。
步骤S122进一步为,继承计算接口(Calculate接口);添加输入和输出参数变量,设置输入参数对应的设置函数(set函数),设置输出参数对应的获取函数(get函数);提供必要的计算函数(calculate函数),在该函数内部启动模型计算流程;添加其他可选操作,支持取消计算过程、获取计算过程状态等可选功能。
实现步骤S102具体方式如下。
在步骤S102具体实施方式中,将已经实现对模型整合编程接口支持的地理空间模型放到模型共享平台指定的目录下,模型共享平台自动搜索和加载模型,应用模型整合编程接口获取模型的相关元数据信息,将地理空间模型添加到模型共享服务中。
将地理空间模型发布为网络服务是一个较为艰巨的过程,涉及到许多具体的软件工程难题、以及地理信息和功能互操作、元数据等方面问题。同时也可以看到,每个模型的共享都需要重复这些与模型本身不相关的过程。如果能够将上述过程独立出来,使每个模型都专注于模型的自身功能,也便于实现模型的修改和更新,将简化地理空间计算模型共享难度。
模型共享平台位于模型共享服务节点,其任务是通过模型整合编程接口加载共享模型,并提供模型共享服务,如图3所示,该模型共享平台包括两部分,网络服务容器300和模型服务功能模块100,模型共享服务节点中还存储有地理空间模型,如图4,在另一个实施例中,地理空间模型位于同模型共享服务节点连接的存储节点,例如该存储节点为同模型共享服务节点网络连接的计算机。该地理空间模型为第一模型A或第二模型B,所有地理空间模型组成模型集合200。
网络服务容器300是网络服务运行的软硬件平台,包括:提供网络服务的硬件设备和能够提供J2EE支持的网络服务软件环境,例如JVM(JavaVirtual Machine,Java虚拟机)虚拟环境和Apache TOMCAT。
模型服务功能模块100针对地理空间模型共享的需要,提供辅助支持,包括:支持将实现了模型整合编程接口的地理空间模型发布为WPS形式的模型共享服务;在运行过程中,实现地理空间模型与地理空间模型服务之间的相互转换,使地理空间模型只需要面对模型编码接口而不需要考虑提供网络服务;为共享地理空间模型的进一步性能优化提供基础,能够在不修改模型的前提下,对共享模型访问过程进行性能优化,如:模型进程调度优化、并行化计算优化。
模型服务功能模块100包括:模型共享服务模块101、模型管理库模块102、模型运行池103、GML编码/解码器104。
模型共享服务模块101,用于接收模型终端节点以WPS操作的形式发送的请求,完成请求对应的处理过程,将结果以WPS操作的要求发送回模型终端节点。
模型管理库模块102,用于加载该地理空间模型,通过模型整合编程接口收集地理空间模型的元数据,形成用存储模型信息的模型管理库,并将所述地理空间模型添加到模型共享服务中。
模型运行池103,用于启动、监控和管理模型的运行实例,在收到网络请求后,负责将模型共享服务的请求操作转换为对模型整合编程接口定义的交互操作,从而调用地理空间模型完成请求;同样将模型整合编程接口的反馈操作转换为模型共享服务的操作,然后传递到模型终端节点。
GML编码/解码器104,用于实现符合OGC GML 3表达方式的地理信息与模型整合编程接口定义的编码形式之间的相互转换。
GML 3作为地理空间数据的交换格式。
实现步骤S103具体实施如下所述。
以OGCWPS(Web Processing Service,网络地理空间处理服务)作为地理空间模型的互操作交互规范,避免由于封闭式交互方法带来的互操作限制。以OGC的GML3作为地理空间数据的交换格式,支持对矢量Feature和栅格Raster等不同形式的地理空间数据作为模型的输入和输出参数。
模型终端节点通过WPS交互操作访问和调用共享地理空间模型。在收到符合WPS标准的模型交互请求后,模型共享平台通过调用模型管理库模块102获取模型信息,通过模型运行池103启动新的模型计算过程,通过GML编码/解码器104实现服务接口的交换数据格式(GML)与模型整合编程接口之间的转换,然后通过模型整合编程接口调用和操作地理空间模型,从而实现对不同地理空间模型的一致化共享和交互。最终的计算结果则以相反的过程以WPS标准规定的格式返回。
针对模型服务的3种主要操作,模型服务功能模型100完成不同的处理操作,以实现对这些操作的支持。
操作一,获取地理空间模型的服务元数据(GetCapabilities)。
模型共享服务模块101在收到该操作请求后,从模型管理库存储的共享服务的配置参数中获取服务的基本元数据信息,基本元数据信息包括,模型共享服务的提供方信息、地理空间模型其他操作的调用方式、可用地理空间模型简要列表;同时调用模型管理库中共享的地理空间模型的简要信息,最后生成WPS操作要求信息形式,返回模型终端节点。
操作二,获取地理空间模型的计算功能的元数据(DescribeProcess)。
模型共享服务模块101在收到该操作请求后,调用模型管理库中请求指定的地理空间模型的详细信息,最后生成WPS操作要求信息形式,返回模型终端节点。
指定地理空间模型的详细元数据信息包括:模型功能的描述信息、关联信息以及调用模型的方式、允许的控制参数和输入输出参数,其中控制参数包括,是否异步计算的参数。
操作三,调用地理空间模型和查询地理空间模型运行状态(Execute)。
如果模型终端节点发送请求是启动模型运行过程请求,模型共享服务模型101在收到该操作请求后,调用GML编码/解码器104将输入参数转换为符合模型整合编程接口要求的形式,然后调用模型运行池103,用控制参数和转换后的输入参数初始化请求指定的地理空间模型的一个计算实例,继而启动模型计算过程。如模型终端节点发送请求要求采用异步调用方式,则根据模型的运行状态生成WPS操作要求信息形式,返回模型终端节点;否则,等待直至计算过程结束后,根据模型终端节点的获取地理空间模型运行结果请求,调用GML编码/解码器104进行编码后发送回模型终端节点。
如果模型终端节点发送请求是查询地理空间模型的运行状态请求,模型共享服务模型101调用模型运行池103,获取请求对应的地理空间模型的实例的运行状态,最后生成WPS操作要求信息形式,返回模型终端节点。
如果模型终端节点发送请求是获取模型运行结果请求,模型共享服务模型101调用模型运行池103获取对应地理空间模型实例,然后获取地理空间模型的输出结果,根据模型终端节点的请求,调用GML编码/解码器104将该输出结果编码后发送回模型终端节点。
本领域的技术人员在不脱离权利要求书确定的本发明的精神和范围的条件下,还可以对以上内容进行各种各样的修改。因此本发明的范围并不仅限于以上的说明,而是由权利要求书的范围来确定的。
Claims (10)
1.一种地理空间模型共享与集成的方法,其特征在于,包括:
步骤1,修改地理空间模型,实现对用于定义整合要求的模型整合编程接口的支持;
步骤2,加载所述地理空间模型,通过所述模型整合编程接口获取所述地理空间模型的相关元数据信息,将所述地理空间模型添加到模型共享服务中;
步骤3,模型终端节点发送符合OGC标准规定的请求,模型共享服务接收所述请求,根据所述请求进行对应操作,将操作结果转换为符合OGC标准规定的数据返回给所述模型终端节点;如果所述请求中包含输入地理空间模型的数据,则将所述数据转换为所述模型整合编程接口定义的数据,如果所述请求要求对地理空间模型进行操作,则将请求的操作转换为所述模型整合编程接口定义的交互操作。
2.如权利要求1所述的地理空间模型共享与集成的方法,其特征在于,
所述模型整合编程接口,用于定义每个地理空间模型提供共享功能的数据形式,实现交互操作的函数,以及地理空间模型对应的元数据描述。
3.如权利要求1所述的地理空间模型共享与集成的方法,其特征在于,所述1进一步为,通过直接方式或间接方式修改地理空间模型,实现对用于定义整合要求的模型整合编程接口的支持;
所述直接方式为,整理所述地理空间模型,在所述地理空间模型中添加用于支持所述模型整合编程接口的代码;
所述间接方式为,在所述地理空间模型中添加用于支持模型整合编程接口并同所述地理空间模型交互的代理模块。
4.如权利要求1所述的地理空间模型共享与集成的方法,其特征在于,
所述步骤2中在通过所述模型整合编程接口获取所述地理空间模型的相关元数据信息后还包括:
步骤41,将所述地理空间模型的相关元数据信息存储到模型管理库中;
所述步骤3进一步为,
步骤42,模型终端节点发送符合OGC标准规定的获得地理空间模型的信息的请求;
步骤43,模型共享服务接收所述请求,从所述模型管理库中调用请求获得的信息,并将获得的信息按OGC标准规定返回给所述模型终端节点。
5.如权利要求1所述的地理空间模型共享与集成的方法,其特征在于,
所述步骤3进一步为,
步骤51,模型终端节点发送符合OGC标准规定的调用地理空间模型的请求,
步骤52,模型共享服务接收所述请求,从所述请求中获得以OGC标准规定的空间数据交换格式表达的输入参数;
步骤53,模型共享服务将所述输入参数转化为符合所述模型整合编程接口定义的数据,用配置的控制参数和转化的输入参数初始化请求指定的地理空间模型的一个新建的模型实例或已建的空闲的模型实例,进行计算;
步骤54,模型共享服务将计算结果转换为OGC标准规定的空间数据交换表达方式,返回给所述模型终端节点。
6.如权利要求1所述的地理空间模型共享与集成的方法,其特征在于,
所述步骤3进一步为,
步骤61,模型终端节点发送符合OGC标准规定的查询地理空间模型的运行状态的请求;
步骤62,模型共享服务获取所述请求对应的地理空间模型的实例的运行状态,将获得的运行状态转换为OGC标准规定的形式,返回所述模型终端节点。
7.一种地理空间模型共享与集成的系统,其特征在于,所述地理空间模型经过修改,支持用于定义整合要求的模型整合编程接口,所述系统包括:模型终端节点和模型共享服务节点,
所述模型共享服务节点进一步包括模型服务功能模块;
所述模型服务功能模块进一步包括模型共享服务模块、模型管理库模块、模型运行池和GML编码/解码器,
所述模型管理库模块,用于加载所述地理空间模型,通过所述模型整合编程接口获取所述地理空间模型的相关元数据信息,将所述相关元数据信息存储到模型管理库中,将所述地理空间模型添加到模型共享服务中;
所述模型终端节点,用于发送符合OGC标准规定的请求,以及接收模型共享服务模块的返回结果;
所述模型共享服务模块,用于接收所述请求,根据所述请求进行对应操作,将操作结果转换为符合OGC标准规定的数据返回给所述模型终端节点;在请求中包含输入地理空间模型的数据时,启动所述GML编码/解码器将所述数据转换为所述模型整合编程接口定义的数据;在请求要求对所述地理空间模型进行操作时,请求所述模型运行池完成操作,启动所述GML编码/解码器将所述操作结果转换为符合OGC标准规定的数据,返回给所述模型终端节点;
所述GML编码/解码器,用于将数据在所述模型整合编程接口定义的形式和OGC标准规定的形式间转换;
所述模型运行池,用于将请求的操作转换为所述模型整合编程接口定义的交互操作。
8.如权利要求7所述的地理空间模型共享与集成的系统,其特征在于,
所述模型整合编程接口,用于定义每个地理空间模型提供共享功能的数据形式,实现交互操作的函数,以及地理空间模型对应的元数据描述。
9.如权利要求7所述的地理空间模型共享与集成的系统,其特征在于,对所述地理空间模型的修改进一步为,通过直接方式或间接方式修改地理空间模型,实现对用于定义整合要求的模型整合编程接口的支持;
所述直接方式为,整理所述地理空间模型,在所述地理空间模型中添加用于支持所述模型整合编程接口的代码;
所述间接方式为,在所述地理空间模型中添加用于支持模型整合编程接口并同所述地理空间模型交互的代理模块。
10.如权利要求1所述的地理空间模型共享与集成的系统,其特征在于,
在模型终端节点发送符合OGC标准规定的获得地理空间模型的信息的请求时;
所述模型共享服务模块进一步用于接收所述请求,从所述模型管理库中调用请求获得的信息,并将获得的信息按OGC标准规定返回给所述模型终端节点;
或者,
在模型终端节点发送符合OGC标准规定的调用地理空间模型的请求时,
所述模型共享服务模块进一步用于接收所述请求,从所述请求中获得以OGC标准规定的空间数据交换格式表达的输入参数,启动所述GML编码/解码器转化所述输入参数,调用所述模型运行池完成计算,启动所述GML编码/解码器转化计算结果,返回转化的计算结果给所述模型终端节点,
所述GML编码/解码器进一步用于将所述输入参数转化为符合所述模型整合编程接口定义的数据,将所述计算结果转换为OGC标准规定的空间数据交换表达方式,
所述模型运行池进一步用于用配置的控制参数和转化的输入参数初始化请求指定的地理空间模型的一个新建的模型实例或已建的空闲的模型实例,进行计算;
或者,
在所述模型终端节点发送符合OGC标准规定的查询地理空间模型实例的运行状态的请求时;
所述模型共享服务模块进一步用于请求所述模型运行池以获取所述请求对应的地理空间模型实例的运行状态,启动所述GML编码/解码器以将获得的运行状态转换为OGC标准规定的形式,返回所述模型终端节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100887438A CN101604323B (zh) | 2009-07-10 | 2009-07-10 | 一种地理空间模型整合与共享的方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100887438A CN101604323B (zh) | 2009-07-10 | 2009-07-10 | 一种地理空间模型整合与共享的方法及其系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101604323A true CN101604323A (zh) | 2009-12-16 |
CN101604323B CN101604323B (zh) | 2011-07-20 |
Family
ID=41470055
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100887438A Expired - Fee Related CN101604323B (zh) | 2009-07-10 | 2009-07-10 | 一种地理空间模型整合与共享的方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101604323B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106790541A (zh) * | 2016-12-22 | 2017-05-31 | 武汉斗鱼网络科技有限公司 | 数据获取方法及装置 |
CN106909645A (zh) * | 2017-02-21 | 2017-06-30 | 中国科学院电子学研究所 | 一种可扩展定义的时空数据统一组织方法 |
CN108053120A (zh) * | 2017-12-15 | 2018-05-18 | 阿里巴巴集团控股有限公司 | 一种模型整合方法及装置 |
CN109088905A (zh) * | 2017-06-14 | 2018-12-25 | 浙江贵仁信息科技股份有限公司 | 一种基于云计算的数学模型服务系统及数学模型管理方法 |
CN114996345A (zh) * | 2022-05-31 | 2022-09-02 | 中国地质大学(武汉) | 基于ogc网络处理服务的在线服务组合方法 |
CN116450613A (zh) * | 2023-04-18 | 2023-07-18 | 北京卫星信息工程研究所 | 面向资源的地理样本数据服务方法、设备及存储介质 |
-
2009
- 2009-07-10 CN CN2009100887438A patent/CN101604323B/zh not_active Expired - Fee Related
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106790541A (zh) * | 2016-12-22 | 2017-05-31 | 武汉斗鱼网络科技有限公司 | 数据获取方法及装置 |
CN106790541B (zh) * | 2016-12-22 | 2019-06-21 | 武汉斗鱼网络科技有限公司 | 数据获取方法及装置 |
CN106909645A (zh) * | 2017-02-21 | 2017-06-30 | 中国科学院电子学研究所 | 一种可扩展定义的时空数据统一组织方法 |
CN106909645B (zh) * | 2017-02-21 | 2019-03-26 | 中国科学院电子学研究所 | 一种可扩展定义的时空数据统一组织方法 |
CN109088905A (zh) * | 2017-06-14 | 2018-12-25 | 浙江贵仁信息科技股份有限公司 | 一种基于云计算的数学模型服务系统及数学模型管理方法 |
CN108053120A (zh) * | 2017-12-15 | 2018-05-18 | 阿里巴巴集团控股有限公司 | 一种模型整合方法及装置 |
CN108053120B (zh) * | 2017-12-15 | 2020-09-01 | 阿里巴巴集团控股有限公司 | 一种模型整合方法及装置 |
CN114996345A (zh) * | 2022-05-31 | 2022-09-02 | 中国地质大学(武汉) | 基于ogc网络处理服务的在线服务组合方法 |
CN114996345B (zh) * | 2022-05-31 | 2024-04-16 | 中国地质大学(武汉) | 基于ogc网络处理服务的在线服务组合方法 |
CN116450613A (zh) * | 2023-04-18 | 2023-07-18 | 北京卫星信息工程研究所 | 面向资源的地理样本数据服务方法、设备及存储介质 |
CN116450613B (zh) * | 2023-04-18 | 2023-12-19 | 北京卫星信息工程研究所 | 面向资源的地理样本数据服务方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN101604323B (zh) | 2011-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Agliamzanov et al. | Hydrology@ Home: a distributed volunteer computing framework for hydrological research and applications | |
CN101604323B (zh) | 一种地理空间模型整合与共享的方法及其系统 | |
Yue et al. | Service-oriented model-encapsulation strategy for sharing and integrating heterogeneous geo-analysis models in an open web environment | |
Qin et al. | A strategy for raster-based geocomputation under different parallel computing platforms | |
JP2012234536A (ja) | セマンティックモデルおよびルールからコードを生成するための方法 | |
CN108932588A (zh) | 一种前后端分离的水电站群优化调度系统及方法 | |
Hildebrandt et al. | Compression-aware in-memory query processing: Vision, system design and beyond | |
Yang et al. | Launchpad: A programming model for distributed machine learning research | |
CN102253974B (zh) | 一种地理模型网络服务的动态组合方法 | |
CN109977510B (zh) | 一种基于gis技术的水文模型网络发布方法 | |
CN103268245B (zh) | 一种气象数据快速处理流程化的方法 | |
Fredriksson et al. | Seamless distributed computing from the geometry of interaction | |
Archibald et al. | Integrating deep learning in domain sciences at exascale | |
Danelutto et al. | Algorithmic skeletons meeting grids | |
González-Abad et al. | A container-based workflow for distributed training of deep learning algorithms in HPC clusters | |
Watson et al. | Flagship computational models and machine architecture | |
Nativi et al. | Unidata’s common data model mapping to the ISO 19123 data model | |
CN117291260A (zh) | 深度学习框架适配方法、装置、设备、存储介质和产品 | |
Taneja et al. | Linked enterprise data model and its use in real time analytics and context-driven data discovery | |
Brady et al. | SmartGridRPC: The new RPC model for high performance Grid computing | |
Yu et al. | Workflow management and resource discovery for an intelligent grid | |
Goli | Visioncpp: A sycl-based computer vision framework | |
CN108804788B (zh) | 一种基于数据细胞模型的Web服务演化方法 | |
Rashid et al. | A multi-objective framework for characterization of software specifications | |
Zhang et al. | A distributed computation of the shortest path in large-scale road network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110720 |