数据字典在地质矿产术语分类代码修编平台中的应用
2014-08-25,
,
(1.中国地质大学(武汉)数学地质遥感地质研究所,湖北 武汉 430074; 2.中国地质大学地质过程与矿产资源国家重点实验室,湖北 武汉 430074)
0 引 言
《地质矿产术语分类代码》(GB 9649—1988)曾由中国地质矿产信息研究院进行过入库工作,在发布之后进行过1次修编,由于标准制定的超前性及在地矿行业项目的应用实践中发现其存在一些漏洞及不足之处:缺少文字值——对地质体各类特征属性的具体描述(赵精满,1991);缺少分类,分类不合理;编码大量重复等。标准中大量重复使用数字顺序码对文字值进行编码(表1原代码列),如在全国矿产资源潜力评价项目数据模型使用的标准中,代码为“01”的数目达到了116项之多,而仅仅是代码重复这个问题就为项目中代码的解释工作设置了一个不小的难题。
为了更好地为地矿行业服务,需及时、经常对标准进行修编,如对重复的数字顺序码,修编手段可采用对数字值赋属性代码的方式,使之单值化,如表1改进后的代码列(汪新庆等,1999)。
GB 9649—1988标准的修编是一项庞大、复杂的工程,本研究所涉及的标准修编是指利用数据字典技术、Web技术提供一个基于B/S(Browser/Server,浏览器/服务器)模式的标准修编共享平台,使修编工作能跨系统、跨区域地高效进行。随着数据字典技术的大力发展,在地矿行业信息系统中得到了不断的应用(左仁广等,2006;陈永清等,2007;马小刚等,2007;杨圣伟等,2008)。GB 9649—1988标准修编平台中应用数据字典技术,目的是为标准修编工作提供便捷性及更好的安全保障。本研究将在了解数据字典的基础上探讨其在平台中的应用情况。
表1 原术语代码与改进后的术语代码对比
1 关于数据字典
1.1 数据字典的定义
目前还没有关于数据字典(Data Dictionary,DD)的标准定义,一些学者对其作了尝试性的解释。如数据字典是在系统数据流程图的基础上进一步定义和描述所有数据项的工具,是关于数据的数据(左仁广等,2006);数据字典是用户可以访问的一种信息集合的目录,它记录了有关数据库以及应用程序源数据的信息(郑胤,2008);数据字典是整个数据库的信息中心和情报系统,是数据库中的数据库(张远,2011);数据字典是关于数据库系统中各类数据描述的集合(张龙等,2014)。分析以上的解释,可以理解数据字典是在需求分析阶段建立,存储用户定义的所有对象的有关信息、数据库的结构信息以及系统表的有关信息,它随着数据库的产生而产生,随着数据库的变化而变化。
1.2 数据字典的组成和作用
数据字典与数据流程图互为解释,即通过表格或文字对数据流程图中的每个成分给出详细的描述和定义。数据字典主要是由对数据流程图中的数据项、数据结构、数据流、处理逻辑、数据存储、外部实体6个元素进行具体的定义所组成。
数据库系统是一个复杂的系统,除了包含用户数据的信息外,还包含很多非用户数据的信息。这些非用户数据的信息构成了一个数据库系统的情报网,一旦遭到破坏,就会导致整个系统的瘫痪,即使是数据库系统本身完好也无济于事。数据字典的重要作用便是用来集中保存这些信息,以保证数据库的共享性、安全性、完整性、一致性、有效性、可恢复性以及可扩充性。当今,多数数据库管理系统均以数据字典作为定义数据库中各类数据对象及其相互关系的准则(李禹生等,2003),可见数据字典是整个数据库环境的重要组成部分,在数据库生命周期内起着不可或缺的作用。归纳起来,其作用主要包括:(1) 标准化的工具;(2) 数据库设计和分析的依据;(3) DBMS(Database Management System,数据库管理系统)的得力助手;(4) 数据库的窗口;(5) 创建和维护数据库基表;(6) 数据一致性的保证;(7) 元数据管理。
2 基于数据字典的标准修编权限控制
2.1 标准修编权限控制
GB 9649—1988标准修编平台的工作方式是基于B/S模式,在有网情况下通过浏览器即可访问修编,这样做的目的也是为了让更多的学者方便地参与到这项修编工作中来。但标准的修编是一项专业、严谨的工作,需要各学科相关人员才可参与。所以需要对不同的用户定义不同的工作角色和权限级别,不同的权限所对应的处理标准的对象也不相同。为了区分不同用户和不同权限,必须对用户的修编权限进行控制。
2.2 标准修编权限控制实现
在系统用户权限控制方面,传统的做法是将用户的信息以及用户拥有的权限信息放置在1张表中,这种做法虽然简单可行,但问题在于当系统对用户的权限做出变动时,用户越多,改动就会越多。在GB 9649—1988标准修编平台中,将权限信息抽象出来存入1个数据字典中,使用时先通过用户信息判断用户在平台中扮演的角色,然后根据角色在字典中获得其拥有的权限信息。这样做的好处是平台今后对权限做出任何改动时,都不需改动用户信息表,只需维护这个字典即可(表2)。
表2 修编权限控制数据字典
从平台使用对象的角度出发,暂定平台的使用角色:(1) 超级管理员:平台开发者(仅1人);(2) 系统管理员(1人或数人):由超级管理员指定,拥有所有权限,其职责是对平台及用户进行管理,更新、发布标准;(3) 普通修编人员(学科注册用户):没有用户管理权限,可以对标准进行查询、下载及对所属学科的标准进行修编,但修编结果尚需进一步审核;(4) 专家(内部注册用户):没有管理权限,可以对标准进行查询、下载、修编及审核普通修编人员的修编结果,一旦修编完成即可进行修编结果公示;(5) 一般用户(外部注册用户):可以对标准进行浏览、查询以及下载;(6) 游客(未注册用户)只能浏览、查询标准,不能下载标准(图1)。
图1 平台用户工作流程图
3 基于数据字典的标准修编版本管理
3.1 标准修编版本管理
GB 9649—1988标准修编平台是全国范围的、面向众多修编人员的网络平台,为大量的专家、学者参与到修编工作中来提供了方便,但是这样一来造成了标准修编人员越多,产生不同的数据版本即记录特定对象的各个可选状态的快照(张雨等,2011)也就越多。为了遵循标准修编历史可检索的原则,同时也为下次修编工作提供参考,不能简单地将标准修编过程中产生的不同版本集合在一起,而是应该明确地表示出各版本之间的关系。因此,必须对标准修编过程中不同用户产生的不同版本进行有效的管理。
3.2 标准修编版本管理实现
目前,版本管理的方法一般有无环有向图版本管理、树形版本管理和线性版本管理3种(叶飞跃,1998)。在分析3种方法优劣的基础上,为了实现的方便与高效,对标准修编版本的管理采用简单易行的线性版本管理办法,即1个版本只能生成1个后续版本,1个后续版本也只能由1个前驱版本生成,以版本产生的时间先后进行排序,除了最新版本外其余版本只读。其次,为了降低标准修编过程中管理版本带来的数据冗余,采用后续版本只保存与前驱版本差集的做法,使相同数据不会被重复存储,保证了存储空间的合理使用。
GB 9649—1988标准的词条在库中具有4个属性项,分别是代码、汉字名、英译名及备注(表1),词条分学科存储在不同的关系表中。在实现修编线性版本管理时,为了只存储版本之间的差集,必须打破词条与各隶属表一一对应的关系。在词条与修编人员之间建立数据字典,使得版本和数据字典相对应。利用数据字典记录修编词条的归属、隶属的版本号和其他的基本信息,完成版本管理的数据字典参见表3。其中,前面4个数据项用以存储词条的基本信息;数据项uflag、aflag、dflag分别用以表示词条是否被修改、添加或删除,取值只能是0或1,1表示各自操作已执行,0则表示未执行;table_name表示该词条来源于某个学科所属表;username表示对词条进行了修编的修编人员名称;execute_time记录修编时间;version_no为进行版本管理的版本号,版本建立之时赋初值1,随着版本的增多进行累加,但它的值一直指向当前操作的版本号(表3)。
表3 标准版本管理数据字典
引入版本管理后,标准的初始代码库将不会被改变,修编人员修编1个词条,平台就在版本字典中登记1行信息。在对历史修编进行回顾时,从版本字典中既能找到词条的修编描述,又能找到是何人于何时对词条做了改动。在需要获得不同版本时,只需先用SQL语言从版本字典中取出指定版本号的词条信息,再和原始代码库中的词条信息进行综合取舍即能完成版本呈现。
4 结 论
在分析GB 9649—1988标准修编必要性及数据字典组成和作用的基础上,以数据字典在标准修编平台“修编权限控制”、“修编版本管理”等方面的运用为例,探讨了数据字典技术在地质矿产术语分类代码修编平台中的具体应用。通过数据字典技术,实现了对不同修编人员的权限控制,完成了不同修编人员对标准修编产生的不同版本的管理功能,使标准修编工作得以科学的、合理的、安全的方式进行。
陈永清,汪新庆,陈建国,等.2007.基于GIS的矿产资源综合定量评价[J].地质通报,26(2):141-149.
GB 9649—1988,地质矿产术语分类代码[S].
李禹生,何健,彭飞.2003.VFP数据字典工具及其应用系统维护[J].武汉工业学院学报,22(2):32-34.
马小刚,汪新庆,毋丽红,等.2007.应用数据字典实现多源地质空间数据的通用管理[J].矿业研究与开发,27(1):37-40.
汪新庆,刘刚,袁艳斌,等.1999.地质矿产术语分类代码在地矿点源信息系统中的应用[J].地球科学,24(5):529-532.
叶飞跃.1998.关系数据库的版本管理[J].计算机应用研究,15(5):103-105.
杨圣伟,汪新庆.2008.数据字典在煤炭数据发布平台中的应用[J].煤田地质与勘探,36(6):17-19.
赵精满.1991.地质矿产信息系统建设的基础技术标准:地质矿产术语分类代码[C]//中国地球物理学会,美国面向地学的计算机学会.计算机在地学中的应用国际讨论会论文摘要集.中国北京:中国地球物理学会,654-657.
左仁广,汪新庆,夏庆霖.2006.矿产预测基础数据库的数据检查[J].地质通报,25(4):528-532.
郑胤.2008.天津航道局信息化帮助平台及数据字典的设计与实施[D].天津:天津大学.
张远.2011.达梦数据库数据字典设计与实现[D].武汉:华中科技大学.
张雨,李郅威.2011.简析工程数据库版本管理[J].科技信息,(24):210-210.
张龙,汪新庆.2014.基于数据字典的空间数据库通用建库技术[J].国土资源遥感,26(1):173-178.