④ 混合策略:就是将自顶向下和自底向上结合起来,先用前一种方法确定框架,再用自底向上设计局部概念,然后再结合起来。
(2)常用自底向上策略的设计步骤 ① 进行局部抽象,设计局部概念。 ② 将局部概念模式综合成全局概念模式 ③ 进行评审,改造。
9. 采用E-R方法的数据库概念设计步骤 采用E-R方法的数据库概念设计步骤分三步: (1)设计局部E-R模型,局部E-R图的设计步骤如图1.5所示。在设计E-R模型的过程中应遵循这样一个原则:现实世界中的事物能作为属性对待的,尽量作为属性对待。什么样的事物可以作为属性对待?下列两类:
● 作为属性,不能是再具有需要描述的性
质。
● 属性不能与其它实体具有联系。 (2)设计全局E-R模型。将所有局部的E-R图集成为全局的E-R概念模型,一般采用两两集成的方法,即先将具有相同实体的E-R图,以该相同的实体为基准进行集成,如果还有相同的实体,
图1.5 局部E-R模型设计步骤
需求分析 说明书 确定局部结构范围 定义属性 定义实体 定义联系属性分配 完 否 Y 结 束
N
就再次集成,这样一直继续下去,直到所有具有相同实体的局部E-R图都被集成,从而得到全局的E-R图。在集成的过程中,要消除属性、结构、命名三类冲突,实现合理的集成。
(3)全局E-R模型的优化。一个好的全局的E-R模型能反映用户功能需求外,还应做到实体个数尽可能少,实体类型所含属性尽可能少,实体类型间的联系无冗余。全局E-R模型的优化就是要达到这三个目的。
采用以下集中方法:
① 合并相关的实体类型:把1:1联系的两个实体类型合并,合并具有相同键的实体类型。
② 消除冗余属性与联系:消除冗余主要采用分析法,并不是所有的冗余必须消除,有时为了提高效率,可以保留部分冗余。
1.2.3 逻辑结构设计
概念结构是独立于任何数据模型的信息结构。逻辑结构设计的任务就是将概念模型转化成特定的DBMS系统所支持的数据库的逻辑结构(数据库的模式和外模式)。
10. 逻辑结构设计的步骤
由于现在设计的数据库应用系统都普遍采用支持关系模型的RDBMS,所以这里仅介绍关系数据库逻辑结构的设计。关系数据库逻辑结构设计时一般分三步:
(1)将概念结构向一般的关系模型转换。
第 9 页 共 22 页
(2)将转换来的关系模型向特定的RDBMS支持的数据模型转换。 (3)对数据模型进行优化。
11. E-R模型向关系数据库的转换规则
如何将E-R模型的实体和实体间的联系转换成关系模式,如何确定这些关系模式的属性和码,这些问题是通过E-R模型向关系模式转换的规则来解决的。E-R模型向关系数据库的转换规则是:
(1)一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。
(2)一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如果转换为一个独立的关系模式,则相连的每个实体的码及该联系的属性是该关系模式的属性,每个实体的码均是该关系模式的候选码。
(3)一个1:n 联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式。与该联系相连的各实体的码及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。
(4)一个m:n联系转换为一个关系模式。与该联系相连的各个实体的码及联系本身的属性转换为关系的属性,而该关系的码为各实体的码的组合。
(5)三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码及联系本身的属性转换为关系的属性,而该关系的码为各实体码的组合。
(6)具有相同码的关系模式可以合并。 12. 关系数据库的逻辑设计 关系数据库逻辑设计的过程如下:
(1)导出初始的关系模式:将E-R模型按规则转换成关系模式。 (2)规范化处理:消除异常,改善完整性、一致性和存储效率。
(3)模式评价:检查数据库模式是否能满足用户的要求,它包括功能评价和性能评价。 (4)优化模式:采用增加、合并、分解关系的方法优化数据模型的结构,提高系统性能。 (5)形成逻辑设计说明书。
1.3 Oracle Database 10g简介
Oracle是目前最流行的关系数据库管理系统,被越来越多的用户在信息系统管理、企业数据处理、Internet、电子商务网站等领域作为应用数据的后台处理系统。世界500强的企业中有70%使用的是Oracle数据库。它采用标准的SQL(结构化查询语言),支持多种数据类型,并面向对象。支持UNIX、LINUX、Window NT/2000、OS/2等操作系统平台,支持客户机/服务器工作模式和Web工作模式。
1.3.1 Oracle数据库简史
Oracle是当今最大的数据库公司Oracle(甲骨文)的数据库产品。Oracle公司的前身是创建于1977年的,位于美国加州的Relational Software公司。该公司与1979年推出了世界上
第 10 页 共 22 页
第一个基于SQL标准的关系数据库管理系统Oracle 1(而IBM公司的第一个商用SQL关系数据库是在1981年推出的SQL/DS)。同年又推出产品Oracle 2,开始受到社会的关注。
之后几年Oracle公司相继推出:
1980年,Oracle公司推出了Oracle3。随着Oracle 3的出现,一切都发生了改变。这是第一个能够同时运行在大型机和小型机上的关系数据库。由于Oracle3使用C语言编写的,因此这种跨平台的代码移植能力使得Oracle公司在竞争中占据了较大的优势。
1986年,Oracle公司推出了Oracle数据库的PC版Oracle 5。该版本支持协同服务器,客户机/服务器结构。
1992年,Oracle公司推出了基于UNIX版本Oracle 7,使Oracle正式想UNIX进军。 1997年,Oracle公司推出了基于Java语言的Oracle 8。该版本增加了许多新的功能,使Oracle数据库更适合构造大型应用系统。
1999年,随着因特网技术的普及,Oracle公司推出了以因特网解决方案为核心的Oracle 8i。
2001年,Oracle公司在Oracle 8i的基础上推出了新一代因特网电子商务架构的网络数据库解决方案Oracle 9i。
2004年,在网格计算的潮流中,Oracle公司推出了Oracle Database 10g。
1.3.2 Oracle Database 10g的新特性
Oracle数据库支持世界上的许多大型信息系统。Oracle的每个版本都在为改进数据库性能和可伸缩性引入了许多新的特性。Oracle Database 10g新特性主要包括:
13. 网格计算数据库
2004年发布的Oracle Database 10g版本是为网格计算设计的第一个关系数据库,“g”是指网格。网格计算是指将大量服务器和存储设备作为一台计算机进行协调使用。用户不需要关心数据的位置,也不需要考虑那台计算机处理它的请求。用户不必担心需求高峰、管理计算资源的孤岛以及维护额外容量的成本。网格计算的思想与Oracle已经开发多年的功能和技术相结合。
14. 优化资源用量
为了进一步保证资源用量的优化,Oracle Database 10g包含了强大的内置工具和自我管理功能,它可以自我动态地管理大部分的配置,并调整可用资源。
15. 优化PL/SQL
PL/SQL编译器经过重新编写,新的编译器包括一个更加成熟的代码生成器和一个可以充分改善大部分程序性能的全局代码优化器,其结果是提升了性能。对于一个单纯的PL/SQL程序来说,其性能比Oracle 9i V2.0超出了大约两倍,而PL/SQL可执行代码的大小却减少到30%,动态堆栈大小减少了70%,从而减少了内存的压力,提高了性能。
16. 查询技术的优化
Oracle Database 10g使用基于成本的优化策略,这样对于一个给定查询可以生成多个执
第 11 页 共 22 页
行计划并对每个计划计算估计成本,然后查询优化程序选择成本最低计划。此查询优化的过程对于应用程序和最终用户是完全透明的。
17. 自我调整功能
自我调整SGA:SGA(系统全局区)是存储区域,由所有用户共享,它包含某个特定Oracle数据库实例的数据和控制信息。Oracle Database 10g引入了自我调整SGA,它允许管理员只指定SGA的总大小,而由Oracle数据库负责在整个SGA池中内部决定优化内存分配的责任,即分配给不同SGA缓存的内存将随时间动态的更改,以适应工作量的变化。
18. 自我调整检查点:
检查点是将内存中修改的数据与数据库中的数据文件同步的手段。Oracle定期将检查点之间修改过的数据写入数据文件,这就占用大量的内存。使用自我检查点调整,Oracle数据库利用I/O用量较低的时期将内存中修改的数据写入到数据文件,从而对吞吐量不造成负面影响。
19. SQL语句转换
优化程序将最初的SQL语句转换称可以返回相同结果,但处理更有效的SQL语句。 20. 大量数据的管理
Oracle Database 10g可以支持极大的数据库,达到8 exabytes(8百万兆兆字节)数据。主要采用大量分区、散量分区全局索引、并行单独游标和高速数据移动等机制。
21. 全表扫描
在Oracle Database 10g中,全表扫描的性能明显改进了。使用简单谓词或者没有谓词的情况下,对单个表进行扫描消耗的时间和CPU利用率的改进因子在40%-60%之间。
22. 索引编排表的列表分区选项
由于索引信息和数据存储在一起,索引编排表可以为包含主关键字的精确匹配和/或范围搜索的查询提供表数据的快速访问。由于关键字列并不会在表和主关键字索引中重复存储,所以使用索引编排可以降低存储要求。它消除了常规索引中为将索引值和行数据相连而使用的行存储位置的额外存储需要,提高了性能。
23. 基于Microsoft Windows的系统
Oracle Database 10g在64位Windows上可以作为本地64位应用程序使用。
1.4 Oracle的体系结构
Oracle系统的体系结构是指Oracle数据库服务器的主要组成以及这些组成部分之间的联系和操作方式。从体系结构上讲,完整的Oracle数据库包括数据库DB、数据库管理系统DBMS两大部分。这两个部分别对应的是存储网络结构和软件结构。
1.4.1 网络结构
第 12 页 共 22 页
相关推荐: