25. 关系代数中的操作有哪些?
关系代数中的操作可分为两类:
传统的集合操作:并、差、交、笛卡尔积
扩充的集合操作:对关系进行垂直分割(投影)、水平分割(选择),关系的结合(联接、自然联接),笛卡尔积的逆运算(除法)等。
其中五个基本操作为:并、差、笛卡尔积、投影、选择。
四个常用组合操作为:交、连接、自然连接、除法
两种扩充的关系代数操作为:外连接和外部并
26. 关系演算有哪两种:
关系演算可分为元组关系演算和域关系演算。前者以元组为变量,后者以属性(域)为变量。
27. 什么是约束变量、自由变量:
如果元组变量未使用存在量词 或全称量词 符号定义,那么称为自由元组变量,否则称为约束元组变量。
约束变量类似于程序设计语言过程内部定义的局部变量,自由变量类似于过程外部定义的外部变量或全局变量。
28. 什么是安全运算:
在数据库技术中,不产生无限关系和无穷验证的运算称为安全运算,相应的表达式称为安全表达式,所采取的措施称为安全约束。
在关系演算中约定,运算只对表达式中公式在涉及到的关系的值范围内操作。这样就不会产生无限关系和无穷验证问题,关系演算是安全的。
29. 为什么要对关系代数表达式进行优化:
查询优化是由DBMS对关系代数表达式进行优化组合,以提高DBMS的系统效率。要对关系代数进行优化的原因是:由于关系代数表达式是由关系代数操作组合而成。在关系代数操作中,执行笛卡尔积和联接运算最费时间,并且在执行过程中将产生大量的中间结果,以使系统执行效率较低。在执行前,由DBMS查询处理子系统先对关系代数表达式进行优化,尽可能早地执行选择和投影操作,以得到较小的中间关系,减少运算量和读外存块的次数,节省系统的执行时间,提高执行效率。
30. 简述查询优化的优化策略:
(1) 在关系代数表达式中尽可能早地执行选择操作。
(2) 把笛卡尔积和随后的选择操作合并成F联接运算。
(3) 同时计算一连串的选择和投影操作,以免分开运算造成多次扫描文件,从而能节省操作时间。
|
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容 本站提醒:不要进行人身攻击。谢谢配合。 |