中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何理解oracle 11g DRM

發布時間:2021-11-23 15:09:51 來源:億速云 閱讀:202 作者:柒染 欄目:關系型數據庫

這期內容當中小編將會給大家帶來有關如何理解oracle 11g DRM,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

DRM 簡介

首先,我們對和DRM 相關的一些概念進行介紹。
Buffer: 對于RAC 數據庫,當一個數據塊被讀入到buffer cache后,我們就稱其為buffer , cache fusion 會將這個buffer作為resource來管理。

Master:在RAC 數據庫的世界里,每一個resource都會有一個master實例,這個master實例會在shared pool 中(例如:gcs resource 和ges resource 部分)分配一些空間來存放和這個資源相關的信息,例如:哪一個實例擁有了這個buffer的最新版本,哪一個實例擁有了這個buffer的什么級別的lock等等。并且,負責維護和這個資源的狀態。

接下來,我們對RAC 環境中,訪問一個buffer的過程進行簡單的描述。我們以一個4節點的RAC 數據庫為例。注意,我們只會列出比較典型的一種情況,不會把所有可能的情況都一一列出,而且只是把步驟進行了簡單的介紹。

如何理解oracle 11g DRM

步驟1:實例3需要以X(exclusive)方式訪問buffer1, 向master實例(1) 發出了請求。
步驟2:master實例(1)發現實例2 以X方式持有buffer1,之后通知實例2釋放X lock,并把buffer1發送給實例3。
步驟3: 實例2釋放X lock,并把最新版本的buffer1發送給實例3。
步驟4:實例3獲得buffer1, 并通知master 實例(1)更新資源buffer1的最新狀態。

從上面的步驟,我們不難看出,在RAC 數據庫中,當我們訪問一個buffer的時候,最多會有3個實例參與其中,master實例,holder(持有者)實例 和requestor(申請者) 實例。2種數據傳輸會出現,message:用于和lock相關的信息傳輸,data:用于傳輸buffer。同時,根據上面的步驟我們也自然會想到,如果master和requestor在同一個實例上,那么就可以減少實例之間message的傳輸并且訪問的代碼路徑(code path)會更短,從而提高性能,但是每個buffer在被讀取到buffer cache時,master節點的選擇是隨機的。基于這種考慮, oracle從10g開始,推出了一個新特性DRM(Dynamic Resource management)。


DRM的主要功能是,根據一段時間內(默認10分鐘),每個實例,對某一個數據庫對象的 (10gR1以數據文件為單位)的訪問次數和方式,來決定數據庫對象對應的buffer應該被mastering 到哪一個實例。在指定時間內,如果某一個實例訪問某個數據庫對象次數高于其他實例一定倍數(默認50倍),則oracle 會把這個對象所有的buffer的master信息,轉移到對應實例(注意:不是轉移buffer)。當然,轉移的過程是漸進式的。當oracle 決定將一個buffer的master實例確定到本地實例后,會對這個buffer上加上affinity lock,來實現快速的訪問。這也是我們經常提到的object affinity 的由來。

接下來,我們對DRM的基本步驟進行介紹。
1. Oracle停止所有在需要進行remastering的buffer上的操作。注意:DRM是漸進的,也就是說以windows 為單位,每次對一部分的buffer 進行remastering 操作。
2. Lmon 通知所有實例,準備進行remastering
3. 在舊的master實例清除對應buffer的master信息
4. 將master信息傳遞給新的master實例
5. 在新的master實例構建資源的最新狀態
6. 結束,并釋放所有之前所有步驟占用的資源。

然后,我們對DRM相關的一些參數進行簡單的介紹。
_gc_policy_time :單位為分鐘,控制DRM統計實例訪問buffer次數的時間間隔,默認為是10分鐘。
_gc_affinity_ratio:控制進行remastering所需要達到的最小比例(閥值),默認為50。也就是說,如果某個實例在10分鐘(_gc_policy_time)之內,訪問某個數據庫對象的次數大于其他所有實例50倍時(注意:是50倍,而不是50次),對該數據庫對象的buffer進行remastering。

注意:請不要修改以上參數的值,除非您很清楚自己在做什么,或者是根據oracle 工程師的建議。

最后,如果您遇到了和DRM相關的問題,建議您查看以下的信息。
1. Lmon,lmd,lms和diag進程的 trace file,來確認問題出現在DRM的哪一步和lms,lmon,lmd進程的狀態。
2. AWR 和ASH report,確認那些等待事件持續了很長時間,以及lmon,lms 和lmd的狀態。
3. 參照note 1492990.1 獲取 DMR 診斷腳本輸出。

上述就是小編為大家分享的如何理解oracle 11g DRM了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

罗山县| 右玉县| 崇义县| 蓝田县| 清河县| 丽江市| 蓝山县| 栾川县| 晋江市| 兴仁县| 宝山区| 益阳市| 神木县| 阿拉善右旗| 小金县| 宜兰市| 望都县| 连南| 墨江| 阿鲁科尔沁旗| 渑池县| 安龙县| 潮州市| 营山县| 淮阳县| 龙口市| 开鲁县| 定州市| 巴塘县| 桦南县| 闵行区| 江油市| 太谷县| 揭西县| 长白| 舞阳县| 隆德县| 宁化县| 古交市| 沾益县| 津南区|