?? ArcGIS Server 是功能强大的基于服务器的 GIS 产品,用于构建集中管理的、支持多用户的、具备高级GIS功能的企业级GIS应用与服务,如:空间数据管理、二维三维地图可视化、数据编辑、空间分析等即拿即用的应用和类型丰富的服务。ArcGIS Server 是用户创建工作组、部门和企业级 GIS 应用的平台,通过 ArcGIS Server创建集中管理的、支持多用户的、提供丰富的GIS功能、并且满足工业标准的GIS应用。ArcGIS Server 提供广泛的基于 Web 的 GIS 服务,以支持在分布式环境下实现地理数据管理、制图、地理处理、空间分析、编辑和其它的GIS功能。
??? 1. ArcGIS Server 的主要功能
ArcGIS Server 主要功能包括:
??????提供通用的框架在企业内部建立和分发GIS应用;
????? 提供操作简单、易于配置的Web应用;
????? 提供广泛的基于Web的空间数据获取功能;
????? 提供通用的GIS数据管理框架;
????? 支持在线的空间数据编辑和专业分析;
????? 支持二维三维地图可视化;
????? 除标准浏览器外,还支持ArcGISDesktop和ArcGISExplorer等桌面客户端;
????? 可以集成多种GIS服务;
????? 支持标准的WMS、WFS;
????? 提供配置、发布和优化GIS服务器的管理工具;
????? 提供.NET和Java软件开发工具包;
??????为移动客户提供应用开发框架;
1)ArcGIS Server 的主要功能描述:
????? 空间数据管理――ArcGISServer具有两种同样是基于ArcGISgeodatabase模型的数空间数据管理级别。借助空间数据服务(Geodataservices),管理员可以为发布的地理数据实现抽取,检入/检出(checkout/check-in)以及复制等功能。 ArcGISServer的三个版本,基础版,标准版和高级版都具有空间数据管理的能力。
????? 空间可视化(制图)――ArcGISServer提供了Web制图服务以支持二维和三维的动态形式或者静态缓存形式的地图发布。GIS的分析人员仅仅点几下鼠标就可以配置一个基于Web 制图服务的浏览器应用。另外,ArcGIS 的桌面和 ArcGIS Explorer 可以作为 ArcGISServer 的客户端来浏览二维地图或三维球体。ArcGIS Server 的标准版和高级版具有地图可
视化服务的能力。
?????? 空间分析――ArcGISServer提供了基于服务器的分析和地理处理,包括矢量和栅格分析、3D和网络分析;还支持ArcGIS地理处理创建的模型、脚本和工具;只有ArcGIS高级版具备空间分析扩展(Spatial)的能力。
2)ArcGIS Server 的用户包括:
专业用户――专业用户可以使用ArcGISServer作为工作平台,以共享的地图数据、业务流程和应用功能的形式来发布他们的成果,同样他们也可以享用其他专业用户发布的服务。
应用开发人员――专门从事应用开发的人员可以应用专业用户发布的服务来创建或者定制应用而不必深刻理解GIS知识。ArcGISServer提供了一个丰富的应用开发环境,包括J2EE 和.NET 2.0 两种模式。
领导和非专业用户――领导和非专业用户可以借助WebServices技术将ArcGISServer 提供的 GIS 应用结合到他们的日常工作流程中。如果与其它企业级系统整合度很强,用户或许都不会意识到他们正在应用GIS技术。
IT 管理员――IT 管理员可以应用 GIS 服务并将其集成到更广的 IT 领域以支持多种多用的业务流程。例如,GIS可以和派单管理系统,财务系统,供应链管理系统,商业智能系统等完美结合。
2. ArcGIS Server 的产品级别分类
为了满足工作组级、部门级、以及企业级的需求,ArcGISServer依据其功能和服务器规模差异,提供了一个可伸缩的产品线。ArcGIS Server 从服务器规模上分为两个级别:工作组级和企业级;又从功能上分为三个级别的版本:基础版、标准版、高级版。因此ArcGISServer包括了6个不同级别的产品。
为更好满足地理数据管理需要和服务器用户需求,在基础版、标准版、高级版的ArcGISServer 中都包含了 ArcSDE 技术。
1)从功能上分:ArcGIS Server 的三个级别的版本
???? 基础版-为用户提供用于空间数据管理的 GIS 服务器。它主要利用 ArcSDE 技术来组织和管理地理数据集。
???? 标准版-为用户提供用于空间数据管理和可视化(制图)的 GIS 服务器。它的功能包括2D制图、3D渲染(globe)服务和一系列相关功能,如地理编码、地名辞典和路径。应用开发人员可以通过访问组件(对象、Web 控件和服务)来构建Java和.NET框架下的解决方案。ArcGISServer标准版包含所有基础版的功能。
???? 高级版-为用户提供用于空间数据管理、制图、3D可视化和基于浏览器的编辑、地理处理、空间分析、建模等功能。高级版包含所有基础版和标准版的功能。对于开发人员而言,高级版含有多层组件用于为桌面、移动客户端、智能客户端、网络浏览器和企业模式构建和部署Java和.NET的应用和服务。
2)从服务器规模上分:ArcGIS Server 的两个级别
?ArcGIS Server工作组级(Workgroup)――这个级别的ArcGIS Server仅能运行于单台单CPUsocket(单核或双核)的机器上,并且使用MicrosoftSQLServerExpress 数据库引擎支持 geodatabase。
ArcGISServer企业级(Enterprise)――这个级别的ArcGISServer可以运行在一台或多台机器上,并且每台机器可以有多于2 个CPU socket。ArcGIS Server企业级包ArcSDE, 用户需要自行提供DBMS (SQLServer,IBM DB2,Informix或Oracle)。
3. 可选的 ArcGIS Server 扩展
ArcGIS Server 有一系列的可选扩展,补充其核心系统的能力。
1)ArcGIS Server Spatial
ArcGIS Server Spatial 扩展提供一套强大的功能,用于创建、查询和分析基于像素的栅格数据。在ArcGIS Server中使用Spatial扩展可以从现有数据推导出有价值的信息、确认空间关系、找到适宜位置、计算旅行代价表面以及执行大量的栅格地理处理操作。用 ArcGIS Spatial Analyst 扩展创建的模型和工具可以利用这个扩展发布为 Web 服务。
2)ArcGIS Server 3D
ArcGIS Server 3D 扩展提供了一套 3D GIS 功能用于创建和分析表面。3D 扩展添加了一些基于3D和地形的地理处理操作,这些操作可以发布为Web服务。
3)ArcGIS Server Network
ArcGIS Server Network 扩展提供基于网络的空间分析能力,包括路径、旅行方向、最近设施和服务区域分析。开发人员可以使用它构建和部署网络应用。
4)ArcGIS Server Data Interoperability
ArcGIS Server Data Interoperability 扩展可以让你轻而易举地使用和分发不同格式的数据。使用DataInteroperability扩展可以直接读取超过70种空间数据格式,导出为数十种空间数据格式。使用ArcToolbox中的Quick Import Quick Export工具,可以在各种数据格式之间快速转换。使用Workbench的语意翻译引擎和Spatial ETL工具,可以执行高级的
数据转换。ETL(Extract-Transform-Load)是用于转换数据的工具,它可以在多种计算环境间轻易迁移。使用 ArcGIS Data Interoperability 扩展创建的特殊格式和翻译器可以用在 ArcGIS Server Web 服务和地理处理服务中,以支持自动和开放的数据交换。
4. ArcGIS Server 的结构
?? ArcGIS Server 包含以下组成部分:
?? GIS Server―宿主 GIS 资源,包括地图、Globes、地理处理工具、地理编码等,并且将其发布为服务提供给客户端应用。当客户端应用请求某种特定服务时,GIS Server 产生响应并且将其返回到客户端应用。GIS Server 可以进行配置以处理多并发请求以及负载均衡。这包括在多个机器上配置GISServer。
?? Web Server―部署 Web 应用和服务,这些应用和服务使用 GIS Server 上提供的资源。
??? 客户端―可以是Web客户端、移动客户端和桌面应用,通过HTTP连接到Internet服务器或者是通过LAN或者WAN访问本地服务。 ArcGISServer包括三种指定的应用框架:1)Web 地图应用,2)免费的 ArcGIS Explorer,3)ArcGIS Mobile。
??? 数据服务器―包含以服务的方式发布到GISServer的GIS资源。这些资源可以是地图文档、地址编码、Globe文档、Geodatabase和地理处理工具。通常,采用DBMS在数据服务器上部署ArcSDEGeodatabase,以实现地理数据的安全、完整性和高效性。
?????? Manager 和 ArcCatalog 管理工具―ArcGIS Server 管理员可以使用Manager 或者 ArcCatalog 以发布和管理GIS资源和服务。Manager是Web应用,支持GIS服务和管理、Web应用创建和管理,以及在服务器上发布ArcGIS Explorer 地图。ArcCatalog 可以为普通用户和服务器管理员添加GIS Server 连接。它同样也为 GIS 专家提供了将GIS资源发布为GIS服务的界面。ArcGIS Desktop Content Authors―为了制作发布到服务器上的地图、地理处理工具、Globe等GIS
资源,需要使用ArcMap、ArcCatalog和ArcGlobe等桌面应用。
5.ArcGIS Server包含的主要技术
??1)ArcSDE技术包含在ArcGIS Server体系中
????企业级GIS是一个一体化的,多部门的系统,既要满足组织内部单一的要求,又要满足综合的需要,为GIS和非GIS人员访问地理信息和服务提供条件。数据服务器包含了要发布为服务的GIS资源。对于大多数GIS服务器,这些资源通过ArcSDE管理在基于关系型数据库的geodatabase中。在任何一个ArcGIS Server的应用系统中,为了满足这种企业级需求,基于ArcSDE技术的长事务处理的多用户geodatabase都是至关重要的。因此ESRI将 ArcSDE技术纳入ArcGIS Server体系。
????ArcSDE的优势和功能:
????????高效率和系统可伸缩行
????????与IT系统集成
????????发生冲突时的协调更新机制
????????数据库复制
????????历史归档
????????版本和非版本编辑
????????支持跨平台和跨数据库
????????支持直接通过SQL访问Oracle,IBM DB2和Informix geodatabase
???ArcGIS Server是一个用于高级GIS应用的集中管理的GIS。它可以让开发者和系统设计员实现一个集中的GIS,支持多用户访问。集中的GIS应用(如Web应用)能够减少在每台机器上安装和管理桌面应用的费用。ArcGIS Server的提供Web服务的能力,使得GIS能够与其它的IT系统有效集成,如关系数据库、Web服务器、以及企业应用服务器。
????所有级别的ArcGIS Server产品都包含了ArcSDE技术:
????????ArcGIS Server工作组级包含工作组级ArcSDE技术
????????ArcGIS Server工作组级含有支持SQL Server Express的ArcSDE。使用这个级别的ArcGIS Server,允许10个并发桌面用户和编辑人员(例如,ArcView、ArcEditor、ArcInfo ArcGIS Engine应用(ArcGIS Engine Applications)、AutoCAD和MicroStation用户)加上任意数量的服务器连接使用SQL Server Express。SQL Server Express是包含在ArcGIS Server工作组级中的一部分。它限制运行于1CPU或core,最大1GB的内存。数据库大小最大为4GB。管理员可以使用ArcEditor或 ArcInfo来创建、管理和维护工作组级ArcSD geodatabase。可以在ArcCatalog中使用SQL Server Express来设置和管理工作组ArcSD geodatabase,无需额外的数据库管理知识。
????????ArcGIS Server企业级包含企业级ArcSDE技术
????????这是传统的ArcSDE技术,它运行于Oracle、SQL Server、IBM DB2和IBM Informi数据库之上,允许任意大小的数据库、任意数量的用户,可以运行在任意配置的电脑上。使用ArcGIS Server企业级,用户需要自己提供DBMS许可。DBMS通常由数据库管理员(DBA)管理和维护。企业级ArcSDE技术支持运行在跨平台上的 Oracle、IBM DB2和Informix,和Window服务器上的SQL Server。
2)WEB地图应用
????ArcGIS Server包含一个即拿即用的Web地图应用,可以直接运行在Web浏览器中。该客户端为使用ArcGIS Server和其他服务提供了丰富的用户体验。这个Web地图应用同时也作为ArcIMS 9.2的一部分。Web地图应用支持叠加多种类型的地图服务,如来自于ArcIMS,ArcGIS Server,OGC的WMS以及ESRI发布的ArcWeb Services。
????Web地图应用提供的工具有:
????????交互的内容表;
????????平滑的地图浏览,平移和缩放工具;
????????地图提示和要素查询功能;
????????空间查询和选择工具;
????????基于Web的ArcSDE geodatabase编辑功能(包括添加要素,切分,捕捉,要素修整和属性编辑);
?????????ArcGIS Server管理器提供方便的配置能力。不需要编程;
????????为.NET和Java开发者提供强大的开发环境支持。提供一组可定制的编程控件和组件;
????????基于标准和开发性;
????Web地图应用框架基于AJAX技术,大大增强了用户体验。它支持用户在交互使用Web应用的同时,应用程序与其他资源(如Web服务器)进行通讯。
3)ArcGIS MOBILE
?? ArcGIS Server为移动用户提供了名为ArcGIS Mobile的Web应用开发框架(ADF),用于创建和部属面向移动的解决方案,其特点是应用在“非实时连接”环境且面对大量用户。这些应用为运行Microsoft Windows Mobile的野外设备提供移动地图,GPS,无线步以及GIS数据复制和编辑功能。ArcGIS Mobile支持在线和离线工作流环境中编辑版本化的ArcSDE geodatabase。你可以不用返回办公室,就可以通过ArcGIS Server定期进行更新同步。ArcGIS Mobile可以运行在大量的移动设备上:智能手机,Pocket PC和Tablet PC。
6.ArcGIS Server使用方法
6.1、在互联网环境下提供GIS资源
? ArcGIS Server允许在企业内或互联网上共享GIS资源。所谓GIS资源是指地图,globe,地址定位,空间处理工具,以及希望跟其他人共享的空间数据库。
1)通过ArcGIS桌面进行内容创建和发布
???? ArcGIS Server 9.2利用ArcGIS桌面产品创建用来发布的地图,globe以及空间处理任务,然后在ArcGIS Server上进行发布。发布过程既可以在ArcGIS桌面中的ArcCatalog环境下进行,也可以在基于浏览器的ArcGIS Server管理器中完成。如果想要共享这些资源,你可以首先在ArcGIS Server中使用这些资源创建Web服务,然后通过各种客户端产品(也可以是其他的服务器)访问和使用这些资源。在GIS服务器上共享GIS资源最主要的优点与通过服务器共享数据是一样的――例如,数据的集中管理的,支持多用户并发访问,可以为客户提供实时更新的信息,以及可供远程访问的强大的计算能力。
2)可选服务功能
??? 我们在发布ArcGIS服务时,同时有一些可选的可被激活的服务功能。例如,一个地图服务可以发布一个网络数据层。这样我们就可以在地图服务中使用网络分析功能。
6.2、服务类型
1)地图服务
??? 地图服务提供对ArcMap文档(.mxd)内容的访问。创建地图服务之前,必须在ArcMap中首先创建一个地图文档,然后发布为地图服务。创建地图缓存(可选)地图缓存是在多级比例尺下预先渲染的分块的地图集合,用来提高地图显示和使用的效率。因为地图影像不需要根据用户的请求动态实时地渲染生成,因此缓存服务可以大大提高显示速度。然而,因为地图影像是在创建地图缓存时预先计算生成的,因此地图缓存只能用来提供静态的地图内容。地图缓存保存了一系列比例尺下的地图数据,每个比例尺对应一定详细程度和分辨率的
地图信息。在构建应用之前,一个好的设计首先要确定使用哪些比例尺,以及包含何种详细程度的地图信息。ArcMap和它所包含的按比例地图显示功能可以用来生成和维护高性能的地图缓存。可扩展的地图服务功能地图服务是最常用的ArcGIS服务。它包含一组可选的功能。许多可选的地图服务功能是通过在地图文档中包含特定的数据内容实现的。例如,需要在浏览器提供空间数据库编辑能力,你可以在ArcMap中添加地图图层,并将其发布为Web服务。理解了如何创建包含特定功能的GIS资源,可以帮助我们更好的利用ArcGIS Server的强大能力。
2)Globe服务
?? 在ArcGlob(e桌面3D分析扩展模块的一部分)中创建的Globe文档可以发布为ArcGISServer 的globe服务。Globe服务提供对三维地球的访问能力,我们可以交互使用三维地球,并将它与其他地理信息叠加显示。我们可以在ArcGlobe, ArcReader和新的免费的ArcGIS Explorer应用中使用globe服务。Globe服务还可以被发布为KML服务,被其他的可视化应用所使用。通过ArcGIS Server创建自己的虚拟全球视图:通过ArcGIobe和ArcGIS Server,你可以创建完全基于自己GIS数据内容的2D和3D虚拟地球视图,并维护变化的信息。每个GIS应用都经常需要使用自己的数据信息,并访问特定的任务和执行操作。GIS用户必须能够基于自己的数据构建可视化和分析应用。
3)ArcGIS Explorer
????ArcGIS Explorer是一个由ArcGIS Server提供强大支持的新的空间信息浏览器。它提供一种免费的,快速并且使用简单的方式浏览地理信息――无论是2D还是3D的信息――并提供了强大的对数据的查询和分析任务。ArcGIS Explorer通过访问ArcGIS Server提供的强大的完整的GIS功能,整合了GIS数据集与基于服务器的空间处理功能,提供了空间处理和3D服务。ArcGIS Explorer也可以使用本地数据和ArcIMS的服务,ArcWeb Services,OGC WMS和KML,具有开发性和互操作能力。ArcGIS Explorer可以被任何个人和专业人员下载和使用。ArcGIS Explorer可以访问ArcGIS Server提供的完整的GIS功能。通过ArcGISExplorer,我们可以:
????????无缝的以2D和3D方式浏览整个世界的数据
????????集成本地数据以及来自ArcGIS Server,ArcIMS的服务和数据,OGC WMS或ArcWeb Services
????????通过任务进行GIS分析,如可视化分析,建模,邻域查找和统计分析
????????以地图的方式回答跟地理相关的问题,并与他人共享你的结果
????????使用自有的服务器上的数据和地图,并与其他服务器上的数据联合使用
4)空间处理服务
????空间处理的基本目的是为了帮助你自动完成GIS任务。几乎所有应用GIS的地方都会包含一些需要重复执行的工作。因此产生了构建一个空间处理框架的需求,在这个框架下,支持多步骤任务的定义和自动完成,支持工作流模型文档的编制,以及模型的共享。空间处理还支持空间建模和空间分析功能,它可以让我们更好的理解,分析和把握问题的方方面面。ArcGIS Server提供一个简单的机制可以将服务器上的空间处理工具和模型发布为任务,供远程的客户端调用,而任务本身在服务器端执行。GIS服务器提供的将空间处理模型和脚本发布为Web服务的能力,使得它变得异常强大。这些功能可以被多种客户端访问和使用,而不用考虑到客户端应用的类型。在上面的例子中,可以根据事故点进行电网故障追踪。这个功能是作为ArcGIS Explorer
中的一个任务提供的。通过ArcGIS Explorer发送一个请求到ArcGIS Server的空间处理服务,由ArcGIS Server完成后台的分析。分析结果一方面以图形方式显示在3D地图中,另一方面提供故障诊断报告,并进行故障点定位。
5)地理编码服务
????地理编码是将街道地址转换为空间位置,通常是是以坐标值表示的点的过程。许多用户需要使用自己的地理编码服务。在大多数情况下,通过常规的,商业提供的地址编码应用,一般很难获得满意的结果,原因如下:
????????随着城市的发展与扩展,地址也随时间不断变化。
????????表达地址的形式多种多样,不仅仅是常规的地址表达方式:街道,门牌号附加相关信息,如城市和邮政编码等;
????????许多国家和地区有自己的地址编码形式和方法;
????????许多用户需要通过标志地物名称查找地址(如,“xxx”);
????????有些地方使用一组数字代表特定的地理位置;
????所有这些情况都要求有特殊的地址编码解决方案。许多ArcGIS的用户不得不将大量的时间用于构建,维护和提供用户自定义的地址编码服务上,以满足用户的需求。在ArcGIS Server中增加地址编码服务必须首先在ArcGIS桌面创建一个地址定位。地址定位是空间数据库的一个数据集,包含一组可设定地址的要素,地址样式和如何进行地址匹配的规则。可以在ArcGIS中对地址定位进行更新和维护。
6)空间数据服务
????空间数据服务允许我们使用ArcGIS Server通过LAN,WAN或Internet访问空间数据库。该服务可以支持空间数据库
的编辑,数据库复制,通过数据抽取下载拷贝,以及对空间数据库的查询操作。空间数据服务可以使用任何类型的空间数据
库,包括ArcSDE空间数据库,个人化空间数据库和文件空间数据库。但是从安全性,数据完整性,高性能和可伸缩能力方
面考虑,ArcSDE空间数据库推荐使用企业级数据库。当我们管理分布在不同位置的空间数据库时,空间数据服务尤其有用。例如,国土资源部想要国家和各省的ArcSDE空间数据库进行数据同步。一旦建立数据库,省级国土部门可以将ArcSDE空间数据库在Internet上发布为空间数据服务。然后我们可以通过空间数据服务定期在Internet上进行同步更新,在两个数据库服务器间共享变化的部分。
7.ArcGIS Server的开发
????当你使用ArcGIS Server时,你可能希望构建一个定制的应用或在原有的ArcGIS Server提供的功能上进行扩展。为了满足这个需求,ArcGIS Server包含一组强大的,完整的开发工具和功能。除了提供即拿即用的Web应用和服务,ArcGIS Server还是开发Web和企业级应用和服务的平台。
????ArcGIS Server支持下列软件开发环境:
????????Microsoft.NET框架
????????Java平台
????ArcGIS Server在两个平台上都提供一组完整的开发工具用于开发Web应用和服务。Microsoft.NET开发环境还包括一组用于开发Web地图应用和移动应用的开发包,Java环境包含用于企业级JavaBeans(EJBs)的开发包。此外,Java工具支持跨平台开发,可运行在Windows, Sun Solaris和Linux操作系统。