地理数据库快速浏览
地理数据库是各种类型地理数据集的集合。
在本主题中,您将了解有关地理数据库的基础知识。这些概念将帮助您形成基本的知识框架,从而进一步了解地理数据库并有效地使用它们来开展 GIS 工作。
地理数据库中的基本数据集
数据集是地理数据库的一个重要概念。它是在 ArcGIS 中组织和使用地理信息的主要途径。地理数据库包含三种主要数据集类型:
- 要素类
- 栅格数据集
- 表
创建这些数据集类型的集合是设计和构建地理数据库的第一步。用户通常是以构建若干上述三种基本数据集来开始构建地理数据库的。然后,用户可以使用更高级的功能(例如添加拓扑、网络或子类型)来添加或扩展地理数据库,以便建模 GIS 行为、维护数据完整性和处理重要的空间关系集。
地理数据库在表和文件中的存储
地理数据库存储既包括各个地理数据集的方案和规则库,也包括空间和属性数据的简单表格存储。地理数据库中的三种主要数据集(要素类、属性表和栅格数据集)以及其他地理数据库元素都是使用表来存储的。地理数据集中的空间制图表达以矢量要素或栅格的形式存储。除常规的表格属性字段外,还会在属性列中存储和管理这些几何。
要素类以表的形式存储。每行表示一个要素。在下面的多边形要素类表中,Shape 列用于保存每个要素的多边形几何。值 Polygon 用于指定该字段中包含的坐标和几何可在一行中定义一个多边形。
一个重要的地理数据库策略是充分利用数据库管理系统 (DBMS) 将 GIS 数据集以及用户数量扩展到极大的规模(例如,从仅能支持一个或几个用户的简单小型数据库扩展到可以支持上百万个要素和几千个同步用户的大型数据库)。表是地理数据集的主要存储形式。SQL 十分适用于对表中的行进行查询和集处理,因此地理数据库策略就是要充分利用这些功能。
地理数据库支持使用 SQL 访问以下 DBMS 中的要素几何:
- Oracle(使用 ArcSDE SQL 类型,或在使用 Oracle Spatial 的情况下使用 Oracle Spatial SQL 类型)
- IBM DB2
- IBM Informix
- Microsoft SQL Server
- Informix
- PostgreSQL(如果要使用 PostGIS,则使用 ST_Geometry 或 PostGIS 几何类型)
适用于 ArcSDE 的基础 SQL API 以 ISO SQL/MM Spatial 和 OGC 简单要素 SQL 规范为基础,这些规范对 SQL 在矢量几何类型标准方面进行了扩充。
高级地理数据类型扩展了要素类、栅格和属性表
大量地理数据库元素用来扩展简单表、要素和栅格,以建模空间关系、添加丰富的行为、改善数据完整性并扩展地理数据库的数据管理功能。
地理数据库方案中包括所有这些扩展功能的定义、完整性规则和行为。其中包括坐标系的属性、坐标分辨率、要素类、拓扑、网络、栅格目录、关系和属性域。方案信息保留在 DBMS 的地理数据库元表集合中。这些表定义地理信息的完整性和行为。
地理数据库元素
无论 GIS 用户使用什么系统,他们都将用到三种基本的数据集类型。用户将有一组要素类(类似于保存着大量 Esri shapefile 的文件夹);用户将有若干属性表(dBASE 文件、Microsoft Access 表、Excel 电子表格、DBMS 等);多数情况下,用户还将有许多需要处理的影像和栅格数据集。
从根本上来说,所有地理数据库包含的内容都是一样的。这种数据集的集合可以看作是 GIS 数据库设计的通用起点。
必要时,用户可对数据模型进行扩展以支持某些必需的功能。地理数据库具有许多附加数据元素和数据集类型,以供用户扩展数据集的这一基础集合。
地理数据库事务和版本化
ArcSDE 地理数据库支持版本化和长期事务
地理数据库除了支持可在超大规模高性能数据库中使用的多种数据类型(如注记、拓扑、网络、地形和地址定位器)以外,还支持功能完善的事务框架,可对多种数据管理工作流程和操作进行管理。
- 许多情况都需要多个并发编辑器。
- 检出和检入将更新。
- 通过共享复本之间的“仅更改”更新来同步多份副本,这些复本可以具有任意数量的 DBMS 类型(如 Oracle 和 SQL Server),且无需连接。
- 创建、管理和使用历史存档(例如,分析和叠加宗地数据库在 2006 年 5 月 1 日的状态)。
有关详细信息,请参阅版本化。