UML的地质数据库设计方法
 

2009-05-31 作者:唐茜檐,戴爱德 来源:lrn.cn

 

0引言

随着社会进步与经济发展加快,人们对资源的需求与地质灾害预测日益增加,建立高效良好的地质数据库成为了必然。地质数据库的建立,便于高效地管理海量多源的地质数据,及能对各个子专业数据信息进行各种查询、分析和统计,从而充分发挥地质信息的社会经济效益。

地质数据库是一个庞大的基于GIS 的地学综合信息系统。在本文中整个地质数据库将按照应用方式的不同,分为基础地理数据库、基础地质数据库、地质矿产资源数据库、溶岩洞穴数据库、地下水资源数据库、动态变化监测地质灾害数据库、遥感影像数据库等8 个专业子数据库。对于应用来说,数据是至关重要的,可以说许多分析功能是建立在良好的数据库结构基础L 的。面对种类繁多、性质各异的各种专题数据,需用一良好方法将其架构起来,并能很好的去实现。

1 建立地质数据库的方法选择

设计与建立地质数据库,实质上是对真实世界进行建模。可采用ESHI 最新的面向对象的地理数据库模型,即Ge .、Datal , ase 。借助ArcGIs 的A , catalog ,可以采用只种方法建立新的地理数据库,选择哪一种方法取决于Ge0Datal ) ase 的数据源,以及是否存储定制的对象。

( l )建立一个全新地质数据库

在有些情况下叮能没有任何可装载的数据,或者己经有的数据只能部分地满足数据库设计。这时,可以用渐。catalog 来建立新的要素数据集、表、几何网络和其它地质数据库项的模式。

( 2 )移植已经存在的数据到地质数据库

对于已存在的多种格式的数据:shapefile,coverage , Info Table , dBase Tahles等,以及其他系统中的数据格式:ArciStorm , Map1nfo , AosDE 等,可以通过Aratalog 来转换并输人到地质数据库中,然后用ArCatalog 进一步定义数据库。包括建立几何网络Geometric Networks )、子类型(Slohtypes )、属性域(Attribute mains )等。

( 3 )用 CASE 工具创建地质数据库

所谓使用CASE 工具,是利用UML 进行面向对象的模型设计。在这种模型的基础, cASE具帮助创COM 对象来完成定制特征的一些具体的功能以及维护这些特征属性的数据库表。CASE 工具设计包含两个重要的阶段,即代码产生阶段和属性表生成阶段。前者主要创建定制特征的具体功能(属性和方法), 后者用来生成Ge ( 1Dalahase 中的表。利用cAsE 工具建立空间数据库分为以下儿个步骤(如图1 fML 、CASE 工具的空间数据库生成步骤):

l )利用uML 设计对象模型;

2 )将模型输出到知识库;

3 )利用ArCatalog 中的方案(ArcSchema)生成向导,生成空间数据库方案,并得到G eoDatahase 。

地质数据库的设计是一个重要的过程,应该根据需要进行规划设计和反复修正。一旦完成了地质数据库的设计,就可以建立数据库及其模式汤lhema ) ,装载已经存在的Shefile 和CoVerage 数据;也可以用统一建模语言(HML )或计算机辅助软件工程( CASE )工具来建立新的数据库项(Datahase Item 、)在本文中,采用了第三种方法来建立地质数据库,即利用CASE 建立地质数据库。

2 地质数据库的设计

ArcGIS支持工让标准的统一建模语言(UML)和CASE 工具。UML 建模方法是全面面向系统的,一方面可以完成数据库的分析设计,另一方面又可以利用各种类型的UML图捕获用户需求、描述需求配置以完成数据库设计。这两方面的统一在整个建库过程中,通过可视化设计模刑,实现数据库开发组之间的需求统一,以提高数据库的利用效率。Visio和Rational rose 这两种软件都支持面向对象软件开发的CASE 上具。本文采用软件来建立地质数据库。

2 . 1地质数据库设计的技术路线

按照GeoDatalbase 的数据库的建立流程,基于GeoDatalbase的地质数据库的建立过程设计如下图2 所示。对地质数据库的信息分析后,可分为以下几类:地形地貌信息(包括海拔、坡度、坡句、河流等),基础地理信息(道路、行政区划、居民点等),矿产、能源(有色金属、黑色金属、非金属等)等。

2 . 2 在Visio中生成地质数据库类图

地质数据库是一个含海量数据的地学综合信息系统二根据用途及其性质把地质数据库分为基础地理数据库、基础地质数据库、地质矿产资源数据库、溶岩洞穴数据库、地下水资源数据库、动态变化监测地质灾害数据库、遥感影像数据库等8 个专题子数据库。采用包图来表示地质数据库及其各子系统之间的关系,如图3 所示。由于数据库在Visi ( ,中UML 类图内容太大,下面只取基础地理信息数据库、地质矿产资源数据库、地质遗迹与地质公园数据库等子库空间要素在Visio 中的UML 类图示例。

( 1 )基础地理信息数据库

基础地理信息数据库是地理空间基础框架的核心和基础,为其他子系统的建设奠定良好的地理空间基础,与地质专题信息有机结合将完善各专业管理信息系统的决策支持功能。基础地理信息数据库包含了水系、居民点、交通、境界等自然和人文信息要素。如图4 所示为基础地理信息数据库类图。

( 2 )地质矿产资源数据库

地质矿产是国土资源的重要组成部分,是国民经济发展的重要物质基础,是不可再生的国土资源。地质矿产资源是地质工作者以寻找地质矿产资源为核心所进行的地质调查、普查、详查、勘探等一系列地质工作。地质矿产资源一般可分为能源矿产、金属矿产、非金属矿产和水资源。如图5 地质矿产资源数据库类图所示。

( 3 )地质遗迹与地质公园数据库地质公园具有特殊的科学意义,稀有的自然属性,优雅的美学欣赏价值,一定规模和分布范围的地质遗迹景观为主体融合自然景观与人文景观并具有生态、历史和文化价值;而地质遗迹是在地球演化的漫长历史时期,在内外地质营力的作用下,形成、发展并遗留下来的珍贵的、不可再生的地质体。建立地质公园的目的就是为了有效的保护地质遗迹。通过地质遗迹与地质公园数据的分析、组织,设计了该子库的类图。如图6 所示。

通过对地理数据库的各种地理要素在UML 模型中的描述的了解和熟悉后,根据己经设计好的数据库的模型,利用CASE 工具将UML 模型建立起来。各种要素类和表之间有着简单或者复合的关系,要素类有的还划分为子类,同时还表示了若干个域,将整个地质数据库以一种面向对象的模型表示了出来。对各个字库设计完成之后,可对地质数据库进行整体部署,它能很好的显示数据库系统中各个软件和硬件的关系,实现地质数据库的物理架构,如图7 所示。

2 . 3 利用工具搭建地质数据库

在利用第二方CASEI 具将地质数据库的UML 模型设计出来之后,还要经过下面的一些步骤才能够将数据库建立起来:

1 )将 UML模型输出到Microsoft Repository 中,一个Repository可以是MS Access 数据库,也可以ODBC 所支持的数据库,在本项工程中采用了MS Access 数据库,Relository 可以储存大量关于开发软件相关的信息,包括UML 模型,CASE 工具利用它的这个功能,将整个地质数据库的对象模型都储存到知识库里,包括ESRI 的UML 对象模型,然后将它导人到ArcCIS 中。

2 )利用ArCatalog 的Schema 向导将UML模型导入到ArcGIS 中,就会按照所设计的目录分层结构生成整个地质数据库的目录结构以及对象的代码。

3 )自定义对象的特定的行为和属性,这个步骤是将生成的代码输出到C#中,叮以定制对象的特定的属性和行为,另外还可以加人一些其他的辅助资料,如帮助文件等。

4 )验证和更新,在经过了对对象的代码的定制和修改之后,要再次对所生成的地理数据库进行验证和更新,从而保证各种要素之间的关系正确。

到此为止,一个完整的地质数据库的架构就建立起来了,接下来的工作就是利用各种导人数据的方法,将现有的数据导人到数据库中,或者就是在未来的工作中,按照数据库的结构将新生成的数据录人到数据库中,并且将所有的关系都维护和建立好,从而真正实现生态环境评估数据的科学管理,提高信息的管理效率,以便更好的为决策服务,做出更多的贡献。

3 结束语

采用 UML 的面向对象方法,可以很好表达空间数据库概念模型和物理模型两部分,并能很好的解决两种模型在各自侧重方向中的问题。用面向对象的数据模型 ―Geodatase ,充分实现了对地质结构数据库的空间数据与非空间数据一体化的无缝集成,解决多源的、海量的地质数据管理问题。采用CASE 工具进行CeoDatattse 地质数据库的建模和设计,不仅方便了地质数据库的建立与维护,而且其他开发人员很容易在整体上把握数据库对象(包括空间对象和非空间对象)相互之间的复杂关系,从而正确的用面向对象的地质数据库表现客观对象。可见,这种方法对于与地质相关的科学数据库建立是十分可行而有效的。

参考文献:

[1] 戴爱德等.地质科学数据共享网http://www.geoScience . cn /

[2]韩强,陈天滋.UML 在关系型(7IS 空间数据库设计中的应用与研究[M]. 2002 ( l ) .

[3]欧少佳,许惠平等.中国岩石圈数据模型总体设计 [M ] . 2005

[4]By ESRI. Building a Ceodatahase Ptinte in USA . 1999 _ 2002 .


火龙果软件/UML软件工程组织致力于提高您的软件工程实践能力,我们不断地吸取业界的宝贵经验,向您提供经过数百家企业验证的有效的工程技术实践经验,同时关注最新的理论进展,帮助您“领跑您所在行业的软件世界”。
资源网站: UML软件工程组织