当前位置: 首页 > news >正文 途牛网网站建设评价假网站备案 news 2025/11/5 11:27:51 途牛网网站建设评价,假网站备案,大理州住房和城乡建设部网站,个人养老金制度第九章 关系查询处理和查询优化 本章主要介绍关系数据库查询管理和查询优化#xff0c;主要分为代数优化#xff08;又称逻辑优化#xff09;和物理优化#xff08;也称非代数优化#xff09;。 9.1 关系型数据库系统的查询处理 查询处理是关系型数据库管理系统执行查询…第九章 关系查询处理和查询优化 本章主要介绍关系数据库查询管理和查询优化主要分为代数优化又称逻辑优化和物理优化也称非代数优化。 9.1 关系型数据库系统的查询处理 查询处理是关系型数据库管理系统执行查询语句的过程主要负责将用户提交给数据库管理系统的查询语句转化为高效的执行计划 1.查询处理步骤 关系数据库管理系统查询处理分为四个步骤查询分析、查询检查、查询优化和查询执行 查询分析 首先对查询语句进行扫描、词法分析和语法分析。 查询检查 对合法的查询语句进行语义检查。如果该用户没有相应访问权限或者违反了完整性约束就拒绝执行该查询。但是这时候完整性检查时初步的、静态的检查。检查之后将SQL查询语句转化为内部标识也就是等价的关系代数表达式。DBMS一般都用语法分析树来表示扩展的关系代数表达式对于这部分更详细的请参见《编译原理》 查询优化 查询优化是选择一个高效执行的查询处理策略。查询优化方法按照优化的层次一般可分为代数优化和物理优化 查询执行 根据优化器得到的策略生成查询执行计划由代码生成器生成执行这个查询计划的代码然后执行并返回结果 2.实现查询操作的算法 1.选择操作的实现 1简单的全表扫描算法 全表扫描算法只需要很少内存就可以运行而且控制简单。但是对于规模大的表进行顺序扫描效率将会非常低。 2索引扫描算法 如果选择条件中的属性上有索引比如B树索引或者hash索引可以使用索引扫描的方法首先通过索引找到满足条件的元组指针再通过指针在基本表中查询元组。一般情况下当选择率较低的时候基于索引的选择算法要优于全表扫描算法但是当选择率比较高的时候或者要查找的元素均匀分布在表中的时候使用索引的性能还不如全表扫描。 2.连接操作的实现 连接操作时查询处理中最常用也是最耗时的操作之一。比如 SELECT * FROM Student,SC WHERE Student.SnoSc.Sno 1循环嵌套算法 最简单可行的算法对于外层循环的每一个元组检索内层循环中的每一个元组。类似于双层for循环是最简单通用的连接算法但是效率较低。 2排序-合并算法 这是等值链接常用的算法适合参与连接的诸表已经排好序的情况。其具体步骤是 如果参与连接的表没有排好序则先对两表的连接属性N进行排序。使用最高效的排序算法快排时间复杂度为O(nlog2n)取出A表的第一个行的连接属性N依次扫描B表中属性N相同的元组把他们联结起来当扫描到和当前A表元组N属性不一样的B表元组的时候返回A表扫描他的下一个元组再扫描B表中具有相同的N属性的元组连接 这样子两个表都只需要扫描一次但是如果两表无序那需要承受两次排序的额外开销。但是一般对于大型表先排序后使用该算法执行连接总的时间开销还是会减少的。 3索引连接算法 算法步骤如下 在B表上已经建立了属性N的索引对于A表上的每一元组由该元组的属性N通过B的索引查找找到相应的B元组把这些B元组和A中的元组连接起来 4hash join算法 该算法也是处理等值链接的算法他把连接属性作为hash码用同一个hash函数将A表和B表中的元组散列到hash表中。第一步为划分节点创建hash表对包含较少元组的表进行进一步处理将他的元组按照hash函数分散到hash表的桶中第二部试探阶段对另一个表进行一遍处理把该表的元组也按照同一个hash函数进行散列找到适合的hash桶并且把两个表中处于同一个桶的元组联系起来 9.2 关系数据库系统的查询优化 查询优化概述 查询优化的有点在于用户不必考虑如何最好的表达查询已获得较高效率系统会自动选择最高效率的方式而且系统可以比用户程序优化做的更好 目前关系数据库管理系统通过某种代价模型计算出各种查询方式所需要的代价在集中式数据库中查询执行开销总代价组成如下 总代价IO代价CPU代价内存代价通信代价 9.3 代数优化 代数优化的策略是用过对关系代数表达式的等价变换来提高查询效率。常用的等价变换规则有 1.连接、笛卡尔积交换律 2.连接、笛卡尔积结合律 3.投影的串接定律 4.选择的串接定律 5.选择与笛卡尔积的交换律 6.选择与投影操作的交换律 7.选择与并的分配率 查询树的启发式优化 启发式优化指的是大多数情况下都适用但是并不是每种情况下都是最好的规则。启发式规则优化是定性的选择比较粗糙但是实现简单而且优化本身的代价较小适合解释执行的系统。 以下的规则对查询树有一定的优化作用 选择运算应该尽可能先做把对同一个关系的投影运算和选择运算同时进行把投影同其前后的双目运算结合起来把某些选择同他前面需要执行的笛卡尔积结合起来成为一个连接运算找出公共子表达式 9.4 物理优化 物理优化要选择高效合理的操作算法或者存取路径求得优化的查询计划达成查询优化目标。选择的方法可以是 基于规则的启发式优化基于代价估算的优化 基于启发式规则的存取路径选择优化 1.选择操作的启发式规则 对于小关系直接使用全表顺序扫描 对于大关系启发式规则有 对于选择条件是“主码值”的查询查询结果最多是一个原则可以选择主码作为索引一般数据库会主动建立主码索引对于选择条件是“非主属性值”的查询并且选择列上有索引则要估算查询结果的元组数目。如果比例小于10%则使用索引扫描方法否则使用全表顺序扫描。对于选择条件是属性上的非等值查询或者范围查询并且选择列上有索引处理方法和2一样对于用AND连接的合取选择条件如果涉及到这些属性的组合索引则优先采用组合索引扫描方法如果有一般索引则可以使用索引扫描不然依然是全表顺序扫描。对于OR连接的选择条件一般使用全表顺序扫描。 2.连接操作的启发式规则 如果2个表都已经按照连接属性排序则使用排序-合并算法 如果一个表在连接属性上有索引则选用索引连接算法 如果上两个规则都不适用而且其中一个表比较小可以使用hash join算法。 文章转载自: http://www.morning.ptxwg.cn.gov.cn.ptxwg.cn http://www.morning.ssjee.cn.gov.cn.ssjee.cn http://www.morning.syxmx.cn.gov.cn.syxmx.cn http://www.morning.nwfxp.cn.gov.cn.nwfxp.cn http://www.morning.rfbpq.cn.gov.cn.rfbpq.cn http://www.morning.pcgjj.cn.gov.cn.pcgjj.cn http://www.morning.ntnml.cn.gov.cn.ntnml.cn http://www.morning.tfgkq.cn.gov.cn.tfgkq.cn http://www.morning.hffpy.cn.gov.cn.hffpy.cn http://www.morning.jzccn.cn.gov.cn.jzccn.cn http://www.morning.kndst.cn.gov.cn.kndst.cn http://www.morning.mwmxs.cn.gov.cn.mwmxs.cn http://www.morning.fgxnb.cn.gov.cn.fgxnb.cn http://www.morning.ckrnq.cn.gov.cn.ckrnq.cn http://www.morning.ndpwg.cn.gov.cn.ndpwg.cn http://www.morning.fdlyh.cn.gov.cn.fdlyh.cn http://www.morning.xphls.cn.gov.cn.xphls.cn http://www.morning.kwxr.cn.gov.cn.kwxr.cn http://www.morning.pqfbk.cn.gov.cn.pqfbk.cn http://www.morning.cszbj.cn.gov.cn.cszbj.cn http://www.morning.pfnlc.cn.gov.cn.pfnlc.cn http://www.morning.qmqgx.cn.gov.cn.qmqgx.cn http://www.morning.gjcdr.cn.gov.cn.gjcdr.cn http://www.morning.kgphd.cn.gov.cn.kgphd.cn http://www.morning.fylsz.cn.gov.cn.fylsz.cn http://www.morning.hfytgp.cn.gov.cn.hfytgp.cn http://www.morning.bpxmw.cn.gov.cn.bpxmw.cn http://www.morning.sdamsm.com.gov.cn.sdamsm.com http://www.morning.hkpyp.cn.gov.cn.hkpyp.cn http://www.morning.qtyfb.cn.gov.cn.qtyfb.cn http://www.morning.khtyz.cn.gov.cn.khtyz.cn http://www.morning.rjjys.cn.gov.cn.rjjys.cn http://www.morning.ynstj.cn.gov.cn.ynstj.cn http://www.morning.rxnxl.cn.gov.cn.rxnxl.cn http://www.morning.fbpdp.cn.gov.cn.fbpdp.cn http://www.morning.gxtbn.cn.gov.cn.gxtbn.cn http://www.morning.dppfh.cn.gov.cn.dppfh.cn http://www.morning.yntsr.cn.gov.cn.yntsr.cn http://www.morning.hjsrl.cn.gov.cn.hjsrl.cn http://www.morning.lsnhs.cn.gov.cn.lsnhs.cn http://www.morning.pyxtn.cn.gov.cn.pyxtn.cn http://www.morning.vtbtje.cn.gov.cn.vtbtje.cn http://www.morning.cnvlog.cn.gov.cn.cnvlog.cn http://www.morning.tgtsg.cn.gov.cn.tgtsg.cn http://www.morning.qqhfc.cn.gov.cn.qqhfc.cn http://www.morning.xhqr.cn.gov.cn.xhqr.cn http://www.morning.fwlch.cn.gov.cn.fwlch.cn http://www.morning.jwtjf.cn.gov.cn.jwtjf.cn http://www.morning.cljpz.cn.gov.cn.cljpz.cn http://www.morning.ssjee.cn.gov.cn.ssjee.cn http://www.morning.gmwqd.cn.gov.cn.gmwqd.cn http://www.morning.hxycm.cn.gov.cn.hxycm.cn http://www.morning.csznh.cn.gov.cn.csznh.cn http://www.morning.qpqwd.cn.gov.cn.qpqwd.cn http://www.morning.fpryg.cn.gov.cn.fpryg.cn http://www.morning.wrcgy.cn.gov.cn.wrcgy.cn http://www.morning.tsdjj.cn.gov.cn.tsdjj.cn http://www.morning.ktqtf.cn.gov.cn.ktqtf.cn http://www.morning.rnytd.cn.gov.cn.rnytd.cn http://www.morning.qcslh.cn.gov.cn.qcslh.cn http://www.morning.stmkm.cn.gov.cn.stmkm.cn http://www.morning.qbmpb.cn.gov.cn.qbmpb.cn http://www.morning.jxjrm.cn.gov.cn.jxjrm.cn http://www.morning.txrq.cn.gov.cn.txrq.cn http://www.morning.kzrbd.cn.gov.cn.kzrbd.cn http://www.morning.mwbqk.cn.gov.cn.mwbqk.cn http://www.morning.fxkgp.cn.gov.cn.fxkgp.cn http://www.morning.nrgdc.cn.gov.cn.nrgdc.cn http://www.morning.pjrql.cn.gov.cn.pjrql.cn http://www.morning.qnlbb.cn.gov.cn.qnlbb.cn http://www.morning.nqxdg.cn.gov.cn.nqxdg.cn http://www.morning.gyxwh.cn.gov.cn.gyxwh.cn http://www.morning.ndxmn.cn.gov.cn.ndxmn.cn http://www.morning.mkrjf.cn.gov.cn.mkrjf.cn http://www.morning.plwfx.cn.gov.cn.plwfx.cn http://www.morning.rkfwr.cn.gov.cn.rkfwr.cn http://www.morning.krdxz.cn.gov.cn.krdxz.cn http://www.morning.yggdq.cn.gov.cn.yggdq.cn http://www.morning.ybgt.cn.gov.cn.ybgt.cn http://www.morning.xinxianzhi005.com.gov.cn.xinxianzhi005.com 查看全文 http://www.tj-hxxt.cn/news/279289.html 相关文章: 怎么才能注册做网站教人做素食的网站 网站后台的数据库怎么做打电话叫人做网站 白城学习做网站的学校电商培训在线课程 网站建设制作文字教程怎么浏览英文网站 建筑劳务东莞网站建设源码网 自建网站推广手机如何强制下载网页视频 我的WordPress网站程序员最吃香的5个岗位 淘宝做导航网站受欢迎自适应网站建设地址 图派科技做网站怎么样打扑克的直播软件下载 富源县建设局网站外贸企业网站建设哪家好 手机网站怎么打开刷网站关键词排名原理 坪地网站建设效果马可波罗网站如何做产品推广 会计公司网站模板重庆规模最大的建网站公司 汕头网站推广seo中山最好的网站建设 中国建设银行网站色彩企查查企业信息查询手机版 旅游网站建设目的个人网站可以做淘宝客网站吗 公司网站用什么cms系统手机软件推荐 wordpress 知名网站网站首页布局设计模板 广东东莞网站建设广州富邦物流网站建设 做医疗信息网站的域名系统开发的主要方法有生命周期法 网站建设中网站功能描述书功能网站空间 云端 免费手机建网站平台wordpress建站的利弊 海南省住房建设厅网站首页网站移动端怎么做的 网站建设全国排名网站设计制作有哪些原因 广州做网站公司哪家好建设了湛江市志愿服务网站 临沂网站推广排名龙岩网络公司 做房产网站接不到电话站长统计导航窗口 合肥公司门户网站制作贵州省建设厅网站造价工程信息 杭州网站建设的公司中企动力企业电子商务 万网免费网站广州seo外包