STV_TBL_PERM - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

STV_TBL_PERM

STV_ TBL _ 資料PERM表包含 Amazon Redshift 中永久資料表的相關資訊,包括使用者針對目前工作階段建立的暫存資料表。STV_ TBL _ PERM 包含所有數據庫中所有表的信息。

此資料表不同於 STV_TBL_TRANS,它包含系統在查詢處理過程中建立之暫時性資料庫的相關資訊。

STV_ TBL _ PERM 僅對超級用戶可見。如需詳細資訊,請參閱系統資料表和檢視中資料的可見性

資料表欄

欄名稱 資料類型 描述
分割 integer 配置至資料表的節點分割。
id integer 表格 ID。
name character(72) 資料表名稱.
rows bigint 分割中的資料列數。
sorted_rows bigint 已在磁碟上排序之分割中的資料列數。如果此數字與數ROWS字不匹配,請將表真空吸塵以求助行。
temp integer 該資料表是否為暫時資料表。0 = false;1 = true。
db_id integer 用於建立資料表之資料庫的 ID。
insert_pristine integer 供內部使用。
delete_pristine integer 供內部使用。
backup integer 用於指出該資料表是否包含在叢集快照中的值。0 = no;1 = yes。如需詳細資訊,請BACKUP參閱CREATETABLE指令的參數。
dist_style integer 切片所屬資料表的分散樣式。如需這些值的詳細資訊,請參閱檢視分佈樣式。如需分散樣式的資訊,請參閱分佈樣式
block_count integer 分割使用的區塊數目。無法計算區塊計數時,值為 -1。

範例查詢

下列查詢會傳回不同資料表IDs和名稱的清單:

select distinct id, name from stv_tbl_perm order by name; id | name --------+------------------------- 100571 | category 100575 | date 100580 | event 100596 | listing 100003 | padb_config_harvest 100612 | sales ...

其他系統表使用 tableIDs,因此知道哪個表 ID 對應於某個表可能非常有用。在此示例中,用SELECTDISTINCT於刪除重複項(表分佈在多個切片中)。

若要判斷資料表中每個資料行所使用的區塊數VENUE目,請輸入下列查詢:

select col, count(*) from stv_blocklist, stv_tbl_perm where stv_blocklist.tbl = stv_tbl_perm.id and stv_blocklist.slice = stv_tbl_perm.slice and stv_tbl_perm.name = 'venue' group by col order by col; col | count -----+------- 0 | 8 1 | 8 2 | 8 3 | 8 4 | 8 5 | 8 6 | 8 7 | 8 (8 rows)

使用須知

該ROWS列包括尚未吸塵(或已吸塵但使用選項)的已刪除行計數。SORT ONLY因此,當您直接查詢給定ROWS資料PERM表時,STVTBL_ _ 資料表中的資料行可能不符合 COUNT (*) 結果。SUM例如,如果從中刪除 2 行VENUE,則COUNT(*)結果為 200,但SUM(ROWS)結果仍然是 202:

delete from venue where venueid in (1,2); select count(*) from venue; count ------- 200 (1 row) select trim(name) tablename, sum(rows) from stv_tbl_perm where name='venue' group by name; tablename | sum -----------+----- venue | 202 (1 row)

要同步 STV _ TBL _ 中的數據PERM,運行全真空VENUE表。

vacuum venue; select trim(name) tablename, sum(rows) from stv_tbl_perm where name='venue' group by name; tablename | sum -----------+----- venue | 200 (1 row)