电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Oracle數據塊原理深入剖析

瀏覽:5日期:2023-11-22 12:55:51

數據塊(Oracle Data Blocks),本文簡稱為“塊”,是Oracle最小的存儲單位,Oracle數據存放在“塊”中。一個塊占用一定的磁盤空間。特別注意的是,這里的“塊”是Oracle的“數據塊”,不是操作系統的“塊”。

Oracle每次請求數據的時候,都是以塊為單位。也就是說,Oracle每次請求的數據是塊的整數倍。如果Oracle請求的數據量不到一塊,Oracle也會讀取整個塊。所以說,“塊”是Oracle讀寫數據的最小單位或者最基本的單位。

塊的標準大小由初始化參數DB_BLOCK_SIZE指定。具有標準大小的塊稱為標準塊(Standard Block)。塊的大小和標準塊的大小不同的塊叫非標準塊(Nonstandard Block)。同一數據庫中,Oracle9i及以上版本支持同一數據庫中同時使用標準塊和非標準塊。Oracle允許指定5種非標準塊(Nonstandard Block)。

操作系統每次執行I/O的時候,是以操作系統的塊為單位;Oracle每次執行I/O的時候,都是以Oracle的塊為單位。Oracle數據塊大小一般是操作系統塊的整數倍。

數據塊的格式(Data Block Format)

塊中存放表的數據和索引的數據,無論存放哪種類型的數據,塊的格式都是相同的,塊由塊頭(header/Common and Variable),表目錄(Table Directory),行目錄(Row Directory),空余空間(Free Space)和行數據(Row Data)五部分組成,如下圖所示。 Oracle數據塊原理深入剖析

塊頭(header/Common and Variable):存放塊的基本信息,如:塊的物理地址,塊所屬的段的類型(是數據段還是索引段)。 表目錄(Table Directory):存放表的信息,即:如果一些表的數據被存放在這個塊中,那么,這些表的相關信息將被存放在“表目錄”中。

行目錄(Row Directory):如果塊中有行數據存在,則,這些行的信息將被記錄在行目錄中。這些信息包括行的地址等。

行數據(Row Data):是真正存放表數據和索引數據的地方。這部分空間是已被數據行占用的空間。

空余空間(Free Space):空余空間是一個塊中未使用的區域,這片區域用于新行的插入和已經存在的行的更新。

頭部信息區(Overhead):我們把塊頭(header/Common and Variable),表目錄(Table Directory),行目錄(Row Directory)這三部分合稱為頭部信息區(Overhead)。頭部信息區不存放數據,它存放的整個塊的信息。頭部信息區的大小是可變的。一般來說,頭部信息區的大小介于84字節(bytes)到107字節(bytes)之間。

數據塊中自由空間的使用

當往數據庫中插入(INSERT)數據的時候,塊中的自由空間會減少;當對塊中已經存在的行進行修改(UPDATE)的時候(使記錄長度增加),塊中的自由空間也會減少。

DELETE語句和UPDATE語句會使塊中的自由空間增加。當使用DELETE語句刪除塊中的記錄或者使用UPDATE語句把列的值更改成一個更小值的時候,Oracle會釋放出一部分自由空間。釋放出的自由空間并不一定是連續的。通常情況下,Oracle不會對塊中不連續的自由空間進行合并。因為合并數據塊中不連續的自由空間會影響數據庫的性能。只有當用戶進行數據插入(INSERT)或者更新(UPDATE)操作,卻找不到連續的自由空間的時候,Oracle才會合并數據塊中不連續的自由空間。

對于塊中的自由空間,Oracle提供兩種管理方式:自動管理,手動管理

行鏈接和行遷移(Row Chaining and Migrating)

行鏈接(Row Chaining):如果我們往數據庫中插入(INSERT)一行數據,這行數據很大,以至于一個數據塊存不下一整行,Oracle就會把一行數據分作幾段存在幾個數據塊中,這個過程叫行鏈接(Row Chaining)。如下圖所示:

如果一行數據是普通行,這行數據能夠存放在一個數據塊中;如果一行數據是鏈接行,這行數據存放在多個數據塊中。

行遷移(Row Migrating):數據塊中存在一條記錄,用戶執行UPDATE更新這條記錄,這個UPDATE操作使這條記錄變長,這時候,Oracle在這個數據塊中進行查找,但是找不到能夠容納下這條記錄的空間,無奈之下,Oracle只能把整行數據移到一個新的數據塊。原來的數據塊中保留一個“指針”,這個“指針”指向新的數據塊。被移動的這條記錄的ROWID保持不變。行遷移的原理如下圖所示:

無論是行鏈接還是行遷移,都會影響數據庫的性能。Oracle在讀取這樣的記錄的時候,Oracle會掃描多個數據塊,執行更多的I/O。

塊中自由空間的自動管理

Oracle使用位圖(bitmap)來管理和跟蹤數據塊,這種塊的空間管理方式叫“自動管理”。自動管理有下面的好處:

◆易于使用

◆更好地利用空間

◆可以對空間進行實時調整

塊中自由空間的手動管理

用戶可以通過PCTFREE, PCTUSED來調整塊中空間的使用,這種管理方式叫手動管理。相對于自動管理,手動管理方式比較麻煩,不容易掌握,容易造成塊中空間的浪費。

PCTFREE參數用于指定塊中必須保留的最小空閑空間百分例。之所以要預留這樣的空間,是因為UPDATE時,需要這些空間。如果UPDATE時,沒有空余空間,Oracle就會分配一個新的塊,這會產生行遷移(Row Migrating)。PCTUSED也是用于設置一個百分比,當塊中已使用的空間的比例小于這個百分比的時候,這個塊才被標識為有效狀態。只有有效的塊才被允許插入數據。

標簽: Oracle 數據庫
主站蜘蛛池模板: 无压烧结银_有压烧结银_导电银胶_导电油墨_导电胶-善仁(浙江)新材料 | 济宁工业提升门|济宁电动防火门|济宁快速堆积门-济宁市统一电动门有限公司 | 桥架-槽式电缆桥架-镀锌桥架-托盘式桥架 - 上海亮族电缆桥架制造有限公司 | 模具硅橡胶,人体硅胶,移印硅胶浆厂家-宏图硅胶科技 | 青岛球场围网,青岛车间隔离网,青岛机器人围栏,青岛水源地围网,青岛围网,青岛隔离栅-青岛晟腾金属制品有限公司 | 东亚液氮罐-液氮生物容器-乐山市东亚机电工贸有限公司 | 不发火防静电金属骨料_无机磨石_水泥自流平_修补砂浆厂家「圣威特」 | 企业微信scrm管理系统_客户关系管理平台_私域流量运营工具_CRM、ERP、OA软件-腾辉网络 | 日本SMC气缸接头-速度控制阀-日本三菱伺服电机-苏州禾力自动化科技有限公司 | 众品地板网-地板品牌招商_地板装修设计_地板门户的首选网络媒体。 | 三佳互联一站式网站建设服务|网站开发|网站设计|网站搭建服务商 赛默飞Thermo veritiproPCR仪|ProFlex3 x 32PCR系统|Countess3细胞计数仪|371|3111二氧化碳培养箱|Mirco17R|Mirco21R离心机|仟诺生物 | 皮带输送机-大倾角皮带输送机-皮带输送机厂家-河南坤威机械 | 泉州陶瓷pc砖_园林景观砖厂家_石英砖地铺石价格 _福建暴风石英砖 | 真空上料机(一种真空输送机)-百科 | 实体店商新零售|微赢|波后|波后合作|微赢集团 | 定制/定做冲锋衣厂家/公司-订做/订制冲锋衣价格/费用-北京圣达信 | 钢格板|镀锌钢格板|热镀锌钢格板|格栅板|钢格板|钢格栅板|热浸锌钢格板|平台钢格板|镀锌钢格栅板|热镀锌钢格栅板|平台钢格栅板|不锈钢钢格栅板 - 专业钢格板厂家 | 高空重型升降平台_高空液压举升平台_高空作业平台_移动式升降机-河南华鹰机械设备有限公司 | 全自动端子机|刺破式端子压接机|全自动双头沾锡机|全自动插胶壳端子机-东莞市傅氏兄弟机械设备有限公司 | 厂房出售_厂房仓库出租_写字楼招租_土地出售-中苣招商网-中苣招商网 | 高扬程排污泵_隔膜泵_磁力泵_节能自吸离心水泵厂家-【上海博洋】 | 水冷式工业冷水机组_风冷式工业冷水机_水冷螺杆冷冻机组-深圳市普威机械设备有限公司 | 济宁工业提升门|济宁电动防火门|济宁快速堆积门-济宁市统一电动门有限公司 | 佛山市钱丰金属不锈钢蜂窝板定制厂家|不锈钢装饰线条|不锈钢屏风| 电梯装饰板|不锈钢蜂窝板不锈钢工艺板材厂家佛山市钱丰金属制品有限公司 | 短信营销平台_短信群发平台_106短信发送平台-河南路尚 | 鲁尔圆锥接头多功能测试仪-留置针测试仪-上海威夏环保科技有限公司 | SDG吸附剂,SDG酸气吸附剂,干式酸性气体吸收剂生产厂家,超过20年生产使用经验。 - 富莱尔环保设备公司(原名天津市武清县环保设备厂) | Trimos测长机_测高仪_TESA_mahr,WYLER水平仪,PWB对刀仪-德瑞华测量技术(苏州)有限公司 | 成都亚克力制品,PVC板,双色板雕刻加工,亚克力门牌,亚克力标牌,水晶字雕刻制作-零贰捌广告 | 列管冷凝器,刮板蒸发器,外盘管反应釜厂家-无锡曼旺化工设备有限公司 | 净气型药品柜-试剂柜-无管道净气型通风柜-苏州毕恩思 | ET3000双钳形接地电阻测试仪_ZSR10A直流_SXJS-IV智能_SX-9000全自动油介质损耗测试仪-上海康登 | 道康宁消泡剂-瓦克-大川进口消泡剂供应商| 滁州高低温冲击试验箱厂家_安徽高低温试验箱价格|安徽希尔伯特 | 知网论文检测系统入口_论文查重免费查重_中国知网论文查询_学术不端检测系统 | 老房子翻新装修,旧房墙面翻新,房屋防水补漏,厨房卫生间改造,室内装潢装修公司 - 一修房屋快修官网 | 水冷散热器_水冷电子散热器_大功率散热器_水冷板散热器厂家-河源市恒光辉散热器有限公司 | 示波器高压差分探头-国产电流探头厂家-南京桑润斯电子科技有限公司 | 陶氏道康宁消泡剂_瓦克消泡剂_蓝星_海明斯德谦_广百进口消泡剂 | 成都APP开发-成都App定制-成都app开发公司-【未来久】 | 医用空气消毒机-医用管路消毒机-工作服消毒柜-成都三康王 |