本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
分析查詢的雜湊執行步驟。
所有使用者都可看見 STL_HASH。超級使用者可以看見所有資料列;一般使用者只能看見自己的資料。如需詳細資訊,請參閱系統資料表和檢視中資料的可見性。
注意
STL_HASH 僅包含在主要佈建叢集上執行的查詢。它不包含在並行擴展叢集或無伺服器命名空間上執行的查詢。若要存取在主要叢集、並行擴展叢集和無伺服器命名空間上執行的查詢說明計劃,建議您使用 SYS 監控檢視 SYS_QUERY_DETAIL 。SYS 監視檢視中的資料會格式化為更易於使用和理解。
資料表欄
欄名稱 | 資料類型 | 描述 |
---|---|---|
userid | integer | 產生項目的使用者之 ID。 |
query | integer | 查詢 ID。查詢欄可用於加入其他系統表格與檢視。 |
分割 | integer | 識別執行查詢之配量的數字。 |
segment | integer | 識別查詢區段的號碼。 |
step | integer | 執行的查詢步驟。 |
starttime | timestamp | 查詢開始的時間,以 UTC 表示。總時間包括佇列和執行。秒小數部分的精確度為 6 位元。例如:2009-06-12 11:29:19.131358 。 |
endtime | timestamp | 查詢完成的時間,以 UTC 表示。總時間包括佇列和執行。秒小數部分的精確度為 6 位元。例如:2009-06-12 11:29:19.131358 。 |
tasknum | integer | 指派執行步驟的查詢任務程序編號。 |
rows | bigint | 已處理的列總數。 |
位元組 | bigint | 步驟的所有輸出欄之大小 (位元組)。 |
slots | integer | 雜湊儲存貯體的總數。 |
occupied | integer | 包含記錄之插槽的總數。 |
maxlength | integer | 最大插槽的大小。 |
tbl | integer | 表格 ID。 |
is_diskbased | character(1) | 若為 true (t),查詢是以磁碟型操作方式執行。若為 false (f),查詢是在記憶體中執行。 |
workmem | bigint | 已指派給步驟之運作中記憶體的位元組總數。 |
num_parts | integer | 在雜湊步驟期間雜湊資料表已劃分的分割區總數。 |
est_rows | bigint | 要雜湊之資料列的預估數目。 |
num_blocks_permitted | integer | 此資訊僅供內部使用。 |
resizes | integer | 此資訊僅供內部使用。 |
checksum | bigint | 此資訊僅供內部使用。 |
runtime_filter_size | integer | 執行時間篩選條件的大小,以位元組為單位。 |
max_runtime_filter_size | integer | 執行時間篩選條件的大小上限,以位元組為單位。 |
範例查詢
下列範例會傳回雜湊中針對查詢 720 所使用之分割區數目的相關資訊,並指出已沒有步驟在磁碟上執行。
select slice, rows, bytes, occupied, workmem, num_parts, est_rows, num_blocks_permitted, is_diskbased
from stl_hash
where query=720 and segment=5
order by slice;
slice | rows | bytes | occupied | workmem | num_parts | est_rows | num_blocks_permitted | is_diskbased
-------+------+--------+----------+----------+-----------+----------+----------------------+--------------
0 | 145 | 585800 | 1 | 88866816 | 16 | 1 | 52 f
1 | 0 | 0 | 0 | 0 | 16 | 1 | 52 f
(2 rows)