29_檢查點佇列(checkpoint queue)
LRU將沒有使用的塊連線起來,按照塊訪問的頻率,熱度 排序
LRUW將髒塊連線起來,以後DBWn寫髒塊就從這個佇列中找去寫,按照塊訪問的頻率,熱度 排序,不經常被訪問的髒塊放在鏈的冷端,優先寫到磁碟上,寫完後變成乾淨塊,這時就可掛在LRU上。
CBC鏈,是按地址排列
我們的髒塊不僅掛在LRUW上還掛在checkpoint queue上
將塊組織連線起來就是為了方便管理
Checkpoint queue連結髒塊,按照塊第一次髒的時間排序,也可以說是按LRBA地址連線。
檢查點佇列按照此方式排序的意義:
RBA : redo block address (修改資料庫會產生日誌,這就是日誌的地址 , 在 checkpoint queue 佇列相應的塊中記下 RBA ) |
LRBA : 塊第一次被髒的那個日誌地址。 |
HRBA :塊最近一次髒的地址。 |
On disk RBA : current 日誌最後一條日誌的地址,即資料庫多能儲存的日誌最後的那個地址。在磁碟上 current 上 |
對於每一個髒塊來說有一個HRBA,LRBA
CKPT程式:兩種工作方式
1、完全檢查點,發生時會觸發DBWn將所有髒塊寫到磁碟上。(關閉資料庫)
2、增量檢查點,將檢查點佇列中第一個髒塊的LRBA地址記錄到控制檔案中(每隔三秒),發生時會檢查檢查點佇列如果發現佇列上髒塊太多,並且發現io不是很忙,那麼將上邊的部分寫到磁碟中,觸發DBWn寫。
Alter system flush buffer_cache;
flush之後RBA變成無窮大了
Select CPDRT,CPLRBA_SEQ||','||CPLRBA_BNO||','||CPLRBA_BOF "LOW RBA", CPODR_SEQ||','||CPODR_BNO||',' ||CPODR_BOF "On disk RBA" ,CPODS,CPODT,CPHBT From x$kcccp;
檢查點是資料恢復的起點。
切換日誌組生成增量檢查點,dbwr可能過一會寫active就是說髒塊還沒寫完或者根本就沒寫。
Alter system checkpoint 全域性檢查點。dbwr立馬寫。
關機慢的原因就是生成全域性檢查點,Buffer中的資料全部寫到磁碟中。
==============================================================================
這是部分檢查點為什麼叫部分就是因為他是一部分,dbwr也要立即寫。
======================================================================================================
增量檢查點往檢查點佇列裡排,排到他dbwr才寫,這就是問什麼redo中active
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29990276/viewspace-1364716/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 檢查點佇列與增量檢查點Oracle佇列
- oracle checkpoint檢查點Oracle
- JDK QUEUE佇列JDK佇列
- OCP知識點講解 之 檢查點佇列與增量檢查點佇列
- [zt]Oracle檢查點ckpt (checkpoint)Oracle
- oracle checkpoint檢查點系列一Oracle
- python佇列QueuePython佇列
- C# 佇列(Queue)C#佇列
- postgresql 檢查點調整 checkpoint 轉SQL
- zt_checkpoint檢查點解密(轉)解密
- 增量檢查點(incremental checkpoint)的解疑REM
- object checkpoint物件檢查點小記Object物件
- 【TUNE_ORACLE】Oracle檢查點(一)檢查點(Checkpoint)概念介紹Oracle
- 佇列(Queue)-c實現佇列
- STL(十九)queue佇列容器佇列
- TensorFlow——Checkpoint為模型新增檢查點模型
- oracle ckpt檢查點型別(增量及常規完全檢查點)checkpointOracle型別
- laravel原始碼分析-佇列QueueLaravel原始碼佇列
- 【體系結構】SCN與checkpoint(檢查點)
- ORACLE資料庫檢視ACQ(ACTIVE CHECKPOINT QUEUE)資訊Oracle資料庫
- 【CHECKPOINT】Oracle檢查點優化與故障處理Oracle優化
- 資料結構之佇列(Queue)資料結構佇列
- java Queue佇列相關總結Java佇列
- js資料結構--佇列(queue)JS資料結構佇列
- Oracle SCN機制解析 (SCN, checkpoint檢查點) - finalOracle
- Team Queue (佇列的一種應用)佇列
- POJ 2259 Team Queue【模擬佇列】佇列
- 那些操作會發生區域性檢查點(Partial checkpoint)!
- java集合類——Stack棧類與Queue佇列Java佇列
- Throwing cards away I(queue迴圈佇列)佇列
- 【資料結構】棧(Stack)和佇列(Queue)資料結構佇列
- 看動畫學演算法之:佇列queue動畫演算法佇列
- C++ STL 優先佇列 (priority_queue)C++佇列
- STL(二十)priority_queue優先佇列容器佇列
- Python3 queue佇列模組詳解Python佇列
- 訊息佇列(Message Queue)基本概念佇列
- [筆記] 解碼Nginx:雙向佇列(Queue)筆記Nginx佇列
- jQuery佇列控制方法詳解queue()/dequeue()/clearQueue()jQuery佇列