欢迎来到天天文库
浏览记录
ID:57058508
大小:1.06 MB
页数:28页
时间:2020-07-30
《oracle数据库调优(一)剖析课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Oracle数据库调优内容总览一、oracle的索引1、oracle索引分类。2、索引的日常维护。3、为什么我建立的索引用不上或使用了效率不高的索引。4、建立索引的基本原则。5、使用索引带来的问题。二、sql语句的高效写法1、ORACLE常用优化器。2、日常写sql语句应注意什么。oracle的索引—索引分类常见的几种索引:一、B-tree索引二、函数索引三、位图索引oracle的索引—索引分类一、B-tree索引介绍B-tree索引之前我们先考虑一下我们平时是怎么查字典的。比如按部首法查询“陈”字。oracle的索引—索引分类如下图:oracle的索引—索引分类B*Tree
2、索引是最常见的索引结构,默认建立的索引就是这种类型的索引。B-Tree索引是基于二叉树(平衡树BalanceTree)的,由根节点(Rootnode)、分支块(branchblock)和叶块(leafblock)组成。根节点(Rootnode)和枝节点(Branchnode)里有包含叶子区索引键集合中最前面的那个索引键和叶子区的数据块地址(DataBlockAddress,DBA),而叶子区包含了实际的索引键、rowid等。结构见下图:oracle的索引—索引分类一、B-tree索引oracle的索引—索引分类一、B-tree索引select语句执行1)不使用索引2)使用索引
3、创建语句:Createindexindexnameontablename(columnname[columnname...])nologging;oracle的索引—索引分类二、函数索引创建语句:Createindexindexnameontablename(functionname(columnname))nologging;oracle的索引—索引分类三、位图(BITMAP)索引列的唯一值/总记录数很小时,即列的唯一性很不好时使用位图索引。如:性别(男、女)、车牌颜色(蓝、黄、白、黑)等。结构如下图:oracle的索引—索引分类三、位图(BITMAP)索引oracle的索
4、引—索引分类三、位图(BITMAP)索引实例selectcount(*)fromywdlr_jbxx20080704awherea.xb='1';selectcount(*)fromywdlr_jbxx20080704awherea.xb_new='1';selectcount(*)fromywdlr_jbxx20080704awherea.xb_new1='1';创建语句:CreateBITMAPindexindexnameontablename(columnname[columnname...])nologging;oracle的索引—索引的日常维护一、索引重建1、为什么
5、要重建索引(rebuild)日常业务中某些表涉及到大量的修改删除操作,数据索引需要周期性重建。索引重建不仅可以提高查询性能,还能增加索引表空间空闲空间大小。比如:某张表大量删除记录后,记录对应索引占用的数据块空间并没有释放。如下图:oracle的索引—索引的日常维护比如对应表中值小于100000以下的记录删除,此时再查询100000以下的记录时会出现效率问题。oracle的索引—索引的日常维护二、表、索引分析1、表、索引分析(analyze)的概念ORACLE在执行SQL时如果使用成本方式分析(CBO)则所有的成本分析信息来源依靠于系统的统计分析表数据,如果说统计分析的数据是
6、不准确的,那可能会使ORACLE分析出来的路径执行性能极差,所以统计分析数据是影响ORACLE性能极重要的信息。表的统计信息主要包括表的行数,每行的平均长度(字节),空闲块,统计时间等信息;索引的统计信息主要包括行数、层数、叶块数、统计时间等信息。表、索引分析常用语句:analyzeindexP_IDX_SB_SBXX_DM_SWGLYcomputestatistics;analyzetableSB_SBXXestimatestatisticssample20percent;analyzetableSB_SBXXcomputestatistics;execdbms_stats
7、.gather_table_stats('ZZDS','SB_SBXX',ESTIMATE_PERCENT=>5,cascade=>true);oracle的索引—索引的日常维护表分析例子:analyzetableywdlr_jbxxcomputestatistics;分析结果:NUM_ROWS:总记录数DISTINCT_KEYS:不同键值数BLEVEL:根、茎深度LEAF_BLOCKS:叶块数CLUSTERING_FACTOR:索引对应表数据的有序性AVG_LEAF_BLOCKS_PER_KEY:索引
此文档下载收益归作者所有