SQL优化分析 SQL优化分析

SQL优化分析

  • 期刊名字:消费电子
  • 文件大小:863kb
  • 论文作者:刘明信
  • 作者单位:烟台南山学院
  • 更新时间:2020-09-30
  • 下载次数:
论文简介

-中-一 软件应用与设计Software Aplication and DesignSQL优化分析刘明信(烟台南山学院,山东烟台265713)摘要:在数据库系统中,最重要的一个考核的指标是运行的速度,然而影响系统的运行速度及其对系统资源占用最多的一个因素是SQL语句的执行,效能欠佳的SQL语句在执行时能够消耗系统资源的70- 80% ,如何提高系统的运行速度, SQL的性能优化至关重要。本文首先从数据库SQL着手,分析性能优化的原理, 提出采用的性能优化措施。关键词: SQL优化;优化器中图分类号: TP311.138文献标识码: A文章编号: 1674- 7712 (2014) 08- 0181- 01一、数据库中性能优化的必要性3. CHOOSE优化器。在缺省情况下,ORACLE采用CHOOSE关于性能优化,最简单的理解就是为了保证系统准确率优化器。的情况下,用最快的速度及最短的时间来完成特定的任务,(二)共享SQL语句。对SQL语句解析是比较费系统资源而数据库的性能优化主要是通过对数据库的索引程序、数据的,将会导致其性能下降,为了对SQL语句不重复的进行解析,库的语言、硬件等等进行必要的调试,从而对数据库的每个可以利用SGA(系统全局区域)将SQL语句进行存储,实现用部分进行必要的优化处理,达到提高效率的目的。户共享。比如一个SQL语句第一次被解析后,Oracle 将结果放在Oracle数据库系统中,SQL 语句的优化至关重要,性能在 SGA共享池中,如果第二次被执行时,就不用再对此语句进不佳的语句是影响系统的运行的关键因素之一。 据不完全统计,行分析, 直接从共享池中获取本语句的执行路径。这样Oracle大约有90%的性能出现问题主要是出在运用了不恰当的查询语便在很大程度 上提高了SQL的执行的性能,并且能够大大的节句而造成的。SQL 语句易写但不易写好,程序设计人员有时只省内存的使用。 要实现共享SQL语句,必须是当前要执行的语注重结果而对其性能确忽略了,往往会导致其系统的运行效率句 与共享池中的语句要完全相同,如果参数不同、变量不同、不理想。随着数据库的相关对象以及数据量的改变,需要对空格 数不同、出现大小写不-致都将不匹配,不能实现共享。SQL语句进行不断的效能调整。对海量的数据而言,优质SQL(三) 优化SQL.化S9QL语句索引引。 提高数据库运行效运最重要语句与劣质语句间的速度差别能够达到百倍以上,或者更多,的因素是利用好索引。索引能够提供快速访问rod_ id, 这样特别对复杂的或大型的数据库更明显。如何优化SQL语句,提能够实现提升效率, 特别是对大型表的索引效率会明显提升。高系统的运行速度,成为有关程序研究员较为关心的问题之-。但 如果索引使用的不当,会造成事倍功半的效果,因此优化二、SQL 语句优化的方法SQL语句索引特别重要,如何创建索引及使用索引,应该注(一) Oracle优化器。Oracle 优化器是SQL处理的核心,意以下几点: (1) 在where中出现频繁的列上建立索引: (2)目前支持两种优化器:基本规则的RBO、基于成本的CB0、频繁操作的orderby或groupby操作的列上建立索引;(3).选择性CHOOSE优化器。为了避免进行扫描全表,可以直接尽 量不在要重复率高的字段上建立索引; (4) 对于小于5M使用基于成本的优化器及基本规则的优化品,尽量不要使用的表, 就不要使用索引; (5) 多列进行排序的,可建立复合CHOOSE优化器。索引在列上,但尽量少用复合索引; (6) 不同值较少的列上1.基于规则的RBO优化器。基于规则的RBO优化器,主尽量 不要那间索引; (7) 对数据记录进行大批量的操作(如要是采用规则或者启发的方法来生成执行计划。在RB0中,delete、insert) ,最好将索引先删除,进行数据操作后再如果有索引则将其与该优化程序-起用。表1是RBO路径等重新建立必要的索引:(8)数据类型要注意匹配;(9)对级,等级高的效率低,耗费时间多,等级低的效率高,耗费于 操作符的使用,要避免使用!=或<>等,这样会造成系统的时间也就少。一段SSQL的语句,按表1I1 15年级别进行 无法用索引,而是直接从中搜索数索数据对每个句子打分,得分最少的其方案则最优。(四)执行计划。在执行程序时,每执行一个语句前,表1 RBO 路径等级表Oracle都将会生成-一个查询执行计划, 该计划决定了SQL语句将如何执行。在语句执行之前,计划在生成的过程当中采用了不同信息,如对象的尺寸、优化器模式、索引存在、储存概要的存在、HINT的出现、生成的统计量等等三、结束语ORACLE数据库是一个很复杂的软件,它的可调性很强。SQL语句优化是提高数据库运行速度的关键因素,随着数据库系统的应用及数据量的不断变化,所采用的优化策略也应随着调整。对于SQL的优化涉及到多个方方面面,在设计过程中要针对不同的场景采用不同的方法,开发人员、数据库的管理人员及应用程序设计人员应该不断的对SQL语句执行的计划进行分析,对SQL语句的性能及结果进行比较,找到性能较好的语句及执行计划,从而改善ORACLE数据库的运行的性能。参考文献:2.基于成本的CB0优化器。基于成本的CB0优化器主要[1]张桂燕.基于数据库的语句优化经验之谈U].电脑知是把一个引擎集成到数据库的内核中,对每一一个执行计划需识与技术 ,2011(17.要的成本进行估计,对耗费资源进行量化,根据成本选出成本最少的作为最优路径。在耗费资源中,一个查询分成3部分[作者简介]刘明信(“ 中国煤化工学位,CPU成本、I/0成本及Network成本。研究方向:数据库。YHCNMHG181消费电子2014消费电子1404- 4. indd 181一φ一2014-6-4 15:31:58

论文截图
版权:如无特殊注明,文章转载自网络,侵权请联系cnmhg168#163.com删除!文件均为网友上传,仅供研究和学习使用,务必24小时内删除。