摘要:数据是地理信息系统不可或缺的一部分,怎样有效地生产数据和管理数据是gis行业一直在探讨的课题。本文介绍了arc/info空间数据管理的特点,并重点讨论了利用arc/info的librarian对地形数据建库和管理的 方法 。
关键字:arc/info、建库、library
一、 前言地形图经过数字化成为 电子 数据以后, 应用 的好坏很大程度上依赖于对数据的管理, 目前 对数据的管理最有效的手段就是数据库。arc/info作为一个地 理信息软件,也提供了对大量数据的集成管理,空间数据管理常用的方式有 :librarian、arcstorm和sde。
librarian和arcedit、arcplot一样,是arc/info的基本模块之一,它可管理大数据量的图形数据,并采用先进的空间索引方式,用户只要指定范围和 内容 ,系统会自动调入相关而不是所有的数据,它还支持多用户同时读取同一地图库,当一用户在对固定范围的数据进行修改时,系统锁定这一范围数据,防止别的用户同时修改使数据产生不一致性;arcstorm则是arc/info的一个扩展模块,它采用客户/服务器的结构设计,比起librarian可以管理更大量的数据,数据的锁定可以基于单个特征,增加了数据的共享性;sde采用了也是客户/服务器结构,提供了一种手段使空间数据可以添加到关系型数据库进行管理,提供了对空间、非空间数据进行操作的接口,支持visualbasic、c、c++等流行的程序语言对arc/info数据的操作。
由此可见,libraian适用于一定范围纯arc/info图形数据(coverage)的管理,arcstorm则适用于大数据量、多用户的arc/info图形数据管理,sde则在开发基于图形的应用程序时发挥作用。
本文以1:25万地形数据库为例讨论用librarian进行建库和管理的方法。
二、librarian介绍librarian是arc/info软件的一个模块,该模块可以创建、维护数字地图库(library)。数字地图库分块、分幅存贮地理数据,但可以把它作为一个整体进行访问,一般来说,一个图库代表一个地理区域。一个数字地图库的功能就是用一种方法来组织信息,使之容易被访问,并提供一种方法来控制访问和事务处理。
2.1 library的功能
定义数据库的空间位置关系
定义数据内容的组织方式
控制用户对数据库数据的使用权限,分为六个级别:主管adminstrator、管理者manager、操作员operator、浏览者browser、不可拷贝浏览者look、无任何权限none。
控制访问并跟踪对库数据的任何修改
允许在整个数据库范围内进行查询和选择,并能建立数据的空间索引关系,有效减少查询时间
提供数据库修改过程的 历史 记录
提供数据库结构和数据统计
2.2 library的数据结构
在逻辑上,library以两种方式组织这个区域的数据:tiles和layers。如图1所示:
图库是一个三维结构,在图库中,tile是水平的,而在概念上,layer是垂直的。当一个tile横切一个layer时,就产生一个coverage。
tile:是对图库进行二维分割,所有tile 边界连起来便组成数据库的整个地理区域。tiles在空间上分割数据库中的数据,数据在库中的存贮物理上是以tile为单位的。tile可以基于规则格网、 自然 地理边界或景观特征。如1:25万数据建库时是以图幅范围为tile边界的。
tiles形状应反映数据库数据的使用和以后的 应用 ;tiles形状不应是经常变动的边界或不稳定的边界;tiles应是连续的多边形coverage,在一个tile中不允许存在不相连的岛多边形,每一个岛多边形应是独立tiles。
图1 library的数据结构tile是以arc/info 的workspace形式存贮。tiles是最难以改变的库结构,所以确定tile时应做充分的实验及论证。
如1:25万数据建库时是以图幅范围为tile边界的,为使库里的数据在空间上是连续的,故选用的是经纬度的数据建库,则每个tile是1°×1.5°的经纬网界线组成。广西全区共有28个tiles。
layer:在数据库中,分割数据的第二种 方法 就是用layer进行分割,一个layer包含整个区域中的某类特征,由一个类型的coverage构成,用于具体存放数据库的 内容 。数据库查询、显示的就是layer。
2.3 library的数据组织
library是一个层次数据结构,数据库由标准的arc/info数据结构的coverage和info文件构成。它由四部分组成:
数据库位置文件:每一个数据库只有一个位置文件,包含数据库的名字和存放位置,这个文件存放于arc/info主目录的tables目录下。
数据库 参考 目录(database):包含定义数据库结构的文件,包括一个数据库索引coverage,该coverage包含tile的名字、物理位置等等,该目录里还包括数据库的样板layer。
tile工作空间:这是一个arc/info的工作空间,它包含某一tile中的所有map section
map section/coverage:这是一个arc/info coverage,由某个tile中的一个layer构成。