搜索
您的当前位置:首页正文

基于ArcSDE的地理数据入库技术研究

2022-07-12 来源:易榕旅游
40

测绘信息与工程 JournalofGeomaticsDec.2009;34(6)

中图分类号:P208 文献标志码:B

文章编号:1007-3817(2009)06-0040-02

基于ArcSDE的地理数据入库技术研究

黄 明 边馥苓

(武汉大学空间信息与数字工程研究中心,武汉市珞喻路129号,430079)

摘 要 分析了GIS开发中空间数据的导入原理和技术,提出了一种基于ArcSDE的自建命令,实现了一种简单高效的空间数据入库方法。

关键词 空间数据库;ArcSDE;地理数据入库;数据检查 在GIS技术体系中,空间数据库是所有GIS应用的基础,空间数据的高效合理的组织和存储是GIS建设的关键,在空间数据库的建立中,将原始数据如遥感数据、测量数据等组织入库,需要采用适当的科学方法[1]。作为应用开发的重要环节,需对空间数据导入功能进行合理设计。ArcSDE不仅为应用开发提供了许多接口,而且为服务管理和空间数据库的基本操作提供了多种命令,其中包括数据表和图层的建立和修改,数据导入导出等命令。对于数据导入,提供了shape、coverage、dBase数据文件等的支持;此类命令封装了ArcGIS的数据转换机制,将不同格式的数据转化成了SDE数据,从而达到数据入库的目的。以广东某镇区的基础地理数据入库为例,介绍一种基于ArcSDE技术的空间数据导入方法。

设计可能与源数据组织不同,需要按照系统具体的要求重新组织数据,即在数据导入阶段,设置导入条件。由于ArcSDE封装了sde2shp、shp2sde、sde2cov、cov2sde等许多数据转换命令,这些命令是ESRI公司为地理数据格式转换而提出的解决方案,使用这些命令可以方便高效地进行数据格式转换,而省去了复杂的ArcGISEngine编程过程。在系统中,可以使用shp2sde和cov2sde等命令并结合关系数据库技术,针对不同格式的源文件导入地理数据。

数据检查是保证导入数据质量的非常重要的功能,数据检查是保证数据的正确性[2],在以增量式导入机制下,可能出现数据记录的重复或者图层编码的错误。对于空间数据,需要进行类型一致性、拓扑一致性、数据接边等检查[3],对于空间数据的检查,可以通过检查标注问题数据,结合图形编辑平台,采用人机交互的方式实现;对于属性数据,需要进行编码一致性和属性值是否符合数据库的约束条件等检查,由于空间数据库的特性[4],属性数据可以直接使用存储空间数据的数据库管理系统进行处理,从而使处理效率更高。由于对于属性数据的检查可以通过RDBMS直接处理,并且对于空间数据的检查都是要通过ArcGISEngine接口实现,所以在数据导入数据库后,对数据进行检查处理更为高效。

1 基于ArcSDE命令的空间数据导入方法

空间数据入库是一项复杂和严谨的工作,入库质量的好坏,直接关系到整个GIS应用的效率,其中包括数据准备、数据检查和数据导入等环节。

在大多应用中,空间数据源一般是摄影测量数据经过矢量处理后的DWG文件,所以在数据准备阶段,需要将DWG文件转成ArcGIS支持的数据格式。在格式转换过程中,必须针对数据的实际情况进行适当的处理,如通常的DWG文件只有点、线和注记三种数据类型,面是使用闭合曲线表示,而实际上大多DWG文件制作时可能存在一些误差,导致代表面的曲线没有闭合,这将在数据转换中导致数据类型转换错误,所以要设置一定的容差值来自动闭合曲线,保证数据类型转换的正确性;DWG文件对属性数据的记录支持不是很好,所以还要根据测量调查数据对数据记录进行补充,以保证空间数据的完整性。属性数据的入库既可以在数据准备阶段进行,也可以在空间数据入库以后进行。根据DWG文件的扩展属性,需要对GIS空间数据库图层进行属性设计,不同类地物要素对数据的要求不同,其关系数据库表属性字段也不一致,因此DWG文件必须具有标识地物要素类型的字段和地物要素的惟一性标识字段,以便实现对地物要素属性数据的导入。

当DWG格式的源数据按照要求转化成ArcGIS支持的数据格式并对空间对象按照国标进行编码后,需要按照具体空间数据库设计将数据进行导入处理。由于空间数据库的2 实例分析

在广东某镇区的地理信息管理系统建设中,基础地理源数据是用作城市规划的DWG格式文件,以此应用为例,实现该镇基础地理信息入库的过程。

系统采用Visualstudio2005+C#语言开发环境、Ora-cle10gR2数据库,系统运行环境是.NETFramework3.0+ArcGISEngineRuntime,数据入库功能模块是负责对以DWG文件为源数据文件的数据进行转换处理并导入数据库,主要分为数据格式转换、数据导入和数据检查处理三个子功能模块,系统采用ArcSDE作为空间数据引擎对Ora-cle10g数据库进行交互。

DWG文件经过抽取、构面等处理后转换成点、线、面三个图层,分别对这些图层进行检查后保存为shape数据格式文件,根据测量调查数据,补充属性数据,并根据DWG文件中标识图层的字段,按照图层编码国标对空间记录编码,数据处理完毕后,形成shape数据格式的待入库数据文件。数据转换界面如图1所示。测绘信息与工程 JournalofGeomaticsDec.2009;34(6)

根据需求分析,系统的基础地理数据按类型分为建筑

41

在数据导入后,利用系统的数据检查组件,对地理数据

图1 数据转换界面图3 数据入库结果报告物、植被、道路、水体、注记等52个图层,每个图层对应数据库中一个数据表,源数据要按照国标编码导入到相应的图层,系统中用到ArcSDE中自建的shp2sde命令对数据进行导入,shp2sde命令使用格式为:

shp2sde-oappend?-l[-V]

-f[-I][-a{none|all|file=}][-r][-c]

[-i][-s][-D]-u[-p][-v]

质量进行检查,并提供处理有质量问题数据的功能。属性数据检查功能实现界面如图4所示。

图4 属性数据检查功能实现界面命令参数说明见文献[5],在数据导入中主要用到:-oappend参数说明是以增量式导入数据;-l表示导入目标图层名和空间数据项名;-V是一个可选项,表示ArcSDE的版本名;-f是源数据文件;-a参数项表示导入条件设置,选项all代表全部导入,file是一个存储导入条件的文本文件,可以由程序设置源数据与目标数据的字段对应条件,-i参数项代表SDE服务名;-u代表用户名;-p代表用户密码。

由于shp2sde命令是将源数据全部导入数据库,在设置导入条件的情况下,需要对不符合过滤条件的数据进行处理。直接利用DBMS处理数据文件更为高效,并且不需要改动源数据文件。具体方法是:程序对目标图层生成一个临时字段,标识新导入的数据集,在此数据集中查找并清除不符合过滤条件的数据记录。在导入大量的数据记录时,这种方法表现出较高的效率。数据导入设置如图2所示。数据入

3 结束语

介绍了一种用于空间数据库建库阶段对地理数据进行导入的方法,是建立在ArcSDE数据引擎技术的基础上,结合关系数据库技术的实现方法。采用ArcSDE自建命令和关系数据库操作的混合处理策略,实现相对高效的地理数据入库方法。该方法主要用以空间数据建库时的批量导入,以及扩展地理数据图层和空间范围数据时的数据导入处理;此外,该方法还可以扩展到地理数据的更新操作中。参考文献[1]边馥苓.数字工程的理论与方法[M].北京:测绘出版社,2006[2]ShashiS,ChawlaS.空间数据库[M].谢昆青,马修军,杨冬青,

等译.北京:机械工业出版社,2004

[3]黄加旺,岳国森,彭金辉.空间基础数据入库方法探讨[J].测绘

通报.2004(4):46-48

[4]ESRI.ArcSDE9.0DevelopHelp[R].EsriRedlands,2006[5]ArcSDEOracle管理员教程[R].北京:ArcInfo中国技术咨询与

培训中心,2001

-03-25。 收稿日期:2009第一作者简介:黄明,博士研究生,现研究空间数据库和空间数据

ù

图2 数据导入设置挖掘。

E-mail:myitalian@163.com

库结果报告如图3所示。

GEOGRAPHICDATAIMPORTINGTECHNOLOGYBASEDONARCSDE

HUANGMing BIANGFuling

(SpatialInformationandDigitalEngineerResearchCenter,WuhanUniversity,129LuoyuRoad,Wuhan430079,China)

ABSTRACT BasedonstudyandanalysisofGeo-Database.sdata-importingtheoryandARCS-DEdataenginetechnology,weintroduceageo-dataimportingschemeusingArcSDEcommendscombinedwithrelationaldatabasetechnology.Inaddition,weimplementageo-dataimportingsimpleandefficientmethodbyanactualexample.

KEYWORDS geo-database;ArcSDE;geo-dataimporting;datachecking

因篇幅问题不能全部显示,请点此查看更多更全内容

Top