数据库管理系统中查询优化的设计和实现措施_第1页
数据库管理系统中查询优化的设计和实现措施_第2页
数据库管理系统中查询优化的设计和实现措施_第3页
数据库管理系统中查询优化的设计和实现措施_第4页
数据库管理系统中查询优化的设计和实现措施_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、    数据库管理系统中查询优化的设计和实现措施    贾钦摘要数据库管理系统作为系统软件的数据处理中心,同时也是现代信息化建设中最广泛的应用,能够研发出一套国产数据软件一直是我国的目标。而查询优化作为该系统中的一个重要组成部分,本文通过对oscar作为研究的内容,通过对查询优化的设计和实现进行重点阐述。【关键词】数据库管理系统 查询优化 设计措施1 查询优化关键技术1.1 查询优化的基本准则查询优化的基本准则能在一定的程度上对查询效率进行改善,但这种改善的程度和策略都不是最好的。而关于查询优化的基本准则具体如表1。1.2 查询优化预处理环节查询优化预处

2、理即对目标列、条件公式和信息集合操作进行的预处理,其主要的目的就是想把查询系统进行一个更为高效率的规划,以达到真正优化的效果。就比如对目标列的预处理,就是要通过查询优化的预处理把断缺的目标列进行补充完整,以确保目标列中的定义顺序和查询系统中的顺序一样。而对于条件公式进行预处理,要把条件表达式中的not进行往下推算,或者是把not去掉,把这个条件的表达式进行有效的转换,变成可取性和合理化的表达式。针对集合信息的预处理,其主要是except和intersect等操作。1.3 查詢优化的逻辑性优化查询优化系统中的逻辑优化主要是依靠于索引来进行的,通过一个物理上的逻辑优化来完成查询过程中的运算。该逻辑

3、的优化过程主要包括两个方面,一是在优化的过程中要能找到有“and”的表达式,然后通过索引的表达式进行查询,如果没有该表达式,就可以用扫描的形式进行一个逻辑性的运算。如果用索引的表达式可以查询出来,就先使用这个查询的表达式,最后再利用该表达式的运算结果进行对其他表达式的查询。二是采用“or”形式的表达式优化过程,这个查询优化的逻辑思路与“and”相似,都是先通过索引的查询方式确认是否存在有可用的表达式。如果没有且当存在有很多个子表达式时,就通过对这些子表达式的顺序调整,进而达到运算的结果。2 实现系统内查询优化的算法想要实现数据库管理系统的查询优化,首要的任务就是实现算法的优化。根据目前知道的一

4、些成熟的算法,我们可以知道对不同算法的优化,其取得的效果也会不同。而在这篇文章里,主要介绍两种。2.1 存取方式和存储路径剖析想要实现对查询优化里面的算法进行优化,其中最主要的一个功能就是对检索数据的选择,根据这个选择设计出一个好的执行方案。在oscar数据库管理系统中,采用的主要是三种存取的方法和存储的路径。第一个是顺序扫描,即按照顺序扫描出需要读取的信息里面的全部元素,检测是否每个元素里面都达到满足“where”的要求。但是如果对每一个的内容信息表都要进行扫描,花费的时间就会较多,扫描的运作效率就降低了。为了能够更好更快的对信息元素的读取,所有就有了第二种,索引扫描。索引扫描即通过建立多个

5、或单个的索引信息。当进行语句的访问且是唯一的索引时,数据库管理系统就可以直接的读取出数据信息。第三种就是利用tid进行存取,tid是进行单个查找最快捷的方式。2.2 利用代价佑算算法分析利用代价估算算法进行查询优化的分析,其中system-r是最为常用的一种方法。这种估算算法是从cpu的角度上进行分析和考虑的,在进行每一次计算的时候都会更注重cpu的消耗。在对每一次的查询优化的索引时,因为会受到一些选择性因素的限制,所以就会导致多种可能性的出现。比如下面:访问磁盘1次所需的代价可表示为:ci/o=do+xd1其中:x存取数据的大小,以字节表示do与x无关的i/o代价,包括寻道时间和等待时间d1

6、每个字节所需的传输时间一般d0>>xd1故i/o代价=i/o次数×d03 数据库管理系统中查询优化的实现3.1 提高性能设计在对查询优化进行优化的时候,我们可以发现,一些语句仅仅是因为语句的常数不同,但是他们具有一耳光相同的查询语句。为了能够提高数据库的查询效率,可以把常数设置到一定的范围,把具有相同模式的查询语句进行一个常数间的相互替换。这样可以有效的实现相同模式的查询语句就只用做一次的语法分析,进而达到节约时间的效果。而为了能够做到查询的优化,第一步就是先要对查询中的语句进行一个有效的缓解,通过提取语句中的部分内容而进行查询计划。3.2 提升关键算法为了能够提高数据库

7、管理的查询优化水平,优化查询的结果。可以通过采用hash的函数形式以保持语法和查询的语句。当然,如果hash函数鸡舍得不够合理化,那么势必就会造成一定的冲突,最后会降低hash的效率,也提升不了关键算法的水平。4 结束语随着我国经济的快速发展,经济业务的不断增多,对未来的数据库管理的要求性能也更大,对系统的运行速度要求也更大。为了能够更好的促进我国对数据库管理系统研发的进程,能够更快更有效的缩短我国与国外数据库管理技术的差距,这就需要我们要从最核心的设计出发,以便更快地研发出一款具有国际性标注的数据库管理产品。参考文献1张杰敏.有关高级数据库系统中的并发控制问题j.华北工学院学报,2012(03):22-30.2赵艳平.数据库管理系统的组成与发展j.科技信息,2011(07):45-56.电子技术与软件工程2018年15期电子技术与软件工程的其

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论