ArcGIS是由ESRI出品的一个地理信息系统系列软件的总称。可以依不同应用平台分成以下版本:
在ArcGIS套件问世之前,ESRI公司就已经专注于命令行Arc/INFO工作站及数个图形界面产品的开发,其余的ESRI产品包括MapObjects函式库和关系数据库管理系统ArcSDE,此时ESRI各个产品的源代码分散缺乏有效整合。1997年1月,ESRI决定重构其GIS软件平台,创造一个单一的集成软件架构。
运行于Windows操作系统之上的ArcGIS 8.0于1999年发行,它结合了ArcView GIS 3.x的可视化用户界面和一些Arc/INFO 7.2的功能。此次新推出的ArcGIS软件套装包括了一个将传统的命令行模式的Arc/INFO工作站和全新的图形用户界面整合的产物,称之为ArcMap,同时推出的还有用于管理ArcGIS文件的ArcCatalog。ArcGIS的诞生标志着ESRI软件体系的重要改变,它将客户端和服务器端产品整合在了一个统一的ArcGIS软件架构下,并且符合Windows COM规范。
另外一个显著的变化在于其开发语言能够进行用户化或扩展以满足特定用户的需要。在向ArcGIS过渡的过程中,ESRI减弱了对其领域特定脚本语言AML的支持,取而代之的是VBA脚本语言并且让ArcGIS组件能够通过实行Windows COM规范进而实现开放存取。ArcGIS在该版本中新设计了一种专有的关系数据库管理系统(RDMBS)格式,称之为Geodatabase。此外ArcGIS 8.x还引入了其它的新功能,包括即时地图投影及数据库注释。
在对原有ArcView 3.x进行扩展的方面,新的3D分析及空间分析功能被加入到了随后在2000年于ERSI国际用户大会上发布的ArcGIS 8.1中,正式发布的日期则延后到了2001年4月24日,其它的功能扩展还包括了地统计分析等。ArcGIS 8.1同时加入了对在线数据的支持,使得其能够从Geography Network或其它支持ArcIMS地图服务的网站上直接获取数据。ArcGIS 8.3于2002年发布,新版本在Geodatabase里添加了原先只在ArcInfo中有效的对拓扑数据的支持。
ArcGIS 9于2004年5月发布,它包括了供开发者使用的ArcGIS Server和ArcGIS Engine。新增的Geoprocessing工具能够将传统的GIS处理工具诸如剪切、覆盖、空间分析等进行交互式的连接,甚至可以是任何符合COM规范的脚本语言。虽然Python是ArcGIS主流支持的脚本语言,但是Perl和VBScript等其它语言依然能够被支持。ArcGIS 9也具有可视化编程环境,类似于ERDAS IMAGINE的建模工具。ArcGIS的这个建模工具叫做ModelBuilder,用户可以用它以图形方式连接Geoprocessing成为新的工具,这种新的工具称为模块。模块可以直接执行或者输出到脚本语言中以批处理的方式执行,除此之外还可以进行更深层次的编辑比如说给流程添加选择和循环等。
2008年7月26日,ESRI发布了ArcGIS 9.3,这个新版本拥有更多新的建模工具及地统计分析错误追踪功能,服务器版还提升了性能及对基于角色的安全性的支持。该版本新增了创造混搭应用的功能,可混搭的对象包括Google Maps和微软公司的必应地图服务。在2008年的ESRI开发者大会上,除了一场讲述关于如何从ArcIMS向ArcGIS基于服务器应用过渡的会议以外,ArcIMS几乎没被提及。这标志着ESRI从ArcGIS 9.3起开始转向关注基于Web的地图服务应用。在9.3中首次引入了REST技术,为Web开发提供了更丰富灵活的方式,也成为此后各种WebAPI的基础。
2009年5月,ArcGIS 9.3.1发布,它提升了动态地图发布的性能,增强了不同的地理信息格式之间的兼容性。
2010年,ESRI宣布之前宣称的9.4版本已被改称为第10版,将于2010年第二季度发布,现在的10.0版是2010年9月发布的。在ArcGIS 10.0中首次提供了多语言版本,包括简体中文,日语,法语,德语,西班牙语和英语等6个版本。2012年发布10.1
在包括ArcView 3.x在内的早期ESRI产品中,所有的数据都是以Shapefile格式组织的,也就是ArcInfo使用的Coverage格式,它存储与空间数据有关的拓扑信息。Coverage这个概念最早在1981年ArcInfo首次发布时就被提出了,然而它却在运用于表现某些要素时有所局限。比如说,在铁路与公路相交时需要表现铁路道口、天桥或行人隧道时Coverage格式不能够很好地将它们展现出来。
ArcGIS是围绕着Geodatabase数据库构建的,它使用对象关系型数据库来存储空间数据。Geodatabase是一个存储数据集的容器,同时将空间数据和属性绑定起来。拓扑数据也能够存储在Geodatabase中并对特性进行建模,比如说在表示道路交叉时可以对道路之间的相关性进行设定。在使用Geodatabase时,很重要的一点就是要理解要素类(Feature Classes)就是一系列要素,它以点、线或多边形的形式呈现。在使用Shapefile格式时每个文件只能存储一类要素然而Geodatabase却能够在一个文件中存储多个要素或者是多种类型的要素。
在ArcGIS中,Geodatabase可以以三种不同方式存储包括FGDB(File Geodatabase)、PGDB(Personal Geodatabase),和ArcSDE Geodatabase。FGDB在9.2版时被引进,它把信息储存在一个扩展名为gdb的文件夹中,文件夹内部的文件和Coverage差不多但不一样。和PGDB类似,FGDB也支持单一用户,但与PGDB不同的是,FGDB没有数据量大小的限制。默认情况下单一表的大小不能超过1TB,但这实际是可以被改变的。PGDB用Microsoft Access文件存储数据,将几何数据存储在二进制大对象字段中,OGR库能够处理这种文件类型并将它转换其它文件格式。一些需要数据库管理员完成的工作诸如管理用户及备份等可以通过ArcCatalog完成。基于Microsoft Access的PGDB仅能在Windows操作系统下运行而其有2GB数据量上线的限制。企业级的Geodatabase可以通过ArcSDE操作,它拥有可连接高端数据库管理系统(DBMS)的接口像是Oracle、Microsoft SQL Server、DB2和Informix等。这些DBMS能够多方面的管理数据库,同时ArcGIS就用来进行空间数据的管理。企业级的Geodatabase还支持数据库复制、版本控制及事务管理等高级功能,更支持跨平台兼容,即可同时在Linux、Windows和Solaris等不同的操作系统下使用。
ArcGIS桌面版本是由许多的应用程序组件的组成,以包含完整功能的ArcInfo来说,应用程序组件会包括: