STL_HASH - Amazon Redshift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

STL_HASH

分析查询的哈希执行步骤。

此视图对所有用户可见。超级用户可以查看所有行;普通用户只能查看其自己的数据。有关更多信息,请参阅系统表和视图中的数据可见性

表列

列名称 数据类型 说明
userid integer 生成该条目的用户 ID。
query integer 查询 ID。查询列可用于连接其他系统表和视图。
slice 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 处理的总行数。
bytes 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)