




已阅读5页,还剩53页未读, 继续免费阅读
(计算机软件与理论专业论文)数据库通用维护系统研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库通用维护系统研究与实现 摘要 - 本文给出了一个数据库通用维护系统的模型,并实现了一个原型系统。其中的核心 部分数据库通用插、删和改的功能模块及基于e x c e l 的信息接收程序己能运行。该 系统已提供用户进行数据库日常维护、从e x c e l 到o r a c l e 的异构数据库转换及信息接收, 以及对数据实体完整与参照完整性及正确性进行检验:并对数据库管理员、用户自定义 完整、基于值的优化等进行测试。对所完成的内容有的已经过现场测试,如河流、控制 站、机电排灌站、水库、堤防、跨河工程等。该原型系统具有通用性、易扩充性、开放 性与易维护性,并且处理数据类型丰富。 安全方面,也作了较为深入的研究:从三个层次实现安全性:应用系统的安全:数 据库的安全:数据安全。 本文着重对元数据的构造及维护方法进行了研究,这些研究对提高数据库应用系统 的开发效率具有一定意义。 关键词:数据库通用系统;数据库的完整性;数据库的安全性;数据库的可靠性 数据库通用维护系统研究与实现 a b s t r a c t t h i sp a p e rp r e s e n t sak i n do fm o d e lf o ra na d a p t i r es y s t e mt om a i n t a i nad a t a b a s e , w h i c hh a sa c h i e v e da na r c h e t y p a l s y s t e m t h ec o r ep a r t ,w h i c hi sa na d a p t i v e t o o lt om a i n t a i nad a t a b a s e s y s t e ms u c ha si n s e r t i n g ,d e l e t i n ga n da l t e r i n g ; a n dt h ei n f o r m a t i o nr e c e i v i n gs y s t e mb a s i n go ne x c e lh a sb e e na p p li e db yu s e r t om a i n t a i nt h ed a t a b a s es y s t e m ,c o n v e r ta n d t r a n s p o r tt h ei n f o r m a t i o nf r o me x c e l t oo r a c l e v e r i f yt h ee n t i t a t i v ea n dc o n f e r r i n gi n t e g r a l i t ya n dv a l i d i t y ,a n d a l s ot e s tt h eo p t i m i z a t i o no fd b a ,u s e r d e f i n e di n t e g r a l i t ya n d q u e r y i n gb a s i n g o nn u m e r i c a lv a l u e s o m eh a sb e e nt e s t e di nr e a le n v i r o n m e n t s ,s u c ha sr i v e r s : c o n t r o l c e n t e r :r e s e r v o i r :e m b a n k m e n ta n db e s t r i d i n gr i v e rp r o j e c t s t h i s m o d e li sa d a p t i v e ;e a s yt oe x t e n da n dm a i n t a i n :o p e na n da b u n d a n t t oc e n t r 0 1 t h et y p eo fd a t a a ta l lp o i n t sf o rs e c u r i t y ,i th a sa l s ob e e nc a l c u l a t e d :t h es e c u r i t yo f a p p l i e d s y s t e m ;t h es e c u r i t yo fd a t a b a s e it h e s e c u r i t yo fd a t a t h i sp a p e re m p h a s i z e st h ec o n f o r m a t i o na n dm a i n t a i no fm e t a d a t a ,w h i c hi s v e r y u s e f u lf o ri m p r o v i n gt h ee f f i c i e n c yt od e v e l o pt h ed a t a b a s e a p p li c a t i o ns y s t e m k e yw o r d s :a d a p t i v ed a t a b a s e s y s t e m ;i n t e g r a l i t y ;s e c u r i t y :r e l i a b i l i t y 墼塑堕望里丝茎望堡三墨塑坌堑塞兰壅翌 1 1 引言 第一章系统概述 近年来,随着计算机软硬件的飞速发展,国内信息管理系统的研制、开发及应用有 了长足的进步。作为信息管理系统的核心数据库技术,特别是关系型数据库理论与技术 的出现和发展为信息和数据的处理提供了强有力的工具,这使得快速处理大量数据成为 可能。现阶段应用的信息管理系统针对性较强,缺乏通用性。这使得应用程序开发人员 重复大量劳动,开发数据库工期较长并且开发效率低,新开发的信息管理系统还没有应 用就已经出现某些业务需要更改,并且数据库应用程序采用固定的数据库表格结构使其 不具备通用性。传统的方法是在数据库服务层定义表格结构的修改,然后利用前端开发 平台手工修改维护基于该表结构的所有程序代码、生成报表。虽然面向对象技术作了一 定的弥补,但它的效果不大,达不到根本解决问题的目的。第二、基于信息管理的数据 库应用系统的用户自行维护的问题也日益突出。第三、数据的安全性:随着社会信息化 的发展,以计算机和网络为基础的各种信息系统已成为当今社会运行的基础,作为计算 机应用研究领域的个重要分支一管理信息系统( m i s ) 已经渗透到社会生活的诸多领 域。由于各种技术和非技术因素的存在和影响,m i s 的安全已经受到严重威胁,数据库 是m i s 的核心,是种可共享的资源。因此,数据库的安全与保密是涉及m i s 各方面的 全局性问题,是保证m i s 安全的关键。 为了能够解决这些问题,并将其拓宽到更广阔的领域,本文根据系统软件技术、数 据库技术、软件工程等有关理论及技术,研究并实现了具有普遍意义的基于关系型数据 库管理系统的通用维护数据库系统。该通用系统通过分析应用数据库中各个表结构之间 的共同特点及相互关系,以关系为基础,建立通用表间树状结构关系、各表结构的为系 统服务的元数据字典。该系统不仅仅是对数据的管理,还对具体业务的关系模型进行管 理。从而可以根据不同应用的需求,由使用人员自行快速地建立起适合自身业务的元数 据。真正做到提高数据库应用系统开发效率。 数据库通用维护组件工具部分研究与实现 1 2 选题背景 本系统是根据我实验室在开发黑龙江省防汛指挥决策支持系统( 第一期) 时出现 的问题而确立的研究课题。该项目的基础数据十分庞大,仅涉及的数据分类就有十八种 之多。例如:河流、水库、控制站、堤防、蓄治( 行) 洪区、湖泊、还包括机电排灌站、 水闸、跨河工程、海堤和城市防洪等等。下面以河流数据库为例,看一看具体数据表结 构如图i 1 : 这里我们看到的只是该系统中十八大类中关于河流的一部分基础数据,已然如此庞 大,如果对于每一个表格都单独开发维护,无论从系统的开发,还是从工程的应用都是 极不合理,即浪费了大量的开发时间,又容易出错。于是我们确立了该研究方向,考虑 研制开发一个基于底层数据库系统的,独立于应用之外的数据库通用维护组件工具。 。一:旧髹象辈 【- x 陬) l 一一i _jl l1 一: l :嚣辫徽: r - c n 州) ,u * 日w i 哪 鼬 zhg r ra h 射l 懈】 z & ” m ,a u 州1 8 )zn # r 一0 】 tc p 尉l mlh r 删t 0 ) t c 卧柚m e r l j “g lc h r n 日)* k 日i i ) 自wm h 日删1 】 m c 狐剐1 b )h 日c l # n m - a * 蝴b ( ;j :;黜嚣, eh - c h 删) n t * * 舢1 日) m j m :i i ;釜熹拳: h i h 删t ” n ,c 地w l n i h i h l ) t t * 删衄”) er i ) i k 日川t ) 女l ) 1 ) z 墨$ # 日,c 王 瓠t o x 开 o t d h * h m # t 日c h 剐i j )q 月一m e j m m z 、,a m 蝌r 0 )t 8 # 删l 哪) 目* # 自4 t ,h 日l 1 r l ) j mz h h 一c h 灿阀$ m g # 删1 0 】 w f * 一v h 雄心 h t 一l l m n t t 删i ) 5 t ta t j n h 0 1 ) m n # ,v r a 队r 础 t t m * q t tc ,i 帅) f j m t t ( 1 0 , * t “i ) 十* * t t t 翱 鞋l t * w * t 十* 删l 1 em l m h f 日# l 一划1 - , m m :a 执r n * m k 咖a t0 h m t m m e h 删t 日l 2 * * t n i # h r - “ n * 目& t t * k 船c 懈1l 蚴1 t # m h e h - d n t 缸 h t i 1 0 1 月e ( 1 ) 杯】 h t t t t t c i ih t r q 喘) m h t b m l h m t r j # q k 僦i f t , h t q t t )& r i 魄m ”* ,t *tt ur t 0 ,i 口】 4 “a tn 啦口幢日u t 一t w u 删l i t t t v f s o ) 口0 删 日h 目- c h 剐i t ) 口x i* t - ) 口悯俐口) * - 删8 j t 镕4 t d e z a g # 日一c m h l a ) 0 聪) ci*tz 删8 t l a e r * wm 1 e 、 fqz & 嘣 t & 幢r k w h 日c z c , r ( 1 8 1h 自t # 锄 k ”$ # 口“r ( 【m h - 一r t p 蛳 4 * g # 懈鲐1 t th m 一 t # & m e 一4m 惝r 孙 t 一一t | 一5 m i r 鲥) h ,日 m r 口ta e * h 蚴 h + 日e - a b r t q e h r t ,v r 舞i 蚰 一 4 l m x ”t - 啪r m e ( j b rr 十* t - r t t 十口 t t t :, ; 十mz 伍r t 砌) v m f i g 1 1b a s i ci n f o r m a t i o no fr i v e r si nr e a l s y s t e m 图i 。l 实际系统中河流的基本信息图 数据库通用维护组件工具部分研究与实现 1 3 系统的意义和目的 数据库技术的发展使得数据库的异构和分布成为一个不可回避的问题,不断变化的 企业发艮要求一种通用的数据库维护工具,这是异构数据库系统研究的一个最重要的任 务之一,该维护组件工具的研究将理论与实际应用有机的结合起来,通过建立元语言和 应用系统的元数据实现数据库的维护,实现用户数据库结构、数据应用、数据分布无关 性和系统的通用性,能够满足当今社会对该领域最为迫切的需求;系统的通用性不仅屏 蔽了不同d b m s 之间、不同的数据分配方案、不同的数据库结构之间的差异,而且为传 统的m i s 和g i s 提供一致的功能界面,这大大提高了那些既需要具有传统m i s 的功能又 需要有g i s 功能的大型系统的工作效率;系统采用当今流行的模块化结构使得系统易于 扩充;采用开放结构使得系统更易于维护。该系统实现对异构数据库系统的通用的插、 删、改、查,改变了已有系统中只提供通用查询而不考虑插、删、改操作的缺陷。总之, 由于数据库的应用范围十分广泛,该系统对数据库相关领域研究中数据、资料的建立、 积累以及建立数据仓库、进行数据挖掘等研究有着十分重要的意义。 数据库通用维护组件工具部分研究与实现 2 1 元数据 第二章基础理论 元数据常被称为关于数据的数据,它包括促进数据提供者与用户相互理解的信息。 元数据之所以重要是因为它记录了现有数据的保存状况和促进数据分享。元数据是有关 根本数据库中所储存的数据的内容、结构、关系、陈述方式及使用环境的全面、系统和 推理信息。元数据的由来;根据国际档案理事会电子文件委员会对电子文件的定义,元 数据是构成电子文件的背景信息的重要组成部分“3 。在电子环境下,由于文件内容极易 被删改、破坏而不留下任何痕迹,为了保证电子信息的原始和真实,人们不得不借助元 数据,由于元数据记录有文件在设计、形成、传递、维护这一运转流程重的全部情况, 因此只有在掌握元数据的基础上,才能对电子文件进行有效而安全的控制。根据国际标 准化组织对元数据的有关规定,元数据包括以下内容: 英文名称中文名称定义 t i t l e 文件名指文件或数据对象的正式公开的名称 c r e a t e r 创建者创建文件内容的人或服务 主题和关 s u b j e c t有关文件内容的主题描述或取自的分类体系 键词 d e s c r i p t i o n说明对文件内容的说明 p u b l i s h e r 出版者使文件成为可以取得和利用状态的责任者 其他责任 c o n t r i b u t o r 对文件内容刨建作出贡献的其他责任者 者 d a t e日期与文件本身生命周期中的一个事件相关的日期 t y p e类型有关文件内容的特征和类型 f o r m a t形式文件的物理或数字化的表现形式 文件标识对文件标识采用的符合标识体系的字串及数字 i d e n t i f i e r 符组合 s o u r c e来源对一个文件的参照 r e l a t i o n关联对相关文件的参照 t a b l e2 1t h ec o n t e n to fm e t a d a t a 表2 1 元数据内容 2 1 1g e t a d a t a 格式的应用程度 不同领域的m e t a d a t a 处于不同的标准化阶段:在网络资源描述方面,d u b l i nc o r e 经过多年国际性努力,已经成为一个广为接受和应用的事实标准;在政府信息方面,由 于美国政府大力推动和有关法律、标准的实行,g i l s 已经成为政府信息描述标准,并在 世界若干国家得到相当程度的应用,与此类似的还有地理空间信息处理的f g d c c s d g m : 但在某些领域,由于技术的迅速发展变化,仍然存在多个方案竞争,典型的是数字 图像的m e t a d a t a ,现在提出的许多标准都处于实验和完善的阶段。m e t a d a t a 开发应用 - - t 一 数据库通用维护组件工具部分研究与实现 经验表明,很难有一个统一的m e t a d a t a 格式来满足所有领域的数据描述需要;即使在 同一个领域,也可能为了不同目的而需要不同的但可相互转换的m e t a d a t a 格式。 同时,统一的集中计划式的m e t a d a t a 格式标准也不适合i n t e r n e t 环境,不利于充 分利用市场机制和各方面力量。 但在同一领域,应争取“标准化”,在不同领域,应妥善解决不同格式的互操作问 题。 2 1 2 元数据结构 总体结构定义方式一个m e t a d a t a 格式由多层次的结构予以定义: 1 内容结构( c o n t e n ts t r u c t u r e ) 对该m e t a d a t a 的构成元素及其定义标准进行描述。内容结构定义m e t a d a t a 的构成 元素,可包括:描述性元素、技术性元素、管理性元素、结构性元素( 例如与编码语 言、n a m e s p a c e 、数据单元等的链接) 。这些数据元素很可能依据一定标准来选取,因 此元数据内容结构中需要对此进行说明。 2 句法结构( s y n t a xs t r u c t u r e ) 定义m e t a d a t a 结构以及如何描述这种结构。句法结构定义格式结构及其描述方式, 例如元素的分区分段组织、元素选取使用规则、元素描述方法( 例如d u b l i nc o r e 采用 i s o i e c1 1 1 7 9 标准) 、元素结构描述方法( 例如m a r c 记录结构、s g m l 结构、x m l 结构) 、 结构语句描述语言( 例如e b n fn o t a t i o n ) 等。有时,句法结构需要指出元数据是否与 所描述的数据对象捆绑在一起、或作为单独数据存在但以定形式与数据对象链接,还 可能描述与定义标准、d t d 结构和n a m e s p a c e 等的链接方式。 3 语义结构( s e m a n t i cs t r u c t u r e ) 定义m e t a d a t a 元素的具体描述方法。语义结构定义元素的具体描述方法,例如描 述元素时所采用的标准、最佳实践( b e s tp r a c t i c e s ) 或自定义的描述要求 ( i n s t r u c t i o n s ) 。有些元数据格式本身定义了语义结构,而另外一些则由具体采用单 位规定语义结构,例如d u b l i nc o r e 建议日期元素采用i s o8 6 0 1 、资源类型采用d u b l i n c o r et y p e s 、数据格式可采用m i m e 、识别号采用u r l 或d o i 或i s b n , 又如o h i o l i n k 在 使用v r ac o r e 时要求主题元素使用 a t 、t g m 和t g n ,人名元素用u l a n 。 2 1 3 元数据编码语言与制作方式 1 元数据编码语言 元数据编码语言( m e t a d a t ae n c o d i n gl a n g u a g e s ) 指对元数据元素和结构进行定义 和描述的具体语法和语义规则,常称为定义描述语言( d d l ) 。在元数据发展初期人们 常使用自定义的记录语言( 例如m a r c ) 或数据库记录结构( 如r o a d s 等) ,但随着元数 据格式的增多和互操作的要求,人们开始采用一些标准化的d d l 来描述元数据,例如 s g m l 和x m l ,其中以x m l 最有潜力0 1 。 2 元数据制作方式 专门编制模块( 例如对m a r c 、g i l s 、f g d c 等) 数据处理时自动编制( 例如对d u b l i nc o r e 等) 数据物理处理时自动编制( 例如数字图像扫描时的某些元数据参数) 数据库通用维护组件工具部分研究与实现 共享元数据( 例如o c l c c o r c 、i m e s h ) 2 1 4 元数据互操作性 1 元数据互操作性问题 由于不同的领域( 甚至同一领域) 往往存在多个元数据格式,当在用不同元数据格 式描述的资源体系之间进行检索、资源描述和资源利用时,就存在元数据的互操作性问 题( i n t e r o p e r a b i l i t y ) :多个不同元数据格式的释读、转换和由多个元数据格式描述 的数字化信息资源体系之间的透明检索。 2 元数据格式映射 利用特定转换程序对不同元数据元格式进行转换,称为元数据映射( m e t a d a t a m a p p i n g c r o s s w a l k i n g ) 。目前已有大量的转换程序存在,供若干流行元数据格式之 间的转化,也可利用一种中介格式对同一格式框架下的多种元数据格式进行转换,例如 u n i v e r s e 项目利用g r s 格式进行各种m a r c 格式和其它记录格式的转换。格式映射转换 准确、转换效率较高。不过,这种方法在面对多种元数据格式并存的开放式环境中的应 用效率明显受到限制。 3 标准描述框槊 解决元数据互操作性的另一种思路是建立一个标准的资源描述框架,用这个框架来 描述所有元数据格式,那么只要一个系统能够解析这个标准描述框架,就能解读相应的 m e t a d a t a 格式实际上,x m l 和p o p 从不同角度起着类似的作用。1 。x m l 通过其标准的 d t d 定义方式,允许所有能够解读x m l 语句的系统辨识用x m l _ d t d 定义的m e t a d a t a 格式, 从而解决对不同格式的释读问题。r d f 定义了由r e s o u r c e s 、p r o p e r t i e s 和s t a t e m e n t s 等三种对象组成的基本模型,其中r e s o u r c e s 和p r o p e r t i e s 关系类似于e r 模型,而 s t a t e m e n t s 则对该关系进行具体描述。r d f 通过这个抽象的数据模型为定义和使用元数 据建立一个框架,元数据元素可看成其描述的资源的属性。进一步地,r d f 定义了标准 s c h e m a ,规定了声明资源类型、声明相关属性及其语义的机制,以及定义属性与其它资 源间关系的方法。另外,r d f 还规定了利用x m ln a m e s p a c e 方法调用已有定义规范的机 制, 4 数字对象方式 建立包含元数据及其转换机制的数字对象可能从另一个角度解决元数据互操作性问 题。c o r n e l l f e d o r a 项目提出由内核( s t r u c t u r a lk e r n e l ) 和功能传播层 ( d i s s e m i n a t o rl a y e r ) 组成的复合数字对象。内核里,可以容纳以比特流形式存在的 文件或数据内容、描述该数据的元数据、以及对这个文件及元数据进行存取控制的有关 数据。功能传播层,主功能传播器( p r i m i t i v e d i s s e m i n a t o r ) 支持有关解构内核数据 类型和对内核数据读取的服务功能,还可有内容类型传播器( c o n t e n t - t y p e d i s s e m i n a t o r s ) ,它们可内嵌元数据格式转换机制。例如,在一个数字对象的内核中 存有m a r c 格式的元数据,在功能传播层装载有请求d u b l i nc o r e 格式及其转换服务的 内容类型传播器。当数字对象使用者要求读取以d u b l i nc o r e 表示的元数据时,相应的 内容类型传播器将通过网络请求存储有d u b l i nc o r e 及其转换服务程序的数字对象,然 后将被请求数字对象中的淞r c 形式元数据转换为d u b l i nc o r e 形式,在输出给用户。 数据库通用维护组件工具部分研究与实现 2 2 数据库的安全 随着社会信息化的发展,以计算机和网络为基础的各种信息系统已成为当今社会运 行的基础,作为计算机应用研究领域的一个重要分支一一一一管理信息系统( m i s ) 已经渗透到社会生活的诸多领域。由于各种技术和非技术因素的存在和影响,m i s 的安 全已经成为严重而又深刻的问题,数据库是m i s 的核心。县一种可其卓的咨源i 天| 此 数据库的安全与保密是涉及m i s 各方面的全局性问题,是保证m i s 安全的关键。 数据库系统中关于安全的研究内容有很多,其中最主要的方法有:身份鉴别、访问 控制、保密通信、跟踪监视、数据加密、防火墙等。 1 身份鉴别:用户进入数据库系统时,系统必须对用户进行身份的合法鉴别认证。设 置运行口令是最常见的、最方便的方法。在客户和数据库服务器之间进行双向身份 验证,用户登录进入数据库系统时,进行数据访问操作前要进行身份鉴别,以便确 认该用户的真实身份,从而迸一步决定该用户的访问权限;此外,由于分布式数据 库系统服务器与服务器之间要完成传输数据、协调分布式事务处理等功能,因此它 们之间相互验证身份。整个系统的安全在一定程度上基于口令的保密,但口令的可 靠程度最差,容易被他人猜出或测得。因此在使用口令时必须对口令的长度、更改 口令的最短期限等做出明确的规定。同样,存放口令的数据库文件也必须经过加密 处理。 2 保密通信:客户一服务器、服务器- n 务器之间身份验证成功后,就可以进行数据传 输了,为了对抗报文窃听和报文重发攻击。需要在通讯双方建立保密信道,对数据 进行加密传输。在分布式数据库系统中,由于传输的数据量往往很大,加解密算法 的速度对系统性能影响也就很大,而非对称密码体制运算复杂、速度慢,对称密码 体制速度快,所以一般采用对称密码算法来进行加解密“3 。 3 访问控伟4 :存取控制是从计算机系统的处理功能方面对数据提供保护。数据库安全 性的基本原则是控制用户对数据库的访问。在通常的数据库管理系统中,为了对抗 越权攻击,任何用户不能直接操作库存数据。用户的数据访问请求先要送访问控制 模块审查,然后系统的访问控制模块代理有访问权限的用户去完成相应的数据操作。 访问控制主要有两种形式:自主访问授权控制和强制访问授权控制。其中自主访问 授权控制由管理员设置访问控制表,此表规定用户对数据对象能够进行的操作或不 能进行的操作:而强制访问授权控制先给系统内的用户和数据对象分别授予安全级 别,根据用户、数据对象之间的安全级别关系限定用户的操作权限。例如:在o r a c l e 关系型数据库中的多层安全控制。 4 跟踪监视:跟踪监视是一种监视措施,它对某些保密数据跟踪记录有关这些数据的 访问活动。跟踪审查的结果记录在一个特殊文件上。记录的内容包括:用户名、操 作类型( 输入、删除、修改) 、操作日期和时间、所涉及到的数据等。根据跟踪审查 记录可进行事后分析和调查。跟踪监视的方法有很多,下面两种实现的方法:( 1 ) 使用日志文件。日志文件的类型包括:系统日志、审查日志、应用日志、网络管理 日志等,通过这些日志文件,可以分析数据库的变化及用户对数据库的操作。另外, 利用m i s 开发工具,可以创建日志文件,记录用户的操作。( 2 ) 使用数据库触发器。 数据库触发器是当事件( 如输入、删除、修改) 发生时所执行的一个或多个语句。 5 库文加密:在数据库系统中,为了对抗黑客利用网络协议、操作系统安全漏洞绕过 数据库的安全机制而直接访问数据库文件,有必要对库文件进行加密。只要保管好 密钥,并且加密算法具有一定的强度,数据受系统安全漏洞因素的威胁就会减小。 数据库通用维护组件工具部分研究与实现 对数据库加密处理有三种基本方式:( 1 ) 文件加密。将涉及重要信息的文件进行加 密,使用时解密,不使用时在加密。( 2 ) 记录加密。与文件加密类似,但加密的单 位是记录而不是文件。( 3 ) 字段加密。即直接对数据库的最小单位进行加密。 6 设置防火墙:对于一个运行在与外部公共网络互连环境下的数据库系统,为了维护 内部网络的安全,防止来自外部网络的危害和破坏,有效地防范黑客窃取数据库的 重要信息,可在内部网与外部网之间建立防火墙。防火墙功能的设置根据用户的防 火策略来确定,即系统中那些信息允许通过,那些信息不允许通过;拒绝未经授权 的用户访问系统的数据,同时允许合法用户不受妨碍地访问数据库资源。 7 密码体制与密钥管理:在分布式数据库系统中,身份验证、保密信道、库文加密等 都用到加解密算法,但是身份验证仅需传输少量控制信息;保密通信除了传递少量 控制信息外,通常还传递大量的数据信息:库文加密涉及不同粒度的数据对象,而 且还要考虑数据库的插入、删除、修改数据密钥等操作。因j i j :应针对分布式数据库 系统中的不同操作步骤的特点来选择合适的加解密算法,同时还要严格的保管密钥, 防止密钥泄漏。 数据库的安全保密措施除了从技术上考虑以外,备份数据也是对遭受破坏的系统数 据进行补救的有效手段。 2 3 通用组件技术的研究 2 3 1 通用性技术 软件的通用性( 即自适应性) 是一个由来己久而且难于解决的复杂问题,软件的通 用性按照新近业界提出3 d 软件开发模型方法来说,显得尤为重要,3 d 模型提出软件开 发过程有程序开发( d e v e l o p ) 、软件配置( d e p l o y m e n t ) 、软件分发( d i s t r i b u t e ) ”1 , 所以我们在实现软件自适应性的时候就可以分别从3 点出发: 1 程序通用性 程序开发的时候不论从软件设计还是从程序编写上面都应该讲求程序的可重复利用 性,包括采用面向对象的软件设计方法,面向对象的程序设计方法,面向数据的软件开 发方法,全面的封装数据和时间,归纳总结出大量的函数和过程,从而使得每一部分的 程序都能够在不同的软件中或者在软件不同部分中发挥作用,实现了程序段在不同环境 下的适应性,至于如何实现面向对象、面向数据以及如何归纳总结公共函数和过程有很 多技巧和途径,直到实现。 2 需求通用性 我们在现代软件开发中强调软件应该具备多种配置方法,包括插件的引入,模块化 设计,组件设计,系统配置文件,数据库配置文件,修改注册表,等等多种方法,实现 对一个软件在不同需求下通过修改配制而得到一个崭新的软件,另一种方法是,开发上 提供软件生成工具,有的是在这个工具的基础上进行少量的开发,从而得到新的软件, 凡此种种,我们可以通过在配置这个环节上做文章,从而是实现轨斧需求的变化,实现 通用性。 3 不同环境下的通用性 不同环境下的通用性指的是开发上设计的软件无论操作系统的变化,数据库环境的 变化,网络环境的变化,存储媒体的变化,都不会改变软件功能的正常实现,另外,尤 墼塑壁塑丝芝丝堡三墨塑坌堕塞兰壅婴 为重要的事,开发商开发的软件,应该具备同用户的交互能力,采用人工智能技术,或 者是在用户的必要于涉之下,软件能够自动的调整自己的配置,以及程序段的逻辑结构, 使得软件在运行阶段,不断调整自己,适应各种环境和不同的用户,实现通用性。 当今的通用性的研究还相对落后,较为成熟的技术还主要集中在通过组件实现软件 的通用性。 2 3 2 组件技术的内容 组件技术是面向对象技术的最新发展,它具有开放性、集成性、灵活性、模块性、 可管理性、安全性、透明性等特点。组件技术为分布式异构环境中的多组织域信息处理 服务之间的互联提供了技术支持,以此为基础可以有效地实现分布式系统中的公共服务 系统、基础组件、组装框架、数据表达规范、数据传输协议及服务器定位等关键技术。 分布式对象是组件技术核心。 2 3 3 通用组件技术的内容 基干组件的软件工程希望把可重用的组件插在一起来构造应用。软件构造的这一期 望,虽然在近几年变的相当普遍,然而尽管早期很乐观,却从来没有成为领导软件开发 范例之一。这是由于基于组件软件构造的一个相当朴素的观点,它存在于软件工程界中。 这种朴素的观点设想,人们选择一组表达应用需求部分的组件,然后把他们的输入和输 出连接而组装在一起就行了。然而,软件重用性的研究表明,很少有“原样”重用的情 况发生。而是组件一般都需要以某种方法修改才能满足应用的体系结构或其他组件的要 求。在一个特定的应用中,为使用而修改组件( 或构造通用型组件) 的过程,通常称为 组件适应( 调整) 。 多年来,软件工程和编程语言方面的研究已开发出许多调整组件的技术。这些组件 适应技术可分为两类:白盒适应一要求软件工程师为调整一个可重用的组件要么需要改 变他内部规范说明,要么破坏或排除其内部规范的部分了;黑盒原样重用组件,是指 在组件的接口上调整,只要求软件工程师理解组件的接口,而不是其内部“3 。 显然,早期这种分法是非常极端的,而实际上,如继承往往需要只理解内部功能的 一部分,封装则要求比接口更多的理解组件。 2 3 4 通用组件技术的特征 在讨论常规的组件适应( 通用) 技术之前,先说明组件必须满足的一般要求。这些 要求提供了一个评价常规组件通用技术的一个框架,但也可以看出新的通用类型所需的 功能。 l 黑盒性 组件的通用部分和组件本身在概念上是两个独立的实体。这就要求组件技术不访问 组件的内部,而仅限于访问组件的接口。黑盒要求与以下几个原因有关:首先,它支持 以后要讨论的可组合性和可重用性;第二,开发组件的适应部分的工程师总是必须开发 组件的某些重要的功能模型,然而,这个模型应该尽可能的小而简单,黑盒要求允许软 件工程师只被限制在组件的接口;最后,黑盒组件适应技术允许重用系统以结合组件的 新的版本,只要该系统所用的组件接口部分要由新的版本支持。白盒组件适应技术要求 数据库通用维护组件工具部分研究与实现 软件工程师重复做组件所有版本的适应,因为要改变组件的内部。 2 透明性 组件的通用应是尽可能透明的。在这里,透明性包括通用的组件和组件自身的用户 都不知道他们之阅的这种可适应的通用性。例如,封装体典型地不满足这一要求。通用 的组件的用户被强制引用封装体而不是原来的组件。这就要了解这种通用的组件。此外, 透明性要求允许不需要通用的组件的样子是不用做明显的通用工作就能使用。例如,封 装一个组件要求封装体传送该组件的所有请求到组件中,包括不需适应的那部分。 3 可组合性 可组合性有三个方面:第一,通用技术应该是容易与要应用的组件组合。即,要求 不重定义该组件。从概念上说。当实例化一个组件时把适应规范加上,该组合则作为系 统中的一个实例被生成。第二,通用的组件应该与不具备通用性的组件一样,能够简单 的与其他组件组合。于是,软件工程师或系统就不需要区别可通用和不可通用的组件了。 组件之间的通讯和绑定应该是相似的。第三,通用的部分之间是可组合的。在默认的通 用类型是可用的环境下,组件可能需要用多重适应类型来满足其通用性。这就需要各种 组合的相互的通用性。于是,例如,当一个组件为改变接口并加以监控而成为被通用的 对象时,这些相互通用的特例都可应用到该组件上而不互相影响【7 】( 或至少最少并可以 预测的冲突) 。 4 可重用性 传统通用技术的一个问题是类和特定部分是不能重用的。因为这两方面严重的交织 在一起,导致该类部分不能将特定部分分离出来,因此软件工程师要致力于一次又一次 的改变这些特定部分使其达到通用性。新通用组件技术应该提供该类型的特定实例的可 重用性,基类和特定部分都有可重用性。 5 可配置性 通用部分一般由几个类和个特定部分组成。例如,改变操作名的通用类型有个 类部分( 即把选择名称放到具有另一个名称的消息中) 和一个特定部分( 即选择名称应 该与名称放在一起) 。对要使用的和重用的通用技术,必须提供特定部分的足够的可配 置性。 如图2 2 所示,可通用性组件系统的基本属性: t a b l e2 2c h a r a c t e r i s t i c so fu n i v e r s a l g r o u p w a r e 图2 2 可通用性组件特性 数据库通用维护组件工具部分研究与实现 2 3 5 通用组件技术的实现 当使用常规的面向对象语言时,软件工程师有三种组件适应技术可以用于修改一个 重用的组件。 l 拷贝一粘贴 当一个已有的组件与软件工程师所需的组件类似时,最有效的方法也许刚好是拷贝 组件中适合在开发该组件的那部分代码。拷贝代码后软件工程师往往要改变它使之适于 新组件的环境,并增加要定义的或从其它源码拷贝的功能。称这种技术为代码利用。 2 继承 白盒适应和重用技术是由继承提供的。如c + + 所提供的继承使重用的组件的状态和 行为可用于重用组件中。根据语言的模型,所有内部的细节或其一部分可用于重用组件。 如在c + + 中,根据私有和保护关键字的用法,方法和实例变量可用于子类。继承提供重 要的优点:代码继续存在于一个位置。然而,继承的一个主要的缺点是,当穿过超类的 方法和当使用超类定义的行为来定义新的行为时,软件工程师必须详细理解超类的内 部。 3 封装 封装声明一个或多个组件作为封装组件的一部分,即封装体,但这种组件只具有有 微小改变的发送功能,并要求从客户到封装的组件。封装和聚集没有明显的界限,但封 装用于包装组件,而聚集用于在已有的提供相关功能的之外组合新的功能。封装的一个 重要缺点是它可能引起相当大的实现开销,因为封装的全部接口需要由封装体来处理, 包括那些不需要适应的接口元素。此外,已经认识到,封装可能导致过量的适应代码和 严重的性能的降低。 4 关系关联 现今数据库系统均采用关系型数据库,这也为通用组件技术在数据库方向上的应用 提供了一种比较特殊的应用情况。关系型数据库将现实世界中的事物按照相互关系总 结,并以各种关系的属性来概括事物。既然采用的是以关系为基础的机制,我们可以在 各种不同的应用中( 即各种相互无关的关系体中) 寻找它们的共同点,建立这些关系之 间的相互关系,从而形成基于关系的通用组件。关于这个方面,本文下面还会以实例重 点阐述。 2 3 6 可通用组件技术的体系结构 目前越来越多的研究人员正在把注意力投向软件体系结构、设计模式和相关领域的 研究。随着研究的不断深入,软件复用的层次越来越高,人们在开发新的系统时不必总 是重复别人已经创造的东西,而是可在软件开发中复用已有成果,这样可以把注意力投 入到软件新增功能上,提高软件开发效率。 目前集中主要的软件体系结构风格有: 管道过滤器风格; 数据抽象和面向对象风格; 基于事件的隐式调用风格; 层次系统风格。 组件技术是继面向对象技术之后发展起来的一种新的软件工程技术,是面向对象技 术的延伸。基于组件的系统模型仍然是一种面向对象的结构,但系统中的对象是按照规 数据库通用维护组件工具部分研究与实现 范设计的模块,这些定义良好的软件模块( 称为组件c o m p o n e n t ) 在系统中共存,并且 充分地相互作用。按照这种结构,可以将若干组件组合起来,以建立更大和更复杂的系 统。 这种模型的关键在于一种高效的总线结构,使组件之间能以一个公共的接口互相连 接,做到组件的即插即用、无缝集成4 1 。这种模型的系统中,组件间的通讯链接数是线 性的,并且由于各组件接口规范的一致性,通讯的复杂度大大下降,也提高了组件的互 操作性。 2 4 异构数据库 异构数据库系统是相关的多个数据库系统的集合,可以实现数据的共享和透明访问, 每个数据库系统在加入异构数据库系统之前本身就已经存在,拥有自己的d m b s 。异构数 据库的各个组成部分具有自身的自治性,实现数据共事的同时,每个数据库系统仍保有 自己的应用特性、完整性控制和安全性控制。异构数据库系统的异构性主要体现在以下 几个方面: 计算机体系结构的异构 各个参与的数据库可以分别运行在大型机、小型机、工作站、p c 或嵌入式系统中。 基础操作系统的异构 各个数据库系统的基础操作系统可以是u n i x 、w i n d o w sn t 、l i n u x 等。 d m b s 本身的异构可以是同为关系型数据库系统的o r a c l e 、s q ls e r v e r 等,也可以 是不同数据模型的数据库,如关系、模式、层次、网络、面向对象,函数型数据库共同 组成一个异构数据库系统。 异构数据库系统的目标在于实现不同数据库之间的数据信息资源、硬件设备资源和 人力资源的合并和共享。其中关键的一点就是以局部数据库模式为基础,建立全局的数 据模式或全局外视图。这种全局模式对于建立高级的决策支持系统尤为重要。 大型机构在许多地点都有分支机构,每个子机构的数据库中都有着自己的信息数据, 而决策制订人员一般只关心宏观的、为全局模式所描述的信息。建立在数据仓库技术基 础上的异构数据库全局模式的描述是一种好的解决方案。数据仓库可以从异构数据库系 统中的多个数据库中收集信息,并建立统一的全局模式,同时收集的数据还支持对历史 数据的访问,用户通过数据仓库提供的统一的数据接口进行决策支持的查询。 2 4 1 异构数据库之间的转换 对于异构数据库系统,实现数据共享应当达到两点:一是实现数据库转换;二是实 现数据的透明访问。可以将一种数据库系统中定义的模型转化为另一种数据库中的模 型,然后根据需要再装入数据,这时用户就可以利用自己熟悉的数据库系统和熟悉的查 询语言,实现数据共享的目标。数据库转换工具首先进行类型转换,访问源数据库系统, 将源数据库的数据定义模型转换为目标
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025城镇公益性岗位人员招聘26人模拟试卷及1套参考答案详解
- 2025贵州罗甸县第一医共体板庚分院招聘合同制专业技术人员考前自测高频考点模拟试题带答案详解
- 2025湖南株洲市工业中等专业学校招聘第一批高层次人才13人模拟试卷及答案详解(有一套)
- 2025年压裂设备专用件项目合作计划书
- 2025年广元市贵商村镇银行科技人才招聘考前自测高频考点模拟试题及参考答案详解
- 2025年注射剂类药品项目发展计划
- 2025年春季中国诚通控股集团有限公司校园招聘49人考前自测高频考点模拟试题带答案详解
- 广播剧《撒野》课件
- IDO1-IN-27-生命科学试剂-MCE
- 2025黑龙江东北林业大学土木与交通学院派遣人才招聘1人考前自测高频考点模拟试题附答案详解(考试直接用)
- 2.5 秋天的怀念 课件2025-2026年度统编版语文七年级上册
- 2025年秋青岛版(2024)小学科学三年级上册(全册)教学反思
- 牙齿矫正方式对比
- 校企合作实习生管理制度与考核办法
- 穿线施工方案(3篇)
- 农村妇女礼貌礼仪课件
- 产品报价基础知识培训课件
- 水资源基础调查项目方案 投标文件(技术方案)
- 女性围绝经期营养管理中国专家共识(2025版)
- 2025驾驶员安全教育培训
- GB/T 16545-2025金属和合金的腐蚀腐蚀试样上腐蚀产物的清除
评论
0/150
提交评论