適用於:SQL Server
Azure SQL 資料庫
Azure SQL 受控執行個體
Azure Synapse Analytics
分析平台系統(PDW)
Microsoft Fabric 中的 SQL 分析端點
Microsoft Fabric 中的倉儲
Microsoft Fabric 中的 SQL 資料庫
針對資料庫中所有數據表和大多數索引類型的每個分割區,各包含一個數據列。 此檢視中不包含特殊索引類型,例如全文檢索、空間和 XML。 SQL Server 中的所有數據表和索引都至少包含一個數據分割,無論它們是否明確分割。
| 資料行名稱 | 資料類型 | 描述 |
|---|---|---|
partition_id |
bigint | 表示分割區標識碼。 資料庫內的唯一。 |
object_id |
int | 指出這個數據分割所屬對象的標識碼。 每個數據表或檢視表都由至少一個分割區組成。 |
index_id |
int | 指出這個數據分割所屬物件內的索引標識碼。 0 = 堆積 1 = 叢集索引 2 或更新 = 非叢集索引 |
partition_number |
int | 擁有索引或堆積內的1個分割區編號。 對於非資料分割資料表和索引,此資料行的值是 1。 |
hobt_id |
bigint | 指出包含此分割區數據列的數據堆積或 B 型樹狀結構 (HoBT) 識別碼。 |
rows |
bigint | 指出此分割區中大約的數據列數目。 |
filestream_filegroup_id |
smallint |
適用於:SQL Server 2012 (11.x) 和更新版本。 指出儲存在此分割區上的 FILESTREAM 檔案群組識別碼。 |
data_compression |
tinyint | 指出每個分割區的壓縮狀態: 0 = 無 1 = 行數 2 = PAGE(頁數) 3 = 欄位儲存 1 4 = COLUMNSTORE_ARCHIVE 2 注意: 全文檢索索引會在任何版本的 SQL Server 中壓縮。 |
data_compression_desc |
nvarchar(60) | 指出每個分割區的壓縮狀態。 資料欄存放區資料表 NONE的可能值為、 ROW和 PAGE。 資料存放區資料表 COLUMNSTORE 的可能值為 與 COLUMNSTORE_ARCHIVE。 |
xml_compression |
bit |
適用於:SQL Server 2022 (16.x) 和更新版本。 指出每個分割區的 XML 壓縮狀態: 0 = 關閉 1 = 開啟 |
xml_compression_desc |
varchar(3) |
適用於:SQL Server 2022 (16.x) 和更新版本。 指出每個分割區的 XML 壓縮狀態。 可能的值是 OFF 和 ON。 |
1適用於:SQL Server 2012 (11.x) 和更新版本。
2適用於:SQL Server 2014 (12.x) 和更新版本。
權限
需要 public 角色的成員資格。 如需相關資訊,請參閱 Metadata Visibility Configuration。
範例
判斷物件所使用的空間,並顯示相關的分割區資訊
下列查詢會傳回資料庫中的所有物件、每個物件中使用的空間量,以及與每個對象相關的分割資訊。
SELECT object_name(object_id) AS ObjectName,
total_pages / 128. AS SpaceUsed_MB,
p.partition_id,
p.object_id,
p.index_id,
p.partition_number,
p.rows,
p.data_compression_desc
FROM sys.partitions AS p
INNER JOIN sys.allocation_units AS au
ON p.partition_id = au.container_id
ORDER BY SpaceUsed_MB DESC;