日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

oracle 11g禁用和强制direct path read

發(fā)布時(shí)間:2024/4/17 编程问答 59 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle 11g禁用和强制direct path read 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一般在混合型環(huán)境中,大表在進(jìn)行全表掃描或者走并行的時(shí)候一般會(huì)出現(xiàn)direct path read等待事件,如果在OLTP或者純粹的DSS環(huán)境中,出現(xiàn)大量的direct path read直接路徑讀取,這樣就有問(wèn)題了,尤其是一些流水線(xiàn)的批處理系統(tǒng)中,會(huì)導(dǎo)致大量的free buffer wait等(因?yàn)閐irect path reads會(huì)導(dǎo)致oracle執(zhí)行object level checkpoint將所有目標(biāo)對(duì)象的臟塊寫(xiě)入磁盤(pán),然后將這些塊從磁盤(pán)讀取到進(jìn)程的PGA,如果有未提交的事務(wù),還必須使用PGA構(gòu)造讀一致性塊緩沖。所以parallel是把雙刃劍,用的不好,系統(tǒng)性能會(huì)很慢,尤其是在跑批系統(tǒng)中,增加了大量不必要的物理讀寫(xiě),要想跑的飛快,cpu利用起來(lái),應(yīng)用層的fork-join線(xiàn)程池設(shè)計(jì)極大的決定了系統(tǒng)的性能)。一般在OLTP中,都是事務(wù)型的sql,如果想sql執(zhí)行效率,那么最好從內(nèi)存當(dāng)中讀取數(shù)據(jù),直接從數(shù)據(jù)文件中讀取,后果可想而知了。這里就可能需要我們禁用direct path read。

在oracle 11.2之前,只要沒(méi)有設(shè)置_serial_direct_read為true,同時(shí)沒(méi)有指定并行執(zhí)行,oracle會(huì)將HWM以下的塊讀入buffer cache。如果走了并行執(zhí)行,意味著所有的表都會(huì)導(dǎo)致direct read,即使表不大也如此。

從11.2開(kāi)始,oracle默認(rèn)會(huì)自動(dòng)決定要不要在非并行執(zhí)行的時(shí)候繞過(guò)buffer cache并使用direct path read(為什么這是合適的呢,舉個(gè)例子,假設(shè)有張表有1億條數(shù)據(jù),平均紀(jì)錄長(zhǎng)度200,全表掃描意味著20G的buffer cache,而服務(wù)器本身可能只配置了64G,很明顯一張1億條記錄的表不太可能是所有記錄都經(jīng)常要訪(fǎng)問(wèn)的,但是其中的1/10經(jīng)常訪(fǎng)問(wèn)是可能的,此時(shí)如果這個(gè)表沒(méi)有分區(qū)顯然是不合理的)。同時(shí),更重要的是,我們可以通過(guò)參數(shù)控制并行查詢(xún)的時(shí)候?qū)δ承┍淼膾呙杩梢宰遙uffer cache,而不是direct read。

oracle根據(jù)幾個(gè)參數(shù)決定全表掃描的時(shí)候是否走直接路徑讀,首先是_small_table_threshold隱含參數(shù),它決定oracle認(rèn)為的小表閾值(同時(shí),讀取少于該值的parallel將使用buffer cache),每個(gè)環(huán)境和版本都可能不同,默認(rèn)值約為默認(rèn)值是db cache size的2%大小。如下:

_serial_direct_read值控制非并行執(zhí)行的時(shí)候是否允許走直接讀。默認(rèn)情況下,如果表大于_small_table_threshold*5,則全表掃描的時(shí)候自動(dòng)會(huì)被調(diào)整為direct read,也就是buffer cache的1/10左右(這個(gè)算大、也不算大)。

這個(gè)值其實(shí)應(yīng)該被啟用,這是對(duì)的,但是應(yīng)該合理設(shè)置_small_table_threshold的閾值以最小化不必要的物理io。

可以通過(guò)兩種方式是禁用直接讀,如下:

SQL> alter system set event='10949 TRACE NAME CONTEXT FOREVER, level 1' scope=spfile; System alteredSQL> alter session set "_serial_direct_read"=false; Session alteredSQL> SQL> SELECT x.ksppinm NAME, y.ksppstvl VALUE, x.ksppdesc describ2 FROM SYS.x$ksppi x, SYS.x$ksppcv y3 where x.indx = y.indx4 AND (x.ksppinm = '_small_table_threshold' or5 x.ksppinm = '_serial_direct_read'); NAME VALUE DESCRIB -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- _small_table_threshold 30338 lower threshold level of table size for direct reads _serial_direct_read FALSE enable direct read in serialSQL>

還有一個(gè)參數(shù) _very_large_object_threshold 用于設(shè)定(MB單位)不使用direct path read方式的上限,這個(gè)參數(shù)需要結(jié)合10949事件共同發(fā)揮作用。10049和_very_large_object_threshold參數(shù)一起的時(shí)候,只要_very_large_object_threshold小于目標(biāo)表大小*0.8或者buffer cache*5,就可以不走direct path read。所以,要想完全禁用非并行執(zhí)行時(shí)的直接路徑讀,只要將_very_large_object_threshold設(shè)置的足夠大即可,不過(guò)不建議超過(guò)20%*buffer cache(否則要么是分區(qū)沒(méi)使用或者不合理)。

所以在并行和串行之間存在一個(gè)矛盾點(diǎn),這個(gè)矛盾點(diǎn)只能通過(guò)高配置服務(wù)器比如256GB/128C+良好的表結(jié)構(gòu)設(shè)計(jì)或者應(yīng)用層面的分而治之來(lái)解決。

當(dāng)然,我沒(méi)有仔細(xì)去測(cè),最近太忙,沒(méi)有時(shí)間一一去驗(yàn)證,后面會(huì)仔細(xì)驗(yàn)證效果如何。

這給帖子寫(xiě)的不錯(cuò),可以參考下http://www.itpub.net/thread-1815281-1-1.html

參考:http://oracleinaction.com/direct-reads-11g/

轉(zhuǎn)載于:https://www.cnblogs.com/zhjh256/p/9506247.html

總結(jié)

以上是生活随笔為你收集整理的oracle 11g禁用和强制direct path read的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产又粗又长又黄 | 偷偷久久 | 久草视频免费在线播放 | 爱爱一级| 影音先锋中文字幕在线 | 三上悠亚久久精品 | 精品深夜av无码一区二区老年 | 免费欧美大片 | 欧美粗大猛烈 | 五月天激情国产综合婷婷婷 | 成人高清视频免费观看 | 蜜桃臀aⅴ精品一区二区三区 | 日韩人妻一区二区三区 | 成人在线精品 | 中文字幕在线网站 | 天天干视频在线 | 少妇全黄性生交片 | 国产第一页屁屁影院 | 丰满人妻一区二区三区53视频 | wwwxxxx日本 | 一区二区人妻 | 亚洲国产日韩一区二区 | 日韩欧美成人网 | 国产专区欧美专区 | 黄色福利网 | 黄色网页免费在线观看 | 人人爽人人爽人人爽人人爽 | 成人做爰66片免费看网站 | 嫩草在线观看视频 | 国产在线aaa | 一区二区三区四区日韩 | 久久国产经典 | 天堂va蜜桃一区 | 爽天天天天天天天 | 国产在线精品播放 | 超碰在线成人 | 91天天干| www99re| 女女h百合无遮羞羞漫画软件 | 欧美在线视频网站 | 娇小的粉嫩xxx极品 国产精品人人爽人人爽 | 日韩免费在线观看视频 | 外国av在线 | 欧美一二区 | 久久精品夜 | 日韩爱爱视频 | 波多一区二区 | 精品久久久久久久久久久久久久久 | 爱爱视频网站免费 | 做暧暧视频在线观看 | 久久午夜精品人妻一区二区三区 | 少女情窦初开的第4集在线观看 | 国内特级毛片 | 欧美91精品久久久久国产性生爱 | 午夜免费在线观看 | 毛片在线免费观看网站 | 国产欧美亚洲精品 | 在线观看wwww| ww欧美| 可以看的毛片 | 疯狂做爰高潮videossex | 日韩免费高清一区二区 | 无码人妻精品中文字幕 | 亚洲精品tv | a视频在线播放 | 国产日韩亚洲欧美 | 午夜精品久久久久久久91蜜桃 | 激情五月色婷婷 | 丰满大乳少妇在线观看网站 | 先锋影音一区二区 | 深田咏美av在线 | 亚洲亚洲人成综合网络 | 四川丰满妇女毛片四川话 | 一级黄色片看看 | 日韩特黄一级片 | 欧美小视频在线 | 黄色片免费在线观看 | 欧美三级少妇高潮 | www.色婷婷.com | 成人在线免费视频播放 | 欧美亚洲国产另类 | 最好看的日本字幕mv视频大全 | 成人做爰免费视频免费看 | 国产精品一区久久久 | 亚洲高清在线一区 | 精品无码人妻一区二区三 | 一区二区日韩精品 | 精品一区二区三区免费视频 | 污污网站在线观看视频 | 寡妇激情做爰呻吟 | 日韩精品国产精品 | 日韩激情一区二区三区 | 久久久久一区二区 | 中文字幕不卡av | 加勒比波多野结衣 | 国产自偷自拍 | 最新国产网站 | av高清在线免费观看 | 无码少妇一区二区三区 |