国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

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

跟蹤Oracle 9i的CPU和I/O使用代價(jià)

瀏覽:3日期:2023-11-13 17:12:16
當(dāng)Oracle每一次新版本的發(fā)布,這一數(shù)據(jù)庫就會(huì)變得更加的受關(guān)注,尤其是它的外部環(huán)境。Oracle在Oracle服務(wù)器上設(shè)置了很多基于CPU個(gè)數(shù)的重要的初始化參數(shù),并且Oracle現(xiàn)在已經(jīng)更加地意識(shí)到CPU運(yùn)行循環(huán)周期和I/O操作的使用代價(jià)。 基于成本的SQL優(yōu)化器(CBO)已經(jīng)被提高到考慮外部的影響,尤其是當(dāng)為一個(gè)SQL查詢處理最佳執(zhí)行的時(shí)候。因?yàn)閿?shù)據(jù)庫并非運(yùn)行在一個(gè)不受其他因素影響的環(huán)境中,CBO將會(huì)成為影響每一次SQL操作的外部磁盤I/O代價(jià)和CPU運(yùn)行周期代價(jià)的因素。這一重要的功能使得CBO成為全球多數(shù)成熟軟件產(chǎn)品中的其中一個(gè)。CBO的工作就是為任何SQL操作選擇一個(gè)最佳的執(zhí)行計(jì)劃。 根據(jù)Oracle文檔,對(duì)于I/O和CPU的使用代價(jià)評(píng)價(jià)如下: 使用代價(jià) = (#SRds * sreadtim + #MRds * mreadtim + #CPUCycles ------------------------------------------------- cpuspeed ) ------------------------------------------------- sreadtim 這里: #SRDs – 單塊讀入的數(shù)目; #MRDs – 多塊讀入的數(shù)目; #CPUCycles – CPU運(yùn)行周期的數(shù)目; sreadtim - 單塊讀入的時(shí)間; mreadtim – 多塊讀入的時(shí)間; cpuspeed - 每一秒的CPU運(yùn)行次數(shù)。 請(qǐng)注重外部使用代價(jià)受到磁盤讀定的估計(jì)使用代價(jià)以及與每一次內(nèi)部操作相聯(lián)系的估計(jì)CPU代價(jià)的影響。Oracle保存有關(guān)SQL處理的許多成分代價(jià)的具體信息,并使用這些平均的代價(jià)來影響基于成本的SQL優(yōu)化器的選擇。以下是一些范例: 雜亂信號(hào)連接的代價(jià)──Oracle知道一個(gè)雜亂連接所消耗的RAM內(nèi)存的平均數(shù)量。 分類──Oracle為了執(zhí)行分類和集中操作而保持跟蹤RAM。 列表掃描代價(jià)──Oracle保存關(guān)于執(zhí)行一個(gè)多塊讀入需要時(shí)間的信息。 索引塊訪問代價(jià)──Oraclet知道引出一個(gè)單一的塊所需要的平均時(shí)間。 請(qǐng)注重這些使用代價(jià)的評(píng)價(jià)依據(jù)是不同的,這主要取決于你對(duì)Oracle優(yōu)化器的選擇。假如你具有一個(gè)帶有first_rows優(yōu)化器模式的OLTP系統(tǒng),CBO就能夠更快地返回行操作。另一方面,假如你使用的是數(shù)據(jù)倉庫的first_rows優(yōu)化器模式,CBO將會(huì)被這些外部因素嚴(yán)重影響,因?yàn)閒irst_rows模式被設(shè)計(jì)以減少資源消耗 為了能夠完整地理解Oracle的外部使用代價(jià),讓我們深入查閱這些新的外部影響和Oracle CBO如何使用外部使用代價(jià)。 CPU代價(jià) 現(xiàn)在CBO已經(jīng)能夠估計(jì)每一操作需要的機(jī)器運(yùn)行周期的數(shù)量級(jí),并影響執(zhí)行計(jì)劃計(jì)算的代價(jià)。與Oracle查詢有關(guān)的CPU使用代價(jià)取決于當(dāng)前的服務(wù)器載入情況。CPU代價(jià)通常并不是很重要,除非是整個(gè)Oracle程序使用過多的CPU資源。 IO代價(jià) CBO可以估計(jì)每一操作的物理塊讀入的數(shù)量級(jí)。I/O代價(jià)與物理數(shù)據(jù)塊讀入成正比。然而,CBO不具備緩沖目錄的優(yōu)先權(quán)利,也不能區(qū)別一個(gè)邏輯讀入和一個(gè)物理讀入。因?yàn)檫@些缺點(diǎn),CBO無法識(shí)別數(shù)據(jù)塊是否已經(jīng)讀入RAM數(shù)據(jù)緩沖器。 并非完全的完美 注重到這些使用代價(jià)也是讀入數(shù)量的功能,并與讀入次數(shù)有關(guān),也注重到外部代價(jià)并沒有考慮到位于RAM數(shù)據(jù)緩沖器的數(shù)據(jù)塊的數(shù)量,但新的CBO發(fā)布版本應(yīng)該考慮到這一因素。 這里我們可以看到Oracle都使用了評(píng)測(cè)執(zhí)行計(jì)劃的CPU和I/O代價(jià)評(píng)估。相比于我們處理一些類似查詢而言,這一評(píng)估會(huì)變得更加復(fù)雜,因?yàn)轭愃撇樵兛梢员辉S多并發(fā)的程序處理。
標(biāo)簽: Oracle 數(shù)據(jù)庫
主站蜘蛛池模板: 虹口区| 常宁市| 韶山市| 恩施市| 东城区| 永丰县| 西峡县| 塘沽区| 建始县| 莱州市| 平利县| 昆明市| 余干县| 承德县| 讷河市| 新巴尔虎右旗| 芜湖市| 南充市| 蕲春县| 嫩江县| 和顺县| 县级市| 民和| 蓬溪县| 东方市| 白朗县| 监利县| 汶上县| 广安市| 清镇市| 革吉县| 湾仔区| 林周县| 温州市| 宜黄县| 磴口县| 凌云县| 房产| 南郑县| 宜君县| 东乌珠穆沁旗|