STV_TBL_TRANS - Amazon Redshift

STV_TBL_TRANS

使用 STV_TBL_TRANS 表可以找到有关当前位于内存中的临时数据库表的信息。

临时表通常是在运行查询时用作中间结果的临时行集。STV_TBL_TRANS 不同于 STV_TBL_PERM,因为 STV_TBL_PERM 包含有关永久数据库表的信息。

STV_TBL_TRANS 仅对超级用户可见。有关更多信息,请参阅 系统表和视图中的数据可见性

表列

列名称 数据类型 描述
slice integer 分配到表的节点分片。
id integer 表 ID。
rows bigint 表中的数据行数。
size bigint 分配到表的字节数。
query_id bigint 查询 ID。
ref_cnt integer 引用数。
from_suspended integer 此表是否已在现已暂停的查询期间创建。
prep_swap integer 此临时表是否准备交换到磁盘(如果需要)。(仅在内存低的情况下发生交换。)

示例查询

要查看查询 ID 为 90 的查询的临时表信息,请键入以下命令:

select slice, id, rows, size, query_id, ref_cnt from stv_tbl_trans where query_id = 90;

此查询返回查询 90 的临时表信息,如以下示例输出中所示:

slice | id | rows | size | query_ | ref_ | from_ | prep_ | | | | id | cnt | suspended | swap ------+----+------+------+--------+------+-----------+------- 1013 | 95 | 0 | 0 | 90 | 4 | 0 | 0 7 | 96 | 0 | 0 | 90 | 4 | 0 | 0 10 | 96 | 0 | 0 | 90 | 4 | 0 | 0 17 | 96 | 0 | 0 | 90 | 4 | 0 | 0 14 | 96 | 0 | 0 | 90 | 4 | 0 | 0 3 | 96 | 0 | 0 | 90 | 4 | 0 | 0 1013 | 99 | 0 | 0 | 90 | 4 | 0 | 0 9 | 96 | 0 | 0 | 90 | 4 | 0 | 0 5 | 96 | 0 | 0 | 90 | 4 | 0 | 0 19 | 96 | 0 | 0 | 90 | 4 | 0 | 0 2 | 96 | 0 | 0 | 90 | 4 | 0 | 0 1013 | 98 | 0 | 0 | 90 | 4 | 0 | 0 13 | 96 | 0 | 0 | 90 | 4 | 0 | 0 1 | 96 | 0 | 0 | 90 | 4 | 0 | 0 1013 | 96 | 0 | 0 | 90 | 4 | 0 | 0 6 | 96 | 0 | 0 | 90 | 4 | 0 | 0 11 | 96 | 0 | 0 | 90 | 4 | 0 | 0 15 | 96 | 0 | 0 | 90 | 4 | 0 | 0 18 | 96 | 0 | 0 | 90 | 4 | 0 | 0

在此示例中,您可以看到查询数据涉及表 95、96 和 98。由于未向此表分配任何字节数,因此可在内存中运行此查询。