数据模型数据模型的三要素数据模型的分类和各自的特点内容摘要:
达查询以获得较好的效率 系统可以比用户程序的 优化 做得更好 (1) 优化器可以从数据字典中获取许多统计信息 ,而用户程序则难以获得这些信息 由 DBMS进行查询优化的好处 (2)如果数据库的物理统计信息改变了 , 系统可以自动对查询 重新优化 以选择相适应的执行计划。 在非关系系统中必须重写程序 , 而重写程序在实际应用中往往是不太可能的。 (3)优化器可以考虑数百种不同的执行计划 , 而程序员一般只能考虑有限的几种可能性。 (4)优化器中包括了很多复杂的优化技术 查询优化目标 查询优化的总目标 选择有效策略 , 求得给定关系表达式的值 实际系统的查询优化步骤 1. 将查询转换成某种内部表示 , 通常是语法树 2. 根据一定的等价变换规则把语法树转换成标准 ( 优化 ) 形式 实际系统的查询优化步骤 3. 选择低层的操作算法 对于语法树中的每一个操作 计算各种执行算法的执行代价 选择代价小的执行算法 4. 生成查询计划 (查询执行方案 ) 查询计划是由一系列内部操作组成的。 查询优化的一般准则 选择运算应尽可能先做 目的:减小中间关系 在执行连接操作前对关系适当进行预处理 按连接属性排序 在连接属性上建立索引 投影运算和选择运算同时做 目的:避免重复扫描关系 将投影运算与其前面或后面的双目运算结合 目的:减少扫描关系的遍数 查询优化的一般准则 (续) 某些选择运算+在其前面执行的笛卡尔积 === 连接运算 例: = (Student SC) Student SC 提取公共子表达式 关系代数等价变换规则 关系代数表达式等价 指用相同的关系代替两个表达式中相应的关系所得到的结果是相同的 上面的优化策略大部分都涉及到代数表达式的变换 常用的等价变换规则 设 E E2等是关系代数表达式, F是条件表达式 l. 连接、笛卡尔积交换律 E1 E2≡ E2 E1 E1 E2≡E2 E1 E1 F E2≡E2 F E1 关系代数等价变换规则(续) 2. 连接 、 笛卡尔积的结合律 (E1 E2) E3 ≡ E1 (E2 E3) (E1 E2) E3 ≡ E1 (E2 E3) (E1 E2) E3 ≡ E1 (E2 E3) F F F F 关系代数等价变换规则(续) 3. 投影的串接定律 π A1,A2, ,An(π B1,B2, ,Bm(E))≡ π A1,A2, ,An (E) 假设: 1) E是关系代数表达式 2) Ai(i=1, 2, …, n), Bj(j=l, 2, … , m)是属性名 3){A1, A2, … , An}构成 {Bl, B2, … , Bm}的子集 关系代数等价变换规则(续) 4. 选择的串接定律 бF1 ( б F2( E)) ≡ бF1∧ F2(E) 选择的串接律说明 选择条件可以合并 这样一次就可检查全部条件。 关系代数等价变换规则(续) 5. 选择与投影的交换律 (1)假设 : 选择条件 F只涉及属性 A1, …, An бF (πA1,A2, ,An(E))≡ πA1,A2, ,An(бF(E)) (2)假设 :。数据模型数据模型的三要素数据模型的分类和各自的特点
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。