《ArcGIS Engine 地理信息系统开发从入门到精通(第二版)》——6.4 Geodatabase体系结构

简介:

本节书摘来自异步社区《ArcGIS Engine 地理信息系统开发从入门到精通(第二版)》一书中的第6章,第6.4节,作者: 邱洪钢 , 张青莲 , 熊友谊 更多章节内容可以访问云栖社区“异步社区”公众号查看。

6.4 Geodatabase体系结构

ArcGIS Engine 地理信息系统开发从入门到精通(第二版)
6.4.1 Geodatabase介绍
随着关系数据库技术的完善,变长信息的存储成为可能,人们开始采用关系数据库技术管理空间数据,并逐渐成为主导。利用关系数据库管理空间几何信息、属性信息、拓扑信息、三维信息以及多媒体信息,使得GIS软件能够充分地利用商用数据库中已经成熟的众多特征,如快速索引、数据完整性和一致性、并发控制等机制。在此情况下,ESRI公司推出了Geodatabase,该数据模型采用全关系数据库管理空间数据,与各种商用关系数据库兼容。Geodatabase充分利用面向对象技术,将空间要素的属性和行为有机地结合在一起,采用现代化的、标准的方式实现对象,对象都定义为一个COM组件,并允许用户在这些基本模型的基础上扩展自己的面向对象数据模型。

Geodatabase是面向对象的空间数据存储模型,ArcSDE是ESRI公司针对空间数据的存储问题推出的一套空间数据库管理软件。通过SDE,用户可以将多种数据产品按照Geodatabase模型存储于商用数据库系统中,并获得管理和检索服务。

Geodatabase提供了可伸缩的空间数据存储方案,提供了两种存储方式:personal database和Enterprise Geodatabase。Personal database适用于单机环境下的GIS应用,实际上就是一个Access数据库,Personal database通过Microsoft Jet Engine将空间数据存放在Access数据库中。Enterprise Geodatabase主要用于在网络环境下工作的GIS,适合大型数据库在网络环境下进行多用户并发操作和版本控制。GIS用户可以通过建立版本来并发访问Geodatabase中的空间数据。

Geodatabase 提供了4种空间数据的表述形式:描述要素的矢量数据、描述影像和网格的栅格数据、描述表面不规则三角网络、用于地址定位的Addresses 和Locator。

6.4.2 Geodatabase的体系结构
Geodatabase的基本体系结构包括要素数据集、栅格数据集、TIN数据集、独立的对象类、独立的关系类和属性域等。其中要素数据集又由对象类、要素类、关系类等构成。

(1)对象类(Object Class)。

对象类表示的是非空间实体,不在地图上直接表示,但与地图上的直接表示的图形要素关联。对象类可以组织到一个要素数据集中,也可以单独存在。

(2)要素类(Feature Class)。

要素类表示的是具有相同几何形状的空间实体。要素类可以独立存在,也可以具有拓扑关系。当不同的要素类之间存在拓扑关系时,应组织到一个要素数据集中。要素类可细分为点状要素类、线状要素类、面状要素类等。

要素类与对象类的主要区别在于:要素类中存储了空间信息,而对象类中却没有。

(3)要素数据集(Feature Datasets)。

要素数据集由一组具有相同空间参考(spatial reference)的要素类组成,用于存放矢量数据。

(4)栅格数据集(Raster Datasets)。

栅格数据集用于存放栅格数据,可以支持海量栅格数据,支持影像镶嵌。可以通过建立“金字塔”索引,从而提高海量栅格数据的检索速度和显示效率。

(5)TIN数据集(Tin Datasets)。

TIN数据集由一系列不规则的三角形构成,这些不规则的三角形表示了地表的起伏。

(6)关系类(Relationship Class)。

关系类用于定义两个不同的要素类或对象类之间的关联关系。

(7)属性域(Domain)。

属性域用于定义属性的有效取值范围,可以是连续的变化区间,也可以是离散的。

(8)几何网络(Geometric Network)。

几何网络是在若干要素类的基础上建立的一个新的类。几何网络包括网络的边要素和点要素,例如供水系统中的几何网络,水管是边要素,点要素就是阀门。

相关实践学习
体验RDS通用云盘核心能力
本次实验任务是创建一个云数据库RDS MySQL(通用云盘),并通过云服务器ECS对RDS MySQL实例进行压测,体验IO加速和IO突发带来的性能提升;并通过DMS执行DDL,将数据归档到OSS,再结合云盘缩容,体验数据归档带来的成本优势。
相关文章
|
定位技术 数据格式
GIS开发:arcgis server发布CGCS2000切片
GIS开发:arcgis server发布CGCS2000切片
228 0
|
SQL 开发框架 数据可视化
ArcGIS Engine学习系列1 AE基础介绍
市面上AE教程大致到ArcGIS10.2,ESRI宣布从ArcGIS10.5开始便停止AE的更新,使用AO做开发,初学者可以在学习C#语言后,从AE入门,逐渐过度到AO。不同版本下AE数据类型数量Enums:枚举类型,用于实现一些定义的内容Structs:结构体Interfaces:接口Classes:类AE开发中,为了更好地管理COM对象,ESRI将这些COM对象放到不同的组件库中。
298 0
|
缓存 定位技术
GIS开发:arcgis server切片数据和wmts
GIS开发:arcgis server切片数据和wmts
213 0
|
XML 存储 定位技术
GIS开发:Arcgis的切片格式
GIS开发:Arcgis的切片格式
212 0
ArcGIS开发手动添加License类
版权声明:欢迎评论和转载,转载请注明来源。 https://blog.csdn.net/zy332719794/article/details/43699511 第一步: 在工程中添加类: 类文件名“LicenseInitializer.
1095 0
|
定位技术
ArcGIS Engine中的Symbols详解
本文由本人翻译ESRI官方帮助文档。尊重劳动成果,转载请注明来源。 Symbols     ArcObjects用了三种类型的Symbol(符号样式)来绘制图形特征:marker symbols(标记符号),line symbols(线符号),和fill symbols(填充符号)。
907 0
|
API 定位技术 开发工具
ArcGIS API for Silverlight开发入门准备
         微软的Silverlight提供了跨浏览器和跨平台开发环境,在Web中可用于创建和展现富互联网应用(RIA,Rich  Internet Application)。
1066 0
|
API
收集的一些关于ArcGIS API for Silverlight开发的连接
1、ESRI官方的帮助文档是必不可不看的: http://help.arcgis.com/en/webapi/silverlight/help/index.
676 0
|
人工智能 数据可视化 API
ArcGIS API for Python
ArcGIS API for Python
67 0
|
JavaScript 前端开发 应用服务中间件
Arcgis api for javascript 详细部署
Arcgis api for javascript 详细部署