《Oracle12.2體系架構(gòu)圖:Filesystem+Multitenant》要點(diǎn):
本文介紹了Oracle12.2體系架構(gòu)圖:Filesystem+Multitenant,希望對(duì)您有用。如果有疑問,可以聯(lián)系我們。
全面解讀Oracle 12.2體系架構(gòu)圖系列課程,精彩繼續(xù).本期的內(nèi)容由兩部分組成,一是數(shù)據(jù)庫實(shí)例與文件系統(tǒng)的訪問;二是多租戶解決方案.文中將會(huì)簡(jiǎn)單列舉視頻要點(diǎn),詳細(xì)內(nèi)容請(qǐng)點(diǎn)擊原文鏈接下載視頻.
Flash Cache的工作原理如下:
Flash Cache中存放的內(nèi)容通過兩種方式來控制:
1、flash ?Cache的智能選擇算法:評(píng)估數(shù)據(jù)塊、索引塊的訪問頻繁程度來決定.
2、對(duì)數(shù)據(jù)庫對(duì)象的cell_flash_cache屬性做修改.
Flash Cache存儲(chǔ)內(nèi)容基本標(biāo)準(zhǔn)
主要是小IO操作,以及數(shù)據(jù)塊、索引塊、文件頭,控制文件等會(huì)被緩存;
針對(duì)RMAN備份的IO操作,數(shù)據(jù)泵IO操作ASM鏡像操作以及表空間格式化等不會(huì)做緩存;
全表掃描的IO操作的緩存優(yōu)先級(jí)比較低.
當(dāng)數(shù)據(jù)存儲(chǔ)在flash Cache中,主要是為了提高查詢的速度,也就是說,它就相當(dāng)于在內(nèi)存之外又增加了一部分buffer Cache的區(qū)域,只是性能更好,速度更好.那么跟buffer Cache一樣,flash Cache中的數(shù)據(jù)寫滿或者寫到一定程度就需要把數(shù)據(jù)寫入磁盤,留出空間給新的操作數(shù)據(jù).
緩存內(nèi)數(shù)據(jù)寫入磁盤稱為flushing.可以配置Starting and stopping cache flushing levels值,這個(gè)值表示占用整個(gè)緩存大小的百分比.當(dāng)緩存內(nèi)未寫入磁盤的數(shù)據(jù)達(dá)到starting flushing value時(shí),控制器開始flushing(由緩存寫入磁盤).當(dāng)緩存內(nèi)未寫入磁盤數(shù)據(jù)量低于stop flush value時(shí),flushing過程停止.
如果start flushing level設(shè)置較高,可以在緩存內(nèi)存更多的未寫入數(shù)據(jù).這有利于提高寫操作的性能,但是要犧牲數(shù)據(jù)保護(hù).如果要得到數(shù)據(jù)保護(hù),可以使用較低的start and stop values.經(jīng)測(cè)試表明,使用接近的start and stop flushing levels時(shí)性能較好.如果stop level value遠(yuǎn)遠(yuǎn)低于start value,在flushing時(shí)會(huì)導(dǎo)致磁盤擁塞
長(zhǎng)期以來,Redo log的IO瓶頸一直是困擾OLTP系統(tǒng)的一大難題,因?yàn)镽edo的寫入延遲直接拖累了整個(gè)系統(tǒng) 甚至整個(gè)集群的響應(yīng)速度.
在傳統(tǒng)的數(shù)據(jù)庫架構(gòu)中,一些DBA會(huì)將讀寫延遲較低的小塊存儲(chǔ)單獨(dú)劃分給Redo,從11204開始,Oracle提出一種新的方案,在閃存區(qū)域中專門為Redo開辟一塊區(qū)域,用于存儲(chǔ)臨時(shí)Redo.
將列存儲(chǔ)落到Flash Cache,提高頻繁操作的列存儲(chǔ)對(duì)象的寫IO
應(yīng)用容器Application Container是12.2提出來的新的組件,將同一應(yīng)用下的數(shù)據(jù)庫系統(tǒng)劃分到一個(gè)子容器中,在保證多租戶同一管理的情況下,實(shí)現(xiàn)相對(duì)的業(yè)務(wù)隔離和數(shù)據(jù)安全.
從12.2開始,每個(gè)PDB都擁有自己的undo表空間.消除了多個(gè)PDB間的爭(zhēng)用,若要進(jìn)行閃回或者基于時(shí)間戳的恢復(fù),只需要在自己的undo數(shù)據(jù)中尋找,提高效率.
1、從PDB$seed(或者application root)創(chuàng)建:通過文件復(fù)制的方式
2、現(xiàn)有PDB經(jīng)過hot clone創(chuàng)建
?注:在12.1中,基于一個(gè)PDB創(chuàng)建新的PDB的時(shí)候,需要將原庫以read only的方式打開.
而在12.2中,原庫可以持續(xù)進(jìn)行DML操作,并不受影響.
克隆完成以后,數(shù)據(jù)會(huì)持續(xù)刷新到新庫.
3、來自其他CDB中的PDB的遷移:Relocate
前端執(zhí)行 create pluggable database from relocate這樣一條命令,后臺(tái)會(huì)自動(dòng)執(zhí)行遠(yuǎn)程hot clone,做遠(yuǎn)程文件復(fù)制和同步.
4、通過ASM磁盤文件的shadow copy方式生成新的PDB.
PDB的內(nèi)存資源管理
在多租戶環(huán)境下,多個(gè)PDB共享內(nèi)存的資源,當(dāng)一個(gè)PDB需要做buffer Cache的尋址時(shí),需要從整個(gè)共享的資源中尋找,非常不方便.在12.2中,Oracle針對(duì)部分資源做了基于PDB的domain劃分.
12.1的內(nèi)存資源的hash鏈表是這樣的:
12.2中是這樣的:
更多PDB的新特性
1、字符集:在12.2中,若CDB的字符集為超集,也就是AL32UTF8,那么支持不同字符集的PDB.同時(shí),通過Proxy PDB,可以實(shí)現(xiàn)不同字符集的PDB進(jìn)行查詢,Proxy將雙方的字符集做識(shí)別和兼容,不會(huì)出現(xiàn)亂碼.
關(guān)于多租戶更多的新特性詳解,請(qǐng)參考
關(guān)注數(shù)據(jù)和云(OraNews)公眾號(hào),回復(fù)掌上手冊(cè),有更多驚喜學(xué)習(xí)禮包等你拿.
多租戶技術(shù)已經(jīng)被廣大用戶廣泛應(yīng)用,而云和恩墨作為數(shù)據(jù)服務(wù)行業(yè)的引領(lǐng)者,通過zData解決方案與Oracle 多租戶的結(jié)合,幫助用戶實(shí)現(xiàn)了互聯(lián)網(wǎng)+時(shí)代的系統(tǒng)云化轉(zhuǎn)型.
文章來自微信公眾號(hào):數(shù)據(jù)和云
轉(zhuǎn)載請(qǐng)注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/3757.html