简单梳理一下ArcGIS体系如何入门

    正好冰箱还剩一瓶啤酒,酒壮怂人胆,借着啤酒的酒劲,斗胆梳理一下arcgis的学习体系。

    从项目角度来看,GIS项目就是一个完整的IT类项目,我大致以IT类项目的一个通用的架构图来梳理。

 

一、基础设施层

    首先是基础设施层,用于支撑整个IT建设,主要包含服务器、存储、网络这些硬件资源设备,现在流行云平台,那就在这些硬件基础之上,建设相应的虚拟化池,这一块和咱们GIS关系不大。

二、数据层

    我对于GIS的理解是,GIS=数据+空间分析。数据是GIS的核心,往往一个项目最不好把握的就是数据处理的工作量。那么对于arcgis体系来说,对于数据,我们应该至少学习以下几个方面:

2.1 认识数据

    GIS中的数据主要分为二类,矢量数据、栅格数据

    矢量数据是以点、线、面的形式去表述真实世界,数据结构比较复杂,既有空间信息又有属性信息。栅格数据是以格网的形式去表述真实世界,数据结构简单,但是表述的精度肯定是不如矢量数据的,对于栅格数据,我们得了解分辨率、位深、波段等信息,更延伸一些,得去了解一下遥感领域的知识,比如哪些卫星提供哪些类型的影像,这些影像在哪些方面有所应用。

    在这一部分,主要是需要熟悉GIS中的数据,然后掌握ArcGIS桌面软件对于数据的读写、可视化、编辑等常规操作。

2.2 坐标系

    坐标系的发展,总结起来就是如何通过数学框架去描述我们的地球。对于GIS来说,数据坐标系是基石,没有坐标系的数据就是无根之水,在这一块,我们需要了解GIS中投影坐标系、地理坐标系的区别,常用坐标系,需要掌握如何通过ArcGIS桌面工具去进行坐标系之间的转换。

2.3 数据制图

    以矢量数据为主。

    矢量数据以点、线、面的形式去表述整个世界,但是矢量数据位置信息明显,属性信息隐含,给你任意一个点,不查看点的属性你是看不出这个点究竟是个什么东西,所以就得要用制图更形象的去表述这个真实世界,如下图,我们就很清楚的能看出点、线、面分别表示什么。

 

    制图是一个非常考验审美和非常复杂的工作,入门级选手需要了解arcgis中符号的使用,标注和注记的使用,arcgis中各种渲染器的应用场景,比如热点图渲染器,用于点数据的渲染,比如唯一值用于水体这种单一元素的渲染……

    高级选手需要好好去钻研一下制图表达,对于高级制图,我是满头大汉,入不了门。

 

2.4 数据存储

    分类来说:

    对于矢量数据,需要学习SDE,熟悉如何创建常见数据库的SDE环境(oracle和pg为主)。配置环境是一个非常普遍的要求,你的单位不可能因为需要SDE,再额外的招聘一个数据库管理员,所以一般这种活是GIS数据处理的人员分担的。进阶一级,你需要了解企业级地理数据库里的数据库迁移、数据维护(版本)、同步复制等,不然数据库对你来说,和文件夹没有区别。

    对于栅格数据,了解镶嵌数据集,更高一层次,你得花时间去学习遥感方面的知识,掌握遥感数据处理的一般流程

 

2.5 空间分析

    常见的空间分析包含叠加分析、邻近分析、网络分析。需要熟悉arcgis中这几类空间分析用于解决什么样的问题,不需要每个工具都会用,因为每个工具都有帮助文档,等到使用的时候可以参考帮助文档。

    而进阶一级,需要学习python和model builder,model builder可以让你更好的结合自己的需求将arcgis提供给你的上千种工具进行组合,而python一方面可以让你做一些批处理的活,一方面也可以结合arcpy,开发自己的工具。

三、服务层

    这一层,有些时候也叫平台层。那么在arcgis体系里,对照的就是arcgis enterprise(当然也包含arcgis server),对于这一层来说,首先需要了解ArcGIS Enterprise,然后需要了解GIS服务。

3.1 了解ArcGIS Enterprise

    ArcGIS Enterprise=Portal+Server+Datastore+wa,大家比较熟悉的应该是server,对于ArcGIS Enterprise各个部分,大致功能如下:

 

 

    更深一层次,就要能够对server进行相应的资源分配、管理运维,比如如何控制服务的权限,如果增加server的集群,如何快速迁移server的服务等。

3.2  服务类型

    OGC中规定了非常多的GIS服务类型,WMS、WFS、WCS等等,必须非常非常熟悉各个服务分别是什么,有什么功能,怎么调用。

对应到arcgis体系,我们需要熟悉arcgis中能够支持哪些服务,如何发布这些服务,这些服务有哪些应用场景。

    下图是ArcGIS中能够支持的服务

 

上面的服务必须要非常熟悉,总的来说:

(1)要素服务:环境里要有SDE,用于web端对数据进行增删查改

(2)地图服务:用于查询

(3)切片服务:用于当做底图,只能用来看

(4)矢量切片:web端大数据量渲染

(5)地理处理服务:web端调用桌面端发布的空间分析工具

更高一层级的使用,那就要能够融会贯通,对服务进行相应组合,满足自己的需求,比如web端渲染矢量切片服务,然后再加载要素服务,但是浏览器不渲染,就可以实现大数据量下的加载和数据查询,一举两得。

3.3 服务接口

下图是arcgis js api的工作机制:

 

对于arcgis js api这些开发包来说,实际上调用的是arcgis server提供的rest接口,所以你得熟悉rest接口功能有哪些,参数是什么,怎么调用。

四、应用

    开发,要熟悉服务接口和arcgis提供的开发包,主要是:

(1)web端的arcgis js api

(2)移动端和桌面端的arcgis runtime sdk

(3)桌面端的arcgis engine

(4)桌面端的arcgis pro sdk

(5)arcpy

五、进阶

5.1 开源

    GIS专业的各种工具和arcgis其实是类似的,也分为桌面端、服务器端软件,比如桌面端的QGIS,服务器端的GeoServer,Cesium,开发包openlayers等等,潜心研究开源技术,会让你的技术有一个非常大的提升。

5.2 IT新技术

    GIS毕竟是个非主流学科,很多情况下都是计算机领域有了发展,然后带动GIS这个行业的发展,所以不能和计算机领域脱节,得时刻去了解目前IT新技术的发展,毕竟GIS的三维、深度学习都是IT技术发展所带来的。

    所以:今天不学习,明天变垃圾。

猜你喜欢

转载自blog.csdn.net/u012599377/article/details/112540111