数据库系统概论这门课第九章关系查询处理和查询优化的知识点包含章节导引,第一节关系数据库系统的查询处理,第二节关系数据库系统的查询优化,第三节代数优化,第四节物理优化,第五节小结与实验,。
关系代数表达式的优化策略中,首先要做的是:尽早执行选择运算。
关系代数是关系数据库系统查询语言的理论基础。
一、关系代数的9种 *** 作:
关系代数中包括了:并、交、差、乘、选择、投影、联接、除、自然联接等 *** 作。
五个基本 *** 作:
并(∪)、差(-)、笛卡尔积(×)、投影(σ)、选择(π)
四个组合 *** 作:
交(∩)、联接(等值联接)、自然联接(RS)、除法(÷)
注意:等值连接表示先做笛卡尔积(×)之后,对相应列进行选择或等值关联后的结果(仅筛选行、不筛选列)
注2:自然连接表示两个关系中若有相同名称的属性,则自动作为关联条件,且仅列出一列
二、关系代数表达式:
由关系代数运算经有限次复合而成的式子称为关系代数表达式。这种表达式的运算结果仍然是一个关系。可以用关系代数表达式表示对数据库的查询和更新 *** 作。
三、关系代数表达式的优化:
目的:为了系统在执行时既省时间又能提高效率。
基本策略:先做选择,运用投影去除多余属性等等。
优化算法:语法树(尽量提前做选择 *** 作;在每个 *** 作后,应做个投影 *** 作,去掉不用的属性值)。
例如:
π SNO,SNAME(σGRADE>60(SSC)) 进行优化后转换为:
π SNO,SNAME(πSNO,SNAME(S)πSNO(σGRADE>60(SC)))
--即提前做选择 *** 作;在每个 *** 作后,应做个投影 *** 作,去掉不用的属性值。
因为在查询优化中需要考虑的主要因素包括I/O代价、CPU代价和通信代价。
查询优化就是选择一个高效执行的查询处理策略。代数优化是指关系代数表达式的优化,即按照一定的规则,改变代数表达式中 *** 作的次序和组合,使查询执行效率更高。物理优化则是指存取路径和底层 *** 作算法的选择。
查询优化的总目标是,选择有效地策略,求得给定关系表达式的值,使得查询代价最小。因此最为重要。
在JAVA开发中数据库的学习也是我们需要了解的,截下来几篇文章都是关于数据库的设计和应用,那么java课程培训机构废话不多说开始学习吧!
数据库的设计
数据库设计是基础,数据库优化是建立在设计基础之上的。好的数据库一定拥有好的设计。
数据库设计的目标是为用户和各种应用系统提供一个信息基础设施和高效的运行环境。
数据库的三大范式
第一范式1NF:所有的域都应该是原子性的,即数据库表的每一列都是不可分割的原子数据项,而不能是集合,数组,记录等非原子数据项。
第二范式2Nf:第二范式在第一范式的基础之上更进一层。第二范式需要确保数据库表中的每一列都和主键相关,而不能只与主键的某一部分相关(主要针对联合主键而言)。也就是说在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中。
第三范式3Nf:所有字段必须与主键直接相关,而不是间接相关。也可以理解为字段不要和其他非主键字段相关
注意:这三个范式尽可能去遵守,不是一定要墨守成规这只是让我们设计的表的时候,越靠近这些范式,可以使字段尽量的减小冗余但是有时候也可以根据实际需要小小的违背一下但是第三范式违反一下还可以接受,但是第一范式别违反
数据库设计的步骤
需求分析阶段
准确了解与分析用户需求(包括数据与处理)。是整个设计过程的基础,是最困难、最耗费时间的一步。
概念结构设计阶段
是整个数据库设计的关键--设计数据库的E-R模型图,确认需求信息的正确和完整
Entity_Relationship---实体之间的关系
一对一
一对多
多对一
以上就是关于数据库系统概论这门课程第九章关系查询处理和查询优化的知识点有哪些全部的内容,包括:数据库系统概论这门课程第九章关系查询处理和查询优化的知识点有哪些、关系代数表达式的优化策略中,首先要做的是、标题在集中式数据库的查询优化中,为什么说“I/O代价是最主要的”。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)