Oracle 數(shù)據(jù)庫筆記(2)—— 邏輯存儲(chǔ)結(jié)構(gòu)

Oracle 數(shù)據(jù)庫中的數(shù)據(jù)文件被分組到一個(gè)或多個(gè)表空間中。在每個(gè)表空間中爬橡,邏輯數(shù)據(jù)庫結(jié)構(gòu) ( 如表和索引 ) 都是片段,被進(jìn)一步細(xì)分為 “ 盤區(qū)” ( extent ) 和 “ 塊 ( block ) ”棒动。這種存儲(chǔ)的邏輯細(xì)分允許 Oracle 更有效地控制磁盤空間的利用率糙申。圖 1 顯示了數(shù)據(jù)庫中邏輯存儲(chǔ)結(jié)構(gòu)之間的關(guān)系。

1 表空間

Oracle 表空間 ( tablespace ) 由一個(gè)或多個(gè)數(shù)據(jù)文件組成船惨,一個(gè)數(shù)據(jù)文件是且只能是一個(gè)表空間的一部分柜裸。 Oracle 12c最少會(huì)創(chuàng)建兩個(gè)表空間 : SYSTEM 表空間和 SYSAUX 表空間。

SYSAUX 表空間是在 Oracle Database10g 中引入的粱锐,作為 SYSTEM 表空間的輔助表空間 . 以前一些使用獨(dú)立表空間或系統(tǒng)表空間的數(shù)據(jù)庫組件現(xiàn)在會(huì)在 SYSAUX 表空間中創(chuàng)建疙挺。 SYSAUX 表空間存放一些其他的 metadata 組件,如 OEM 怜浅, Streams 等會(huì)默認(rèn)存放在 SYSAUX 表空間里铐然。通過分離這些組件和功能, SYSTEM 表空間的負(fù)荷得以減輕 海雪,因?yàn)榭梢员苊夥磸?fù)創(chuàng)建一些相關(guān)對(duì)象及組件引起 SYSTEM 表空間的碎片問題锦爵。

即使表空間是臨時(shí)的,表空間自身也是永久的奥裸,只有保存在表空間中的段是臨時(shí)的险掀。臨時(shí)表空間可用于排序操作,也用于只存在于用戶會(huì)話期間的表湾宙。專門使用一個(gè)表空間用于此類操作樟氢,有助于減少臨時(shí)段和存儲(chǔ)在另一個(gè)表空間中的永久段之間的 IO 爭用冈绊。

表空間可以是字典管理的或本地管理的。

  1. 在字典管理的表空間中埠啃,盤區(qū)管理記錄在數(shù)據(jù)字典表中死宣。因此,即使所有的應(yīng)用程序表都在 USERS 表空間中碴开,也仍需要訪問 SYSTEN 表空間毅该,以管理應(yīng)用程序表上的 DML。 因?yàn)樗杏脩艉蛻?yīng)用程序必須使用 SYSTEN 表空間才能進(jìn)行盤區(qū)管理潦牛,這就為寫入密集型應(yīng)用程序造成了潛在的瓶頸眶掌。

  2. 在本地管理的表空間中, Oracle 在表空間的每個(gè)數(shù)據(jù)文件中維護(hù)一個(gè)位圖巴碗,用于跟蹤空間可用性朴爬。只在數(shù)據(jù)字典中管理分配額,這樣可極大地減少數(shù)據(jù)字典表的爭用橡淆。

2 塊

數(shù)據(jù)庫塊是 Oracle 數(shù)據(jù)庫中最小的存儲(chǔ)單位召噩。塊的大小是數(shù)據(jù)庫內(nèi)給定表空間中特定數(shù)量的存儲(chǔ)字節(jié)塊,它通常是操作系統(tǒng)塊的幾倍大逸爵,這有助于提升磁盤 I/O 的效率具滴。

Oracle 的初始參數(shù) DB_BLOCKSIZE 可指定默認(rèn)的塊大小。默認(rèn)塊大小是 8KB痊银。最多可為數(shù)據(jù)庫中的其他表空間定義4個(gè)塊大小抵蚊,而 SYSTEM、SYSAUX 和任何臨時(shí)表空間中的塊大小必須為 DB_BLOCK_SIZE 的值溯革。

除非確有必要使用不同大小贞绳,否則應(yīng)為所有表空間使用 8KB 塊大小。如果修改了塊大小致稀,應(yīng)該進(jìn)行全面測試冈闭,看能否提升性能 。

3 盤區(qū)

盤區(qū)是由一個(gè)或多個(gè)數(shù)據(jù)庫塊組成抖单。當(dāng)擴(kuò)大數(shù)據(jù)庫對(duì)象時(shí)萎攒,為該對(duì)象添加的空間將分配為一個(gè)盤區(qū)。

4 段

段是一組盤區(qū)矛绘,這組盤區(qū)組成了被 Oracle 視為一個(gè)單位的數(shù)據(jù)庫對(duì)象耍休,如表或索引 。因此货矮,段一般是數(shù)據(jù)庫終端用戶要處理的最小存儲(chǔ)單位羊精。 Oracle 數(shù)據(jù)庫中可看到4種類型的段 : 數(shù)據(jù)段 ( 非分區(qū)表和分區(qū)表的每個(gè)分區(qū) ) 、 索引段 囚玫、 臨時(shí)段和回滾段喧锦。

(1)數(shù)據(jù)段

數(shù)據(jù)庫中的每張表都駐留在單獨(dú)的數(shù)據(jù)段中读规,數(shù)據(jù)段由一個(gè)或多個(gè)盤區(qū)組成。如果某個(gè)表是分區(qū)表 ( partitioned table ) 或群集表 ( clustered table ) 燃少,則 Oracle 為該表分配多個(gè)段束亏。數(shù)據(jù)段包含存儲(chǔ) 大對(duì)象數(shù)據(jù)的 LOB 段。

(2)索引段

每個(gè)索引都存儲(chǔ)在自己的索引段中阵具。與分區(qū)表一樣碍遍,分區(qū)索引的每個(gè)分區(qū)存儲(chǔ)在各自的段中。

(3)臨時(shí)段

當(dāng)用戶的 SQL 語句需要磁盤空間來完成某操作 ( 例如不能在內(nèi)存中完成的排序操作 ) 時(shí)怔昨, Oracle 會(huì)分配臨時(shí)段雀久。臨時(shí)段只存在于 SQL 語句的執(zhí)行期間 。

(4)回滾段

從 Oracle 10g開始趁舀,遺留的回滾段只存在于 SYSTEM 表空間中,并且 DBA 一般不需要維護(hù) SYSTEM 回滾段祝沸。

自動(dòng)撤消管理 ( Automatic Undo Management 矮烹, AUM ) 處理一個(gè)撤消表空間中回滾段的自動(dòng)分配和管理。在撤消表空間中罩锐,撤消段的構(gòu)造類似于回滾段奉狈,不同之處在于如何管理這些段的細(xì)節(jié)由 Oracle 控制。

在 Oracle 12c中涩惑,默認(rèn)啟用 AUM 仁期,此外還提供了 PL/SQL 過程,以幫助確定 UNDO 表空間的大小竭恬。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末跛蛋,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子痊硕,更是在濱河造成了極大的恐慌赊级,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,589評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件岔绸,死亡現(xiàn)場離奇詭異理逊,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)盒揉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,615評(píng)論 3 396
  • 文/潘曉璐 我一進(jìn)店門晋被,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人刚盈,你說我怎么就攤上這事羡洛。” “怎么了扁掸?”我有些...
    開封第一講書人閱讀 165,933評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵翘县,是天一觀的道長最域。 經(jīng)常有香客問我,道長锈麸,這世上最難降的妖魔是什么镀脂? 我笑而不...
    開封第一講書人閱讀 58,976評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮忘伞,結(jié)果婚禮上薄翅,老公的妹妹穿的比我還像新娘。我一直安慰自己氓奈,他們只是感情好翘魄,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,999評(píng)論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著舀奶,像睡著了一般暑竟。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上育勺,一...
    開封第一講書人閱讀 51,775評(píng)論 1 307
  • 那天但荤,我揣著相機(jī)與錄音,去河邊找鬼涧至。 笑死腹躁,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的南蓬。 我是一名探鬼主播纺非,決...
    沈念sama閱讀 40,474評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼赘方!你這毒婦竟也來了烧颖?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,359評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤蒜焊,失蹤者是張志新(化名)和其女友劉穎倒信,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體泳梆,經(jīng)...
    沈念sama閱讀 45,854評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡鳖悠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,007評(píng)論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了优妙。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片乘综。...
    茶點(diǎn)故事閱讀 40,146評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖套硼,靈堂內(nèi)的尸體忽然破棺而出卡辰,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 35,826評(píng)論 5 346
  • 正文 年R本政府宣布九妈,位于F島的核電站反砌,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏萌朱。R本人自食惡果不足惜宴树,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,484評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望晶疼。 院中可真熱鬧酒贬,春花似錦、人聲如沸翠霍。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,029評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽寒匙。三九已至零如,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蒋情,已是汗流浹背埠况。 一陣腳步聲響...
    開封第一講書人閱讀 33,153評(píng)論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留棵癣,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,420評(píng)論 3 373
  • 正文 我出身青樓夺衍,卻偏偏與公主長得像狈谊,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子沟沙,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,107評(píng)論 2 356