- 1、本文档共74页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * 2. 连接操作的启发式规则 (4) 可以选用嵌套循环方法,并选择其中较小的表,确切地讲是占用存储块数较少的表,作为外表(外循环的表)。 理由: 设连接表R与S分别占用的块数为Br与Bs 连接操作使用的内存缓冲区块数为K 分配K-1块给外表 如果R为外表,则嵌套循环法存取的块数为 显然应该选块数小的表作为外表 * * 5.5 基于代价估算的优化 启发式规则优化是定性的选择,适合解释执行的系统 解释执行的系统,优化开销包含在查询总开销之中 编译执行的系统中查询优化和查询执行是分开的 可以采用精细复杂一些的基于代价的优化方法 影响查询执行代价的因素主要有: 访问存储器的代价:有哪些信誉好的足球投注网站、读和写二级存储器(主要是磁盘)上的数据库的代价 存储代价:存储在查询执行时生成的中间文件的代价 计算代价:在查询执行时对内存操作的代价,包括有哪些信誉好的足球投注网站元组、排序元组、合并元组、计算等。 内存使用代价:查询执行需要的内存缓冲区数目。 通信代价:查询过程中数据在不同数据库节点传送的代价 * * 统计信息 基于代价的优化方法要计算各种操作算法的执行代价,与数据库的状态密切相关 数据字典中存储的优化器需要的统计信息: 1. 对每个基本表 该表的元组总数(N) 元组长度(l) 占用的块数(B) 占用的溢出块数(BO) * * 统计信息 数据字典中存储的优化器需要的统计信息(续): 2. 对基表的每个列 该列不同值的个数(m) 选择率(f) 如果不同值的分布是均匀的,f=1/m 如果不同值的分布不均匀, 则每个值的选择率f =具有该值的元组数/N 该列最大值 该列最小值 该列上是否已经建立了索引 索引类型(B+树索引、Hash索引、聚集索引) * * 统计信息 数据字典中存储的优化器需要的统计信息(续): 3. 对索引(如B+树索引) 索引的层数(L) 不同索引值的个数 索引的选择基数S(有S个元组具有某个索引值) 索引的叶结点数(Y) * * 5.5.2 连接操作的代价估算 1. 嵌套循环法 设连接表R与S分别占用的块数为BR与BS,连接操作使用的内存缓冲区块数为K,分配K-1块给外表, 如果R为外表,则嵌套循环法存取的块数为 BR+ BRBS/(K-1)。 如果需要把连接结果写回磁盘,则 cost=BR+ BRBS/(K-1)+(Frs*NR*Ns)/Mrs。 其中N是关系的元组总数, Frs为连接选择性(join selectivity),表示连接结果元组数的比例 Mrs是存放连接结果的块因子,即一个块中能够存放的关系R的元组数量 。 * * 5.5.2 连接操作的代价估算 2. 索引嵌套循环法 若内关系S存在索引,针对外关系R的任意一个给定的元组,都有一次利用索引查找内关系S的相关元组 最坏情况下,内存只能容纳关系R和索引各一个物理块,所需要访问的物理块数为BR+ NR×c, 这里c表示利用索引的选择来获得满足连接条件的关系S的元组所需要的代价。 可以看出,在关系上建立索引进行连接操作与嵌套循环法相比,所花费的代价要降低很多。 如果两个关系都有索引,一般效率较高的方法是把元组较少的关系作为外关系。 * * 5.5.2 连接操作的代价估算 3. 排序合并法 如果连接表已经按照连接属性排好序,则cost=BR+Bs+(Frs*Nr*Ns)/Mrs。 如果必须对文件排序 需要在代价函数中加上排序的代价 对于包含B个块的文件排序的代价大约是(2*B)+(2*B*log2B) 因此代价函数是: Cost=(2* BR)+(2* BR*log2 BR)+ (2* BS) +(2*Bs*log2Bs)+BR+BS+(Frs*Nr*Ns)/Mrs * * 5.6 小结 查询处理和查询优化的一般过程,以及查询处理的一些典型的实现算法 查询优化技术 代数优化技术是指关系代数表达式的优化,即按照一定的规则,改变代数表达式中操作的次序和组合,使查询执行更高效 基于存取路径的优化是指存取路径和底层操作算法的选择和优化 代价估算的优化是对多个查询策略的优化选择,代价估算优化开销较大,而且产生所有的执行策略也是不太可能的,因此将产生的执行策略的数目保持在一定范围内才是比较合理的 * * 5.6 小结 解释执行的系统,优化开销包含在查询总开销之中。 全面的优化会延长系统的响应时间。 启发式规则优化是定性的选择,适合解释执行的系统。 在编译模式下查询优化后被存储起来,稍后运行。 编译执行的系统中查询优化和查询执行是分开的,可以采用精细复杂一些的基于代价的优化方法。 使用代价估算的优化方法需要能够准确地估算查询代价才能比较不同的查询策略,这种方法比较适合在编译模式下使用。 因此,查询优化器应该综合这些因素确定优化方案 * *
您可能关注的文档
- 磁现象和磁场、磁感应强度详解.ppt
- 神奇的枕头讲述.pptx
- 社团通平台解决方案161018V1讲述.ppt
- 神奇的植物王莲讲述.ppt
- 第5章_总体设计详解.ppt
- 社会7-3-51石油宝库详解.ppt
- 社会人文/地域文化详解.ppt
- 社会调查研究方法3程序类型-王强详解.ppt
- 第5章-3内部控制-采购与付款控制详解.ppt
- 社会语言学语言规划详解.ppt
- 人教版英语5年级下册全册教学课件.pptx
- 部编人教版2年级上册语文全册教学课件含单元及专项复习.pptx
- 人教版8年级上册英语全册教学课件(2021年8月修订).pptx
- 教科版(2017版)6年级上册科学全册课件+课时练.pptx
- 人教版PEP版6年级英语下册全册教学课件(2022年12月修订).pptx
- 部编人教版2年级下册语文全册课件(2021年春修订).pptx
- 人教版数学6年级下册全册教学课件(2023年教材).pptx
- 湘少版5年级下册英语全册教学课件(2021年春修订).pptx
- 人教PEP4年级下册英语全册教学课件 [2}.pptx
- 人教版6年级上册英语全册教学课件.pptx
文档评论(0)