面向企业级的开源WebGIS解决方案--MapGuide(对比分析)
在技术特点、功能、架构等方面,MapGuide与其他WebGIS产品有什么区别?本文主要从此角度来介绍MapGuide的特性,以供参考。
本人选择了比较熟悉的几款WebGIS产品:MapServer(开源项目)、MapXtreme(MapInfo)、ArcIMS(ESRI)、ArcServer(ESRI),与MapGuide(开源项目)相比较。
由于本人未对国内的WebGIS产品如SuperObjects.Net、MapGIS-IMS实践过,所以没有包含在对比产品内,如有阅者熟悉可提供资料,万分感谢。
1、产品总体概述
1)MapServer
开源项目;跨平台;支持ASP.NET、JAVA等的应用开发;框架结构可参阅本人有关对MapServer的分析文章。
2)MapXtreme
MapInfo商用平台(10-20W/1 RMB);包含MapXtreme for Windows和MapXtreme for Java两个版本;MapXtreme for Windows无C/S、B/S架构之分,既为C/S嵌入式开发的GIS产品,又为WebGIS产品;支持ASP.NET、JAVA等的应用开发。
3)ArcIMS
ESRI商用产品(15+/-W/1 RMB);跨平台支持;支持ASP.NET、JAVA等的应用开发;体系架构可参阅ESRI产品说明书。
4)ArcServer
ESRI商用产品;跨平台支持;ArcIMS的企业级版本;支持ASP.NET、JAVA等的应用开发;体系架构可参阅ESRI产品说明书。
5)MapGuide
开源项目;跨平台支持;MapServer的Enterprise版本;支持ASP.NET、JAVA等的应用开发;体系架构可参阅“面向企业级的开源WebGIS解决方案--MapGuide(介绍)”。
2、总体功能对比
通过功能参数对比分析。选择的技术参数综合了各大WebGIS产品服务特点,包含:
1)Metadata/Resource:元数据服务/资源服务
2)Feature:要素特性(MapTip功能表现、矢量流数据表现)
3)Image:地图绘制服务
4)Rendering:图层渲染服务
5)Editing:地图编辑服务
6)Routing:路径服务
7)Query:查询服务
8)Extract:裁减矢量数据并支持下载服务
9)WMS:支持并提供WMS服务
10)WFS:支持并提供WFS服务
11)DataInteroperability:支持多源数据访问,提供数据互操作服务
12)Tile:瓦片地图服务
|
MapGuide |
MapServer |
MapXtreme |
ArcIMS |
ArcServer |
|
|
Metadata/Resource |
Y |
Y |
Y |
Y |
Y |
|
Feature |
Y |
N |
? |
Y |
Y |
|
Image |
Y |
Y |
Y |
Y |
Y |
|
Rendering |
Y |
Y |
Y |
Y |
Y |
|
Editing |
? |
N |
Y |
* |
Y |
|
Routing |
? |
N |
* |
* |
Y |
|
Query |
Y |
Y |
Y |
Y |
Y |
|
Extract |
? |
N |
Y |
Y |
Y |
|
WMS |
Y |
Y |
Y |
Y |
Y |
|
WFS |
Y |
Y |
Y |
Y |
Y |
|
DataInteroperability |
Y |
Y |
N |
* |
* |
|
Tile |
Y |
* |
N |
N |
N |
参数说明:
Y-- 满足
N-- 本身不能满足
? -- 不知
* -- 本身不满足,可通过现有技术集成满足
对比表中*项解释如下:
1)MapServer-----Tile:基于MapServer的Ka-Map应用框架可以实现;
2)MapXtreme-----Routing:通过MapInfo Routing J Server或开发扩展算法实现;
3)ArcIMS-----Editing:通过ArcSDE Client API实现简单编辑;
4)ArcIMS-----Routing:通过NetEngine或开发扩展算法实现;
5)ArcIMS-----DI:通过DDE(FME的Web产品,ESRI采购SAFE的FME产品)实现;
6)ArcServer-----DI:通过ESRI的DI模块(FME)实现;
另外,ArcIMS的Feature Service和Image Service不能共用,ArcIMS以Feature Server发布的WebGIS可实现MapTip功能,但需JVM支持;MapGuide即可以Image绘制地图,又可实现MapTip功能,如下图:
通过对比表分析,可以得出:MapGuide在DataInteroperability和Tile具备独特的优势(实现Tile不存在技术难度,但将Tile作为定制服务封装于产品之中仅MapGuide,其他产品本身不具备)。
MapGuide通过FDO(FeatureDataObjects) Provider实现多源、不同空间数据结构的统一访问和表现,而不必将其他空间数据转换成私有的空间数据模型数据。
3、体系分层对比
1)数据访问通道
比较对象:FDO、FME、ArcSDE、MapInfo SpatialWare
支持访问数据格式的种类FME >= FDO > ArcSDE = SpatialWare;
作为通用的空间数据模型工具,FDO与FME相当,目前FDO支持的数据类型有SDF、SHP、GDAL、ODBC、MySQL、ArcSDE、WMS、WFS等,由于其开源性,可扩展Provider;FME支持几乎多数主流GIS产品数据格式的ETL(Extract、Transform、Load)。由于产品(项目)定位不同,FDO仅作为MapGuide的数据访问部件使用(目前还未挖掘其类似FME的潜力),FME的系列工具供其他GIS开发商集成(ESRI的DI模块就是FME)。
作为私有数据模型的访问通道,ArcSDE与MapInfo SpatialWare相当。
2)空间服务与造价
可参阅2的总体功能对比表。
从总体功能来说:ArcServer > MapGuide ? MapXtreme ? ArcIMS
ArcServer在空间分析功能上远远超过其他产品。
如果围绕空间数据的管理(采用企业级数据库管理空间数据)、采集更新、数据共享发布三大功能体系来实施GIS项目,那么可采用参考组合如下所示:
-----ArcServer
ArcServer + ArcSDE + 企业级数据库
-----ArcIMS
ArcIMS + ArcSDE + 企业级数据库 + (ArcEngine)
ArcIMS + ArcSDE可以构建功能相对有限的数据管理、数据采集应用系统;通过部署ArcEngine,可构建强大的类似ArcGIS Desktop的应用体系。
-----MapXtreme
MapXtreme for Windows + 企业级数据库
MapXtreme for Java + MapX + 企业级数据库
前面提到:MapXtreme for Windows无C/S、B/S架构之分,既为C/S嵌入式开发的GIS产品,又为WebGIS产品。
-----MapGuide
MapGuide + PostgreSQL(MySQL)+ QGIS
根据以上软件部署,实际软件造价高低依次:
ArcServer > ArcIMS > MapXtreme > MapGuide(基本为开源项目组合)
而以上部署存在的项目风险强弱:MapGuide > ArcServer ? ArcIMS ? MapXtreme
4、总结
1)MapGuide在功能服务上有三大优势:
--Feature与Image的共享服务;
--MapGuide的DI特性;
--MapGuide的Tile服务;
2)采用MapGuide实施GIS项目软件造价相对较低,但承担的风险同时也是较大的
--------------------
下一篇将写:如何制作自动安装mysql数据库的安装包
面向企业级的开源WebGIS解决方案--MapGuide(对比分析)的更多相关文章
- 手把手让你实现开源企业级web高并发解决方案(lvs+heartbeat+varnish+nginx+eAccelerator+memcached)
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://freeze.blog.51cto.com/1846439/677348 此文凝聚 ...
- zabbix(一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案)
zabbix 是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决 ...
- zabbix企业级的分布式开源监控解决方案 v5.0 LTS
目录 zabbix简介 服务模块 客户端守护进程 监控流程 功能拆解 安装 zabbix 5.0 LTS 参考官网 zabbix 5.0.12-1.el7 zabbix-server相关优化 1. 字 ...
- Zabbix企业级开源监控解决方案
Zabbix企业级开源监控解决方案 目录 Zabbix企业级开源监控解决方案 一.Zabbix 1. 监控系统的必要性 2. 监控软件的作用 3. Zabbix的定义 4. Zabbix的监控原理 5 ...
- 成熟企业级开源监控解决方案Zabbix6.2关键功能实战-上
@ 目录 概述 定义 监控作用 使用理解 监控对象和指标 架构组成 常用监控软件分析 版本选型 俗语 安装 部署方式 部署 zabbix-agent 概述 定义 Zabbix 官网地址 https:/ ...
- 我的开源GIS解决方案之路
好久没更新了,因为我在--憋--大--招--,对,就是今天这篇. 今天跟大家分享一下我的开源GIS解决方案经历. --额-- 考虑到单聊技术解决方案你可能会很快睡着,所以我今天会把重点放在我封装地图A ...
- Swift 3.0第1步,面向所有开发者开源
在移动开发中,Android开发一直比较受欢迎的原因之一就是其是一个开源的,有很多开源项目.代码可以用,这也是很多iOS开发者羡慕不已的地方.但值得庆贺的是,随着swift编程语言的发展,北京时间12 ...
- DICOM:DICOM三大开源库对比分析之“数据加载”
背景: 上一篇博文DICOM:DICOM万能编辑工具之Sante DICOM Editor介绍了DICOM万能编辑工具,在日常使用过程中发现,“只要Sante DICOM Editor打不开的数据,基 ...
- [转]C#打造一个开源webgis(一)系统架构
搭建一个GIS系统,为了能同时适应C/S和B/S架构,建议是做成自己的地图服务api方式,这样,一个或多个系统,就能通过统一的地图服务接口提供,而通信可以采用http的resful方式,而一个webG ...
随机推荐
- 20155206 2016-2017-2 《Java程序设计》第6周学习总结
20155206 2016-2017-2 <Java程序设计>第6周学习总结 教材学习内容总结 串流设计 流(Stream)是对「输入输出」的抽象,注意「输入输出」是相对程序而言的. Ja ...
- Linux - seq 预设外部命令
seq 是Linux 中一个预设的外部命令,一般用作一堆数字的简化写法. 常用参数: # 不指定起始数值,则默认为 1 -s # 选项主要改变输出的分格符, 预设是 \n -w # 等位补全,就是宽度 ...
- NOIP2016-D2-T2 蚯蚓(单调队列)
构建三个单调队列(用STL),分别储存未切的蚯蚓,切后的第一段,切后的第二段,即可简单证明其单调性. 证明:设$q$为单调队列$\because a_1 \geqslant a_2 \geqslant ...
- Django之初始庐山真面目
Django可以说是基于Python语言的一款非常成熟的框架,其功能之强大,应用之广泛,开发之便捷,可以说每一个细节都值得一赞 最重要的是,Django其实是我们学习Python过程中非常重要的部分之 ...
- 主流服务器apache,iis,tomcat,jboss,resion,weblogic,websphere的区别
在互联网高速发展的今天,不同种类的网站大量涌现,每个人都在享受着网络服务带来的便利.而创建自己的个性化网站的门槛不断降低.从事网站架构,这种当年的绝对“”高科技“”绝活.也从it人员的专利“”沦落“” ...
- 网页排版的时候不要忘了table标签
[概况] DIV+CSS是WEB设计标准,它是一种网页的布局方法.与传统中通过表格(table)布局定位的方式不同,它可以实现网页页面内容与表现相分离.但有时候在布局的时候,纯粹的用div感觉嵌套的太 ...
- springMVC初次搭建,产生错误
七月 11, 2016 11:12:58 下午 org.apache.catalina.startup.VersionLoggerListener log 信息: Server version: Ap ...
- shell函数中eof报错(warning: here-document at line 9 delimited by end-of-file (wanted `EOF'))
在shell编写函数时,函数中有eof和EOF,如果是在sublime编写按照格式tab缩进会有以下报错 解决办法: 取消函数中的tab缩进,在运行即可
- IE浏览器如何调试Asp.net的 js代码
不管我们开发什么项目,都需要使用调试.后端的调试比较简单.前端js调试稍微复杂了一点,但是也别怕,因为我们有很多调试前端js代码的浏览器工具.比如IE浏览器.firefox浏览器.chrome浏览器等 ...
- elasticsearch分别在windows和linux系统安装
WINDOWS系统安装1.安装JDKElastic Search要求使用较高版本JDK,本文使用D:\DevTools\jdk1.8.0_131,并配置环境变量 2.安装Elastic Search官 ...