关于地理信息系统的WebServices问题

showmeZ
ESRI在其产品线中提出G..Net的概念,通过WebServices的服务封装来解决异构平台下的异构地理信息系统平台间的信息共享问题。
但通过WebServices的服务封装,最多也只能利用目前已在UDDI上注册的Web地理信息服务,对于需要涉及几个不同部门不同操作系统和地理信息系统平台下的地理数据的整合应用该如何处理?
例如:一个应用需要A单位的水系图,B单位的宗地图,A、B两个单位基于不同的地理信息系统平台,假设一个是ArcGIS、一个是MapInfo,象这种数据整合该如何利用WebServices来实现呢?
请各位大侠指教!
tong
我想你是有点误解webservice的意思了,webservice有个最经典的比喻,比如现实生活中你要干洗衣服,你会拿洗衣店去,而不自己去买干洗 机,因为干洗机太贵,而且你也不需要每天都小洗衣服,自己买不划算,而现在的软件使用方式却正是强迫每个人要买干洗机。webservice的意思是,举 个实在的例子,(你可以在abode网站上找着),你要创建一个pdf,现在你不必买acrobat了,你可以向adobe提供的webservice提 交你的文件,他为你提供“洗衣服务”,然后将“洗好的衣服”返回给你,你便可以得到他为你创建的pdf文件了。
事实上esri提出g.net只是一个框架,并不是一种实际的技术。esri的webservice产品是arcweb,你可以去看看他的网站,好象是 arcweb.esri.com。其他包括arcgis或你说的mapinfo都不提供webservice(webservice是服务器端的产品, arcgis或mapinfo是桌面产品),至少在目前的版本里。
不过arcgis或mapinfo做为消费平台,可以从某个Webservice提供商那儿得到地图服务是可能的。比如Esri的arcweb为北美提供消费定位,可以用esri现有的Arcpad或arcgis或arcims客户端都可以消费它的服务。
n-tier的c/s架构(com+)可以实现你说的功能。在开发一个webservice的时候,它也可以使用其它厂商提供的webservice,这 样可以将多个webservice串到一块。然而这种实现的方法已不在webservice范围里了。目前微软所指的webservice技术仅包括 asp.net与remoting两种技术。微软提供了com+用于企业级的互操作。
tong
强调一句,现在的webservice应该是特指m$的这种技术。因为这种概念在n年前就由sun提出来了,sun甚至宣布nc(network computer)时代到了。然而sun没有发扬光大,却经m$一宣传,用了一个专门的名字叫WebService。这里的WebService得跟以前 的Web Service或咱们说的Web服务根本是两码子事情。俺知道你这里说的WebService是啥,因为你提到uddi,这是m$为了广告自己的 webservice产品开发的一个清单服务。已经有很多厂商开发自己的webservice。
showmeZ
能得到您这样的前辈指点,实在受益非浅!

不过,我还是有一事不明,请赐教!

我认为以目前国内的ARCGIS应用状况,还没法达到有一家单位能够充当“洗衣店”的角色。当然只是个人看法,不当之处请指正。

但现在的问题是,有人想基于MS的那套东西,来使用ARCGIS、MapInfo等工具开发Web Services的那套东西,这令我实在很疑惑。

对于一个要实战的系统而言,有可能开发出一个能够支持异构平台下不同空间数据整合的“洗衣店”吗?

即便是提供服务好了,如果一个Geomedia的图层要和一个ARCinfo Coverage进行叠加,其中又涉及两个部门,一个使用Geomedia,一个使用ARCGIS,用所谓的Web Services能实现这样的功能吗?用XML/GML能实现这样的功能吗?

我感觉不行,但没有进一步的证据,还请您多多指教!
tong
理论上讲可以通过remoting技术远程调用arcgis(或mapinfo)里的控件,但Esri一直申明arcgis是一个客户端产品,不得拿ArcObjects用于开发服务器端的产品,以后版本esri可能会有新的动作以支持服务器端
即便可以,也有诸多的限制,比如arcgis的被远程处理的对象应该具备某些特征,这不一定是现有arcobjects现在支持的。事实上,因为 arcobjects现在是通过com interop跟.net交互,如果用.net下的webservice,付出的效率上的开销是必须要考虑的。有国外的文章在做remoting ao,但都是尝试性的。一般也只能提供很简单的功能。事实上esri的一种比较可行的c/s方法,是mo+arcinfo ode (open development environment)。虽然技术老一点,却是最好的,而不是用ms$的东东来remoting ao。但是目前没有看着拿webservice将不同厂商的东西串到一块,如你在1楼所说。多个webservice来为某个Webservice服务, 应该是企业级com+的内容。。。。
xml或gml只提供一种在internet上传输数据的格式,它定义了一套规范,被internet两头的应用程序理解传输的内容而已。事实上在 remoting里,在对象向internet序列化的时候还需要一些协议,比如现在m$推荐的soap,或binary(用于intranet)。。。 webservice的一个好处是它使用了公开的现成的协议,而不象以往一样又自己开发了一套。
geomedia跟arcinfo 图层叠加的事,用所谓的webservice我感觉很便扭,在这里webservice用在哪,在geomdeia的机器上开发一个 webservice,将它的图层向外公开?在arcinfo机器上也开发一个,将coverage向外公开?然后在另外机器(逻辑上)再开发一个 webservice,从上述2个webservice上读取图层,再综合一下向外公布?何苦呢,,,为什么非要扯上webservice,无非是想借用 一个新名词,,,opengis一直致力于这样的事情,开发一个能互操作的平台,数据源可以是不同的软件商,。。。。也没见它弄出啥名堂里,,,
比较好的解决方法,比如arcgis机器上安装sde for coverage,geomedia有没有空间数据引擎我就不知道了,如果也能,然后通过一个软件,从它们的数据库(sde)里读取数据发布就可以达到目 的,在没有webservice这个名词前,大家一定想到所谓的web gis,就是它了,,,至于用asp .net还是传统的asp还是其它厂商的ims,就看大家要如何开发这个程序了,,,webservice在这里无非是个新名词,它只提供了实现 web gis的一种方法,而且也可能不是最佳的,,,呵呵,
我最近审稿,,,发现大家很喜欢用新名词,,,流行数据仓库,明明就是一个简单的数据库,也要往数据仓库上套一套,哈哈,,,
wlz
我觉得很多工作就是从头坐起的,不要别人提一个什么概念,大家都一窝蜂的往那挤!
现在作GIS服务的大多用成熟的概念和技术足够,而且容易实现和维护。你所说的功能很容易通过后端实现,干什么非要费力不讨好。如果这是在企业象你这种高成本的低成效的构思,只有那些傻boss才会采用。
要追esri的新理念是要付出很到代价的你需要不断的更新你的软件。不同服务器,不同系统之间的数据交流本身就不是搞应用的人要关心的,是opengis组织所一致关心的。
你想象叠加不同格式的图层,很有困难,别说是服务器形式,就是在单机的你都不可能做的很好。谁能告诉我,不经过转化直接将e00格式,shape格式, mapinfo格式geomedia格式cad格式的图层叠加在一起。或者说就是一样的格式,如果投影不一样你也不可能进行叠加!
showmeZ
多承各位前辈的指教,受益匪浅。

其实,我也一直认为想基于Web Services来实现异构平台下异构数据的整合有困难。但一直找不到说服主管的理由。

各位提了这么多好的建议,我想是有充分的说服力来否定目前这个不切实际的想法了。

其实,对于目前我所在单位的应用来说,也确实存在一个需要解决异构平台下异构数据整合应用的问题。目前要整合的数据格式比较多,有ARCINFO的、 MapInfo的、GeoMedia的等等。所以在我的另一个帖子里,我提出了另一个设想,希望基于ARCGIS平台,借助ARCSDE来实现异构平台下 的数据整合问题。

我的想法是,基于ARCSDE来管理ARCINFO的数据应该没有问题,MapInfo的数据可以用easyloader上载到Oracle数据库或通过 转换成E00的格式,变换成ARCINFO的格式,但工作量会比较大,而且信息会丢失,GeoMedia的数据可以通过GeoMedia的GDO直接导入 数据库。

现在的问题是数据可以存入数据库,但在整合上有很大的问题。

由于单位的意思是做一个GIS数据的交换中心,而交换中心就必然面对众多不同数据的转换问题,而且单位没有相关的技术力量,能承担的技术工作十分有限。面对这种情况,不知各位前辈能否指点迷津,看看在具体工作中如何解决?

谢谢!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值