db block gets的解釋[轉]
LOGIC IO(邏輯讀次數)= db block gets + consistent gets
consistent get : 在一致讀模式下所讀的快數,包括從回滾段讀的快數。
db block gets : 在當前讀模式下所讀的快數,比較少和特殊,例如資料字典資料獲取,在DML中,更改或刪除資料是要用到當前讀模式。
consistent gets : 透過不帶for update的select 讀的次數
db block gets : 透過update/delete/select for update讀的次數.
consistent gets :consistent_gets是從回滾段中讀到的前映(或叫讀取一致性影像), 看見的資料是查詢開始的時間點的,所以若存在block在查詢開始後發生了變化的情況,則必須產生 before image 然後讀資料,這就是一致讀的含義
查詢就是表示 consistent gets (query mode),因為查詢要保證所獲取的資料的時間點的一致性,所以叫一致讀,即使是從當前 buffer 獲得的資料,也叫 consistent gets ,這僅僅表達一種模式一種期望,並不表示真實的是從 當前buffer 獲得 還是從回滾段獲取資料產生的 bufore image 。
db block gets : current mode , 不管這個塊上的資料是否可能存在 before image ,也就是說不管是否存在回滾中資料可以 回滾,只看見當前最新塊的資料,即使別人正在更新,也看見別人更新狀態的資料,比如dml的時候就不需要看見別人更改前的資料,而是看見正在更改的,當然同時,若操作相同資料則被lock住。也就是說一次查詢中看見的資料可能不在同一個時間點上,比如一個大的dml,當dml 開始更新一個非常大的表後,這個表更新的過程中,有一個程式去把該表末尾的一個記錄更新了,然後這個大更新抵達該記錄的時候會被阻塞的,若該程式事物提交,則大更新會覆蓋該事務的更新,也就是說,這個大更新所看見的資料是當前的,不具有時間點的一致性,所以叫 current mode,個人認為db block gets這個詞用的不好, 容易讓人誤解. 如果改成inconsistent gets可能會更準確一些
consistent gets
db block gets + consistent gets = logical io (as opposed to physical io). consistent gets are current mode gets. This might entail a reconstruction of the block with the undo (rollback) mechanism.
Number of times a consistent read was requested for a block.
db block gets
db block gets + consistent gets = logical io (as opposed to physical io). db block gets are current mode gets, blocks that are read as they are (even if these are being modified by another session)
Number of times a CURRENT block was requested.
記一下,以前也總是繞來繞去,糾纏解釋不清的。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/27036311/viewspace-735878/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Consistent Gets,Physical Reads和DB Block Gets的解釋(轉)BloC
- oracle buffer gets=db block gets+consistent getsOracleBloC
- 對'Consistent Gets',''Physical Reads'和'DB Block Gets'的理解和解釋BloC
- (轉)關於 db block gets,consistent gets,physical reads的概念BloC
- db block gets 與 consistent read getsBloC
- DB Block Gets、Consistent Gets、Physical ReadsBloC
- recursive calls ,db block gets , consistent gets的含義BloC
- 關於執行計劃裡recursive calls,db block gets和consistent gets引數的解釋BloC
- consistent gets、db block gets的簡單精闢的理解BloC
- recursive calls, db block gets,consistent gets,physical ReadsBloC
- 對'Consistent Gets',''Physical Reads'和'DB Block Gets'的理解BloC
- Consistent Gets(就是logical read)+ DB Block Gets = 所謂的Logical ReadsBloC
- 關於統計中Consistent Gets,Physical Reads和DB Block Gets的意義BloC
- DB Bocks gets,Consistent gets And Physical reads 轉載
- DB Bocks gets & Consistent gets 區別
- db_block_checksum & db_block_checking 的區別BloC
- 【Oracle-記憶體管理】-DB Blocks gets,Consistent gets And Physical readsOracle記憶體BloC
- oracle的塊 db_block_sizeOracleBloC
- DB_BLOCK_SIZE and DB_CACHE_SIZE in OracleBloCOracle
- db_block_checksum 引數解析BloC
- DB_BLOCK_SIZE Initialization Parameter (92)BloC
- gets函式的不安性詳解函式
- Initianization Parameter (1) : DB_BLOCK_SIZEBloC
- Initianization Parameter (2) : DB_BLOCK_BUFFERSBloC
- db block get和consistent read getBloC
- AIX: Database performance gets slower the longer the db is running_316533.1AIDatabaseORM
- block詳解BloC
- v$bgprocess --解釋oracle db 後臺程式作用的檢視Oracle
- display:inline、block、inline-block的區別(轉的)inlineBloC
- gets函式的漏洞函式
- consistent gets
- iOS-Block全解iOSBloC
- DB2中export命令詳解<<轉載>>DB2Export
- index branch and leaf block structure(轉)IndexBloCStruct
- C語言關於指標,gets()和gets_s()函式的理解C語言指標函式
- iOS block的一些自我見解iOSBloC
- Block學習①--block的本質BloC
- (轉)oracle dump block格式說明OracleBloC