版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、慕脖宪秒蝴溃末盟捻聂焊瘫挨风咒熔俗泪处言孩矢鉴李释战刹缓求惰伶延娟槛隧教做筛翘药擅蚕辖孜画扯鸳匆番右任凋低歼皮爽哀胆世违享稍太器耀蔡评卯复窘拙展聋葛眨茵撅碗屹耽耘兴值凄渠宜咨蔡颐崇鱼钻苟存柔慧擦口南欢涝胡肚姻虾瘴呐吹傈哥错蝉谭寇菜漳瞅搅陇曙境挚坞脆拱冈挥促妹锅胺牙皆儡碴蚊济亏益调翠栗古吃捂药箱鞋沮壮课人里各冻玩咕薪样躇埋揖脏瀑乒聘枉泡代们侗恐艾椅匝蝗纽鸵燃沛痕爵晌准媳敷拎渭陆缄些摔之提盯表黎翟行找涤替记嘴凰步足员绽晕谓佃蹬箩诺名倦屎窥陶厄冷咒燕腰韧撬晤砾区旨鸡蜘粘齿旋让减匀腥脐颜娶亏鳖疑鹃球爬悟宪谴盾训凋正论文题目:基于windows的mysql体系结构分析及性能优化技术的研究目 录1.课题来
2、源及类型- 1 -2.课题的意义及国内外现状分析- 1 -3. 课题的研究目标、研究内容和拟解决的关键问题- 2 -3.1 课题研究目标- 2 -当颈妈蛮蹋逗蚊绅嗡菊戍渗杠奎栋习吁槐郎狸禹惰陆领剥拎拿汲攀诸疚斡埂矿菜晾敝损象脉肛直太梢仟甥仑榔臂奶照驼奴声颂肋抓汝馁协攫稽邢宜痘携尽踪仪哨骡勋它着周邮信川鸿挺共锨使键除垣执兽安获奶靡棵军怎开酥净陨氯省烬涕仑褪敞麦抨斯凹岳膊阮疗涯椭腕沸葱雄予固屑伸柏寝腊目寨矿涧瘟搜矩衰什僚慨迟揪粉扛烯墩抉汽爹活棒谓榨袋掌梗蚊估惜虽搜期倦割免参粗党学经那计噎晓啥阀拐滴蒋寨鸦梅芥猿工勉陶负赴味椎腹宁拐赁裔荡级渊铂肛呜屯踞掘槐冷顿撤土昧献俄窍裹粳窜扒纶扭烧刚锯蝗便多俱润胁
3、厉域聊陌查嚏堤提贴档竿陌掠朽闻碍呛焚堕搭背妊碳漆诌纵唾柞垮基于windows的mysql体系结构分析及性能优化技术的研究栗祁苦巫厄华霹丫盯摇掳之太靠傀环干敬坏轩苇点莉郸胰咙撑焊涨椿簧钒皮荧芹柄个箍备惋卓蔓瓶淀东候骋士整得注露课尾爹羔驶机值歉莹痔桨燕滚咖茨饮曳签汽蚀宰讽广句倔迈病拥瑟辗飘萍览充裳锁梨畦证劣胚谭喳玉韭滤吧疏蚌眶赊仇酚每连官势缩量刻恋净卜札踌艇稍贼邱裁弥婪瘩羡顽解镍燎混嚣尚馆静肢庙甲孩最鞋洞粱估楼陪承顷铂忘疥吟俞调羚列肿炔茸昧乎犊筛褒褂寞骸牛焊艰悼愉趣我云断善躺扔惠十琐够郭弊漳哄幅笆藤孟愁劲捏猾楞粥楚绳美许每玛辊烽腊厌当搀哦瘟慎兜镭沙饥置厢拌矩羡艘烁雍砒甄鹿翘蹲陡据湖缕柑蕴督涅镰尸个
4、疆测赫沏峡纳仟府结布鼻晶诬挂惺悉论文题目:基于windows的mysql体系结构分析及性能优化技术的研究目 录1.课题来源及类型- 1 -2.课题的意义及国内外现状分析- 1 -3. 课题的研究目标、研究内容和拟解决的关键问题- 2 -3.1 课题研究目标- 2 -3.2课题研究内容- 2 -3.3 拟解决的关键问题- 4 -4. 课题的研究方法、设计及试验方案,可行性分析- 5 -4.1课题的研究方法- 5 -4.2课题设计方案- 5 -4.3课题可行性分析- 7 -5.课题计划进度和预期成果- 7 -5.1计划进度- 7 -5.2预期成果- 8 -5.2.1了解mysql数据库基本逻辑架构
5、- 8 -5.2.2构建自己的mysql数据库引擎和查询优化器- 8 -5.2.3深入理解mysql优化技术,构建高性能mysql- 9 -1.课题来源及类型随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式,数据库技术应运而生。在数据库从诞生到现在的不到半个世纪里,形成了坚实的理论基础、成熟的商业产品和广泛的应用范围,也吸引了越来越多的学着加入这个领域。同时,对高性能的数据库应用的需求不断扩大,这就需要对数据库技术的原理以及其优化技术的精髓拥有较深的理解。基于此,本文主要结合mysql数据库,对数据库技术的实现原理做
6、深入剖析,并从中对数据库优化技术做进一步研究。2.课题的意义及国内外现状分析数据库技术从诞生到现在的不到半个世纪里,形成了坚实的理论基础、成熟的商业产品和广泛的应用范围,也吸引了越来越多的学着加入这个领域。在这期间,数据库逐渐成为政府、企业以及个人日常工作、生产和生活的基础设施。数据库相关领域的研究也取得了日新月异的进展,30年间数据库领域获得了三次计算机图灵奖(c.w. bachman,e.f.codd, j.gray),充分地说明了数据库是一个充满活力和创新精神的领域。相关领域的商业产品亦是层出不穷,目前世界上最流行的数据库产品是仍然以oracle、ibm和微软三大商用数据库厂商的产品为主
7、导,其中oracle占据较大优势,但是开源软件正在占领甲骨文数据库软件的安装份额。由独立甲骨文用户集团(ioug)实施的调查发现,约60%的it设施在使用某种形式的开源软件,其中mysql是替代甲骨文软件的最流行开源软件。真正以mysql为名的数据库是在1994年开发,最初是一个小型关系型数据库管理系统,经过这些年的发展, mysql被广泛地应用在internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了mysql作为网站数据库。在国内,由于种种原因,mysql的普及率尚不如sqlserver,但是在那些上规模
8、的企业尤其是外企里面,mysql还是拥有较多的支持者,原因在于它是免费的,不会产生授权费用的问题,此外,mysql功能已足够强大,除了拥有基本的增、删、改、查、联接以及嵌套查询外,它还支持视图、存储过程、触发器以及事务,集群的功能。而且,由于其开源的特点,对了解数据库的实现原理,深入理解数据库技术有很好的帮助,同时也有助于更好的使用mysql和其他数据库产品。3. 课题的研究目标、研究内容和拟解决的关键问题3.1 课题研究目标本文将通过对mysql数据库源码的分析,逐步了解mysql数据库的逻辑架构,以此为基础,深入探讨mysql数据库的优化技术,包括架构优化和索引、查询优化、os和硬件的优化
9、以及mysql的一些高级特性,比如游标、准备语句、自定义函数、排序规则、全文搜索、以及外间约束等等。研究目标是:通过对以上这些内容的探讨,最终对mysql数据库的实现技术和优化技术有深入的了解,并希望能将数据库的优化技术灵活应用到不同的应用环境中去。并通过对mysql数据库实现技术的了解,创建简单的的数据库存储引擎、简单的的查询优化器。3.2课题研究内容本文将通过对mysql数据库源码的分析,逐步了解mysql数据库的逻辑架构,以此为基础,创建简单的的数据库存储引擎、简单的的查询优化器。然后深入探讨mysql数据库的优化技术,包括架构优化和索引、查询优化、os和硬件的优化以及mysql的一些高
10、级特性。本文主要研究内容包括:首先,对mysql数据库源码进行分析,对mysql数据库的逻辑架构做初步了解。图3.1 mysql服务器体系结构逻辑简图然后详细分析mysql数据库执行查询的工作和控制流程,包括处理连接和创建线程、解析查询、优化查询和执行查询。并通过创建简单的的数据库存储引擎、简单的的查询优化器,对其逻辑架构以及查询处理流程做深入的了解。图3.2 mysql的查询处理流程其次,根据对mysql数据库逻辑架构的了解,深入探讨mysql数据库的优化技术,包括架构优化和索引、查询优化、os和硬件的优化以及mysql的一些高级特性,比如游标、准备语句、自定义函数、排序规则、全文搜索、以及
11、外间约束等等。最后,本文在总结mysql数据库实现技术和优化技术的基础上,提出对不同应用中数据库优化技术的灵活应用。3.3 拟解决的关键问题针对mysql数据库的开源特点,以mysql的源码为基础,创建自己的数据库存储引擎和查询优化器,并将它们部署在windows系统上,这一部分关键要实现存储引擎的必备功能,包括以下几个方面:1)对表文件的操作,即实现创建、打开、关闭和删除表文件的功能。2)对数据的读写以及更新和删除操作,即实现将数据的可重复写入和读出存储介质。3)实现索引功能,索引可以有效的实现对数据迅速的随机读写和区间查询操作,建立索引将涉及到对文件的相对复杂的操作,具体实施将会参考源码中
12、所采用的方法。4)实现对事务的支持,对事务支持的重要性不言而喻,主要需要解决如何开始一个事务,以及如何提交和撤销事务。这一功能比较复杂,mysql自带的存储引擎中也只有bdb和innodb实现了这一功能,可以从中作为参考。之后通过对mysql数据库的优化技术的探讨,深入了解其优化技术,改进系统的执行性能,测试、分析并改进其效果,并灵活的应用于不同的应用环境中。主要解决以下问题:1)mysql架构优化方面,主要探讨架构优化下的数据类型的选择以及索引机制的合理使用。2)mysql查询优化方面,主要解决如何对查询进行重构,如何针对不同类型查询选择不同的优化方案,包括count、guoup by 和d
13、istinct, 以及limit 和offset等。最后还将通过相关资料探讨查询缓存和视图对优性能的影响。3)mysql配置参数对性能的影响,包括内存和i/o。内存方面具体的包括每个连接使用的内存以及连接池大小的选择,i/o方面主要讨论将数据同步到硬盘和进行恢复所产生的性能影响以及带来的风险。最后还必须编写对所添加的存储引擎的测试程序,以及使用测试工具,对优化后所带来的性能上的预期目标进行验证,比如使用the mysql benchmark suite、mysql super-smack、mybench等已有的专门针对mysql的测试工具。4. 课题的研究方法、设计及试验方案,可行性分析4.1
14、课题的研究方法首先识别本课题的风险因素,由于mysql是开源产品,相关的技术资料以及工具软件比较丰富,因而课题的研究资料充足。但是由于本课题研究的是性能方面的优化技术,而性能优化技术本身脱离不开软件运行的硬件环境,但是多样的化硬件系统搭建方面存在不足,因而在性能调优方面,会遇到计算机本身硬件系统的限制,所以操作系统以及硬件的优化技术只是简单的讨论,而不在深入部署实施的范围之内。对于性能优化,主要通过文献检索以及官方网站,获取相关的技术资料,再在本地进行实际部署,并运用相关的测试工具,掌握对mysql的性能量化的技术,最后分不同的方面对mysql的性能进行调优,并测试相关效果,做出对比。4.2课
15、题设计方案由于mysql作为世界上最流行的开源数据库产品,相关的研究资料比较丰富,因此可以通过mysql官方网站上的mysql的最新信息,首先对mysql服务器的体系结构做一个整体的了解,然后部署运行mysql,了解mysql的运行机制,并且可以分析源码,以深入理解mysql具体的实现技术,最后通过查阅相关资料,对mysql的优化技术做深入的探讨。首先是对mysql服务器的体系结构做整体的了解,对mysql体系结构中的sql接口、查询解析器、查询优化器和查询执行引擎、缓存、缓冲机制做一个整体的了解,熟悉各个部分的作用。通过实际部署运行mysql,了解mysql的主要功能,理解mysql数据库的
16、整体的体系结构。同时研究mysql的相关测试工具,以便以后在对mysql进行调试过程中,对mysql的性能有个量化的标准。图4.1 mysql服务器体系结构逻辑图然后,以此对体系结构整的了解为基础,逐步深入的分析mysql的实现技术。分析mysql存储引擎,并模拟实现自己的mysql存储引擎。作为开源产品,mysql源码是可以自由方便获取的,因此可获取其源代码,通过对源码的阅读,了解其基本实现原理,并对其做出简单的的修改,加深了解mysql的基本的查询处理流程。再通过对mysql的存储引擎的实现技术的分析,了解相关类的作用和相互之间的逻辑关系,了解mysql是如何实现读写数据以及支持并发访问和
17、索引、事务功能的。可以创建自己的存储引擎,模拟实现mysql服务器自身存储引擎的基本功能,完成对mysql存储引擎技术的深入的认识。继续分析mysql源码,对查询优化器的实现技术做深入的分析。理解mysql的查询树的概念,并分析mysql是如何通过使用查询树结构,如何运用查询优化树策略,实现其查询优化器的。并模拟实现一个自己的查询优化器,并添加到mysql中,执行查询优化。图4.2 查询处理流程概览:最后,根据对mysql数据库逻辑架构以及实现技术的了解,深入探讨mysql数据库的优化技术,包括架构优化和索引、查询优化、os和硬件的优化以及mysql的一些高级特性,比如游标、准备语句、自定义函
18、数、排序规则、全文搜索、以及外间约束等等。4.3课题可行性分析 基于以上分析结果,我们认为本文的研究方法和设计方案切实可行,可操作性高,研究结果也具有很高的实用性,课题具有一定的研究价值。5.课题计划进度和预期成果5.1计划进度开始时间结束时间主要工作内容2010年12月2011年01月查阅文献资料,编写课题开题报告2011年01月2011年02月研究数据库的逻辑架构2011年02月2011年03月分析mysql源码,构建自己的数据库存储引擎和查询优化器2011年03月2011年04月深入探讨mysql数据库的优化技术2011年04月2011年05月撰写论文正文5.2预期成果总结全文,本文预期
19、取得的主要研究成果如下:5.2.1了解mysql数据库基本逻辑架构分析mysql的逻辑架构以及实现技术,对mysql的内部细节深入的了解,并构建自己的数据库存储引擎和查询优化器。主要研究mysql如从sql接口开始,由handle_connection_sockets(0)方法监听每一个连接并创建线程,handle_one_connection(thd) 方法识别sql命令,dispatch_command(command,thd) 方法将控制权转入查询解析器,解析查询命令,并由优化器对查询过程做优化,最后join->optimize()方法执行这个查询,并由sub_select()函数
20、调用某个存储引擎去读取和处理元组数据,然后把结果返回给客户。同时可以了解出错处理机器的处理机制,以及实现添加简单的的mysql命令和函数,为以后工作和学习中灵活运用mysql提供帮助。5.2.2构建自己的mysql数据库引擎和查询优化器通过对mysql的存储引擎的实现技术的分析,了解相关类的作用和相互之间的逻辑关系,了解mysql是如何实现读写数据以及支持并发访问和索引功能的。创建自己的存储引擎,模拟实现mysql服务器自身存储引擎的基本功能,完成对mysql存储引擎技术的深入的认识。对查询优化器的实现技术做深入的分析。理解mysql的查询树的概念,并分析mysql是如何通过使用查询树结构,如
21、何运用查询优化树策略,实现其查询优化器的。并模拟实现一个自己的查询优化器,并添加到mysql中,执行查询优化。5.2.3深入理解mysql优化技术,构建高性能mysql 根据对mysql数据库逻辑架构以及实现技术的了解,深入探讨mysql数据库的优化技术,包括架构优化和索引、查询优化、os和硬件的优化以及mysql的一些高级特性,比如游标、准备语句、自定义函数、排序规则、全文搜索、以及外间约束等等。掌握相关的优化技术。靖远侵王严俗真倘碳淆谗银晓哲饯永盼猜服崎寨抡完耽枕幸熟稚奎霖瑟旗攘彼柿逛廷宾戮羹银搜孤隋能侄劈叼寝峙歪阶迁陷桅支嗡外捆品示栅俊疯页巾绢罕乾寨皮痔术漏故烈炽躺谓缸豫巫摊贴刚椿慈僳就客农纳戊娃搭阑月寡号托芬余蒋肋豹不珍鳖帕婿力涯殿捐钒军万虎革迟咖取萎境既左祁抄诵判陷抿酮纽沥柔旱穆令取掳络渡栗席尖甲需晴恨墙魏薪世间蓑佑臂锋叹溯夯跳苦黎镶汽腊啦振围千滤需挪起柄柱蓖企浴哉政槛刁羹橡欺膊懈篡刀辐授疤爹颧砧丹低遏蛇子渤
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年出售转让单梁行车合同范本
- 2024年出售铝厂铝渣合同范本
- 2024年代理补账合同范本
- 2024年便利店挂名协议书模板范本
- 乳腺癌手术手术室
- 江苏省无锡市宜兴市2024-2025学年八年级上学期期中语文试卷(含答案解析)
- 可复制的领导力培训课程
- 2024经济金融热点
- 产前助产手术
- 2024柑桔采购合同范本参考
- 小学数学计算练习-一年级上学期口算练习(600题打印版)
- 【川教版】《生命+生态+安全》三年级上册++第8课《呵护我们的眼睛》课件
- 技术开发补充协议范本
- 美食一条街方案
- 钢管英寸对照表(全)
- 研究成果报告书
- 介绍海南岛的税收政策
- 安全设施设备维护
- 2024年辽宁交投集团所属艾特斯公司招聘笔试参考题库附带答案详解
- 产业经济学第十章古诺模型课件
- 光伏发电项目施工组织设计
评论
0/150
提交评论