基于ArcGIS的建库技术
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二章
2.1
Oracle 的相关内容
网络数据库系统
网络数据库系统的几个概念
2.1.1
在网络数据库系统中,有 3 个特别重要的概念。 (1)数据库服务器 逻辑上的服务器指的是安装在计算机上提供一些基于网络环境的应用的软件。 比如我们要访问互联网上的网页, 就需要在计算机上安装名为 Web 服务器的软件(如 Windows 2000Server 内嵌的 IIS5.0、Apache 等),我们就说这台计算机是一台 Web 服务器,可以提供 Web 服务;要使用电子邮件,就需要安装能提供电子邮件服务的 软件,我们说这台计算机是一台电子邮件服务器;要查询后台数据库中的数据,就 需要在计算机上安装名为数据库服务器的软件(如 SQLServer、Oracle9i 等),我们 就说这台计算机是一台数据库服务器。 如果没有特别说明,本书中的数据库服务器指的都是逻辑上的数据库服务器。 (2)管理客户机 逻辑上的管理客户机是指对数据库进行管理的软件。它和数据库服务器既可以 位于同一台物理上的计算机上,也可以位于不同的计算机上。 在本书中,如果没有特别说明,客户机指的都是逻辑上的管理客户机。
1.3
ArcGIS 支持的空间数据类型
ArcGIS 同时支持基于文件的空间数据类型和基于数据库的空间数据类型。 ArcGIS 可以使用多种格式的 GIS 数据,并且可以同时访问多个数据库和文件。 ArcGIS 用一个高级的通用的地理数据模型来表示空间信息,包括空间要素,遥 感数据以及其他的空间数据类型。 ArcGIS 同时支持基于文件的空间数据类型和基于 数据库的空间数据类型。 基于文件的空间数据类型包括对多种 GIS 数据格式的支持,如 coverage, shapefile,grid,image 和 TIN。Geodatabase 数据模型也可以在数据库中管理同 样的空间数据类型,这样,可以利用关系数据库已有的优点。
Personal Geodatabases ( 微 软 的 Vector Product Format (VPF) files Access)
CAD 文件 表(各种格式的) 表 1 是一些 ArcGIS 中可以直接使用的数据类型。 对更多的数据类型的支持可以通过数据转换工具和扩展来 实现。GIS 数据也可以在 Web 上通过 XML 和 Web 数据格式进行传输,如 Geodatabase XML,ArcXML,SOAP,WMS, WFS 等。
与文件管理系统相比,具有以下特征: (1) 数据集中控制特征,提高了数据共享性和数据的并发访问控制 (2) 数据冗余度小的特征, (冗余带来两个问题,增加存储空间,数据不一致) (3) 数据独立性特征(是数据库的关键要求,数据独立是指数据库中的数据与 应用程序的相互独立。即应用程序不因数据性质的改变而改变,数据性质也不因应 用程序的改变而改变。分为物理和逻辑两种级别:物理独立是指数据的物理结构变 化不影响数据的逻辑结构;逻辑独立是指数据的逻辑结构改变不影响应用程序,但 逻辑结构的改变会影响数据的物理结构)。 (4) 复杂的数据模型,因要表示数据间复杂的关系,使数据结构复杂。可分为: 网络数据模型 层次模型 关系模型 空间数据模型 (5) 数据保护特征,具有安全性控制、完整性控制、并发控制、故障的发现和 恢复等功能。 1.1.4 数据库管理系统(DBMS)
图 1.3 网络模型
(3)关系模型 关系模型是一种数学化的模型。图 1.1 所示的地图,可用表 1.1 至表 1.4 所列 的关系表表示多边形与边界及结点之间的关系。
表 1.1 表 1.2 关系 1:多边形关系(P) 关系 2:边界关系(E)
表 1.3 表 1.4
关系 3:边界-结点关系(N) 关系 4:结点坐标关系(C)
基于文件的数据类型和基于关系数据库的数据类型都定义了空间地理数据的通用模型。这 些数据类型可以在大量的 GIS 应用中使用。通过定义和使用这些空间数据模型的行为,ArcGIS 中的空间信息是基于标准的,可以作为多种应用的基础,也可以和其他程序很好的共享。这样 ArcGIS 为几乎所有的 GIS 应用提供了一个很好的平台。
2.1.2
DBMS 的功能: 数据库定义功能 数据库管理功能 数据库维护功能 数据库通讯功能 DBMS 的组成: 语言处理程序,DDL、DML、解释、编译等 系统运行控制程序,各种控制 建立和维护程序,数据装入、重组、转储等 数据库管理员的作用: 决定数据库的信息内容 充当 DBMS 的联络员 决定存储结构和访问策略 监督系统工作 1.1.5 数据库模型 数据模型是描述数据内容和数据之间联系的工具,是衡量数据库能力强弱的主要标 志之一。常用的数据模型有层次模型、网络模型、关系模型,以及最近兴起的面向 目标或称面向对象的模型。 (1)层次模型 层次模型是以记录类型为结点的有向树或者森林,主要特征是除根结点之外, 任何结点只有一个父亲。父结点表示的实体与子结点表示的实体必须是一对多的联
表1 基于文件的空间数据
Coverages Shapefiles Grids TINs Images(各种格式的)
基于数据库的空wenku.baidu.com数据
Oracle
Oracle with Spatial DB2 with its Spatial Type Informix with its Spatial Type SQL Server
系,即一个父记录对应于多个子记录,而一个子记录只对应于一个父记录。对于图 1.1 所示的多边形地图,可以构造出图 1.2 所示的层次模型。
图 1.1 地图 M 及其空间要素 图 1.2 层次模型
(2)网络模型 网络模型是以记录类型为结点的网络结构,网络与树有两个非常显著的区别: (1) 一个子结点可以有两个或多个父结点; (2)在两个结点之间可以有两种或多种联系。 图 1.3 是图 1.1 的网络模型。
图 1.5 多个继承的实例
1.1.6
GIS 中空间数据库的组织方式
(1)混合结构模型 两个子系统分别存储空间数据和属性数据。 记录之间通过关键字联系, 如图 1.6 所示。图 1.6 混合结构模型 (2)扩展结构模型 采用统一的 RDBMS 存储空间数据和属性数据,扩展 RDBMS 的空间管理功能。通 常在标准 RDBMS 上附加空间数据管理层,利用该层将 GeoSQL 转化成标准的 SQL 语 言。如图 1.7 所示。图 1.7 扩展结构模型 (4)面向对象的数据库管理系统 面向对象 DBMS 的有三种实现方式 (1)扩充面向对象程序设计语言(OOPL),在 OOPL 增加 DBMS 功能。 (2)扩充 RDBMS,在 RDBMS 中增加面向对象的功能。(3)建立全新的支持面 向对象的 OODBMS。
(4)面向目标(对象)的数据模型 1)面向对象方法的基本概念: 对象: 在 GIS 中定义为:描述一个地理实体的空间和属性数据以及定义一系 列对实体有意义的操作函数的统一体。 对象类:同类对象的集合。 方法和消息:对一个类定义的所有操作称为方法。对象间的相互联系和通信的 唯一途径是通过“消息”传送实现的。 协议和封装:协议是一个对象对外服务的说明,它告知一个对象可以为外界做 什么, 外界对象能够并且只能向该对象发送协议中所提供的信息, 请求该对象服务。 封装:是将事件包围起来,使外界不必知道内部构造和内容。封装的最小单位 是对象。 面向对象的方法具有强大的数据抽象表达能力。如:分类、概括、聚集、联合 等抽象技术,以及继承、传播等抽象工具。面向对象的单个继承的实例如图 1.4 所 示,多个继承的实例如图 1.5 所示。图 1.4 单个继承实例
(3)端口 在一台物理上的服务器上可以安装多个服务软件,构成逻辑上的多个服务器。 为了区分这些不同的逻辑服务器,使用了称为端口的概念。 构建网络的目的是为了信息共享,在网络上连接的计算机物理上是通过诸如网 卡、交换机、路由器等设备连接起来的,在物理层之上还规划了许多接口规范,这 就是我们所熟悉的网络分层结构。 网络协议是介于应用层和物理层之间的通信协议,通过它可以在计算机之间信 息互联互通。其中最重要的、使用最广泛的就是 TCP/IP 协议。在基于 TCP/IP 协 议的网络中为每台联网的计算机分配了唯一的一个 IP 地址,如某台服务器的 IP 地 址为 202.114.121.206。这里 IP 地址的作用就是用来区分联网的计算机,相当于计 算机的网络身份号。 IP 地址只能区分不同的计算机信息, 当我们在同一台物理上的服务器上构建多 个服务时,有一个问题,如何区分这些同一台计算机上的各种服务软件提供的信息 呢?这里就用到了端口的概念。 我们可以这样理解,在计算机网络这个虚拟的社区里,IP 地址相当于每个单位 的门牌号码,端口就是该单位内部的各个办公室的编码。通过“IP 地址+端口号” 的方式,就能区分同一台计算机上的不同的逻辑服务器提供的服务了。 IIS Web 服务器安装后默认的端口号是 80,Oracle 数据库服务器安装后默认的 端口是 1521。
1.2
基本的建库思路
(1)建库软件 数据库软件:Oracle; 数据库引擎:ArcSDE for Oracle 空间数据类型:Geodatabase(地理数据库)。 (2)数据库建库方案 数据库建库结构图如图 1.8 所示。
图 1.8 数据库结构图 采取 Client/Server(客户端/服务器)模式建立网络数据库,在服务器端安装 Oracle, ArcSDE for Oracle, 在客户端安装一些客户端软件,如 Arc/Info, ArcObjects, Visual Basic, Visual C++。 在服务器端, 将空间数据和相关的属性数据存储在 Oracle 关系数据库中, 利用 ArcCatalog 建立 geodatabase 地理数据库。 在客户端, 利用 Arc/Info, ArcObjects, Visual Basic, Visual C++等通过空间数据引擎访问数据库中的数据。
基于 ArcGIS 的建库技术
第一章
1.1
基于 ArcGIS 的空间数据库的建库方案
空间数据库的基本知识
1.1.1、数据库的概念 数据库的定义:为了一定的目的,在计算机系统中以特定的结构组织、存储和 应用的相关联的数据集合。 计算机对数据的管理到目前为止,共经历了四个阶段: (1) 程序管理阶段,数据和应用程序一同存在。 (2) 文件管理阶段,数据和应用程序独立。(数据间无明显关系) (3) 数据库管理阶段,数据和应用独立(逻辑独立),数据库和存储设备独立 (物理独立)。数据库数据之间建立了联系。数据面向操作组织。 (4) 数据仓库阶段,数据经过重构、融合等,面向主题组织。服务于决策系统。 数据库可以看作是与现实世界有一定相似性的模型,是认识世界的基础,是集 中、统一地存储和管理某个领域信息的系统,它根据数据间的自然联系而构成,数 据较少冗余,且具有较高的数据独立性,能为多种应用服务。 数据库作为一个复杂的系统,由以下三个基本部分构成: 1°数据集。一个结构化的相关数据的集合体,包括数据本身和数据间的联系。 数据集独立于应用程序而存在,是数据库的核心和管理对象。 2°物理存储介质。指计算机的外存储器和内存储器。前者存储数据;后者存 储操作系统和数据库管理系统,并有一定数量的缓冲区,用于数据处理,以减少内 外存交换次数,提高数据存取效率。 3°数据库软件。其核心是数据库管理系统(DBMS)。主要任务是对数据库进行 管理和维护。具有对数据进行定义、描述、操作和维护等功能,接受并完成用户程 序和终端命令对数据库的请求,负责数据库的安全。 1.1.2 地理空间数据库的概念 地理空间数据库定义:地理数据库是某区域关于一定地理要素特征的数据集 合。 与一般数据库相比,具有以下特点: 数据量特别大 具有地理空间数据和属性数据; 数据应用面相当广 1.1.3 数据库的主要特征