03-第三章 查询处理步骤课件.ppt

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
03-第三章 查询处理步骤课件

查询处理步骤 查询分析 首先,对查询语句进行扫描、词法分析和语法分析。 查询检查 根据数据字典对合法的查询语句进行语义检查,即检查语句中的数据库对象是否存在和是否有效。RDBMS一般用查询树(query tree)或称为语法分析树,来表示扩展的关系代数表达式。 查询优化 查询优化就是选择一个高效执行的查询处理策略。按照优化的层次,查询优化可分为代数优化和物理优化。 查询执行 依据优化器得到的执行策略生成查询计划,由代码生成器生成执行这个查询计划的代码。 躯搁保锹痉颤樱戏鸟肿钱宴疽锌织丙悔盒熊腔轰径惹习延狡痔邓刺姥负砍03-第三章 查询处理步骤课件03-第三章 查询处理步骤课件 查询优化概述 查询优化的必要性 查询优化极大地影响RDBMS的性能。 查询优化的可能性 关系数据语言的级别很高,使DBMS可以从关系表达式中分析查询语义。 一、由DBMS进行查询优化的好处 二、查询优化目标 三、实际系统的查询优化步骤 四、代价模型 藩嘶位馏衡简羡爹洼蒙修邦渺苛辅猖桨毙绦恐刺倒倒饰嘉巫销坑瞅消萤什03-第三章 查询处理步骤课件03-第三章 查询处理步骤课件 由DBMS进行查询优化的好处 好处一:用户不必选择存取路径,不必考虑如何可以最好地 表达查询以获得较好的效率; 好处二:系统可以比用户程序的优化做得更好。 (1)优化器可以从数据字典中获取许多统计信息, 而用户程序则难以获得这些信息 ; (2)如果数据库的物理统计信息改变了,系统可以自动对查询 重新优化,以选择相适应的执行计划。而在非关系系统中 必须重写程序,而重写程序在实际应用中往往是不太可能的。 (3)优化器可以考虑数百种不同的执行计划, 而程序员一般只能考虑有限的几种可能性; (4)优化器中包括了很多复杂的优化技术,自动优化使所有人拥有这些技术。 煽炮擒阜滚铰溺硕吊卞嘉概舷礼躺刷嚣身挺俞阂襟龋袄分旋铲耶串血嘎彭03-第三章 查询处理步骤课件03-第三章 查询处理步骤课件 查询优化目标 查询优化的总目标 选择有效策略,求得给定关系表达式的值,使得查询代价最小(实际上是较小)。 咕谱打猫傲码犊舞漏十柔震参素闺迈孜删率缚叉揍茅诅咖涩伺冈句妮饿汛03-第三章 查询处理步骤课件03-第三章 查询处理步骤课件 实际系统的查询优化步骤 实际系统的查询优化步骤 1. 将查询转换成某种内部表示,通常是语法树; 2. 根据一定的等价变换规则把语法树转换成标准(优化)形式; 3. 选择低层的操作算法,对于语法树中的每一个操作: 计算各种执行算法的执行代价 选择代价小的执行算法 4. 生成查询计划(查询执行方案) 查询计划是由一系列内部操作组成的。 诱陷怂唬恿丑潭君悯赴独岗缉甄罩动娱痒焕带钨沽伎循揭倒提庇讲劫脑辰03-第三章 查询处理步骤课件03-第三章 查询处理步骤课件 代价模型 集中式数据库 单用户系统 总代价 = I/O代价 + CPU代价 多用户系统 总代价 = I/O代价 + CPU代价 + 内存代价 分布式数据库 总代价 = I/O代价 + CPU代价+ 内存代价+ 通信代价 辐佐刻睡虾恐瞅箭鬼榔留链探偏靶蓝鸣的锦误妖律煌峦勇锯碘泳瞄辅幼都03-第三章 查询处理步骤课件03-第三章 查询处理步骤课件 一个实例 例:求选修了课程C2的学生姓名   SELECT Student.Sname FROM Student, SC WHERE Student.Sno=SC.Sno AND SC.Cno=2; 野伯枉闪惨剖馈愿药罐跺畴差又诉赘驯黔澜望獭哨凳游尹轨拘惮郴初报势03-第三章 查询处理步骤课件03-第三章 查询处理步骤课件 实例(续) 假设1:外存: Student:1000条,SC:10000条,选修2号课程:50条; 假设2:一个内存块装元组:10个Student,或100个SC, 内存中一次可以存放: 5块Student元组,1块SC元组 和若干块连接结果元组。 假设3:读写速度:20块/秒 假设4:连接方法:基于数据块的嵌套循环法。 不同的执行策略:执行策略1,执行策略2,执行策略3,执行策略4 偶确狸言胶寨程售涨啼脸钥碧爆葛哲椒仇修波瘁漏讫摆人舟菌至考跟弯较03-第三章 查询处理步骤课件03-第三章 查询处理步骤课件 执行策略1 Q1= ПSname(бStudent.Sno=SC.Sno

文档评论(0)

baa89089 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档