- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MySQL数据库查询操作支持的纵向对比.PDF
数据库原理与技术课程实习报告
MySQL数据库查询操作支持的纵向对比
1 2
邱康敏 , 路志学
摘 要: MySQL 是目前应用范围最广的开放源码数据库。查询处理器是DBMS 的一个重要成分,查询处理器的
性能直接影响着数据库的查询响应速度。本文重点关注 MySQL 中查询处理器对查询的支持情况。通过研读
MySQL 源码,了解MySQL 数据库查询处理的主要原理和流程。接着利用MySQL 自带的测试工具,对不同版本
的MySQL 进行查询性能测试。尝试利用测试结果,分析导致其中差异的原因。
关键词: MySQL;查询分析;性能测试
.
1 MySQL 简介
MySQL 是目前应用范围最广,最受欢迎的开放源码数据库,其历史可以追溯至 1979 年,其设计者 TcX
公司开始涉足数据库领域的时候。
MySQL 的前身仅仅是一个基于 Basic 语言的关于屏幕的生成与输出程序。尽管在此后的一些年里,该程
序成功地移植到 Unix 上,并得到了新的完善与发展,但基本上没有突破性的改变。在 20 世纪 90 年代中期,
根据用户的要求,设计者们开始打算利用当时已有的 mSQL 连接数据库表。然而,在经过一些测试以后,设
计者们发现 mSQL 不够快速灵活,不能够适应其需求。于是他们开始设计一个能连接数据库表的新的 SQL
命令接口,并与此前的一些已有成果相结合,产生了 MySQL 。
MySQL 的发展在一开始便定位于快速、稳定的大型关系型数据库的目标,因而在设计上当性能和标准不
相协调时,更主要的是性能和稳定性的考虑。因些,MySQL 在早期版本中并未实现大型数据库应有的一些功
能,如事务处理、支持子查询等。对于那些不需要复杂的事务操作的用户来说,MySQL 应该是一个比较理想
的选择。
MYSQL 大约每几个月就会有一次小规模的升级,每 2 年进行一次大的版本升级。这种小步快跑式的升
级,逐渐拉近了 MySQL 与商业数据库产品之间的距离。MySQL 开始逐步支持子查询、存储过程等功能,在
最新的版的 MySQL 中,更是加入了对事务处理的支持。
随着 MySQL 的逐步发展与完善,MySQL 的客户已不再仅限于中小企业,包括雅虎在内的许多大型企业
的核心业务也都采用了MySQL 。根据 Vans Data Corporation2004 年对全球开源数据库市场做的调研报告显示:
MySQL 稳定地占据着 40% 的市场份额,其安装量已经达到了 600 万份拷贝,被称为“最受欢迎的开放源码
数据库”。
2 查询操作的重要性
一个典型的数据库管理系统(DBMS ),包括存储管理器、查询处理器和事务管理器三个部分。查询处理
器是 DBMS 的一个重要成分,它对查询进行分析,并利用某些规则对查询进行优化后,返回数据库中相应的
结果。
据调查显示,查询操作是数据库操作中的重要组成部分,在大部分的数据库中,查询操作占所有操作的
大约 70% ,在有些数据库中,甚至达到了 90% 以上。
查询处理器的性能直接影响着数据库的查询响应速度,而查询响应速度是广大的数据库用户(不仅仅是
数据库管理人员)评价 DBMS 的最重要标准之一。因此,一个性能卓越的查询处理器将是 DBMS 不可或缺
的部分。
鉴于上述原因,我们此次开源数据库深入剖析实习重点关注 MySQL 中查询处理器对查询的支持情况。
通过分析相应部分的源码、对比测试不同版本(选取 3.22、4.1 和 5.0 三个版本)对相同查询的处理能力,分
析测试的结果,找出可能的影响的因素并加以分析,给出可能的改进建议。
3 MySQL 查询操作的实现机制。
MySQL 各版本间的查询实现机制、过程等基本相同。研读代码主要以新版的 5.0 为准,下面的结果基于
MySQL5.0 版本,但在其它两个版本中也大致如此。
MySQL 查询是以客户机/服务器结构实现的。一个典型的查询的主要过程就是:客户端检查用户输入的
命令并进行预处理,即进行相应的标引,之后发送给服务器端。服务器在收到查询请求后,进行相应的词法、
语法分析,之后进行查询优化和执行,并将执行的结果反馈给客户端。
所有与查询操作有关的文件均在源码的“sql ”目录下,经过分析,最主要可能与查询相关的文件如下表
所示:
文件名
您可能关注的文档
最近下载
- 人教版数学五年级上册教学计划及进度表.doc VIP
- 昆山通海中学小升初考试试卷.docx VIP
- 交警基本法律知识.pptx VIP
- 2025下半年湖南省国际工程咨询集团有限公司社会招聘34人笔试模拟试题及答案解析.docx VIP
- 2025年海南三亚市天涯区教育系统招聘幼儿园编制教师16人(第1号)笔试历年典型考题(历年真题考点)解题思路附带答案详解(5套).docx
- 旅游美学——第三章-审美心理.pptx VIP
- 《永冻土地区场道工程技术》课程教学大纲模板课程教学大纲.doc VIP
- 考研英语单词表汇总(5500).doc VIP
- 2025下半年湖南省国际工程咨询集团有限公司社会招聘34人笔试备考题库及答案解析.docx VIP
- 人教版(2024)七年级美术上册第二单元第2课《科技之光》精品课件.pptx VIP
文档评论(0)