Geodatabase and ArcSDE 系列讲座,第一部分:Geodatabase的基础知识(之一)
ArcGIS 9.2产品推出以后,Geodatabase部分发生了比较大的变化。本次讲座介绍的均是9.2的Geodatabase和ArcSDE的功能。 在产品组成方面:9.1版本中,Geodatabase包括两种:Personal Geodatabase和ArcSDE Geodatabase,其中前者是将空间数据存储在A...
- 作者:萝卜兔子来源:ESRI中国北京有限公司|2007年02月01日
ARCGIS 9.2产品推出以后,Geodatabase部分发生了比较大的变化。本次讲座介绍的均是9.2的Geodatabase和ArcSDE的功能。
在产品组成方面:9.1版本中,Geodatabase包括两种:Personal Geodatabase和ArcSDE Geodatabase,其中前者是将空间数据存储在Access中,后者是将数据存储在Oracle,Informix,DB2,SQL Server中 。而9.2版本中,新推出了File Geodatabase,并且在ArcSDE Geodatabase部分,变成了三种类型:ArcSDE Personal Geodatabase,ArcSDE Workgroup Geodatabase,ArcSDE Enterprise Geodatabase。其中前两种是9.2新推出来的产品,是将空间数据存储在SQL Server Express中(详细介绍可见正文),而第三种就是9.1版本的ArcSDE Geodatabase,是将空间数据存储在Oracle,Informix,DB2,SQL Server。
在功能方面:本讲座涉及的功能均为9.2的功能,其中9.1具备的功能包括:Versioning Editing(版本化编辑),Working With a Geodatase Using SQL(支持的数据库仅为Informix和DB2 ),离线编辑(与9.2的空间数据复制中的Check In/Check Out相同)。值得注意的是,9.1版本对存储在ArcSDE中的空间数据只提供版本编辑功能,到了9.2才增加了Non Version(非版本化编辑)功能,以及Registered as visioned with the option to move edits to base(不完全版本化编辑)功能。
Geodatabase and ArcSDE系列讲座 第一部分:Geodatabase的基础知识(之一)
Geodatabase能将空间数据存储在文件、MDB文件或者大型DBMS中。以上三种存储方式的区别在于可存储数据量的不同以及可支持的并发用户数量不同,能够实现从小数据量、单用户的文件数据库到大数据量、多用户并发编辑的企业级DBMS的不同层次的应用。
Geodatabase事实上是很多Geographic Dataset的集合,最基本的Dataset的类型包括Feature Classes、Raster Dataset、Attribute Tables。在以上基本要素的基础上,还能定义Geodatabase的Schema、数据的完整性、规则和行为,包括Spatial Reference、Spatial Resolution、Topology、Network、Domain等等。在创建Geodatabase时,首先生成不同的Dataset类型,然后添加或者扩展Geodatabase基本要素的能力,例如添加拓扑、网络、子类以实现GIS行为建模、维护数据完整性以及建立空间关系。
不同的数据库中,存储矢量和栅格数据几何特征的字段在是不一样的,如果DBMS能够支持Spatial type Extensions,则能够很容易采用这种方式存储空间几何特征。目前有三种DBMS能够支持Geodatabase的Spatial Type:(1)Oracle using the ESRI spatial type or optionally the Oracle Spatial type;
(2)IBM DB2 using the Spatial Extender Geometry Object;
(3)Informix using the Spatial DataBlade Geometry Object。
Geodatabase将地理要素以表格的形式存储,每行记录代表一个要素。在Geodatabase的数据表支持的数据类型包括:
Numbers:包括Short Integers、Long Integers、Single-Precision floating points、Double-Precision Floating Point Numbers;
Text;
Date;
BLOB’S;Binary Large Objects用来存储和管理二进制信息,例如Symbols和CAD几何特征;
Globe Identifiers:Globe Unique Identifiers。GlobeID和GUID用来唯一标识一行记录。