[DB2 學習記錄]6. DB2 存儲


象ORACLE一樣,也有表空間,但又多了一個容器的概念,
表空間作爲數據庫與包含實際表數據的容器對象之間的一層 。
容器是一個物理存儲設備。它可以由目錄名、設備名或文件名標識。容器被分配給表空間。
表空間可以跨許多容器,這意味着可以突破操作系統對於一個容器可以包含的數據量的限制。

DB2 支持三種表空間:
  * 系統管理的空間(System-Managed Space,SMS):由操作系統的文件系統管理器分配和管理空間。
                       在DB2 9 之前,如果不帶任何參數創建數據庫或表空間,就會導致所有表空間作爲 SMS 對象創建。
  *數據庫管理的空間(Database-Managed Space,DMS):由數據庫管理程序控制存儲空間。
                       這種表空間本質上是一種特殊用途的文件系統實現,可以最好地滿足數據庫管理程序的需要。
  *DMS 的自動存儲(Automatic Storage With DMS):自動存儲實際上不是一種單獨的表空間類型,
                       而是一種處理 DMS 存儲的不同方式。DMS 容器需要比較多的維護,在 DB2 V8.2.2 中引入了自動存儲,作爲簡化空間管理的方式。

特性 SMS DMS 自動存儲
是否分段(Striping)?
默認類型 Version 8 Version 9
對象管理 操作系統 DB2 DB2
空間分配 按需增長/收縮 預先分配;大小可以收縮和增長,但是需要 DBA 干預。 預先分配;可以自動增長。
管理的簡便性 最好;很少需要調優,甚至不需要 好,但是需要一些調優(例如, EXTENTSIZE PREFETCHSIZE 最好;很少需要調優,甚至不需要
性能 非常好 最好;可通過利用原始容器多獲得 5% 到 10% 的收益 最好;但是,可以不使用原始容器
表空間最大大小 64GB(4K 頁面) 2TB(4K 頁面) 2TB(4K 頁面)

DB2 9 自動使用自動存儲,並且不可轉換。
特性 非自動存儲 自動存儲
容器的創建 必須在創建表空間時顯式地提供容器。 不能在創建表空間時提供容器;它們將由 DB2 自動地分配。
容器大小的調整 在默認情況下,表空間大小的自動調整是關閉的(AUTORESIZE NO)。 在默認情況下,表空間大小的自動調整是打開的(AUTORESIZE YES)。
初始大小 不能使用 INITIALSIZE 子句指定表空間的初始大小。 使用 INITIALSIZE 子句指定表空間的初始大小。
容器的修改 可以使用 ALTER TABLESPACE 語句(ADD、DROP、BEGIN NEW STRIPE SET 等等)執行容器操作。 不能執行容器操作,因爲由 DB2 控制空間管理。
管理的簡便性 可以使用重定向的恢復操作重新定義與表空間相關聯的容器。 不能使用重定向的恢復操作重新定義與表空間相關聯的容器,因爲由 DB2 控制空間管理。
發佈了49 篇原創文章 · 獲贊 0 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章