电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

第四章全局查询处理和优化VIP免费

第四章全局查询处理和优化_第1页
1/49
第四章全局查询处理和优化_第2页
2/49
第四章全局查询处理和优化_第3页
3/49
第四章分布查询处理和优化分布式数据库系统原理与应用第四章分布查询处理和优化第四章分布查询处理和优化主要内容查询处理基础查询处理器查询分解数据局部化片段查询的优化第四章分布查询处理和优化优化目标优化就是寻找执行代价(费用和时间)最小的查询执行策略,使系统执行效率降到最低。优化的目标就是指局部执行代价和网络传输代价的和最小。局部执行代价:主要指输入/输出次数(I/O代价)及CPU处理代价。网络传输代价:主要指传输启动代价和数据传输代价。4.1查询处理的基础第四章分布查询处理和优化影响查询处理效率的因素有:网络传输代价(数据量和延迟等)、局部I/O代价及CPU使用情况代价等,但主要由网络通信代价和局部I/O代价来衡量。不同的分布式数据库系统可能对评估查询处理的传输代价和I/O代价的侧重不同。4.1.1查询处理目标第四章分布查询处理和优化4.1.2查询优化的意义例1:求选修2号课程的学生姓名SQL表示:selectSnamefromStudents,SCwhereStudents.Sno=SC.SnoandCno=‘2’;关系代数表示:Q1=sname(Students.Sno=SC.SnoandCno=‘2’(StudentsSC))Q2=sname(Cno=‘2’(StudentsSC))Q3=sname(StudentsCno=‘2’(SC))第四章分布查询处理和优化代价计算Q1代价计算(仅考虑I/O代价)计算广义笛卡尔积代价-假定:在内存中,存放5块Students元组和一块SC元组,一块可以装10个Students元组或100个SC元组.-假定:Students有1000个元组,SC有10000个元组,其中选2号课程的有50个元组-数据只有读到内存才能进行连接Q1=sname(Students.Sno=SC.SnoandCno=‘2’(StudentsSC))10100SCStudents5块第四章分布查询处理和优化通过读取块数计算I/O代价读取块数计算方法:Students1000个元组SC10000个元组•读取总块数:•若每秒读写20块,则花费:10001000100001002010021001010510010100SCStudents5块Student块数Student读入内存的次数SC块数Q1=sname(Students.Sno=SC.SnoandCno=‘2’(StudentsSC))210010520s第四章分布查询处理和优化条件:Students1000个元组,SC10000个元组•笛卡尔集计算后的元组个数为:103104=107•连接后的中间结果内存放不下,需暂时写到外存•若每块可装10个完成笛卡尔集后的元组,则写这些元组需:•(107/10)/20=5104s•选择操作:读回需5104s,假设选择后剩50个元组,均可放在内存•投影操作:•查询共花费:105+25104105s28小时10100SCStudents5块每秒读20块Q1=sname(Students.Sno=SC.SnoandCno=‘2’(StudentsSC))第四章分布查询处理和优化Q2=sname(Cno=‘2’(StudentsSC))Q2代价计算(仅考虑I/O代价)计算自然连接代价•也要把数据读到内存进行连接,但连接结果比笛卡尔积要小得多•读取块数依然为:花费为2100/20105s•假设连接结果大小为104个元组,写到外存需:(104/10)/20=50s每秒读20块100010001000010020100210010105100第四章分布查询处理和优化Q2=sname(Cno=‘2’(StudentsSC))•读取自然连接结果,执行选择运算,需50s,选择结果均可放在内存•投影运算:•总花费为:105+50+50=205s3.4分钟Q3代价计算(仅考虑I/O代价)计算对SC做选择运算的代价•需读SC到内存进行选择运算•读SC块数为:10000/100=100•花费为:100/20=5s•选择结果为50个SC元组,均可放在内存Q3=sname(StudentsCno=‘2’(SC))第四章分布查询处理和优化Q3=sname(StudentsCno=‘2’(SC))计算和Students自然连接的代价•需读Students到内存进行连接运算•读Students块数为:1000/10=100•花费为:100/20=5s•连接结果为50个元组,均可放在内存•投影运算:总花费:5+5=10s1050SCStudents5块第四章分布查询处理和优化数据分布存储示例Site1Site2Site3Site4QuerySite51""()SNOXSSUPPIER1""()SNOXSSUPPIER1""()SNOXSSUPPLY1""()SNOXSSUPPLYS1=5000S2=5000SP1=50000SP1=50000•S的网络传输速度为:20个元组/秒•SP的网络传输速度为:50个元组/秒•局部操作代价是:104个元组/秒•通信延迟为1秒SUPPLIER(SNO,SNAME,AREA)SUPPLY(SNO,PNO,QTY...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

第四章全局查询处理和优化

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部