樊 江,蔡中祥,荆 晨
(1.信息工程大学 地理空间信息学院,河南 郑州 450001)
基于ArcSDE和Geodatabase的港口空间数据库构建
樊 江1,蔡中祥1,荆 晨1
(1.信息工程大学 地理空间信息学院,河南 郑州 450001)
通过对空间数据库构建关键技术进行分析,选取ArcSDE和Geodatabase作为港口空间数据库的数据库引擎和数据模型。该数据库采用“ArcSDE+SQL Server 2008”技术体系构建,在对相关数据进行预处理后,建立数据库并将数据分类入库。实例证明,最终构建的数据库能实现对港口空间数据的存储和管理。
ArcSDE;Geodatabase;空间数据库;港口
在港口的日常业务工作和规划设计中,涉及到大量的空间数据以及业务数据,这些数据分布于各个业务部门,共享性较低。如何简洁高效地利用好、组织好、管理好这些数据资源是当前港口建设和发展中所面临的一个主要课题,因此构建符合特定需求的港口空间数据库,实现业务信息和空间信息的融合,使港口不同部门共享空间数据和相关业务数据,十分重要。
1.1 ArcSDE空间数据库引擎
空间数据引擎的典型代表主要有ArcSDE、Spatial Ware、SDX+。通过对比支持数据库的类型、数据存储和管理的效能以及与GIS软件结合程度等,在港口空间数据库构建中,选择ArcSDE作为空间数据引擎。
ArcSDE通过SQL引擎执行空间数据的搜索,将满足空间和属性搜索条件的数据在服务器端缓冲存放并发回到客户端[1,2]。ArcSDE还提供了一种不通过ArcSDE应用服务器直接访问空间数据库的连接机制[2]。ArcSDE体系架构如图1所示。
1.2 Geodatabase数据模型
空间数据模型是关于现实世界中空间实体及其相互联系的概念,它为描述空间数据的组织和设计空间数据库模式提供了基本方法[3]。Geodatabase是目前经常使用的面向对象数据模型,它是建立在DBMS之上的统一的、智能化的空间数据库[4]。在具体的数据结构中,能将特征和行为结合在一起,使得管理维护方便,查询检索效率高。同时该数据模型具有扩展性,便于数据分析与应用,易于实现数据模型的转换,从而实现与数据库的关联。
Geodatabase可以表现的4种地理数据如图2所示。
图2 4种地理数据
2.1 需求分析
随着港口信息化建设的不断深入,港口用户希望在空间数据中集成自己的核心业务数据并将空间分析和可视化展现功能添加到自己的业务流中,实现信息共享,需要开发特定的、符合实际业务需求的港口空间数据库,来实现港口空间数据与核心业务数据的融合与挖掘。数据库内容包括:
1)基础地理数据,包括地形、地质、道路、整个港口区域等数据,主要由矢量数据、栅格数据、数字高程模型数据、港口遥感影像数据等构成。
2)专题数据,主要分为常规水深数据、码头信息数据、设施数据、疏浚信息数据,具体内容如图3所示。
图3 专题数据内容
3)业务数据,主要用来存储与港口业务相关的信息。按照业务类型的不同可以把业务数据划分为业务部门数据、统计数据、业务管理数据。这3类数据的每一项又可以细分为许多子项,每一个子项都有可以表示其特征的数据项,通过这些特定的数据项,将各个子项关联起来。
4)元数据。
2.2 概念设计
表示概念模型最有力的工具是E-R模型,即实体-联系模型,包括实体、联系和属性3个部分,具体设计如图4所示。实体有港口、码头、仓库、堆场、道路以及设备设施,各个实体都具有各自的属性,实体之间的联系是1对多的关系。
2.3 逻辑设计
图4 E-R 模型
数据库逻辑结构见图5。
将数据匹配到Geodatabase数据模型,就是确定数据在Geodatabase中的表示,并对每一个空间实体分配与之对应的表达方式:矢量数据用点、线、面来表示;栅格数据用栅格结构来表示;地表用不规则三角网(TIN)来表示;与空间位置无关的数据用对象来表示;地理位置等用地址数据来表示(表1)。
表1 空间实体在Geodatabase中的表达方式
属性数据结构设计包括:
1)空间数据属性结构设计。空间数据属性结构设计主要是指矢量数据的属性结构设计,字段代码统一用大写汉语拼音首字母命名。表2所示为矢量数据属性结构设计,表3所示为码头矢量数据的属性结构设计。
表2 矢量数据属性结构设计
表3 码头矢量数据属性结构设计
图5 港口空间数据库逻辑结构
2)非空间数据属性结构设计。非空间数据采用表来记录数据,通过港口编码或港口名称来关联空间数据。以港口基本信息表为例,其属性结构设计如表4。
表4 港口基本信息表
2.4 空间数据库模式
采用“ArcSDE空间数据库引擎+关系数据库”的技术体系对空间数据进行管理和存储。当前使用较为广泛的2种关系数据库分别为微软公司的SQL Server和美国甲骨文公司的Oracle。SQL Server较Oracle操作简便,性价比高,且能满足需求,选用SQL Server关系数据库作为港口空间数据库的数据库平台。根据港口空间数据库的建库需求和内容需求,选用功能较为全面的SQL Server 2008企业版。
3.1 数据预处理
港口空间数据库涉及大量的矢量数据、栅格数据以及属性数据。
1)矢量数据的处理。主要依靠ArcGIS 10平台对港口图像进行矢量化,在港口图像进行配准后,采集港口区域、道路、仓库、堆场、码头和港口设施数据,然后进行相应的拓扑处理、坐标和投影变换。
2)栅格数据的处理。栅格数据的处理对象主要是港口遥感影像,需要应用遥感影像处理软件Eedas Imagine 9.0对港口遥感影像进行处理。
3)属性数据的处理。港口属性数据分为2种,一种是记录在港口空间数据中的属性数据;另一种是单独的港口属性数据。属性数据需要录入已编制好的属性表中,数据录入时要确保没有错漏。
3.2 数据库的建立
建立基于ArcSDE和SQL Server 2008的空间数据库首先需要安装建库软件ArcGIS 10、数据库软件SQL Server 2008企业版以及数据库引擎ArcSDE。然后进行ArcSDE For SQL Server 的连接配置。ArcSDE 的连接方式主要有应用服务器连接和直接连接[5,6]2种。港口空间数据库采用应用服务器连接的方式进行配置,配置时设置如下:服务器的主机名称设置为通用的localhost;服务端口默认是esri_sde;数据库为sde创建的数据库;用户和密码为装载SQL Server 2008时的用户和密码。设置完成后,在计算机服务管理中确定ArcSDE服务已启动时测试连接是否成功,连接成功后即完成配置。
3.3 数据入库
通常采用以下2种方式进行数据入库。
1)运用ArcCatalog 提供的Import和Load工具,以图形操作界面分别对不同类型的数据进行入库。
2)命令的方式入库。港口空间数据库的数据入库采用ArcGIS提供的图形操作界面进行,这种方式操作简便,不要求用户有编程基础,并且可以批量导入空间数据或非空间数据。由于港口空间数据库包含不同类型的数据,需要分类进行入库:矢量数据利用ArcCatalog 提供的Import工具导入;栅格数据采用ArcCatalog 提供的Load工具导入,在Raster to Geodatabase (multiple)图形操作界面加载需要入库的栅格数据,可实现栅格数据的批量入库;属性数据以表格形式存在,属性数据表结构采用建模工具Power Designer 15.1进行设计,将属性数据录入到表中,然后利用Import工具批量导入。
3.4 实例应用
构建港口空间数据库的目的在于为港口数据共享平台和决策支持系统提供数据支持,从而实现数据管理、地图服务、业务管理、信息查询以及系统维护等相应的功能,其系统界面如图6所示。
图6 港口数据共享平台和决策支持系统界面图
[1] 杨东远,韩德忠.天津港GIS数据库的建设与应用[J].港工技术,2009(7):102-104
[2] 崔铁军.地理空间数据库原理[M].北京:科学出版社,2007
[3] 邬伦,刘瑜,张晶,等.地理信息系统原理、方法和应用[M].北京:科学出版社,2001
[4] 池建.精通ArcGIS地理信息系统[M].北京:清华大学出版社,2011
[5] 蒋春曦,谢庆胜,李毅军,等.安徽省防震减灾基础地理数据库设计与实现[J].华北地震科学,2006(3):29-32
[6] ESRI中国(北京)培训中心.ArcSDE 应用与示例——ArcSDE多种连接方式[Z].北京:ESRI 中国(北京)有限公司,2008
[7] 孙永华,李小娟,尹连旺.基于ArcSDE和SQL Server2000洪水灾害信息数据库的设计研究[J].河北师范大学学报:自然科学版,2007(3):400-402
P208
B
1672-4623(2015)03-0064-04
10.3969/j.issn.1672-4623.2015.03.023
樊江,硕士,研究方向为地理信息系统工程。
2014-08-05。
项目来源:国家自然科学基金资助项目(41401160)。