STL_ANALYZE - Amazon Redshift

STL_ANALYZE

记录 ANALYZE 操作的详细信息。

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

此表中的部分或全部数据也可以在 SYS 监控视图 SYS_ANALYZE_HISTORY 中找到。SYS 监控视图中的数据经过格式化处理,便于使用和理解。我们建议您使用 SYS 监控视图进行查询。

表列

列名称 数据类型 描述
userid integer 生成该条目的用户的 ID。
xid long 事务 ID。
数据库 char(30) 数据库名称。
table_id integer 表 ID。
status char(15) 分析命令的结果。可能的值为 FullSkippedPredicateColumn
rows double 表中的总行数。
modified_rows double 自上次执行 ANALYZE 操作以来修改的行的总数。
threshold_percent integer analyze_threshold_percent参数的值。
is_auto char(1) 如果操作预设情况下包含 Amazon Redshift 分析,则值为 true (t)。如果明确运行了 ANALYZE 命令,则值为 false (f)。
starttime timestamp 分析操作开始运行的时间(采用 UTC 表示)。
endtime timestamp 分析操作完成运行的时间(采用 UTC 表示)。
prevtime timestamp 上次分析表的时间(采用 UTC 表示)。
num_predicate_cols integer 表中现有的谓词列的数量。
num_new_predicate_cols integer 自上次分析操作以来表中新谓词列的数量。
is_background character(1) 如果分析由自动分析操作运行,则值为 true (t)。否则,该值将设置为 false (f)。
auto_analyze_phase character(100) 保留供内部使用。
schema_name char(128) 表 schema 的名称。
table_name char(136) 表的名称。

示例查询

以下示例联接 STV_TBL_PERM 以显示表名称和执行详细信息。

select distinct a.xid, trim(t.name) as name, a.status, a.rows, a.modified_rows, a.starttime, a.endtime from stl_analyze a join stv_tbl_perm t on t.id=a.table_id where name = 'users' order by starttime; xid | name | status | rows | modified_rows | starttime | endtime -------+-------+-----------------+-------+---------------+---------------------+-------------------- 1582 | users | Full | 49990 | 49990 | 2016-09-22 22:02:23 | 2016-09-22 22:02:28 244287 | users | Full | 24992 | 74988 | 2016-10-04 22:50:58 | 2016-10-04 22:51:01 244712 | users | Full | 49984 | 24992 | 2016-10-04 22:56:07 | 2016-10-04 22:56:07 245071 | users | Skipped | 49984 | 0 | 2016-10-04 22:58:17 | 2016-10-04 22:58:17 245439 | users | Skipped | 49984 | 1982 | 2016-10-04 23:00:13 | 2016-10-04 23:00:13 (5 rows)