数据库规范化理论研究.doc
《数据库规范化理论研究.doc》由会员分享,可在线阅读,更多相关《数据库规范化理论研究.doc(10页珍藏版)》请在三一办公上搜索。
1、第 卷 第 期 年 月武汉大学学报(理学版)() ,文章编号:()综 述数 据 库 规 范 化 理 论 研 究郭思培,彭智勇(武汉大学 软件工程国家重点实验室,湖北 武汉 ;华中师范大学 数学与统计学院,湖北 武汉 ;武汉大学 计算机学院,湖北 武汉 )摘要:数据库规范化理论是数据库领域研究的一个重要课题本文综合论述了数据库规范化理论研究的现状,指出了从关系数据库、面向对象数据库到 数据库等各发展阶段中数据库规范化问 题 的 特 点、主 要 思 想 和关键方法,描述了数据库规范化理论的重要研究成果以及存在的问题,指出将形式概念分析方法引入数据库规范 化中,作为新环境下数据库规范化理论研究的新的
2、发展方向关 键词:数据库;关系数据模型;面向对象数据模型; 数据模型;规范化理论中图分类号:文献标识码:鉴了形式概念分析的方法,作为环境下数据库规范化理论研究途径的新思考引言随着信息规模与日俱增,准确高效地进行数据管理便成为了信息技术发展的瓶颈问题数据库规 范化理论从数据组织模式出发,着眼于考察数据库 设计中数据的本质定义与相互关联,从而试图构建 结构清晰明确,使用效率更高的数据库系统从传统的关 系 数 据 库到 面 向 对 象 数 据 库,对象关系数据库,再到以 数据 库为 代 表 的半结构化数据库,无论哪种数据库的构建、管理 及改进都需要以规范化理论为依据随着数据库模 式的不断变化演进,数
3、据库规范化理论方法在数据 库设计与数据管理领域中发挥着重要作用数据库 的规范化,既是对数据库设计技术的理论研究,同时 也为数据信息的组织和管理提供了普适性手段本文沿着数据模型的发展历程,分别对关系数据模型、面向对象数据模型、半结构化数据模型等框 架下的数 据 库 规 范 化 理 论研 究 内 容 做 出 了 总 结归纳,指出各阶段中不同的规范化理论的研究方 法的特点和关键问题所在进一步,在传统规范化研 究方法的基础上,结合信息语义表达的本质特点,借关系数据库规范化理论关系与关系模式针对一个具体问题,应该如何构造适合于它的 数据模式是关系数据库逻辑设计的核心问题,也正是关系数据库规范化理论的研究
4、内容 一个关系通常是由赋予它的元组语义来确定的 凡符合元组语义的那部分 元 素 的 全 体 就 构 成 了 该 关 系 模 式 的 关 系现实世界随着时间不断变化,在不同时刻,关系 模式的关系也会有所变化但现实世界的许多已有 事实限定了关系模式所有可能的关系必须满足一定 的完整性约束条件,这些约束或者通过对属性取值 范围的限定,或者通过属性值之间的相互关联反映 出来后者称为数据依赖,它是现实世界属性间相互 关系的抽象,是数据内在的性质和语义的体现,也是 数据模式设计求精的关键数据库概念设计得到的 是一个关系的集合与一组完整性约束,这是进行数 据库设计的开端,而更严格的设计过程必须通过更 加完整
5、地考虑完整性约束来对数据库模式的初始设收稿日期:基金项目:国家重点基础研究发展计划 ()项 目 ();国家自然科学基金 ();湖北省自然科学基金资助项目 ()作者简介:郭思培,女,博士生,现从事计算机软件理论、数据库理论的研究 :计进行求精达到的最好的范式函数依赖与 公理信息在数据库中的冗余存储是导致产生更新异 常,插入异常,删除异常以及重复占用存储空间等不良性能的根本原因在理想的情况下,我们希望模式 没有冗余“数据依赖”可以用来识别关系模式的属性 之间出现的冗余现象现在人们已经基于数据库模式的现实语义,提出了许多类型的数据依赖,函数依赖无疑是其中最重要的类型之一,它通过判定关系中的 元组在特
6、定属性上的取值是否相等来检测属性之间 是否存在依赖关系一个合法的关系必须满足所有的 完整性约束,包括所有规定的函数依赖:检查关系中的实例可以确定特定的函数依赖不 成立,但事实上我们很难通过检查所有合法实例从 而推断函数依赖的成立因此,需要建立函数依赖的 推理机制,帮助找到更多有用的依赖关系我们称所 有可以从函数 依 赖 集 合 中 推导 出的函数依赖所 组成的集合称为 的闭包 公理的三条 规则:自反律,增补律,传递律,能简单而优美地推导 出 所蕴涵的所有函数依赖,并且,已经证明,该公 理的有效性(由 出发根据该公理推导出的每个函 数依赖均在 的 闭 包 中)和 完 备 性 ( 的 闭 包 中
7、每 个函数依赖必 定 可 以 由 出 发根 据该公理推导出 来)也都是成立的分解的特性为了解决冗余,可以将一个关系分解成一些较 小的关系,每个较小的关系都包含了一个原关系属 性集合的子集,这个过程称之为“模式分解”模式分 解有两个重要的性质:无 损 连 接 性(它 能 够 通 过连接分解所得到的那些较小的关系来恢复被分解 关系的所有 实 例)和 保 持 依 赖 性(它 能 将 被 分 解关系上的所有依赖在这些较小的关系上得以保留,即不需要将这些关系进行连接就能检测是否违反了原关 系 的 约 束)分 解 为 只 能 保 证 无 损 连 接 性,但不能保 证 其 依 赖 关 系 不 发 生 变 化
8、,而 分 解 为 既能保证无损连接又能保证依赖保持性在 讨论分解的特性时,“函数依赖集合的最小覆盖”的概 念对依赖保持性有重要意义直观上,函数依赖集 合 的最小覆盖就是它的一个等价依赖集合所谓的 “最小”主要体现在:每个依赖关系都尽可能的小;左 边属性没有多余的,右边为单属性;而且其中每个依 赖关系都是必要的解决有关函数依赖分解的特性和 分解算法,函数依赖的闭包,成员籍以及最小覆盖等 问题,对消除关系数据库冗余有着关键的作用其他类型的依赖关系除了最普遍的函数依赖还有其他一些类型的依 赖关系存在,如多值依赖和连接依赖等,它们 可以帮助我们发现函数依赖不能检测到的一些冗余 问题给定一组函数依赖和多
9、值依赖能够导出一些相关的函数依赖和多值依赖由三个 公理 加上五个有关多值依赖的规则构成了完整的依赖关 系推导规则系统,其有效性和完备性成立连接依赖是对多值依赖的进一步推广,如果关 系 有一个无损连接的分解,那么 上存在连接依 赖基于连接依 赖 可 以 定 义 与 函 数 依 赖 和 多值依赖不一样,连接依赖没有完备的推理规则集 合因此,文献中提出可以不用连接依赖而只用 函数依赖来检测冗余:“如果一个关系是,而且 它的每个码都是由单属性构成,则它也是”(充 分而非必要条件)近期,学者们讨论了基于函数依赖定义范式的 弱点:函数依赖范畴内的最高级别范式 范 式 依 然是有不当冗余的在此基础上提出了一
10、种基于函 数独立性的新型范式:“子域依赖”的概念,并阐述了 它与“子集依赖”和模式依赖的区别消除“子域 依赖”后的关系模式称为函数独立的,而满足函数独 立的关系模 式 则 称 为 函 数 独 立 范 式 ()范式数据库的模式规范化需要解决的主要问题是从 关系模式的初始状态开始,不断修改模式结构,以减 少或消除冗余,同时还应充分考虑修改而引起的相关 问题给定一个关系模式,规范化理论需要确定它是 否是一个良好的设计,或者是否需要进行模式分解 “范式”可以帮助我们做出上述决定如果一个关系满 足某种范式,那么就肯定不会发生诸如插入或删除异 常此类特定的问题如果不能满足某种范式,则需要 判定其是否能通过
11、模式分解,将原关系模式转化成为 满足要求的范式,从而避免出现一些不良问题范式的定义以函数依赖为基础按其规定的严 格性从低到高的顺序为:第一范式(),第二范式(),第 三 范 式 (), 范 式 ( ),以及 第 四 范 式 (),第 五 范 式 ()等等其中比较重要的是, 等范式类型直观地说,在一个 的关系中,每一个 非 主 属性既不部分依赖于码也不传递依赖于码,而一个 满足 的关系排除了任 何 属性 对 码 的 传 递 依 赖和部分依赖 可以 确 保 只 使 用 函 数 依 赖 不 能再检测出冗余,即在函数依赖范畴下, 是能第 期郭思培 等:数据库规范化理论研究消除了因子域依赖引起的数据冗余
12、与异常对象之间的联系,是模式级别的多类型依赖关系基于垂直路径的依赖称为局部依赖或全局依赖,是对 象级别的依赖关系,表达了对象和它的成员之间的 关系,即对象内部的关系其中局部依赖讨论的是一 个对象的单个实例满足的依赖关系,而全局依赖则 指的是一个类的所有实例都满足的相互关系面向 对象模型的依赖关系的推导也有有效且完备的公理 系统,其中包含了各种依赖类型各自的推导规则,帮 助我们完成面向对象模型中依赖关系的推导面向对象数据模型是论域中用户解释的正确概念模式,而不是数据库实现或执行所以,面向对象 规范化理论是基于论域中用户解释与模式中对象反 映的解释相一致的出发点之上的解释是全局依赖 约束的集合用户
13、解释是通过用户对论域语义的理 解来指定的全局依赖约束的集合,称为用户的 约束从对象的复杂结构中得到对象的多重解释(或 理解)叫做对象解释对象的多重解释来源于它的垂 直路径,是它的路径的各种可能解释的反映,联合起 来形成对象解释关系数据库模型中,一个关系只有 一个惟一的解释,而在面向对象数据模型中一个对 象可以有多个对象解释对象的所有对象解释形成 对象完整语义概念,被称为对象模型在面向对象模 式中对象的规范化可被看作一个用户解释被对象解 释检查匹配的过程如果用户解释是通过对象模型 所表达的即当用户解释是通过推导公理方法从对象 解释中导出的时,则称这个对象处于一个范式中否 则称为非规范化对象范式提
14、供一个在论域中的用 户解释和对象结构反映的解释之间的连接当一个 对象不在一个范式中,对象的复杂结构就要被改变 或重构,直到每个对象都属于范式面向对象模型的 规范化是要使得最终设计出的面向对象模式在用户 解释与反映对象的结构解释之间没有差别推广的关系数据模型的规范化在上述传统的经典关系理论的研究基础之上, 对于新模型和新依赖关系的研究工作蓬勃展开新 的关系数据模型保持了传统关系模型的基本“关系” 结构,同时又为适应新的数据库应用而加以特定扩 充如为了存储“不精确”或“模糊”数据而开发的模 糊关系模型它以模糊函数依赖来表征其冗余问 题,并有其推导公理系统,可以证明其有效性和完备 性而在动态 模 型
15、中,不 仅 反映 了关系模式所代 表的那些实体的个别场合的情况,而且反映了它的 一系列变化基于动态约束的概念,定义了动态函数 依赖,但对于其范式定义和规范化的分解算法还未 有深入研究嵌套关系模型也是一类扩展的关系 数据模型,它允许关系中属性的值可以是关系,并允 许出现多次嵌套嵌套模型中也相应地讨论了嵌套 函数依赖和嵌套范式的定义,其理论体系完备严密 嵌套模型的发展与面向对象模型在上世纪 年代 的发展有密切关系,并且其“拆平”的规范化思想,被 后来的复杂对象模型的规范化理论所借鉴关系模型因其严格的数学理论基础,使关系数据库的规范化设计获得了空前的成功自 提 出这一理论以来,关系数据库的规范化理论
16、研究取 得了丰富的成果这些研究工作基于这样的主线来 开展:以数据依赖为核心,讨论依赖关系的各种合宜 形式,试图减少或消除不合理的依赖关系,使数据库 模式达到符合不同级别要求的范式,从而使数据库 系统冗余少,一致性高,进而获得更高的查询和检索 效率面向对象数据库规范化理论面向对象数据库规范化理论基本框架等人于 世纪 年代末期提出了面向 对象数据库规范化理论与传统的关系数据库规范 化理论的最大区别是,面向对象规范化理论主要用 于数据库的概念设计,与数据库的逻辑设计无关这 弥补了传统 数 据 库 设 计 方 法 在 概念模式方面的不 足,使其能够支持面向对象数据模型面向对象数据模型中的依赖约束是不同
17、对象类 型间的语义依赖,而语义依赖是与聚集、联合、继承等不同类型的联系相关联的根据对象之间路径的 不同类型,这些依赖有不同形式且表达了在不同的粒度级别关于不同的路径类型的对象关系基于水 平路径的依赖称为路径依赖,表征各种不同类型的对基本框架的改进文献是面向对象数据模型规范化理论的奠 基,但其中不乏可改进之处如其中的两种对象范式 生成算法共同缺陷是,当用户解释中含有冲突时,算 法将进入死循环,而且某些算法不能在多项式时间 内得到解,说明他们并不完善针对这些问题,可以 利用扩充有向图对对象生成算法进行改进扩充 有向图借鉴了超图的思想,但不同的是超图扩展的是弧的定义,而扩充有向图扩展的则是顶点的含义
18、文献中提出了规范化对象结构图和对象范式的生成算法,并给出了正确性证明和算法复杂度分析结果用与文献中相同的例子进行检验,得到的结果相同,同时,采用扩充有向图的算法时间复杂度更低围绕文献中的路径依赖定义和嵌套关系的特征,吴永辉等人提出了对象间的依赖关系的定 义应充分反映语义关系的观点,用对象模式树表示 复杂对象模式,更多借鉴了关系数据理论的分析模 式,提出了语义层面上的关系依赖概念,并给出类似 多值依赖和嵌套依赖的推导公理和对应的完整性证 明,讨论了对象范式(规范化对象模式树和规范化对 象模式森林)的生成算法,解决了复杂对象模式的规 范化问题其 中,算 法 是 规 范化过程的核心, 它由两个基 本
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 规范化 理论研究
链接地址:https://www.31ppt.com/p-2395559.html