美国环境系统研究所(Environmental Systems Research Institute,Esri)是世界最大的GIS技术提供商,全球有超过百万用户正在使用其产品、技术,并且2000个领域开发商、咨询服务商、增值代理以及数据提供商共同构成了Esri强大的技术支持与服务网络。Esri多层次、可扩展,功能强大、开放性的ArcGIS产品已成为提高各国政府管理和企业效率的重要工具。ArcGIS 10成为全球首款支持云架构的GIS平台,在Web 2.0时代实现了GIS由共享向协同的飞跃,具备了真正的3D建模、编辑和分析能力以及真正的RS、GIS一体化。
Esri产品在高速增长中保持平衡,GIS操作可以在手机、桌面乃至整个企业级层面上完成。在云计算时代,GIS软件及数据通过应用服务器和网络服务器集中管理,向任意数量的用户提供各种功能与服务,如图1-3所示,包括管理GIS数据库,网络发布地理信息,数据挖掘,分布式数据管理和分析等。GIS服务器与主流IT标准兼容,可与其他企业软件(网络服务器、DBMS和企业应用框架,包括J2EE和微软.NET)相互集成。
图1-3 Esri的云计算产品
Esri发布了ArcGIS Online平台,让用户可以轻松地共享他们的数据、地图和其他地理信息,并且为更广泛的用户群提供了一个在操作简便的网络环境中获得并利用这些地图进行工作的平台。用户可以轻松获得内容、创建地图和聚合程序,并开展小组合作。ArcGIS Online是开放式平台,可以很容易地集成到知识工作者和决策者的各种工作模式中。目前,Esri进一步增强ArcGIS Online的功能与性能,包括:能够自动提供托管服务(地图切片和要素服务);支持OGC网络服务;支持多种开放数据格式(如shapefiles、GPX数据、CSV表格和KML);支持处理大型影像数据集(任何格式)的在线服务;利用符号和其他设计元素轻松创建地图;能够进行在线地理编码、路线选择和几何操作。
云计算作为一种新平台出现,云中制图正日益成为地理学者应用GIS的一种新模式。利用云计算,将有机会重塑GIS应用的创建和使用模式,这对挖掘和使用空间数据及地理空间分析将产生深远的影响。云提供了使用和发布动态数据的潜能,这包括使用实时信息进行分析和建模,可以用于服务多个目标和受众的应用程序中,在基础可扩展的架构上实现高流量。Esri更将其关键任务的灾害响应视为支持云中部署的地理空间应用程序操作。利用云基础设施,看似可以获得无限计算容量,因此可以在短时间内作为传统处理程序进行分析计算。
起初,业界猜测云GIS只对中小型企业、教育机构、非营利机构和新创企业有吸引力。但随着云计算日益成为商业主流业务,云托管内容和云提供内容的潜力,无论大小,都将成为企业面临的重要现实。对于地理空间技术专家来说,从理论上来讲,云GIS意味着数据将永远可用,永远可访问。对于移动工作者来说,云提供一个提高工作流程效率和协作的广阔领域。在云中共享数据和应用,可以根据需求立即发现、查看、编辑、保存更改并调用地理处理功能。Esri认识到云计算将为地理专家和技术专家提供潜能。因此,将继续重点投资研发跨多个供应商的基于云的解决方案和服务,以满足地理空间社区的需要,推动GIS向新兴行业和领域发展。
Esri致力于利用云平台为用户的客户提供技术和供应商选择。Esri升级了为亚马逊网络服务(AWS)平台提供服务的ArcGIS Server产品。通过支持威睿(VMware)虚拟化技术,Esri已经在VCE Vblock平台上成功测试了ArcGIS Server。此外,ArcGIS Server 10.1的设计和构架完全支持云部署,并且经过了私有云服务、亚马逊EC2和微软Windows Azure的测试和验证。在私有云方面,用户将能够在ArcGIS Online上创建自己的基础设施环境,并利用ArcGIS门户(Portal for ArcGIS)创建私有地理空间内容管理系统。
Esri使ArcGIS Online成为一个完整的软件即服务(SaaS)应用程序,允许用户创建和共享其在云环境中的网络地图和数据,包括存储、管理和托管服务。该系统使用户能够轻松发布内容为他人使用,解锁所选处理业务,分享知识,从而可利用低成本的云基础设施扩展自身的能力。用户可利用新型灵活的和可扩展的部署方式来扩展他们的系统,并通过更广泛地使用地理信息来增加其GIS的价值。
利用这些新功能,任何人将能够直接把其地理数据上载到ArcGIS Online,并自动转换成网络地图。上载信息可以是利用ArcGIS桌面的ArcMap应用程序创建的地图,或简单的地图、列表数据,如shapefiles、CSV文件或电子表格等。一旦添加此信息,ArcGIS Online会自动创建一张网络地图,可以发布为一个Web服务,为目标用户或广泛的用户使用。这些地图可以共享,或与其他图层合并后,绘制出内容更丰富的网络地图,如图1-4所示。
图1-4 ArcGIS Online在线制图
ArcGIS Server提供的是一个按需架构的可用组件。用户可以将其缓存地图切片上传到相应的计算供应商,例如亚马逊的S3,在云端创建数据中心。通过Web ADF或适当修改的ArcGIS API,就可以直接使用地图服务。
运行在RHEL5上的ArcGIS Server的Java平台可以直接为亚马逊弹性云计算(EC2)来配置。这个配置通过专业服务合同(Professional Services)来支持。由于通过Internet连接来访问ArcGIS Server服务,因此Web ADF应用可以配置到云端。这个配置只能通过专业服务(Professional Services)来支持。ArcGIS Server的Java平台架构设计将遵循这样的方式:即有效的运行服务,并充分利用亚马逊EC2的云架构所提供的优势。在不中断服务的情况下,服务器进程也可以从EC2上动态、实时地添加或移除。
ArcGIS Server的安装将AMI/EC2进行优化,专门设计云/可视化环境的管理,为ArcGIS Server提供共享配置、数据等的机制,特别是为亚马逊EC2、S3设计的ArcGIS Server平台将更加适应从Java架构到Linux操作系统的运行。ArcGIS Server产品历史和云历史现在将在群集进程内同步,并与云端系统一致,如Server Objects Extensions的热点部署、实用软件对象等。
ArcGIS提供了全系列的软件体系,对于云计算架构来说,基础设施、平台、应用程序,都可以在公共云上实现。用户端可以通过多种方式访问云端的服务,如图1-5所示。
图1-5 ArcGIS的云产品
1.Esri提供了云计算产品的解决方案
(1)IaaS:缓存的地图切片可以上传到云端,并在云端建立数据中心。
(2)SaaS:Esri针对SaaS目前提供了Esri Business Analyst Online,允许用户结合全美国统计专题、消费者数据以及商业数据,将按需分析、报表和地图通过Web进行传递。
(3)PaaS:通过ArcGIS Web Mapping APIs,如JavaScript、Flex、Silverlight/WPF等来提供,并在ArcGIS Online中管理。
(4)软件加服务(S+S):Esri已经提供了软件加服务的模式,可以让用户按需配置所需要的服务。Esri的ArcGIS Online Map和GIS Services使S+S的用户可以快速访问制图设计、无缝的基础底图,并可以添加用户自己的数据到Esri的按需配置产品上。MapIt是另一个软件加服务的应用,让业务信息通过访问Esri和Bing Maps的在线数据、基础底图和任务服务,来进行显示和更加精确的分析,并支持Windows Azure平台和Microsoft的SQL Azure。作为一个社区云,ArcGIS的在线内容共享项目可以让用户或组织享受公共云的地理数据内容。亚马逊的EC2和S3计算和存储服务,可以让Esri进行7×24小时的访问和内容维护,如图1-6所示。
图1-6 ArcGIS的云计算产品解决方案
2.ArcGIS Online
ArcGIS Online是Esri公司的在线的公共资源网站,提供了一站式的地图云服务。通过ArcGIS Online,用户可以查找、共享和组织地理内容,来建立GIS应用。可以通过ArcGIS.com访问Esri和其他GIS用户所发布的地图、应用和工具,并可共享地图内容。通过ArcGIS Online,用户可以:
3.ArcGIS Sharing
ArcGIS Sharing是ArcGIS的社区协作模式,可以实现浏览和使用Esri和ArcGIS用户发布的地图、上传地图和注册ArcGIS Server服务、共享地图和数据、创建在线地图。
4.ArcGIS Web Mapping APIs
ArcGIS Web Mapping APIs包括Flex、JavaScript和Silverlight,可用来创建富互联网应用。开发人员可以免费地访问ArcGIS Web制图内容,包括在线帮助系统、API内容、代码库、示例代码和配置应用模板。用制图应用开发API,用户可访问标准的ArcGIS Online地图和任务服务。任务服务包括地理编码服务、路径分析服务、专题统计数据分析和报表服务等。
5.ArcGIS Business Analyst Online
ArcGIS Business Analyst Online是Esri所提供的一个基于SaaS的解决方案,是基于Flex API之上开发的云中应用程序,提供了软件即服务的内容,商业云架构如图1-7所示。
图1-7 ArcGIS商业云架构
Business Analyst Online提供的API可用来定制包含统计数据报表能力的商业Web应用。可以用于统计人口和位置信息,按照邮政编码、指定区域、驾车时间或距离等来进行统计。报表的内容可以通过PDF、Excel表格或XML流来提供。结合数据与分析能力,可以实现新的商业点的选址分析。
6.ArcLogistics Online
ArcLogistics是Esri提供的解决物流配送车辆线路优化的解决方案软件。ArcLogistics实现多点、多线路的线路配送,并充分考虑车辆的使用情况,如车辆容载率、车辆成本、配送时间、动态分配调节配送、配送区域规划问题等,并提供从配送规划线路到车辆配送导航问题的整体解决方案。ArcLogistics Online是Esri除了部署桌面产品之外所提供的一个富客户端软件解决方案,直接使用ArcGIS Online所提供的地图、地理编码和路径服务。这些服务通过云端服务提供,并作为SaaS模型的支持客户端软件。Esri还提供另外一种部署模式,与上面的部署模式类似,也是一个富客户端软件解决方案,但是是由用户采用ArcGIS Server的服务所发布出来的自由的地图服务、地理编码服务和路径服务(需要有ArcGIS Server的网络扩展模块)。
ArcLogistics Online作为一种SaaS模式提供的服务,有以下优势:
7.云端缓存
对于构建GIS系统来说,众所周知,最重要的是数据。随着网络技术的发展,地图缓存已经成为提高地图服务访问性能的一个重要技术手段。那么缓存地图是否可以部署到云端,或是否支持通过云端访问缓存地图,缓存地图与动态地图是否可以无缝结合应用,则是目前GIS云计算建设的重要因素。
Esri的合作伙伴ROK技术公司建立了FltPlan.com网站来服务于飞机的跟踪地图服务,Roktech使用ArcGIS Server缓存切片和云计算类型服务HaaS(硬件即服务)。该应用提供的地图显示性能,可以看到不同切片来自不同的云,并且结合了动态的地图服务内容,应用架构如图1-8所示。
图1-8 ArcGIS Online云端缓存架构
Esri的ArcGIS Server的地图缓存和Globe三维地图服务缓存,目前都已经可以实现在Amazon上进行创建和存储。对于小缓存来说,用户可用简单方式传到云上,对于大缓存来说,用户需要确定是否转移预先创建好的缓存到云端。以Amazon为例,当用户有特别大量的缓存地图需要传送到Amazon上时,采用AWS Import/Export工具来实现。
目前有多种云计算部署场景,美国国家标准技术研究院(NIST)目前正采用事实上的云计算和分布式模型,如图1-9所示。
图1-9 ArcGIS云计算部署模型
美国国家标准技术研究院(NIST)的云计算部署模型包括公有云、私有云、混合云。Esri的云产品也是采用相同的部署模型,下面举一些示例。
(1)公有云
公有云是最通用的云计算,在这种模型下,用户使用的应用和基础设施的资源都是以租用的方式,由专业的云服务供应商以云服务的形式提供,用户无须管理、维护这些资源,直接使用即可。公有云对于用户而言,最大的好处就是低成本。
Esri的ArcGIS.com采用的就是公有云的部署模式。
(2)私有云
对于许多传统的供应商和用户而言,他们由于一些特殊的原因,如更高的安全性要求,并不打算或不能使用公有云服务,私有云将是他们更好的选择。私有云是将云服务搭建在一个企业私有的云环境中,即构建在企业防火墙后面,以满足用户更高的安全要求。因此,私有云对于用户而言,最大的好处就是安全。
Esri的Portal for ArcGIS采用的就是私有云的部署模式。
(3)混合云
也有很多的用户认为对于一个企业来说,更加明智的选择是在公有云和私有云之间寻找一个平衡点,即混合云模式。这既能降低企业的信息化成本,又能具有较高的安全性。然而,混合云模式通常都与特定的专利技术绑定,因此目前发展仍受较大的限制。
ArcGIS为云安全提供了多种级别的部署方式,能够在应用、网络、操作系统和DBMS层面加以控制。应用层提供安全控制的最大可伸缩度。通过使用ArcObjects、桌面应用和Web Services和标准技术结合,提供验证、授权,提供访问控制。ArcGIS为不同用户访问提供功能限制和地理内容限制。ArcGIS Web应用可以通过安全通道(HTTPS)定制使用标准的授权方法(基础的、分类、图表、客户端授权)。而且,ArcGIS应用可以与已有轻量目录访问协议、单点登录以及策略管理系统结合,来为不同的角色用户指定特定的内容权限。ArcGIS Server通过基于角色访问控制(RBAC)来保证安全。ArcGIS Server的Java应用提供了定制安全系统来管理存在于其他的关系数据库或目录服务(LDAP或Active Directory)的用户和角色,并通过API可以扩展安全系统,如图1-10所示。
图1-10 ArcGIS的云安全架构
1.ArcGIS的云应用安全
(1)富客户端
富客户端的安全主要可以通过三种方式来实现。
①权限登录:
②加密通信:
③定制开发:
(2)移动安全
①ArcGIS Mobile GeoData服务:通过HTTPS(SSL)或VPN通道使用Token服务。
②Web服务认证:使用Windows Mobile加密API。
(3)Web应用安全
①ArcGIS Server Manager:自动应用ASP.NET和Java EE的Web应用安全。例如修改ASP.NET中的web.config文件。
②应用接口。
(4)Web服务安全
①ArcGIS Server Manager权限继承:包括文件夹级别和个别服务级别。
②服务层安全限制:只允许Internet和Web连接所有Web。
③服务接口安全如SOAP服务的WS-Security地址可通过第三方XML/SOAP网关实现。移除本地连接访问清空AGSUsers的用户组。
2.ArcGIS的云平台安全策略
企业级云平台提供了本身的安全策略,下面以Amazon为例说明。
(1)EC2安全
EC2通过多种模式保证安全,包括托管运营系统的SSH权限控制,客户运营系统的配对密钥,无状态防火墙方法,以及X.509认证的API请求等,来保证访问的安全。
(2)虚拟专用云(VPC)安全
亚马逊的虚拟专用云(VPC)提供了多级的安全访问策略。