達夢資料庫基礎知識(二)資料庫邏輯結構
1、資料庫和例項
在DM7 之前版本的 DM 資料庫中,資料庫和例項 這兩個術語經常可以互相替換,
意義也很相近。在DM7 以及之後版本的資料庫中資料庫和例項這兩個概念之間有
著很大的差別,甚至可以 說它們是兩個完全不同的實體 。
1) 資料庫
在有些情況下,資料庫的概念包含的內容會很廣泛。如在單獨提到達夢資料庫時,可能
指的是達夢資料庫產品,也有可能是正在執行的達夢資料庫例項, 還可能是達夢資料庫執行中需的一系列物理 檔案的集合等。但是,當同時出現達夢資料庫和例項時,達夢資料庫指的是磁碟上存放在達夢資料庫中的資料的集合,一般包括:資料檔案、日誌檔案、控制檔案以及臨時資料檔案等 。
2) 例項
例項一般是由一組正在執行的 DM 後臺進 程 執行緒以及一個大型的共享記憶體組 成。簡 單來說,例項就是運算元據庫的一種手段,是用來訪問資料 庫的記憶體結構 以及後 臺程式的集合。
達夢資料庫儲存在伺服器的磁碟上,而例項則儲存於伺服器的記憶體中。 透過執行例項,可以運算元據庫中的內容。在任何時候,一個例項只能與 個資料庫進行關聯(裝載、開啟或者掛起數 據庫)。在大多數情況下,一個資料庫也只有一個例項對其進行操作。但
是在 DM 共享 儲存 叢集 DMDSC 中,多個例項可以同時裝載並開啟一個資料庫(位於一組由多臺服 務器 共 享的 物 理磁碟上)。此時,我們可以同時從多臺不同的計算機訪問這個資料庫。
2、達夢資料庫邏輯結構
DM 資料庫為資料庫中的所有物件分配邏輯空間,並 存放在資料文 件中。在 DM 資料庫內部,所有的資料檔案組合在一起被劃分到一個 或者多個表空間中,所有的資料 庫內部物件都存放在這些表空間中。同時表空間被進一步劃分為段、簇和頁(也稱塊)。透過這種細分,可以使得 DM 資料庫能夠更加高效地控制磁碟空間的利用率。
可以看出,在DM8 中儲存的層次結構如下:
(1)資料庫由一個或多個表空間組成;
(2)每個表空間由一個或多個資料檔案組成;
(3)每個資料檔案由一個或多個簇組成;
(4) 段是簇的上級邏輯單元,一個段可以跨多個資料檔案;
(5)簇由磁碟上連續的頁組成,一個簇總是在一個資料檔案中;
(6)頁是資料庫中最小的分配單元,也是資料庫中使用的最小的IO 單元。
1) 表空間
在達夢資料庫中,表空間由一個或者多個資料檔案組成。達夢資料庫中的所有物件在邏輯上都存放在表空間中,而物理上都儲存在所屬表空間的資料檔案中。
在建立達夢資料庫時,會自動建立5 個表空間:SYSTEM 表空間、ROLL 表空間、MAIN
表空間、TEMP 表空間和HMAIN 表空間。
(1)SYSTEM 表空間存放了有關達夢資料庫的字典資訊,使用者不能在SYSTEM 表空間創
建表和索引。
(2)ROLL 表空間完全由達夢資料庫自動維護,使用者無需干預。該表空間用來存放事務運
行過程中執行DML 操作之前的值,從而為訪問該表的其他使用者提供表資料的讀一致
性檢視。
(3)MAIN 表空間在初始化庫的時候,就會自動建立一個大小為128M 的資料檔案
MAIN.DBF。在建立使用者時,如果沒有指定預設表空間,則系統自動指定MAIN 表
空間為使用者預設的表空間。
(4)TEMP 表空間完全由達夢資料庫自動維護。當使用者的SQL 語句需要磁碟空間來完成
某個操作時,達夢資料庫會從TEMP 表空間分配臨時段。如建立索引、無法在記憶體中
完成的排序操作、SQL 語句中間結果集以及使用者建立的臨時表等都會使用到TEMP
表空間。
(5)HMAIN 表空間屬於HTS 表空間,完全由達夢資料庫自動維護,使用者無需干涉。當用
戶在建立HUGE 表時,未指定HTS 表空間的情況下,充當預設HTS 表空間。
2)記錄
資料庫表中的每一行是一條記錄。在達夢資料庫中,除了 Huge 表,其他的表都是在資料頁中按記錄儲存資料的。也就是說,記錄是儲存在資料頁中的,記錄並不是達夢資料庫的儲存單位,頁才是。 由於記錄不能跨頁儲存,這樣記錄的長度就受到資料頁大小的限制 。資料頁中還包含了頁頭控制資訊等空間,因此達夢規定每條記錄的總長度不能超過頁面大小的一半。
3)頁
資料頁(也稱資料塊) 是達夢資料庫中最小的資料儲存單元。頁的大小對應物理儲存空間上特定數量的儲存位元組,在達夢資料庫中,頁大小可以為4KB、8KB、16KB或者32 K B
使用者在建立資料庫時可以指定,預設大小為8K B ,一旦建立好了資料庫,則在該庫的整個生命週期內,頁大小都不能夠改變。
4)簇
簇是資料頁的上級邏輯單元,由同一個資料檔案中16個或32個或64個 連續的資料頁組成。在達夢資料庫中,簇的大小由使用者在建立資料庫時指定,預設大小16 。假定某個數
據檔案大小為32MB頁大小為8KB,則共有 32MB/8KB /16 =256 個簇,每個簇的大小為
8K*16=1 28K 。和資料頁的大小一樣 ,一旦建立好資料庫,此後該資料庫的簇的大小就不能夠改變。
5)段
段是簇的上級邏輯分割槽單元,它由一組簇組成。在同一個表空間中,段可以包含來自不
同資料檔案的簇,即一個段可以跨越不同的資料檔案 。而一個簇以及該簇所包含的資料頁則只能來自一個資料檔案,是連續的16或者32個資料頁。由於簇的數量是按需分配的 ,資料段中的不同簇在磁碟上不一定連續。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29210902/viewspace-2839240/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 達夢資料庫基礎知識(三)達夢資料庫記憶體結構資料庫記憶體
- 達夢資料庫基礎知識(一)資料庫物理儲存結構資料庫
- 基礎知識1——資料物理,邏輯儲存結構
- 達夢資料庫基礎---表資料庫
- 達夢資料庫基礎知識(四)管理DM執行緒資料庫執行緒
- 資料庫基礎知識資料庫
- 資料庫基礎知識總結(轉)資料庫
- 初識達夢資料庫資料庫
- 資料結構基礎知識資料結構
- 基礎知識梳理~資料庫資料庫
- 資料庫基礎重要知識資料庫
- GEO資料庫基礎知識資料庫
- 達夢資料庫索引結構詳解資料庫索引
- 達夢資料庫dexp邏輯匯出工具使用介紹資料庫
- 達夢資料庫安裝及基礎操作資料庫
- 資料結構知識點--儲存結構與邏輯結構資料結構
- 資料庫基礎知識介紹!資料庫
- 資料庫基礎知識講解資料庫
- NoSQL資料庫的基礎知識SQL資料庫
- 【kingsql分享】邏輯資料庫結構 之 資料塊SQL資料庫
- 【資料結構】二叉樹的基礎知識資料結構二叉樹
- 公共基礎知識-資料結構-樹資料結構
- 夯實基礎系列三:資料庫知識總結資料庫
- 資料庫基礎知識整理與複習總結資料庫
- 資料庫安裝以及基礎知識資料庫
- 小白系列:資料庫基礎知識解析資料庫
- 配置ORACLE資料庫到達夢資料庫的異構DBLINKOracle資料庫
- MySQL 資料庫基礎知識點複習MySql資料庫
- mysql資料庫sql語句基礎知識MySql資料庫
- mysql資料庫學習基礎知識整理MySql資料庫
- 軟體測試--資料庫基礎知識資料庫
- MySQL?資料庫的基礎知識撩磅MySql資料庫
- MySQL資料庫基礎知識及優化MySql資料庫優化
- 配置達夢資料庫同構DBLINK資料庫
- 達夢資料庫必知必會-DCA篇資料庫
- DataX將Oracle資料庫資料同步到達夢資料庫Oracle資料庫
- 資料庫 Mysql 邏輯架構簡介資料庫MySql架構
- Redis基礎(二)資料庫Redis資料庫