Oracle資料塊的組成
Oracle資料塊的組成
1. 資料塊的基本結構
塊中存放表的資料和索引的資料,無論存放哪種型別的資料,塊的格式都是相同的,塊由塊頭(header/Common and Variable),表目錄(Table Directory),行目錄(Row Directory),空餘空間(Free Space)和行資料(Row Data)五部分組成,如下圖所示
2.各組成部分的含義
塊頭(header/Common and Variable):存放塊的基本資訊,如:塊的實體地址,塊所屬的段的型別(是資料段還是索引段)。
表目錄(Table Directory):存放表的資訊,即:如果一些表的資料被存放在這個塊中,那麼,這些表的相關資訊將被存放在“表目錄”中。
行目錄(Row Directory):如果塊中有行資料存在,那麼這些行的資訊將被記錄在行目錄中。這些資訊包括行的地址等。
行資料(Row Data):是真正存放表資料和索引資料的地方。這部分空間是已被資料行佔用的空間。
空餘空間(Free Space):空餘空間是一個塊中未使用的區域,這片區域用於新行的插入和已經存在的行的更新。
3.行連線和行遷移
行連結(Row Chaining):如果我們往資料庫中插入一行資料,這行資料很大,以至於一個資料塊存不下一整行,Oracle就會把一行資料分作幾段存在幾個資料塊中,這個過程叫行連結。
如果一行資料是普通行,這行資料能夠存放在一個資料塊中;如果一行資料是連結行,這行資料存放在多個資料塊中。
行遷移(Row Migrating):資料塊中存在一條記錄,使用者執行UPDATE更新這條記錄,這個UPDATE操作使這條記錄變長,這時候,Oracle在這個資料塊中進行查詢,但是找不到能夠容納下這條記錄的空間,無奈之下,Oracle只能把整行資料移到一個新的資料塊。原來的資料塊中保留一個“指標”,這個“指標”指向新的資料塊。被移動的這條記錄的ROWID保持不變。
無論是行連結還是行遷移,都會影響資料庫的效能。Oracle在讀取這樣的記錄的時候,Oracle會掃描多個資料塊,執行更多的I/O!
4. dump資料塊
建立表空間:
建立表:
新增資料:
提交資料:
獲得表資料塊所在位置:
查詢表中的行所在資料塊:
dump資料塊:
dump檔案路徑:
dump檔案內容:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29379127/viewspace-1063245/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 檢視Oracle各組成部份(如資料塊頭)的大小Oracle
- Oracle - 資料庫的組成簡介Oracle資料庫
- 資料倉儲的組成
- 【raid5資料恢復案例】兩組分別由4塊SAS硬碟組成的raid5組成lvm結構的資料恢復方案AI資料恢復硬碟LVM
- oracle 11.2.0.2的組成Oracle
- 資料分析的三大組成部分
- Oracle資料塊格式Oracle
- oracle資料塊概述Oracle
- oracle資料塊理解Oracle
- Oracle資料塊blockOracleBloC
- oracle資料分組Oracle
- oracle bbed修改資料塊的例子Oracle
- Oracle clusterware組成概述Oracle
- Oracle資料庫壞塊(corruption)-物理壞塊Oracle資料庫
- Starlink 軌道組成 / 波段資料
- ORACLE 資料塊格式深入解析Oracle
- oracle資料塊格式小結Oracle
- oracle block header_tail資料塊頭與資料塊尾OracleBloCHeaderAI
- 大資料分析平臺的組成部分有哪些大資料
- 建立資料策略的6個關鍵組成部分
- 程式語言基本組成:資料結構資料結構
- Sql Server系列:資料庫組成及系統資料庫SQLServer資料庫
- oracle資料塊轉儲說明Oracle
- Oracle資料庫壞塊修復Oracle資料庫
- oracle block資料塊itl小記OracleBloC
- Oracle的邏輯結構(表空間、段、區間、塊)——Oracle資料塊(二)Oracle
- oracle資料塊中資料儲存(摘錄)Oracle
- oracle 資料庫磁碟組屬性Oracle資料庫
- oracle 資料庫磁碟組屬性Oracle資料庫
- 修改一個資料塊Oracle需要做的工作Oracle
- 例項演示oracle資料塊狀態檢視v$bh的用法一 獲取oracle物件所佔用的資料塊Oracle物件
- 區塊鏈成為改善醫療資料安全的良藥區塊鏈
- Oracle資料庫壞塊典型案例分析Oracle資料庫
- oracle asm 資料塊重構恢復OracleASM
- 跳過Oracle資料庫壞塊方法Oracle資料庫
- ORACLE中修復資料塊損壞Oracle
- Oracle之 資料塊、區段和段Oracle
- oracle block資料塊結構之itcOracleBloC