电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

講解Oracle優(yōu)化器的優(yōu)化方式和優(yōu)化模式

瀏覽:144日期:2023-11-27 12:20:01
Oracle在執(zhí)行一個SQL之前,首先要分析一下語句的執(zhí)行計劃,然后再按執(zhí)行計劃去執(zhí)行。分析語句的執(zhí)行計劃的工作是由優(yōu)化器(Optimizer)來完成的。不同的情況,一條SQL可能有多種執(zhí)行計劃,但在某一時點,一定只有一種執(zhí)行計劃是最優(yōu)的,花費時間是最少的。相信你一定會用Pl/sql Developer、Toad等工具去看一個語句的執(zhí)行計劃,不過你可能對Rule、Choose、First rows、All rows這幾項有疑問,因為我當初也是這樣的,那時我也疑惑為什么選了以上的不同的項,執(zhí)行計劃就變了?

1、優(yōu)化器的優(yōu)化方式

Oracle的優(yōu)化器共有兩種的優(yōu)化方式,即基于規(guī)則的優(yōu)化方式(Rule-Based Optimization,簡稱為RBO)和基于代價的優(yōu)化方式(Cost-Based Optimization,簡稱為CBO)。

A、RBO方式:優(yōu)化器在分析SQL語句時,所遵循的是Oracle內(nèi)部預(yù)定的一些規(guī)則。比如我們常見的,當一個where子句中的一列有索引時去走索引。

B、CBO方式:依詞義可知,它是看語句的代價(Cost)了,這里的代價主要指Cpu和內(nèi)存。優(yōu)化器在判斷是否用這種方式時,主要參照的是表及索引的統(tǒng)計信息。統(tǒng)計信息給出表的大小 、有少行、每行的長度等信息。這些統(tǒng)計信息起初在庫內(nèi)是沒有的,是你在做analyze后才出現(xiàn)的,很多的時侯過期統(tǒng)計信息會令優(yōu)化器做出一個錯誤的執(zhí)行計劃,因些我們應(yīng)及時更新這些信息。在Oracle8及以后的版本,Oracle列推薦用CBO的方式。

我們要明了,不一定走索引就是優(yōu)的 ,比如一個表只有兩行數(shù)據(jù),一次IO就可以完成全表的檢索,而此時走索引時則需要兩次IO,這時對這個表做全表掃描(full table scan)是最好的。

2、優(yōu)化器的優(yōu)化模式(Optermizer Mode)

優(yōu)化模式包括Rule,Choose,First rows,All rows這四種方式,也就是我們以上所提及的。如下我解釋一下:

Rule:不用多說,即走基于規(guī)則的方式。

Choolse:這是我們應(yīng)觀注的,默認的情況下Oracle用的便是這種方式。指的是當一個表或或索引有統(tǒng)計信息,則走CBO的方式,如果表或索引沒統(tǒng)計信息,表又不是特別的小,而且相應(yīng)的列有索引時,那么就走索引,走RBO的方式。

First Rows:它與Choose方式是類似的,所不同的是當一個表有統(tǒng)計信息時,它將是以最快的方式返回查詢的最先的幾行,從總體上減少了響應(yīng)時間。

All Rows:也就是我們所說的Cost的方式,當一個表有統(tǒng)計信息時,它將以最快的方式返回表的所有的行,從總體上提高查詢的吞吐量。沒有統(tǒng)計信息則走基于規(guī)則的方式。

3、如何設(shè)定選用哪種優(yōu)化模式

◆A、Instance級別

我們可以通過在init.ora文件中設(shè)定OPTIMIZER_MODE=RULE、OPTIMIZER_MODE=CHOOSE、OPTIMIZER_MODE=FIRST_ROWS、OPTIMIZER_MODE=ALL_ROWS去選用3所提的四種方式,如果你沒設(shè)定OPTIMIZER_MODE參數(shù)則默認用的是Choose這種方式。

◆B、Sessions級別

通過SQL> ALTER SESSION SET OPTIMIZER_MODE=來設(shè)定。

◆C、語句級別

這些需要用到Hint,比如:

SQL> SELECT /*+ RULE */ a.userid, 2 b.name, 3 b.depart_name 4 FROM tf_f_yhda a, 5 tf_f_depart b 6 WHERE a.userid=b.userid;

4、為什么有時一個表的某個字段明明有索引,當觀察一些語的執(zhí)行計劃確不走索引呢?如何解決呢?

◆A、不走索引大體有以下幾個原因

你在Instance級別所用的是all_rows的方式

你的表的統(tǒng)計信息(最可能的原因)

你的表很小,上文提到過的,Oracle的優(yōu)化器認為不值得走索引。

◆B、解決方法

可以修改init.ora中的OPTIMIZER_MODE這個參數(shù),把它改為Rule或Choose,重起數(shù)據(jù)庫。也可以使用4中所提的Hint.

刪除統(tǒng)計信息

SQL>analyze table table_name delete statistics;

表小不走索引是對的,不用調(diào)的。

5、其它相關(guān)

◆A、如何看一個表或索引是否是統(tǒng)計信息

SQL>SELECT * FROM user_tables 2 WHERE table_name=<table_name> 3 AND num_rows is not null; SQL>SELECT * FROM user_indexes 2 WHERE table_name=<table_name> 3 AND num_rows is not null;

◆B、假如我們先用CBO的方式,就應(yīng)當及時去更新表和索引的統(tǒng)計信息,以免生形不切合實的執(zhí)行計劃。

SQL> ANALYZE TABLE table_name COMPUTE STATISTICS; SQL> ANALYZE INDEX index_name ESTIMATE STATISTICS;

主站蜘蛛池模板: 深圳快餐店设计-餐饮设计公司-餐饮空间品牌全案设计-深圳市勤蜂装饰工程 | 定制奶茶纸杯_定制豆浆杯_广东纸杯厂_[绿保佳]一家专业生产纸杯碗的厂家 | 雪花制冰机(实验室雪花制冰机)百科| 中高频感应加热设备|高频淬火设备|超音频感应加热电源|不锈钢管光亮退火机|真空管烤消设备 - 郑州蓝硕工业炉设备有限公司 | 中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折! | 彩信群发_群发彩信软件_视频短信营销平台-达信通 | MES系统-WMS系统-MES定制开发-制造执行MES解决方案-罗浮云计算 | 烟台条码打印机_烟台条码扫描器_烟台碳带_烟台数据采集终端_烟台斑马打印机-金鹏电子-金鹏电子 | 无刷电机_直流无刷电机_行星减速机-佛山市藤尺机电设备有限公司 无菌检查集菌仪,微生物限度仪器-苏州长留仪器百科 | 气动隔膜泵-电动隔膜泵-循环热水泵-液下排污/螺杆/管道/化工泵「厂家」浙江绿邦 | 数码听觉统合训练系统-儿童感觉-早期言语评估与训练系统-北京鑫泰盛世科技发展有限公司 | 设计圈 - 让设计更有价值!| 基本型顶空进样器-全自动热脱附解吸仪价格-AutoHS全模式-成都科林分析技术有限公司 | 东莞工作服_东莞工作服定制_工衣订做_东莞厂服 | 真丝围巾|真丝丝巾|羊绒围巾|围巾品牌|浙江越缇围巾厂家定制 | 液压压力机,液压折弯机,液压剪板机,模锻液压机-鲁南新力机床有限公司 | 冰雕-冰雪世界-大型冰雕展制作公司-赛北冰雕官网 | 3d打印服务,3d打印汽车,三维扫描,硅胶复模,手板,快速模具,深圳市精速三维打印科技有限公司 | elisa试剂盒-PCR试剂盒「上海谷研实业有限公司」 | 自动钻孔机-全自动数控钻孔机生产厂家-多米(广东)智能装备有限公司 | 校服厂家,英伦校服定做工厂,园服生产定制厂商-东莞市艾咪天使校服 | 硫化罐_蒸汽硫化罐_大型硫化罐-山东鑫泰鑫智能装备有限公司 | 合肥升降机-合肥升降货梯-安徽升降平台「厂家直销」-安徽鼎升自动化科技有限公司 | 铝箔-铝板-花纹铝板-铝型材-铝棒管-上海百亚金属材料有限公司 | 高效复合碳源-多核碳源生产厂家-污水处理反硝化菌种一长隆科技库巴鲁 | 手术室净化装修-手术室净化工程公司-华锐手术室净化厂家 | 纳米二氧化硅,白炭黑,阴离子乳化剂-臻丽拾科技 | 青岛侦探调查_青岛侦探事务所_青岛调查事务所_青岛婚外情取证-青岛狄仁杰国际侦探公司 | 课件导航网_ppt课件_课件模板_课件下载_最新课件资源分享发布平台 | 合肥钣金加工-安徽激光切割加工-机箱机柜加工厂家-合肥通快 | 布袋除尘器-单机除尘器-脉冲除尘器-泊头市兴天环保设备有限公司 布袋除尘器|除尘器设备|除尘布袋|除尘设备_诺和环保设备 | 闸阀_截止阀_止回阀「生产厂家」-上海卡比阀门有限公司 | 光伏支架成型设备-光伏钢边框设备-光伏设备厂家 | 工业机械三维动画制作 环保设备原理三维演示动画 自动化装配产线三维动画制作公司-南京燃动数字 聚合氯化铝_喷雾聚氯化铝_聚合氯化铝铁厂家_郑州亿升化工有限公司 | 中矗模型-深圳中矗模型设计有限公司| 金环宇|金环宇电线|金环宇电缆|金环宇电线电缆|深圳市金环宇电线电缆有限公司|金环宇电缆集团 | 江苏南京多语种翻译-专业翻译公司报价-正规商务翻译机构-南京华彦翻译服务有限公司 | 河南正规膏药生产厂家-膏药贴牌-膏药代加工-修康药业集团官网 | LED灯杆屏_LED广告机_户外LED广告机_智慧灯杆_智慧路灯-太龙智显科技(深圳)有限公司 | 泰来华顿液氮罐,美国MVE液氮罐,自增压液氮罐,定制液氮生物容器,进口杜瓦瓶-上海京灿精密机械有限公司 | 磁力抛光机_磁力研磨机_磁力去毛刺机_精密五金零件抛光设备厂家-冠古科技 |