.show extents
注意
數據分區稱為 範圍,而所有命令都會使用「範圍」或「範圍」做為同義字。 如需範圍的詳細資訊,請參閱分區 (資料分區) 總覽。
.show extents
命令的類型如下所示:
注意
如果執行 .show extents
命令的範圍 (例如資料庫或叢集) 具有許多分區,可能會耗用大量資源。 建議您在可能的最低範圍使用命令變體。 用於資料表範圍比資料庫範圍好,用於資料庫範圍比叢集範圍好。 包含篩選分區的命令變體,比使用其他查詢篩選命令的結果好。
權限
若要查看叢集上的範圍,您必須擁有AllDatabasesMonitor許可權。
若要查看資料庫上的範圍,您必須擁有資料庫用戶、資料庫查看器或資料庫監視器許可權。
如需詳細資訊,請參閱 角色型訪問控制。
資料表範圍
Syntax
顯示指定資料表中分區 (資料分區) 的相關資訊。 資料庫是取自命令的內容。
如果指定 hot
,則只會顯示熱門快取中預期的分區。
.show
table
TableNameextents
[(
ExtentId [,
...])
][hot
] [ (|contains
!has
|has
!contains
|) TagName [and
where
tags
tags
() contains
|has
!has
||!contains
TagName [,
...]]]
.show
tables
(
TableName [,
...])
extents
[(
ExtentId [,
...])
][hot
] [ (|contains
!has
|has
!contains
|) TagName [and
where
tags
tags
() contains
|has
!has
||!contains
TagName [,
...]]
深入瞭解 語法慣例。
參數
名稱 | 類型 | 必要 | 描述 |
---|---|---|---|
TableName | string |
✔️ | 資料表的名稱。 |
ExtentId | string |
要顯示的範圍標識碼。 | |
標籤 | string |
要依指定篩選的標記名稱。 |
建議
- 在命令中使用內建的篩選功能,比新增以查詢為基礎的篩選 (例如新增
| where DatabaseName == '...'
和TableName == '...'
) 更好。 - 如果提供選擇性的範圍標識符清單,則傳回的數據集僅限於這些範圍。
- 這個方法比篩選 (將) 新增
| where ExtentId in(...)
至「裸」命令的結果更快。
- 這個方法比篩選 (將) 新增
- 如果指定
tags
篩選條件:- 傳回的清單僅限於標記集合遵守所有提供之標記篩選準則的分區。
- 這個方法比篩選 (新增
| where Tags has '...' and Tags contains '...'
至) 「裸」命令的結果更快。 has
篩選是相等的篩選準則。 未使用其中一個指定標籤的範圍會篩選掉。!has
篩選是相等的負篩選條件。 使用其中一個指定標籤的範圍會篩選掉。contains
篩選是不區分大小寫的子字串篩選條件。 沒有指定字串的範圍會篩選掉任何捲標的子字串。!contains
篩選是不區分大小寫的子字串負篩選條件。 具有指定字串做為其任何捲標子字串的範圍會篩選掉。
資料庫範圍
顯示指定資料庫中的分區 (資料分區) 相關資訊。
如果已指定 hot
,則只會顯示熱快取中預期的分區。
Syntax
.show
database
DatabaseNameextents
[(
ExtentId [,
...])
][hot
] [ (|contains
!has
|has
!contains
|) TagName [and
where
tags
tags
() contains
|has
!has
||!contains
TagName [,
...]]]
深入瞭解 語法慣例。
參數
名稱 | 類型 | 必要 | 描述 |
---|---|---|---|
DatabaseName | string |
✔️ | 資料庫的名稱。 |
ExtentId | string |
要顯示的範圍標識碼。 | |
標籤 | string |
要依指定篩選的標記名稱。 |
叢集範圍
Syntax
.show
cluster
extents
[hot
]
深入瞭解 語法慣例。
顯示叢集中的分區 (資料分區) 相關資訊。
如果已指定 hot
,則只會顯示熱快取中預期的分區。
傳回
輸出參數 | 類型 | 描述 |
---|---|---|
ExtentId | guid |
分區的識別碼 |
DatabaseName | string |
分區所屬的資料庫 |
TableName | string |
分區所屬的資料表 |
MaxCreatedOn | datetime |
建立分區的日期時間。 針對合併的分區,來源分區的最大建立次數 |
OriginalSize | Double | 分區資料的原始大小 (以位元組為單位) |
ExtentSize | Double | 記憶體中的分區大小 (壓縮 + 索引) |
CompressedSize | Double | 記憶體中分區資料的壓縮大小 |
IndexSize | Double | 分區資料的索引大小 |
區塊 | long |
分區中的資料區塊數目 |
使用者分佈 | long |
分區中的資料區段數目 |
ExtentContainerId | string |
分區所在分區容器的識別碼 |
RowCount | long |
分區中的資料列數 |
MinCreatedOn | datetime |
建立分區的日期時間。 針對合併的分區,來源分區的最小建立次數 |
標籤 | string |
為分區定義的標記 (如果有的話) |
種類 | string |
建立範圍的儲存引擎種類 |
DeletedRowCount | long |
分區中已刪除的資料列數。 |
範例
已標記分區
資料表 T
中的分區 E
會以標記 aaa
、BBB
和 ccc
標記。
此查詢會傳
E
回 :.show table T extents where tags has 'aaa' and tags contains 'bb'
此查詢不會傳回
E
,因為它未加上aa
標記:.show table T extents where tags has 'aa' and tags contains 'bb'
此查詢會傳
E
回 :.show table T extents where tags contains 'aaa' and tags contains 'bb'
顯示已建立分區的數量
顯示特定資料庫中每小時所建立的分區量
.show database MyDatabase extents | summarize count(ExtentId) by MaxCreatedOn bin=time(1h) | render timechart
顯示每小時資料表達到的資料量
.show database MyDatabase extents
| summarize sum(OriginalSize) by TableName, MaxCreatedOn bin=time(1h)
| render timechart
按資料表顯示資料大小分佈
.show database MyDatabase extents | summarize sum(OriginalSize) by TableName
顯示名為「GamesDB」的資料庫中所有分區
.show database GamesDB extents
顯示名為「Games」的資料表中所有分區
.show table Games extents
顯示特定資料表中的所有分區
顯示名為「TaggingGames1」和「TaggingGames2」的資料表中的所有分區,並以「tag1」和「'tag2」標記
.show tables (TaggingGames1,TaggingGames2) extents where tags has 'tag1' and tags has 'tag2'
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應