表空間(英語:tablespace)是構成數據庫的基本結構。一個數據庫包含多個表空間,表空間由一個或多個數據庫表table)構成。

概述

一個表空間是一個存儲位置,其中底層的基礎數據庫的對象可以保留。它在物理和邏輯數據之間提供了一個抽象層[1] 並用於所有DBMS管理的段分配儲存。 創建後,可以在創建數據庫段[註 1]時按名稱引用表空間。

表空間僅指定數據庫的儲存位置,不指定數據庫結構或數據庫架構。 例如,同一模式中的不同對象可能具有不同的基礎表空間。類似的,表空間可以為多個模式提供服務。有時,它可以用於指定模式,以便於在邏輯和物理數據層形成聯繫。

通過使用表空間,管理員還可以控制安裝的磁盤佈局。 表空間的常見是用於優化性能。 例如,可以將索引建立在高速的SSD(固態硬盤)上。 另一方面,包含很少訪問的存檔數據的數據庫可以儲存在較便宜的HDD(機械硬盤)上。

雖然表空間通常將其數據儲存在文件系統的文件中,但是數據文件必須是表空間的一部分 ,一些數據庫管理系統允許直接在作業系統(被稱為原始設備)上配置表空間,從而通過避免作業系統文件的時間開銷來提供更好的性能。

Oracle將數據邏輯儲在表空間中,並與儲存在物理內存上相應的表空間中的數據文件相關聯。

備註

  1. ^ 數據庫段是占物理空間的數據庫對象,例如索引

參考文獻

  1. ^ Oppel, Andrew J. Databases: a beginner's guide. McGraw Hill Professional. 2009: 44 [2011-05-23]. ISBN 978-0-07-160846-6. (原始內容存檔於2017-03-08). [...] a logical file that forms a layer of abstraction between the physical and logical layers, thereby providing better logical data independence.