基于ArcSDE的空间数据组织和管理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1ArcSDE的体系结构和数据模型
ArcSDE采用客户/服务器(即Client/Server)体系结构。在以Oracle为底层数据库的环境中,ArcSDE为用户提供了三种灵活的选择,用户可以根据具体情况选择直接连接(也称为两级连接,Two-TieredConnection)、间接连接(也称为三级连接,Three-TieredConnection)或者建立OLEDB连接。一般推荐采用间接连接。
ArcSDE间接连接的体系结构如图1所示。在服务器端ArcSDEService的giomgr进程一直在后台运行,当客户程序连接请求通过TCP/IP网络发送到ArcSDE时,giomgr进程为该连接分配一个专用的gsrvr,以后客户程序与ArcSDE的应用服务器之间的通讯就通过该gsrvr进程来进行。gsrvr进程主要起以下几个作用:(1)服务于该连接的所有请求;
(2)解释客户查询请求为Oracle可以理解的SQL语句,并根据查询对象(要素类或栅格数据集)的空间索引和查询条件产生过滤器,然后将带有过滤器的SQL语句提交Oracle服务器;
(3)进一步将Oracle提取的查询结果集进行第二步的空间过滤,以产生符合查询条件的最小结果集并返回客户程序;
(4)维护和管理元数据。
ArcSDE作为空间数据库引擎,既可以将矢量数据存储到GeoDatabase中,也可以将栅格数据存储到GeoDatabase中。
ArcSDE以GeoDatabase数据模型来存储数据。在GeoDatabase数据库中,GeoDatabase是最高层次的地理数据单元,所有的地理数据由一个或多个GeoDatabase组成。一个GeoDatabase由多个抽象数据集(Datasets)组成[2]。数据集通过继承得到Tin(Triangulatedirregularnetwork)数据集、栅格数据集、要素数据集和表。Tin数据集是指一套带有z值的不规则三角网,用它来精确表示表面。栅格数据集是存储有不同光谱或分类值的
基于ArcSDE的空间数据组织和管理
张佐帮1,尚颖娟2
(1.西南大学地理科学学院,重庆400715;2.西南大学资源环境学院,重庆400716)
摘要:重点讨论了ArcSDE的数据组织模型,以及如何组织和管理空间数据;利用ArcSDE结合Oracle9i技术,实现了中国--东盟自由贸易区电子政务系统中数据库的建立。
关键词:ArcSDE;数据组织;空间数据库
中图分类号:P208;TP311文献标识码:B文章编码:1672-6251(2007)09-0058-03
Theorganizationandmanagementofspatialdata
ZHANGZuo-bang1,SHANGYing-juan2
(1.SchoolofGeographicalsciences,SouthwestUniversity,Chongqing400715,China;2.SchoolofResourceandEnvironment,
SouthwestUniversity,Chongqing400715,China)
Abstract:ThepaperfocusesondiscussingthedataorganizationmodelofArcSDEandhowtoorganizeandmanagethespatialdata.ByusingArcSDEandOracle9itechnique,thedatabaseoftheE-governmentsystemofCAFTAisestablished.
Keywords:ArcSDE;Organizationofdata;Spatialdatabase
收稿日期:2007-08-22
作者简介:张佐帮(1979-),男,助教,研究方向:地理信息系统应用。
图1ArcSDE间接连接的体系结构[1]
多光谱带的一个简单数据集或一个复合数据集。要素数据集是具有相同空间参考系(SpatialReference)的要素类集合,它由几何网络和对象组成。几何网络同时也称拓扑,被绑定在一个包含有完整拓扑的要素类的图层中。要素类还可派生为点、线和面三种要素。数据集中的另一类地理数据(属性数据)--表,通过继承可以得到属性关系类和对象类。属性关系类是一张存储要素与要素之间或对象与对象之间的关联的表,对象类则是用于关联行为的表。对象类向下可泛化为要素类,并为要素类制定了相应的约束机制--规则;对象类同时又与几何网络组合成要素数据集,而且对象类又继承自表,这就把地理空间数据和属性数据联系在一起。2ArcSDE存储和组织空间数据
空间数据的组织和存储包括栅格数据和矢量数据两个方面。栅格数据的组织形式有两种:无缝镶嵌(Mosaic)和栅格编目(Rastercatalogs)[3]。无缝镶嵌是将两景或多景影像融合为一个无缝的栅格数据集,影像重叠部分会根据各景影像加载时的顺序由后加载的影像修改、覆盖先加载的影像,对于那些不需要进行修改的背景影像数据以及影像重叠部分无关紧要的数据来说,采用镶嵌方式有很大的好处,因为镶嵌图的显示速度很快。参与制作栅格数据镶嵌图的各景影像必须具有相同的波段数、色彩深度和空间参考系统,且不能含有色彩映射表。栅格编目组织形式是将多景影像显示为一个无缝的图层而不必将其镶嵌。对于需要经常更新的影像数据以及两景影像重叠部分不希望被覆盖而失去信息的影像数据而言,可以采用这种组织方式。
在ArcSDE中,栅格数据存储为Oracle的诸关系表,这些表主要包括SDE系统用户方案下的SDErastercolumns表、用户方案下的业务表(Businesstable)和4个支撑表(rastertable、rasterauxiliarytable、rasterbandtable和rasterblocktable),以及它们的索引。这6个表中,rasterblock表是真正存储影像像元值的,因此该表记录数最多,至于rasterblock表记录数的多少,则与ArcSDE的存储参数有关。
ArcSDE中的矢量数据是作为Shape存贮的,一个Shape可以是一个点、一条线,或是一个平面,一个Shape就是地图上的一个对象,每个Shape有独立的属性,例如城市人口、河流名称等。
3ArcSDE的应用实例
中国——
—东盟自由贸易区电子政务系统是一个基于网络的辅助决策支持系统。它的数据库采用ArcSDE和Oracle9i对数据进行组织和管理,实现了空间数据和非空间数据的一体化管理。在本数据库中,主要的数据有:
(1)空间数据:中国--东盟10国矢量数据(1:2500万、1:400万和1:100万);影像数据,主要是空间分辨率为250m全范围(中国云南及东盟10国)的MODIS影像数据和空间分辨率为50m的TM影像数据(中国云南);DEM数据,主要为中国--东盟10国部分地区的DEM数据(1000m像元)和云南省DEM数据(500m像元)。
(2)非空间数据:中国云南与东盟10国历史和现状的部分社会经济统计数据。
以上各种尺度、各种数据格式的数据中,空间数据的入库方法是通过ArcSDE命令方式导入或者通过ArcCatalog、ArcToolbox等数据转换工具导入。ArcSDE的命令方式可以实现批处理。非空间数据通过ODBC建立数据源导入Oracle9i数据库中。
ArcSDE存储和组织数据库中的空间要素的方法是将空间数据类型加到关系数据库中,ArcSDE并不改变和影响现有的数据库,只是在现有的数据表中加入图形数据项(Shapecolumn)供软件管理和访问与其关联的空间数据。ArcSDE将地理数据和空间索引放在不同的数据表中通过关键项将其相联。将图形数据项加到一个商业数据库表后,我们称该表为空间可用的(spatiallyenabled)。ArcSDE通过将信息存入层表LAYERStable来管理空间可用表,层表帮助管理商业表和空间数据之间的连接。对空间可用表我们可像通常那样对表中数据进行查询合并,也可以进行图到属性或属性到图的查询。
下面举例说明LARYERS表中数据的存储结构和关系,如图2。在LAYERS表中的TABLENAME字段存储的是那些包含空间数据列的表的名称,在TABLENAME字段下有一个名为CITIES的BusinessTable。SPATIALCOLUMN字段中的数据指明了商业表中空间数据列的字段名,在此例中该字段名为SHAPE。现以CITIES这张商业表为例详细说明这几个表之间的关系。因为在LAYERS表中与CITIES相对的LAYERID是11,所以CITIES表所对应的空间数据及其索引一定存放在F11和S11两个表中。其中F11是空间数据表,S11是索引表。在CITIES这张商业表中,SHAPE是一个标准的NUMBER类型的字段,它只是起到一个索引的功能,即通过SHAPE中的数值就能由F表和S表(其后的数字由这个空间对象的ObjectID决定)的FID字段找到与其对应的行。另外,F表中的POINTS字段是一个LONGROW类型的字段,其中存放着空间对象所有坐标值序列的二进制编码。